diff options
author | Johann Latocha | 2012-01-20 14:30:07 +0100 |
---|---|---|
committer | Johann Latocha | 2012-01-20 14:30:07 +0100 |
commit | eeec0aa91fafefc3d55ebddf04b94a3bfc9e20bc (patch) | |
tree | ae486a7e58ab50a17909be5ae31809cc9ed3b613 /src/server/server.c | |
parent | First working version :) (diff) | |
download | dnbd3-eeec0aa91fafefc3d55ebddf04b94a3bfc9e20bc.tar.gz dnbd3-eeec0aa91fafefc3d55ebddf04b94a3bfc9e20bc.tar.xz dnbd3-eeec0aa91fafefc3d55ebddf04b94a3bfc9e20bc.zip |
Support files > 4GB
Diffstat (limited to 'src/server/server.c')
-rw-r--r-- | src/server/server.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/server/server.c b/src/server/server.c index dfa53d7..7f62a53 100644 --- a/src/server/server.c +++ b/src/server/server.c @@ -20,6 +20,7 @@ #include "../version.h" int file; +off_t filesize; void print_help(char* argv_0) { @@ -50,10 +51,6 @@ void *handle_query(void *client_socket) struct dnbd3_request request; struct dnbd3_reply reply; uint16_t cmd; - off_t filesize; - struct stat st; - fstat(file, &st); - filesize = st.st_size; while (recv(sock, &request, sizeof(struct dnbd3_request), MSG_WAITALL) > 0) { @@ -107,6 +104,9 @@ int main(int argc, char* argv[]) { case 'f': file = open(optarg, O_RDONLY); + struct stat st; + fstat(file, &st); + filesize = st.st_size; break; case 'h': print_help(argv[0]); @@ -154,6 +154,7 @@ int main(int argc, char* argv[]) exit(EXIT_FAILURE); } + printf("INFO: Filesize: %llu bytes\n", filesize); printf("INFO: Server is ready...\n"); while (1) |