Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Napisz program, ktory bedzie realizowal polecenie zawarte w zadaniu pierwszy, ale w oparciu o protokol UDP/IP
- */
- #include <stdio.h>
- #include <stdlib.h>
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <arpa/inet.h>
- #include <unistd.h>
- #include <string.h>
- #define SERVER_PORT 1919
- void error_handler(const char *msg)
- {
- perror(msg);
- exit(EXIT_FAILURE);
- }
- int main(void)
- {
- int socketfd;
- struct sockaddr_in sockaddr;
- char buffer[BUFSIZ];
- sockaddr.sin_family = AF_INET;
- sockaddr.sin_port = htons(SERVER_PORT);
- sockaddr.sin_addr.s_addr = INADDR_ANY;
- memset(sockaddr.sin_zero, '\0', 8);
- if((socketfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1)
- error_handler("socket");
- if(bind(socketfd, (struct sockaddr *)&sockaddr, sizeof(sockaddr)) == -1)
- error_handler("bind");
- printf("Oczekiwanie na wiadomosc...\n");
- socklen_t socklen = sizeof(struct sockaddr);
- if(recvfrom(socketfd, buffer, BUFSIZ, 0, (struct sockaddr *)&sockaddr, &socklen) == -1)
- error_handler("recvfrom");
- printf("Odebrano wiadomosc: %s\n", buffer);
- if(close(socketfd) == -1)
- error_handler("close");
- return EXIT_SUCCESS;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement