X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=etc%2Fafpd%2Fswitch.c;h=5c98e8df57d511565c8d3366a5306925efb74ff6;hb=465246e257d9aff9855e3e35d8fd5983db932b45;hp=7ca7742fc9cb783eb1bb3ac8da1206b650800fd7;hpb=1cb03258cd136fcf1fba6cf45fe5ce26303588fb;p=netatalk.git diff --git a/etc/afpd/switch.c b/etc/afpd/switch.c index 7ca7742f..5c98e8df 100644 --- a/etc/afpd/switch.c +++ b/etc/afpd/switch.c @@ -1,6 +1,4 @@ /* - * $Id: switch.c,v 1.11 2002-10-12 16:42:31 didg Exp $ - * * Copyright (c) 1990,1991 Regents of The University of Michigan. * All Rights Reserved. * @@ -33,8 +31,7 @@ #include #include - -#include "globals.h" +#include /* grab the FP functions */ #include "auth.h" @@ -46,11 +43,11 @@ #include "filedir.h" #include "status.h" #include "misc.h" +#ifdef HAVE_ACLS +#include "acls.h" +#endif -static int afp_null(obj, ibuf, ibuflen, rbuf, rbuflen ) -AFPObj *obj; -char *ibuf, *rbuf; -int ibuflen, *rbuflen; +static int afp_null(AFPObj *obj _U_, char *ibuf, size_t ibuflen _U_, char *rbuf _U_, size_t *rbuflen) { LOG(log_info, logtype_afpd, "afp_null handle %d", *ibuf ); *rbuflen = 0; @@ -62,7 +59,7 @@ int ibuflen, *rbuflen; * Routines marked "afp_null" are AFP functions * which are not yet implemented. A fine line... */ -int (*preauth_switch[])() = { +static AFPCmd preauth_switch[] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, /* 0 - 7 */ NULL, NULL, NULL, NULL, @@ -129,9 +126,9 @@ int (*preauth_switch[])() = { NULL, NULL, NULL, NULL, /* 248 - 255 */ }; -int (**afp_switch)() = preauth_switch; +AFPCmd *afp_switch = preauth_switch; -int (*postauth_switch[])() = { +AFPCmd postauth_switch[] = { NULL, afp_bytelock, afp_closevol, afp_closedir, afp_closefork, afp_copyfile, afp_createdir, afp_createfile, /* 0 - 7 */ afp_delete, afp_enumerate, afp_flush, afp_flushfork, @@ -143,11 +140,7 @@ int (*postauth_switch[])() = { /* 24 - 31 */ afp_setvolparams, afp_write, afp_getfildirparams, afp_setfildirparams, afp_changepw, afp_getuserinfo, afp_getsrvrmesg, afp_createid, /* 32 - 39 */ -#ifdef WITH_CATSEARCH afp_deleteid, afp_resolveid, afp_exchangefiles, afp_catsearch, -#else - afp_deleteid, afp_resolveid, afp_exchangefiles, afp_null, -#endif afp_null, afp_null, afp_null, afp_null, /* 40 - 47 */ afp_opendt, afp_closedt, afp_null, afp_geticon, afp_geticoninfo, afp_addappl, afp_rmvappl, afp_getappl, /* 48 - 55 */ @@ -156,7 +149,7 @@ int (*postauth_switch[])() = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, /* 64 - 71 */ NULL, NULL, NULL, NULL, - NULL, NULL, NULL, NULL, /* 72 - 79 */ + NULL, NULL, afp_syncdir, afp_syncfork, /* 72 - 79 */ NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, /* 80 - 87 */ NULL, NULL, NULL, NULL, @@ -207,20 +200,20 @@ int (*postauth_switch[])() = { /* add a new function if it's specified. return the old function in * "old" if there's a pointer there. */ int uam_afpserver_action(const int id, const int which, - int (*new)(), int (**old)()) + AFPCmd new_table, AFPCmd *old) { switch (which) { case UAM_AFPSERVER_PREAUTH: if (old) *old = preauth_switch[id]; - if (new) - preauth_switch[id] = new; + if (new_table) + preauth_switch[id] = new_table; break; case UAM_AFPSERVER_POSTAUTH: if (old) *old = postauth_switch[id]; - if (new) - postauth_switch[id] = new; + if (new_table) + postauth_switch[id] = new_table; break; default: LOG(log_debug, logtype_afpd, "uam_afpserver_action: unknown switch %d[%d]",