aboutsummaryrefslogtreecommitdiff
path: root/server.c
diff options
context:
space:
mode:
authorSyndamia <kamen@syndamia.com>2023-12-07 11:07:10 +0200
committerSyndamia <kamen@syndamia.com>2023-12-07 11:07:10 +0200
commitcfe9c789e53f470c35f3a6c0d8a6176f74df3c13 (patch)
tree7308222600de9a82eed678096f45feeee859dfc1 /server.c
parentbba64eb044562a88b7f93ab62eef62ea4fbb5cb4 (diff)
downloadpico-web-cfe9c789e53f470c35f3a6c0d8a6176f74df3c13.tar
pico-web-cfe9c789e53f470c35f3a6c0d8a6176f74df3c13.tar.gz
pico-web-cfe9c789e53f470c35f3a6c0d8a6176f74df3c13.zip
[server,browser] Rough file transmission
Diffstat (limited to 'server.c')
-rw-r--r--server.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/server.c b/server.c
index 54611c8..c7e3672 100644
--- a/server.c
+++ b/server.c
@@ -6,7 +6,9 @@
#include <unistd.h>
#include <stdio.h>
+#include <fcntl.h>
+#include <string.h>
#include <util.h>
int main(int argc, char* argv[]) {
@@ -30,10 +32,15 @@ int main(int argc, char* argv[]) {
char buff[256];
read(fd_client, buff, 256);
- printf("Received: %s\n", buff);
- char response[] = "Server received message!";
- write(fd_client, response, sizeof(response));
+ int fd;
+ herr(fd = open(buff, O_RDONLY), "open");
+ memset(buff, 0, sizeof(buff));
+ while (read(fd, buff, 256)) {
+ write(fd_client, buff, strlen(buff));
+ memset(buff, 0, sizeof(buff));
+ }
+ close(fd);
close(fd_socket);
}