This commit is contained in:
2025-11-03 03:43:07 +00:00
parent 95d1e62323
commit a2ec6f8841
11 changed files with 408 additions and 411 deletions
+6 -8
View File
@@ -6,8 +6,6 @@
#include <unistd.h> //write
#include <netdb.h>
#define EXPECTED_CHECKSUM "9f1b7e4717bffb60d6d6c39b427932e1"
struct sockaddr_in sa;
int main()
{
@@ -19,7 +17,6 @@ int main()
sa.sin_port = htons(10059);
inet_pton(AF_INET, "127.0.0.1", &(sa.sin_addr));
int x = connect(my_sock, (struct sockaddr *)&sa, sizeof(sa));
perror("Connect");
// Request File Size
printf("\nRequesting File Size\n");
@@ -38,10 +35,9 @@ int main()
send(my_sock, "RX", 2, 0);
int total_bytes_received = 0;
if (access("rx.txt", F_OK) == 0) {remove("rx.txt");}
FILE *fp = fopen("rx.txt", "a");
while(total_bytes_received < fileSize) {
FILE *fp = fopen("rx.txt", "w");
char file_buffer[chunkSize];
while(total_bytes_received < fileSize) {
int bytes_received = recv(my_sock, file_buffer, chunkSize, 0);
if (bytes_received <= 0) {break;}
total_bytes_received += bytes_received;
@@ -50,7 +46,9 @@ int main()
}
// Calculate MD5 checksum using system command
printf("\nCalculating MD5 checksum...\n");
printf("Expected Checksum:\n%s\nReceived File Checksum: \n", EXPECTED_CHECKSUM);
system("md5sum rx.txt | awk '{ print $1 }'");
printf("Expected Checksum:\n");
// system("md5sum bits.txt | awk '{ print $1 }'");
printf("Received File Checksum: \n");
// system("md5sum rx.txt | awk '{ print $1 }'");
fclose(fp);
}
+2 -4
View File
@@ -1,5 +1,3 @@
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
@@ -9,7 +7,7 @@
#include <errno.h>
#include <signal.h>
#define CHUNK_SIZE 8192
#define CHUNK_SIZE 2048
int send_size, recv_size;
int main(int argc, char *argv[])
@@ -76,8 +74,8 @@ int main(int argc, char *argv[])
{
// Client ready to receive file
FILE *fp = fopen("bits.txt", "rb");
for(int i = 0; i < fileSize; i += CHUNK_SIZE) {
char buffer[CHUNK_SIZE];
for(int i = 0; i < fileSize; i += CHUNK_SIZE) {
size_t bytesRead = fread(buffer, 1, CHUNK_SIZE, fp);
if (bytesRead > 0) {
send_size = send(client_sock, buffer, bytesRead, 0);
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.