Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <unistd.h>
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- void server(void) {
- int s = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
- if(s < 0) {
- perror("socket");
- exit(1);
- }
- struct sockaddr_in server;
- server.sin_family = AF_INET;
- server.sin_addr.s_addr = INADDR_ANY;
- server.sin_port = htons(8888);
- if(bind(s, (struct sockaddr *)&server, sizeof(server)) < 0) {
- perror("bind");
- exit(1);
- }
- while(1) {
- char r = 0;
- if(recv(s, &r, sizeof(r), 0) < 0) {
- perror("recv");
- exit(1);
- }
- printf("%c", r);
- }
- close(s);
- }
- void client(void) {
- int s = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
- if(s < 0) {
- perror("socket");
- exit(1);
- }
- struct sockaddr_in server;
- server.sin_family = AF_INET;
- server.sin_addr.s_addr = inet_addr("127.0.0.1");
- server.sin_port = htons(8888);
- while(1) {
- if(sendto(s, "x", 1, 0, (struct sockaddr *)&server, sizeof(server)) < 0) {
- perror("sendto");
- exit(1);
- }
- }
- close(s);
- }
- int main(void) {
- if(fork() == 0) server();
- else client();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement