====== C++ send UDP packet ====== #include #include #include void udpentry(std::string message) { struct sockaddr_in myaddr; int sock; memset(&myaddr, 0, sizeof(myaddr)); myaddr.sin_family=AF_INET; myaddr.sin_port=htons(10001); if((sock=socket(AF_INET, SOCK_DGRAM, 0))<0) { perror("Failed to create socket"); exit(EXIT_FAILURE); } if(bind(sock,( struct sockaddr *) &myaddr, sizeof(myaddr))<0) { perror("bind failed"); exit(EXIT_FAILURE); } inet_pton(AF_INET,"192.168.180.54",&myaddr.sin_addr.s_addr); myaddr.sin_port=htons(514); if(sendto(sock, message.c_str(), message.size(), 0, (struct sockaddr *)&myaddr, sizeof(myaddr))!=message.size()) { perror("Mismatch in number of bytes sent"); exit(EXIT_FAILURE); } close(sock); } int main() { udpentry("%TST-1-000001 TEST SYSLOG C++"); return 0; }