Advertisement
Guest User

Untitled

a guest
Sep 2nd, 2015
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 13.96 KB | None | 0 0
  1.  
  2. void barrackBuilderCommanderList(uint64_t accountId, zmsg_t *replyMsg) {
  3.  
  4.     int commandersCount = 1;
  5.  
  6.     #pragma pack(push, 1)
  7.     struct {
  8.         VariableSizePacketHeader variableSizeHeader;
  9.         uint64_t accountId;
  10.         uint8_t unk1;
  11.         uint8_t commandersCount;
  12.         CommanderPkt commanders[commandersCount];
  13.     } replyPacket;
  14.     #pragma pack(pop)
  15.  
  16.     PacketType packetType = BC_COMMANDER_LIST;
  17.     CHECK_SERVER_PACKET_SIZE(replyPacket, packetType);
  18.  
  19.     BUILD_REPLY_PACKET(replyPacket, replyMsg)
  20.     {
  21.         variableSizePacketHeaderInit(&replyPacket.variableSizeHeader, packetType, sizeof(replyPacket));
  22.         replyPacket.accountId = accountId;
  23.         replyPacket.unk1 = 1; // ICBT - equal to 1 or 4
  24.         replyPacket.commandersCount = commandersCount;
  25.  
  26.         /*----------------------
  27.          Test Code
  28.         ------------------------*/
  29.         for (int commanderIndex = 0; commanderIndex < replyPacket.commandersCount; commanderIndex++) {
  30.             CommanderPkt *currentCommander = &replyPacket.commanders[commanderIndex];
  31.             commanderInit(currentCommander);
  32.             // Set some info
  33.             strncpy(currentCommander->familyName, "MyTeamName", sizeof(currentCommander->familyName));
  34.             strncpy(currentCommander->commanderName, "Fulanito", sizeof(currentCommander->commanderName));
  35.             currentCommander->accountId = accountId;
  36.         }
  37.  
  38.         /*----------------------------
  39.          End test code
  40.         ----------------------------*/
  41.  
  42.         size_t captureSize;
  43.         void *capture = dumpToMem(
  44.             "[03:07:13][main.c:30 in writePacketToFile]  0F 00 FF FF FF FF 18 06 4B 0A 0F 06 01 00 10 01 | ........K.......\n"
  45.             "[03:07:13][main.c:30 in writePacketToFile]  04 03 4D 6F 72 69 69 00 00 00 00 00 00 00 00 00 | ..Morii.........\n"
  46.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  47.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  48.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  49.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 12 00 94 0E 00 00 67 43 97 0E 00 00 20 41 | ........gC.... A\n"
  50.             "[03:07:13][main.c:30 in writePacketToFile]  95 0E 00 00 A0 40 4D 65 6D 65 6E 74 6F 00 00 00 | .....@Memento...\n"
  51.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  52.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  53.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  54.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  55.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  56.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  57.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  58.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  59.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 14 27 00 00 A3 0F 02 00 50 00 | .......'......P.\n"
  60.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 30 95 09 00 02 00 00 00 04 00 00 00 BA 1E | ..0.............\n"
  61.             "[03:07:13][main.c:30 in writePacketToFile]  08 00 81 A9 07 00 9A D0 07 00 10 27 00 00 F8 2A | ...........'...*\n"
  62.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 94 11 03 00 B3 5F 03 00 FE 81 09 00 09 00 | ......._........\n"
  63.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 09 00 00 00 04 00 00 00 93 F3 07 00 09 00 | ................\n"
  64.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 09 00 00 00 F6 2F 09 00 01 30 09 00 C0 E5 | ......./...0....\n"
  65.             "[03:07:13][main.c:30 in writePacketToFile]  08 00 2E 00 00 00 26 07 00 00 7C 00 00 00 01 00 | ......&...|.....\n"
  66.             "[03:07:13][main.c:30 in writePacketToFile]  E9 03 03 00 00 00 91 3D 01 00 51 26 06 00 00 00 | .......=..Q&....\n"
  67.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 7D 49 83 41 BD 63 90 41 3F D6 9A BF 00 00 | ..}I.A.c.A?.....\n"
  68.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 7D 49 83 41 BD 63 90 41 3F D6 | ......}I.A.c.A?.\n"
  69.             "[03:07:13][main.c:30 in writePacketToFile]  9A BF 00 00 00 00 00 00 00 00 00 00 00 00 06 00 | ................\n"
  70.             "[03:07:13][main.c:30 in writePacketToFile]  03 0F 00 00 00 00 00 00 00 00 0C 00 BA 0E 00 10 | ................\n"
  71.             "[03:07:13][main.c:30 in writePacketToFile]  74 45 03 0F 00 00 00 00 0C 00 BA 0E 00 48 80 45 | tE...........H.E\n"
  72.             "[03:07:13][main.c:30 in writePacketToFile]  03 0F 00 00 00 00 12 00 BA 0E 00 10 74 45 03 0F | ............tE..\n"
  73.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 0C 0F 00 00 40 40 00 00 00 00 12 00 | ........@@......\n"
  74.             "[03:07:13][main.c:30 in writePacketToFile]  BA 0E 00 80 6F 45 03 0F 00 00 00 00 0C 0F 00 00 | ....oE..........\n"
  75.             "[03:07:13][main.c:30 in writePacketToFile]  80 40 12 00 BA 0E 00 A8 82 45 03 0F 00 00 00 00 | .@.......E......\n"
  76.             "[03:07:13][main.c:30 in writePacketToFile]  0C 0F 00 00 40 40 06 00 03 0F 00 00 00 00 00 00 | ....@@..........\n"
  77.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 12 00 BA 0E 00 48 80 45 03 0F 00 00 | .........H.E....\n"
  78.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 0C 0F 00 00 40 40 00 00 00 00 3B 00 C5 0E | ......@@....;...\n"
  79.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 40 40 BA 0E 00 10 74 45 03 0F 00 00 00 00 | ..@@....tE......\n"
  80.             "[03:07:13][main.c:30 in writePacketToFile]  84 0F 06 00 53 68 69 6E 65 00 87 0F 09 00 53 68 | ....Shine.....Sh\n"
  81.             "[03:07:13][main.c:30 in writePacketToFile]  69 6E 65 42 72 61 00 8A 0F 08 00 4D 65 6D 65 6E | ineBra.....Memen\n"
  82.             "[03:07:13][main.c:30 in writePacketToFile]  74 6F 00 0C 0F 00 00 40 40 12 00 BA 0E 00 10 74 | to.....@@......t\n"
  83.             "[03:07:13][main.c:30 in writePacketToFile]  45 03 0F 00 00 00 00 0C 0F 00 00 00 40 31 00 BA | E...........@1..\n"
  84.             "[03:07:13][main.c:30 in writePacketToFile]  0E 00 10 74 45 03 0F 00 00 00 00 84 0F 02 00 43 | ...tE..........C\n"
  85.             "[03:07:13][main.c:30 in writePacketToFile]  00 87 0F 09 00 4E 65 63 6B 6C 61 63 65 00 8A 0F | .....Necklace...\n"
  86.             "[03:07:13][main.c:30 in writePacketToFile]  08 00 4D 65 6D 65 6E 74 6F 00 0C 0F 00 00 40 40 | ..Memento.....@@\n"
  87.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 53 75 6D 69 54 68 72 6F 77 48 61 6D 73 74 | ..SumiThrowHamst\n"
  88.             "[03:07:13][main.c:30 in writePacketToFile]  65 72 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | er..............\n"
  89.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  90.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  91.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  92.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  93.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  94.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  95.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  96.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 13 27 00 00 B9 0B 02 00 01 00 00 00 02 00 | ...'............\n"
  97.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 02 00 00 00 04 00 00 00 9D 1A 08 00 06 00 | ................\n"
  98.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 07 00 00 00 10 27 00 00 F8 2A 00 00 4D 75 | .......'...*..Mu\n"
  99.             "[03:07:13][main.c:30 in writePacketToFile]  02 00 7C 96 98 00 04 00 00 00 09 00 00 00 09 00 | ..|.............\n"
  100.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 04 00 00 00 8D F3 07 00 09 00 00 00 09 00 | ................\n"
  101.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 09 00 00 00 09 00 00 00 0A 00 00 00 06 00 | ................\n"
  102.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 F4 11 00 00 7D 00 00 00 02 00 FD 03 00 00 | ......}.........\n"
  103.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 0C 00 00 00 00 00 00 00 25 E8 | ..............%.\n"
  104.             "[03:07:13][main.c:30 in writePacketToFile]  52 C1 65 19 E5 41 39 F4 EF 42 00 00 00 00 00 00 | R.e..A9..B......\n"
  105.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 25 E8 52 C1 65 19 E5 41 39 F4 EF 42 00 00 | ..%.R.e..A9..B..\n"
  106.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  107.             "[03:07:13][main.c:30 in writePacketToFile]  06 00 03 0F 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  108.             "[03:07:13][main.c:30 in writePacketToFile]  06 00 03 0F 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  109.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 06 00 03 0F 00 00 00 00 00 00 00 00 00 00 | ................\n"
  110.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 53 75 6D 69 00 00 00 00 00 00 | ......Sumi......\n"
  111.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  112.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  113.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  114.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  115.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  116.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  117.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  118.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................\n"
  119.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 16 27 00 00 D3 07 02 00 1E 00 | .......'........\n"
  120.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 56 95 09 00 02 00 00 00 04 00 00 00 9B 1E | ..V.............\n"
  121.             "[03:07:13][main.c:30 in writePacketToFile]  08 00 6F A5 07 00 9E CC 07 00 10 27 00 00 F8 2A | ..o........'...*\n"
  122.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 40 27 02 00 AF 5F 03 00 2E 7A 09 00 09 00 | ..@'..._...z....\n"
  123.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 09 00 00 00 04 00 00 00 90 F3 07 00 09 00 | ................\n"
  124.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 09 00 00 00 22 2C 09 00 11 2C 09 00 E2 E1 | ......',...,....\n"
  125.             "[03:07:13][main.c:30 in writePacketToFile]  08 00 24 00 00 00 2F 18 00 00 7D 00 00 00 03 00 | ..$.../...}.....\n"
  126.             "[03:07:13][main.c:30 in writePacketToFile]  E9 03 00 00 00 00 82 33 00 00 D4 B3 00 00 00 00 | .......3........\n"
  127.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 FC 78 2F 42 BD 63 90 41 C6 01 4A 40 00 00 | ...x/B.c.A..J@..\n"
  128.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 00 00 FC 78 2F 42 BD 63 90 41 C6 01 | .......x/B.c.A..\n"
  129.             "[03:07:13][main.c:30 in writePacketToFile]  4A 40 00 00 00 00 00 00 00 00 00 00 00 00 06 00 | J@..............\n"
  130.             "[03:07:13][main.c:30 in writePacketToFile]  03 0F 00 00 00 00 00 00 00 00 12 00 C5 0E 00 00 | ................\n"
  131.             "[03:07:13][main.c:30 in writePacketToFile]  40 40 BA 0E 00 60 86 44 03 0F 00 00 00 00 0C 00 | @@...`.D........\n"
  132.             "[03:07:13][main.c:30 in writePacketToFile]  BA 0E 00 60 86 44 03 0F 00 00 00 00 12 00 C5 0E | ...`.D..........\n"
  133.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 40 BA 0E 00 60 86 44 03 0F 00 00 00 00 | ...@...`.D......\n"
  134.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 0C 00 BA 0E 00 A0 84 44 03 0F 00 00 | ...........D....\n"
  135.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 12 00 C5 0E 00 00 40 40 BA 0E 00 E0 C2 44 | ........@@.....D\n"
  136.             "[03:07:13][main.c:30 in writePacketToFile]  03 0F 00 00 00 00 06 00 03 0F 00 00 00 00 00 00 | ................\n"
  137.             "[03:07:13][main.c:30 in writePacketToFile]  00 00 00 00 12 00 C5 0E 00 00 00 40 BA 0E 00 60 | ...........@...`\n"
  138.             "[03:07:13][main.c:30 in writePacketToFile]  86 44 03 0F 00 00 00 00 00 00 00 00 0C 00 BA 0E | .D..............\n"
  139.             "[03:07:13][main.c:30 in writePacketToFile]  00 30 54 45 03 0F 00 00 00 00 0C 00 BA 0E 00 30 | .0TE...........0\n"
  140.             "[03:07:13][main.c:30 in writePacketToFile]  54 45 03 0F 00 00 00 00 0C 00 BA 0E 00 30 54 45 | TE...........0TE\n"
  141.             "[03:07:13][main.c:30 in writePacketToFile]  03 0F 00 00 00 00 00 00                         | ........\n",
  142.             NULL, &captureSize
  143.         );
  144.  
  145.         compareMem(&replyPacket, sizeof (replyPacket), capture, captureSize);
  146.     }
  147. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement