Untitled
unknown
plain_text
5 days ago
2.8 kB
1
Indexable
//clienyt side #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <arpa/inet.h> #define PORT 5555 #define BUFFER_SIZE 1024 void receive_file(int new_socket) { char buffer[BUFFER_SIZE]; FILE *fp = fopen("/home/cse/Documents/received_file.txt", "wb"); if (fp == NULL) { perror("Error opening file"); return; } int bytes_received; while ((bytes_received = recv(new_socket, buffer, BUFFER_SIZE, 0)) > 0) { fwrite(buffer, sizeof(char), bytes_received, fp); } fclose(fp); printf("File received successfully.\n"); } int main() { int server_fd, new_socket; struct sockaddr_in server_addr, client_addr; socklen_t addr_size; server_fd = socket(AF_INET, SOCK_STREAM, 0); if (server_fd == -1) { perror("Socket creation failed"); exit(1); } server_addr.sin_family = AF_INET; server_addr.sin_addr.s_addr = INADDR_ANY; server_addr.sin_port = htons(PORT); if (bind(server_fd, (struct sockaddr*)&server_addr, sizeof(server_addr)) < 0) { perror("Bind failed"); exit(1); } if (listen(server_fd, 5) < 0) { perror("Listen failed"); exit(1); } printf("FTP Server listening on port %d...\n", PORT); addr_size = sizeof(client_addr); new_socket = accept(server_fd, (struct sockaddr*)&client_addr, &addr_size); if (new_socket < 0) { perror("Accept failed"); exit(1); } printf("Client connected. Receiving file...\n"); receive_file(new_socket); close(new_socket); close(server_fd); return 0; } ///server side #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <arpa/inet.h> #define PORT 5555 #define BUFFER_SIZE 1024 void send_file(int socket) { FILE *fp = fopen("/home/cse/Documents/send.txt", "rb"); if (fp == NULL) { perror("File not found"); return; } char buffer[BUFFER_SIZE]; int bytes_read; while ((bytes_read = fread(buffer, sizeof(char), BUFFER_SIZE, fp)) > 0) { send(socket, buffer, bytes_read, 0); } fclose(fp); printf("File sent successfully. Oyyehh\n"); } int main() { int sock; struct sockaddr_in server_addr; sock = socket(AF_INET, SOCK_STREAM, 0); if (sock == -1) { perror("Socket creation failed"); exit(1); } server_addr.sin_family = AF_INET; server_addr.sin_port = htons(PORT); server_addr.sin_addr.s_addr = inet_addr("127.0.0.1"); // Server IP if (connect(sock, (struct sockaddr*)&server_addr, sizeof(server_addr)) < 0) { perror("Connection failed"); exit(1); } printf("Connected to FTP server. Sending file...\n"); send_file(sock); close(sock); return 0; }
Editor is loading...
Leave a Comment