4 #include <sys/socket.h>
5 #include <netinet/in.h>
12 #define TEST_FILE "/root/Dropbox/school/p2pkp/test/client/test_file"
14 int main(int argc, char **argv)
17 struct sockaddr_in psin;
20 if (argc % 2 == 0 || argc < 2) {
21 fprintf(stderr, "Usage: %s <peer_ip1> <peer_port1> "
22 "<pper_ip2> <peer_port2> ...\n", argv[0]);
26 printf("Opening AF_P2PKP socket\n");
28 sock = socket(AF_P2PKP, SOCK_DGRAM, 0);
29 printf("Socket returned: %d\n", sock);
32 printf("Cannot create AF_P2PKP socket: %s(%d)\n",
33 strerror(errno), errno);
36 printf("Successfully created AF_P2PKP socket: %d\n", sock);
40 printf("Connecting to: %s:%s\n", argv[0], argv[1]);
42 host = gethostbyname(argv[0]);
43 psin.sin_family = AF_INET;
44 psin.sin_port = htons(atoi(argv[1]));
45 psin.sin_addr = *((struct in_addr *)host->h_addr);
47 if (connect(sock, (struct sockaddr *)&psin,
48 sizeof(struct sockaddr_in)) == -1)
50 printf("Cannot connect to server: %s(%d)\n", strerror(errno), errno);
53 printf("Connected to: %s:%s\n", argv[0], argv[1]);
57 printf("Starting to write on the socket\n");
59 err = write(sock, TEST_FILE, sizeof(TEST_FILE) - 1);
61 printf("Error while sending file %s: %s(%d)\n", TEST_FILE,
62 strerror(errno), errno);
66 printf("Successfully written file\n");