tcp server
#include <stdio.h>
#include <netinet/in.h>
#include <unistd.h>
int main() {
int s = socket(AF_INET, SOCK_STREAM, 0);
struct sockaddr_in a = {AF_INET, htons(1234), INADDR_ANY};
bind(s, (void*)&a, sizeof(a));
listen(s, 1);
int c = accept(s, NULL, NULL);
char msg[100];
read(c, msg, 100);
printf("Client: %s\n", msg);
write(c, "Hi Client", 10);
close(c); close(s);
return 0;
}
tcp client
#include <stdio.h>
#include <netinet/in.h>
#include <unistd.h>
#include <arpa/inet.h>
int main() {
int s = socket(AF_INET, SOCK_STREAM, 0);
struct sockaddr_in a = {AF_INET, htons(1234)};
inet_pton(AF_INET, "127.0.0.1", &a.sin_addr);
connect(s, (void*)&a, sizeof(a));
write(s, "Hi Server", 10);
char msg[100];
read(s, msg, 100);
printf("Server: %s\n", msg);
close(s);
return 0;
}
udp server
#include <stdio.h>
#include <netinet/in.h>
int main() {
int s = socket(AF_INET, SOCK_DGRAM, 0);
struct sockaddr_in a = {AF_INET, htons(1234), INADDR_ANY};
bind(s, (void*)&a, sizeof(a));
char msg[100];
struct sockaddr_in c;
socklen_t l = sizeof(c);
recvfrom(s, msg, sizeof(msg), 0, (void*)&c, &l);
printf("Client: %s\n", msg);
sendto(s, "Hi Client", 10, 0, (void*)&c, l);
return 0;
}
udp client
#include <stdio.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int main() {
int s = socket(AF_INET, SOCK_DGRAM, 0);
struct sockaddr_in a = {AF_INET, htons(1234)};
inet_pton(AF_INET, "127.0.0.1", &a.sin_addr);
sendto(s, "Hi Server", 10, 0, (void*)&a, sizeof(a));
char msg[100];
socklen_t l = sizeof(a);
recvfrom(s, msg, sizeof(msg), 0, (void*)&a, &l);
printf("Server: %s\n", msg);
return 0;
}
Comments
Post a Comment