added testing files
This commit is contained in:
parent
45618e6934
commit
2f20425be7
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1,3 @@
|
||||
server
|
||||
.vscode
|
||||
.DS_Store
|
||||
|
BIN
assets/test.jpg
Executable file
BIN
assets/test.jpg
Executable file
Binary file not shown.
After Width: | Height: | Size: 35 KiB |
50
avatarClient.c
Normal file
50
avatarClient.c
Normal file
@ -0,0 +1,50 @@
|
||||
// Client side C/C++ program to demonstrate Socket programming
|
||||
#include <stdio.h>
|
||||
#include <sys/socket.h>
|
||||
#include <stdlib.h>
|
||||
#include <netinet/in.h>
|
||||
#include <string.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
#define PORT 8080
|
||||
|
||||
int main(int argc, char const *argv[])
|
||||
{
|
||||
struct sockaddr_in address;
|
||||
int sock = 0, message_recieved;
|
||||
struct sockaddr_in serv_addr;
|
||||
char buffer[1024];
|
||||
if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0)
|
||||
{
|
||||
printf("\n Socket creation error \n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
memset(&serv_addr, '0', sizeof(serv_addr));
|
||||
|
||||
serv_addr.sin_family = AF_INET;
|
||||
serv_addr.sin_port = htons(PORT);
|
||||
|
||||
if (connect(sock, (struct sockaddr *)&serv_addr, sizeof(serv_addr)) < 0)
|
||||
{
|
||||
printf("\nConnection Failed \n");
|
||||
return -1;
|
||||
}
|
||||
while (1)
|
||||
{
|
||||
message_recieved = recv(sock, buffer, sizeof(buffer), 0);
|
||||
if (strcmp(buffer, "over") == 0)
|
||||
{
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
int av_open = open("package.jpg", O_CREAT | O_RDWR);
|
||||
int av_write = write(av_open, buffer, sizeof(buffer));
|
||||
int av_close = close(av_open);
|
||||
}
|
||||
printf("%s", "Received");
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
62
avatarServer.c
Normal file
62
avatarServer.c
Normal file
@ -0,0 +1,62 @@
|
||||
#include <unistd.h>
|
||||
#include <stdio.h>
|
||||
#include <sys/socket.h>
|
||||
#include <stdlib.h>
|
||||
#include <netinet/in.h>
|
||||
#include <string.h>
|
||||
#include <fcntl.h>
|
||||
|
||||
#define PORT 8080
|
||||
|
||||
int main(int argc, char const *argv[])
|
||||
{
|
||||
int server_fd, new_socket, read_avatar;
|
||||
struct sockaddr_in address;
|
||||
int opt = 1;
|
||||
int addrlen = sizeof(address);
|
||||
char buffer[1024];
|
||||
char *overMessage = "over";
|
||||
|
||||
// Creating socket file descriptor
|
||||
if ((server_fd = socket(AF_INET, SOCK_STREAM, 0)) == 0)
|
||||
{
|
||||
perror("socket failed");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
address.sin_family = AF_INET;
|
||||
address.sin_addr.s_addr = INADDR_ANY;
|
||||
address.sin_port = htons(PORT);
|
||||
|
||||
// Forcefully attaching socket to the port 8080
|
||||
if (bind(server_fd, (struct sockaddr *)&address,
|
||||
sizeof(address)) < 0)
|
||||
{
|
||||
perror("bind failed");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
if (listen(server_fd, 3) < 0)
|
||||
{
|
||||
perror("listen");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
if ((new_socket = accept(server_fd, (struct sockaddr *)&address,
|
||||
(socklen_t *)&addrlen)) < 0)
|
||||
{
|
||||
perror("accept");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
int avatar_fd = open("assets/test.jpg", O_RDONLY);
|
||||
if (avatar_fd < 0)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
while ((read_avatar = read(avatar_fd, buffer, sizeof(buffer))) > 0)
|
||||
{
|
||||
printf("%d\n", read_avatar);
|
||||
send(new_socket, buffer, sizeof(buffer), 0);
|
||||
}
|
||||
send(new_socket, overMessage, sizeof(overMessage), 0);
|
||||
return 0;
|
||||
}
|
0
package.jpg
Executable file
0
package.jpg
Executable file
Loading…
Reference in New Issue
Block a user