xf.li | 6c8fc1e | 2023-08-12 00:11:09 -0700 | [diff] [blame^] | 1 | <testcase> |
| 2 | <info> |
| 3 | <keywords> |
| 4 | MQTT |
| 5 | MQTT SUBSCRIBE |
| 6 | </keywords> |
| 7 | </info> |
| 8 | |
| 9 | # |
| 10 | # Server-side |
| 11 | <reply> |
| 12 | <data nocheck="yes"> |
| 13 | hello |
| 14 | </data> |
| 15 | <datacheck hex="yes"> |
| 16 | 00 04 33 30 31 37 68 65 6c 6c 6f 5b 4c 46 5d 0a |
| 17 | </datacheck> |
| 18 | <servercmd> |
| 19 | excessive-remaining TRUE |
| 20 | </servercmd> |
| 21 | </reply> |
| 22 | |
| 23 | # |
| 24 | # Client-side |
| 25 | <client> |
| 26 | <features> |
| 27 | mqtt |
| 28 | </features> |
| 29 | <server> |
| 30 | mqtt |
| 31 | </server> |
| 32 | <name> |
| 33 | MQTT SUBSCRIBE with pathological PUBLISH length |
| 34 | </name> |
| 35 | <command option="binary-trace"> |
| 36 | mqtt://%HOSTIP:%MQTTPORT/%TESTNUMBER -m 3 |
| 37 | </command> |
| 38 | </client> |
| 39 | |
| 40 | # |
| 41 | # Verify data after the test has been "shot" |
| 42 | <verify> |
| 43 | # These are hexadecimal protocol dumps from the client |
| 44 | # |
| 45 | # Strip out the random part of the client id from the CONNECT message |
| 46 | # before comparison |
| 47 | <strippart> |
| 48 | s/^(.* 00044d5154540402003c000c6375726c).*/$1/ |
| 49 | </strippart> |
| 50 | # on windows the disconnect is never seen - no idea why |
| 51 | <strip> |
| 52 | ^server DISCONNECT 0 e000 |
| 53 | </strip> |
| 54 | <protocol> |
| 55 | client CONNECT 18 00044d5154540402003c000c6375726c |
| 56 | server CONNACK 2 20020000 |
| 57 | client SUBSCRIBE 9 000100043330313700 |
| 58 | server SUBACK 3 9003000100 |
| 59 | server PUBLISH c 30ffffff8000043330313768656c6c6f0a |
| 60 | </protocol> |
| 61 | |
| 62 | # 8 is CURLE_WEIRD_SERVER_REPLY |
| 63 | <errorcode> |
| 64 | 8 |
| 65 | </errorcode> |
| 66 | </verify> |
| 67 | </testcase> |