84 lines
2.9 KiB
Diff
84 lines
2.9 KiB
Diff
diff -uPr afpfs-ng-0.8.1/include/afpfs-ng/afp.h afpfs-ng-0.8.1/include/afpfs-ng/afp.h
|
|
--- afpfs-ng-0.8.1/include/afpfs-ng/afp.h 2012-10-30 22:30:29.000000000 +0100
|
|
+++ afpfs-ng-0.8.1/include/afpfs-ng/afp.h 2012-10-30 22:26:15.000000000 +0100
|
|
@@ -71,7 +71,7 @@
|
|
struct afp_file_info * largelist_next;
|
|
unsigned char isdir;
|
|
unsigned long long size;
|
|
- unsigned short resourcesize;
|
|
+ unsigned long long resourcesize;
|
|
unsigned int resource;
|
|
unsigned short forkid;
|
|
struct afp_icon * icon;
|
|
--- afpfs-ng-0.8.1/lib/loop.c 2012-10-30 22:48:19.000000000 +0100
|
|
+++ afpfs-ng-0.8.1/lib/loop.c 2012-10-30 22:48:47.000000000 +0100
|
|
@@ -87,12 +87,13 @@
|
|
static int ending=0;
|
|
void * just_end_it_now(void * ignore)
|
|
{
|
|
- if (ending) return;
|
|
+ if (ending) return NULL;
|
|
ending=1;
|
|
if (libafpclient->forced_ending_hook)
|
|
libafpclient->forced_ending_hook();
|
|
exit_program=2;
|
|
signal_main_thread();
|
|
+ return NULL;
|
|
}
|
|
|
|
/*This is a hack to handle a problem where the first pthread_kill doesnt' work*/
|
|
diff -uPr afpfs-ng-0.8.1/lib/dsi.c afpfs-ng-0.8.1/lib/dsi.c
|
|
--- afpfs-ng-0.8.1/lib/dsi.c 2012-10-30 22:30:29.000000000 +0100
|
|
+++ afpfs-ng-0.8.1/lib/dsi.c 2012-10-30 22:11:09.000000000 +0100
|
|
@@ -478,7 +478,7 @@
|
|
}
|
|
server->flags=ntohs(reply1->flags);
|
|
|
|
- p=(void *)((unsigned int) server->incoming_buffer + sizeof(*reply1));
|
|
+ p=(void *)((unsigned long) server->incoming_buffer + sizeof(*reply1));
|
|
p+=copy_from_pascal(server->server_name,p,AFP_SERVER_NAME_LEN)+1;
|
|
|
|
/* Now work our way through the variable bits */
|
|
@@ -762,7 +762,7 @@
|
|
printf("<<< read() of rest of AFP, %d bytes\n",amount_to_read);
|
|
#endif
|
|
ret = read(server->fd, (void *)
|
|
- (((unsigned int) server->incoming_buffer)+server->data_read),
|
|
+ (((unsigned long) server->incoming_buffer)+server->data_read),
|
|
amount_to_read);
|
|
if (ret<0) return -1;
|
|
if (ret==0) {
|
|
diff -uPr afpfs-ng-0.8.1/lib/lowlevel.c afpfs-ng-0.8.1/lib/lowlevel.c
|
|
--- afpfs-ng-0.8.1/lib/lowlevel.c 2012-10-30 22:30:29.000000000 +0100
|
|
+++ afpfs-ng-0.8.1/lib/lowlevel.c 2012-10-30 22:29:57.000000000 +0100
|
|
@@ -582,7 +582,7 @@
|
|
if (volume->server->using_version->av_number>=30 && fp.unixprivs.permissions != 0)
|
|
stbuf->st_mode |= fp.unixprivs.permissions;
|
|
else
|
|
- set_nonunix_perms(&stbuf->st_mode,&fp);
|
|
+ set_nonunix_perms((mode_t *)&stbuf->st_mode,&fp);
|
|
|
|
stbuf->st_uid=fp.unixprivs.uid;
|
|
stbuf->st_gid=fp.unixprivs.gid;
|
|
diff -uPr afpfs-ng-0.8.1/lib/proto_directory.c afpfs-ng-0.8.1/lib/proto_directory.c
|
|
--- afpfs-ng-0.8.1/lib/proto_directory.c 2012-10-30 22:30:29.000000000 +0100
|
|
+++ afpfs-ng-0.8.1/lib/proto_directory.c 2012-10-30 22:15:28.000000000 +0100
|
|
@@ -259,7 +259,7 @@
|
|
uint16_t reqcount;
|
|
} __attribute__((__packed__)) * reply = (void *) buf;
|
|
|
|
- struct {
|
|
+ struct sEntry{
|
|
uint16_t size;
|
|
uint8_t isdir;
|
|
uint8_t pad;
|
|
@@ -293,7 +293,7 @@
|
|
filecur=new_file;
|
|
}
|
|
|
|
- entry = p;
|
|
+ entry = (struct sEntry *)p;
|
|
|
|
parse_reply_block(server,p+sizeof(*entry),
|
|
ntohs(entry->size),entry->isdir,
|