Harald Welte | 4b233b4 | 2012-11-07 08:32:31 +0100 | [diff] [blame^] | 1 | |
| 2 | memset(local_buffer, 0, sizeof(local_buffer)); |
| 3 | /* Read from socket (This is a sample, must be more complex) **********/ |
| 4 | ret = recv(sock_tcp, local_buffer, 4, MSG_PEEK); |
| 5 | if( ret != 4 ){ printf("Error in recv(PEEK)\n");return( -1 );}; |
| 6 | memcpy(&tempo, local_buffer, sizeof(uint32_t)); /* get lenght PDU */ |
| 7 | local_buffer_len = ntohl( tempo ); |
| 8 | ret = recv(sock_tcp, local_buffer, local_buffer_len, 0); |
| 9 | if( ret != local_buffer_len ){ |
| 10 | printf("Error in recv(%d bytes)\n", local_buffer_len);return( -1 );}; |
| 11 | /* Print Buffer *******************************************************/ |
| 12 | memset(print_buffer, 0, sizeof(print_buffer)); |
| 13 | ret = smpp34_dumpBuf(print_buffer, sizeof(print_buffer), |
| 14 | local_buffer, local_buffer_len); |
| 15 | if( ret != 0 ){ printf("Error in smpp34_dumpBuf():%d:\n%s\n", |
| 16 | smpp34_errno, smpp34_strerror ); return( -1 ); }; |
| 17 | printf("-----------------------------------------------------------\n"); |
| 18 | printf("RECEIVE BUFFER \n%s\n", print_buffer); |
| 19 | /* unpack PDU *********************************************************/ |
| 20 | ret = smpp34_unpack2((void*)&res, local_buffer, local_buffer_len); |
| 21 | if( ret != 0){ printf( "Error in smpp34_unpack():%d:%s\n", |
| 22 | smpp34_errno, smpp34_strerror); return( -1 ); }; |
| 23 | /* Print PDU **********************************************************/ |
| 24 | memset(print_buffer, 0, sizeof(print_buffer)); |
| 25 | ret = smpp34_dumpPdu2(print_buffer, sizeof(print_buffer), (void*)&res); |
| 26 | if( ret != 0){ printf("Error in smpp34_dumpPdu():%d:\n%s\n", |
| 27 | smpp34_errno, smpp34_strerror); return( -1 ); }; |
| 28 | printf("RECEIVE PDU \n%s\n", print_buffer); |
| 29 | |