1// +build go1.3,!go1.4,!go1.5,!go1.6
2
3package xmpp
4
5func isVersionOldish() bool {
6	return true
7}
8
9var validTLSExchange = [][]byte{
10	[]byte(
11		"<?xml version='1.0'?>" +
12			"<str:stream xmlns:str='http://etherx.jabber.org/streams' version='1.0'>" +
13			"<str:features>" +
14			"<starttls xmlns='urn:ietf:params:xml:ns:xmpp-tls'>" +
15			"</starttls>" +
16			"<mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>" +
17			"<mechanism>PLAIN</mechanism>" +
18			"</mechanisms>" +
19			"</str:features>" +
20			"<proceed xmlns='urn:ietf:params:xml:ns:xmpp-tls'/>"),
21	bytesFromHex("160303005d0200005903035761266809b170a3fad1ba444642ad7660e63653e624355c7809b2c135c6391f20bf43e10b79f235852df85aa0cf1ac59193efc80dbee9bd8bac71ece19cef4479c01400001100000000ff01000100000b0004030001021603030ff70b000ff3000ff0000a01308209fd308208e5a0030201020210448218fb90f3352b58e6668ac3b9225c300d06092a864886f70d01010b05003078310b300906035504061302494c31163014060355040a130d5374617274436f6d204c74642e31293027060355040b13205374617274436f6d2043657274696669636174696f6e20417574686f72697479312630240603550403131d5374617274436f6d20436c617373203220495620536572766572204341301e170d3136303332333139333635305a170d3138303332333139333635305a3059310b30090603550406130245433112301006035504080c0950696368696e636861310e300c06035504070c05517569746f3111300f060355040a0c084f6c612042696e693113301106035504030c0a6f6c6162696e692e736530820222300d06092a864886f70d01010105000382020f003082020a0282020100c30142b1459535ab3365827e3f4a654a87f11b96e307998ba6f799ab490d81e890f1121ce092bb0aae969d801510493e7e280356a5a0f888cb3ccb5abab5104c5630c7c1d88a0525948a6ba283b85f5a88365cb7dd1eba93b21d83a40a8fe0b9848677d21367e01b6dc75959e6a50e4ca5e0c2f9a2f93ddf2db9de7ef70df4be7ede241167d02208fbc5e8924f8ced4ce71bff966e80a9f8159a1cc466814f037c1434c7ba7c663c4101ecb1186c6f5828aaf5d562ee3e4c2a97e1a92f64a76fc25332d5e5a71a1d49eb0291b0faca2644333ca22cac55c5c7f7b3275c0801a22f0fc95a02ac13e947ed91f542ad6cbe580cceb0862940d8b558403614cd4a5d094e51db04eec944809a0b4d8da74cae3cbff9af3017bc87a66a84b9688d871474d89e7dbecedfcd246dbd58471272618ec1959a4923958639625476aad24832b692f88b4cedddf03b6aaf6be83ee0ca7e9f4dfbc55d589643f3113a86ec5e4bbb0cad357ea6d9634888870503da4e3d842dd05c5d9328393570660551361847b6dde4a54bb8452a4a6746fca4fd83f7556f39fea8a5d6339fc8ba1f967f687f3c6ae58e7be4a5459eb42ccaa0090f075202c8bb37d7505002a0bf66e3361f73697e825d20351e4c70bbaa1f8c4142f1b4b7d1b0c8adacf03ec69af7e8f8ab9d576f436f6ea51d60681d858ae777ee2eaa71fa3a53475737aaea71b1c15d04110203010001a38205a03082059c300e0603551d0f0101ff0404030205a0301d0603551d250416301406082b0601050507030206082b0601050507030130090603551d1304023000301d0603"),
22	bytesFromHex("551d0e0416041443d7a7c90643825a3150e3f331d4e1c9ba96174b301f0603551d2304183016801494de85412aa5d945f6602c2e4c9309a62c237e3e306f06082b0601050507010104633061302406082b060105050730018618687474703a2f2f6f6373702e737461727473736c2e636f6d303906082b06010505073002862d687474703a2f2f6169612e737461727473736c2e636f6d2f63657274732f7363612e736572766572322e63727430380603551d1f0431302f302da02ba0298627687474703a2f2f63726c2e737461727473736c2e636f6d2f7363612d736572766572322e63726c3082027b0603551d11048202723082026e820a6f6c6162696e692e7365820c2a2e6f6c6162696e692e7365820762696e692e656382092a2e62696e692e65638208696f6b652e6f7267820a2a2e696f6b652e6f726782106d616c696e73616e64656c6c2e636f6d82122a2e6d616c696e73616e64656c6c2e636f6d820f6d616c696e73616e64656c6c2e6e7582112a2e6d616c696e73616e64656c6c2e6e75820f6d616c696e73616e64656c6c2e736582112a2e6d616c696e73616e64656c6c2e7365820b6f6c6162696e692e636f6d820d2a2e6f6c6162696e692e636f6d820a6f6c6162696e692e6563820c2a2e6f6c6162696e692e6563820c6f6c6162696e692e696e666f820e2a2e6f6c6162696e692e696e666f820a6f6c6162696e692e6d65820c2a2e6f6c6162696e692e6d65820b6f6c6162696e692e6e6574820d2a2e6f6c6162696e692e6e6574820a6f6c6162696e692e6e75820c2a2e6f6c6162696e692e6e75820a6f6c6f6769782e6e6574820c2a2e6f6c6f6769782e6e657482096f6c6f6769782e7365820b2a2e6f6c6f6769782e73658207726561702e656382092a2e726561702e6563820a73616e64656c6c2e6563820c2a2e73616e64656c6c2e6563820d736570682d6c616e672e6f7267820f2a2e736570682d6c616e672e6f726782117374656c6c6173616e64656c6c2e636f6d82132a2e7374656c6c6173616e64656c6c2e636f6d82117374656c6c6173616e64656c6c2e6e657482132a2e7374656c6c6173616e64656c6c2e6e657482107374656c6c6173616e64656c6c2e736582122a2e7374656c6c6173616e64656c6c2e736582067477732e656382082a2e7477732e6563820e7777772e6f6c6162696e692e736530230603551d12041c301a8618687474703a2f2f7777772e737461727473736c2e636f6d2f30500603551d20044930473008060667810c010203303b060b2b0601040181b537010204302c302a06082b06010505070201161e687474703a2f2f7777772e737461727473736c2e636f6d2f706f6c6963793082017d060a2b06010401d6790204020482016d048201690167007500cdb5179b7fc1c046feea31136a3f8f002e6182faf8896fecc8b2f5b5ab60490000000153a50fc88f000004030046304402206342f197e37f84737b95a9e8a995ca8c7150e7d7c920e6ba04dfe9a21088342c0220378fd16db9534fd73ef19f0bde36ace15d85fd0d093f1167c9a3045418cef71400770068f698f81f6482be3a8ceeb9281d4cfc71515d6793d444d10a67acbb4f4ffbc400000153a50fce460000040300483046022100db73a2c7c4005cf12c5661d3058361cb8c5ba318f5f71e5c2af0475d2c9a4e180221009a2942ae5232594c6aef9d6f621d11fcf6da2b701b6e40c74d8d1d97a66ad387007500ee4bbdb775ce60bae142691fabe19e66a30f7e5fb072d88300c47b897aa8fdcb00000153a50fd0a50000040300463044022004040e6d095624e1d4b6c04e665ab76f5784cfdab803fb012dd51c52acec153f02207b5cce9211570bd57a413bf3fbfad7fdd0a92a07cbdc33c00cda12e321339663300d06092a864886f70d01010b050003820101005d2d37bac9730672895d07fbead11fbf8281ca2e9d33b1934cdd984ff6891aec8299a67d67c2d15667686ee8f32b4ba8a852ccd24a5251003fcde5c2c901b4701cf340e3de41dd47d707aaca4c76082150fb88e72dba07d3e1e92f6c625c6fcc1b7212ec6f5a60945fed5d23153beaa744350da701299e37cd43d7b261d8be469dc40e7c58139da78ee4ec214c651f5f9582b36e502dabb486e1d1d10b80fdbe272837f0fa4029117d6e6f35e17c414dc25e694a0b63d1068c19311e85d091168ac3f326b24159c7a33db297ee273cbe549177b09d7bd0899378b55e4c28985ce16a14ecd6f809503cd5ee39812be14c770aab2d3ad6c003395d4fe6fd70c8890005e9308205e5308203cda00302010202102643bb32a166487ae19d6c79c43fe266300d06092a864886f70d01010b0500307d310b300906035504061302494c31163014060355040a130d5374617274436f6d204c74642e312b3029060355040b1322536563757265204469676974616c204365727469666963617465205369676e696e6731293027060355040313205374617274436f6d2043657274696669636174696f6e20417574686f72697479301e170d3135313231363031303030355a170d3330313231363031303030355a3078310b300906035504061302494c31163014060355040a130d5374617274436f6d204c74642e31293027060355040b13205374617274436f6d2043657274696669636174696f6e20417574686f72697479312630240603550403131d5374617274436f6d20436c61737320322049562053657276657220434130820122300d06092a864886f70d01010105000382010f003082010a02820101009cbdbd823c7a138ebbcb83ac1e8e364c29f5ac2ec95d49ef7a9ccf13d28b6c98908badc948b4ebfd05468e158540186ac172a5c93c81346a0eb95fb24688a6aa43c3755e9976722747098a027561bcc55dd965dea9226dab94936b69ee3a72d3c18067c95b0e228f58767bc58435c01a343785759022ad347f8dd713c16293ef44506fe817b54b9480020099e1a2d023d9d4764ef426c816c410dd8f84b1f758035992531b6a8d9cb004aa4b0c8e980079fb7e6749a829318bae55ae194a79b611a17c7a62f18a214ae489c20598d11b8bbe60bac4bfbfa62ab9c738c55690e13b9b32b1b6e1c5616d8b441fbe78918b51d9f52a2be26434bfa1f3a12217ecb70203010001a382016430820160300e0603551d0f0101ff040403020106301d0603551d250416301406082b0601050507030206082b0601050507030130120603551d130101ff040830060101ff02010030320603551d1f042b30293027a025a0238621687474703a2f2f63726c2e737461727473736c2e636f6d2f73667363612e63726c306606082b06010505070101045a3058302406082b060105050730018618687474703a2f2f6f6373702e737461727473736c2e636f6d303006082b060105050730028624687474703a2f2f6169612e737461727473736c2e636f6d2f63657274732f63612e637274301d0603551d0e0416041494de85412aa5d945f6602c2e4c9309a62c237e3e301f0603551d230418301680144e0bef1aa4405ba517698730ca346843d041aef2303f0603551d200438303630340604551d2000302c302a06082b06010505070201161e687474703a2f2f7777772e737461727473736c2e636f6d2f706f6c696379300d06092a864886f70d01010b05000382020100b5ea432e661f21955b20cf26da222c76ab2490154fab3e0a92a9ecab0d2989c290db68a8f06a49ba2c9d832d7e4c4458cd3c287e02b41f094d545096bae67ed46905adeaaf2453089f1dc227f9f14974d577378cddbe52b1c2f7aa05241989778850efe11ebd548bb1b0eacd0e9fe2b47c3f6835c802451def3e2701d9facaec184e1637bac68c2c59ec713df24723af650aaef73bb29ec57aa9fd5f1ff2e185f0be0a537c56e910c6e7b46b5e1e7e2cdc54426676b4801a3f21d3343e736f17dff19fd96e01861ca6ecb8f9005081be6c7a6ae5be9b7f6c76371321a9848c23e18927d1669a2095f8fdfed32c01606361264705518be849476e1f3fbf45777a1bf7a3aef2a9e7cadb67d8822122d98e9a3981811f2c897a21025c64f33c14858a2ca86d228297e5cb4d2f77a95780f32036712da4abb8405015e0d08faa7fef8a5460b4013f9db76a77fa4ad5c1b5881b7c8991a0887823c2fce5a07f4d4c8b38903fb0ac7f585ad73b113d2b8abe3dfe6dab783364472133f6ed3189f5730d463d4b789c7c9acd2e762eb3f4f90efb6a8d46cdaf6cbddf07135359f4d21524eef542c92a8f1bc6893b"),
23	bytesFromHex("74e3caf880b49768cd733f6c3d9ccb08c35229c5713c87d50702596087ca0d1e7a3923d9cb7f29db1215f11b2f5195f70b37f27c88eab26a07e0c6b5320cf28c879c4678b28c412ce3c90d5b5745860b5266269f900d16030302"),
24	bytesFromHex("4d0c00024903001741048d56f51db5fb013a9749ce4136ea9081bf95ef3af1c2374fda7b33488e079382a47cc7a3b46e78b34684ccfe8f9ab433bad2212982dc200c09a4316ee34839780401020046a101c7a3c8f529110c5693105285d9c2970a3bcb92f465eae30c1eed3d7bd5b5d2b4780efae142a5c1587843e8e795c3af1a28ed51c450c24cac0074866617c6c5eaafb3d6d3b8048bd4b4dbad5150b84ab69bcfe1a721b408c92c6a52fb929d938bd57936afd796de83e9b90bd120a7503b6b185914dee0e3218203a74f991963185d2355e340e4a6711cc93b684cfc3919e7301a9e03cd3eba5df70e7b515657e9ba9e258034c7ebd5aa9125bd2d6b6a2f8ca1c10e4f4203e36c4174ea8ca9d20aba0f747a8fa238ab2005f94a40ce3dc350bf6aa9ac5e3fd4cfb9f55a8946c5ad9b3ef9ebd6ecbd183306968facc3e39cd09c4834ebd86b5e1eabe5128d262a4960d49f657cca86ed204923faba77e104bcbe134e0f180de492a8425347d78a8b36c66ab66788ad0f749b2d7daec33b3fd3c2a81c2cfe30190889309c011f5d99c89dca8f79b0149b37c3166dc0889b598757e280f9902dbb32c70e5ff927c78345bab5b44488430326e79ce1bd4786fae6a777e9748f44a8ec2cbd585a749ba68a618c42ece9a5cd0f8900148a30c23fd40a6405f1e99d85c7899855ce27d139d192d93dfd9b7ebdb2530baf80c2135f6f375872c9ac76d17419a29504a95e055f5965b9f7e6b4cc793eba4c2dcaf468a1737878fc9150669d0c2af706f7b5ff41fb2877f489d97c595b694ad167c7ac3a3a6a550648c1f98ef307650816030300040e000000"),
25	bytesFromHex("1403030001011603030040b1e07001be8b116de04f3b66e5f28007bd9915299f29001dec629c661e19b3cb45995f7da873297b3ae71a12c7ad9f1eb53563c8ad1945e66dace56abe979398"),
26}
27