/*
- * $Id: file.c,v 1.34 2002-01-03 17:49:38 sibaz Exp $
+ * $Id: file.c,v 1.39 2002-02-02 19:11:33 jmarcus Exp $
*
* Copyright (c) 1990,1993 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
#include <sys/mman.h>
#include <errno.h>
-#include <syslog.h>
+#include <atalk/logger.h>
#include <sys/types.h>
#include <sys/time.h>
#include <sys/param.h>
*/
const u_char ufinderi[] = {
- 'T', 'E', 'X', 'T', 'U', 'N', 'I', 'X',
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0
-};
+ 'T', 'E', 'X', 'T', 'U', 'N', 'I', 'X',
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0
+ };
int getfilparams(struct vol *vol,
u_int16_t bitmap,
u_char achar, fdType[4];
#ifdef DEBUG
- syslog(LOG_INFO, "begin getfilparams:");
+ LOG(log_info, logtype_default, "begin getfilparams:");
#endif /* DEBUG */
upath = mtoupath(vol, path);
if ( ad_open( upath, ADFLAGS_HF, O_RDONLY, 0, adp) < 0 ) {
isad = 0;
} else if ( fstat( ad_hfileno( adp ), &hst ) < 0 ) {
- syslog( LOG_ERR, "getfilparams fstat: %s", strerror(errno) );
+ LOG(log_error, logtype_default, "getfilparams fstat: %s", strerror(errno) );
}
data = buf;
#ifdef CNID_DB
aint = cnid_add(vol->v_db, st, dir->d_did, upath,
strlen(upath), aint);
+ /* Throw errors if cnid_add fails. */
+ if (aint == CNID_INVALID) {
+ switch (errno) {
+ case CNID_ERR_PARAM:
+ LOG(log_error, logtype_default, "getfilparams: Incorrect parameters passed to cnid_add");
+ return(AFPERR_PARAM);
+ case CNID_ERR_PATH:
+ return(AFPERR_PARAM);
+ case CNID_ERR_DB:
+ case CNID_ERR_MAX:
+ return(AFPERR_MISC);
+ }
+ }
#endif /* CNID_DB */
if (aint == 0) {
*buflen = data - buf;
#ifdef DEBUG
- syslog(LOG_INFO, "end getfilparams:");
+ LOG(log_info, logtype_default, "end getfilparams:");
#endif /* DEBUG */
return( AFP_OK );
#endif /* FORCE_UIDGID */
#ifdef DEBUG
- syslog(LOG_INFO, "begin afp_createfile:");
+ LOG(log_info, logtype_default, "begin afp_createfile:");
#endif /* DEBUG */
*rbuflen = 0;
setvoltime(obj, vol );
#ifdef DEBUG
- syslog(LOG_INFO, "end afp_createfile");
+ LOG(log_info, logtype_default, "end afp_createfile");
#endif /* DEBUG */
#ifdef FORCE_UIDGID
u_int16_t vid, bitmap;
#ifdef DEBUG
- syslog(LOG_INFO, "begin afp_setfilparams:");
+ LOG(log_info, logtype_default, "begin afp_setfilparams:");
#endif /* DEBUG */
*rbuflen = 0;
}
#ifdef DEBUG
- syslog(LOG_INFO, "end afp_setfilparams:");
+ LOG(log_info, logtype_default, "end afp_setfilparams:");
#endif /* DEBUG */
return( rc );
#endif /* FORCE_UIDGID */
#ifdef DEBUG
- syslog(LOG_INFO, "begin setfilparams:");
+ LOG(log_info, logtype_default, "begin setfilparams:");
#endif /* DEBUG */
upath = mtoupath(vol, path);
}
#ifdef DEBUG
- syslog(LOG_INFO, "end setfilparams:");
+ LOG(log_info, logtype_default, "end setfilparams:");
#endif /* DEBUG */
return err;
/* existence check moved to afp_moveandrename */
#ifdef DEBUG
- syslog(LOG_INFO, "begin renamefile:");
+ LOG(log_info, logtype_default, "begin renamefile:");
#endif /* DEBUG */
if ( rename( src, dst ) < 0 ) {
ad_close( &ad, ADFLAGS_HF );
#ifdef DEBUG
- syslog(LOG_INFO, "end renamefile:");
+ LOG(log_info, logtype_default, "end renamefile:");
#endif /* DEBUG */
return( AFP_OK );
u_int16_t svid, dvid;
#ifdef DEBUG
- syslog(LOG_INFO, "begin afp_copyfile:");
+ LOG(log_info, logtype_default, "begin afp_copyfile:");
#endif /* DEBUG */
*rbuflen = 0;
#endif /* DROPKLUDGE */
#ifdef DEBUG
- syslog(LOG_INFO, "end afp_copyfile:");
+ LOG(log_info, logtype_default, "end afp_copyfile:");
#endif /* DEBUG */
return( retvalue );
ssize_t cc;
#ifdef DEBUG
- syslog(LOG_INFO, "begin copy_all:");
+ LOG(log_info, logtype_default, "begin copy_all:");
#endif /* DEBUG */
while (buflen > 0) {
}
#ifdef DEBUG
- syslog(LOG_INFO, "end copy_all:");
+ LOG(log_info, logtype_default, "end copy_all:");
#endif /* DEBUG */
return AFP_OK;
ssize_t cc;
#ifdef DEBUG
- syslog(LOG_INFO, "begin copyfile:");
+ LOG(log_info, logtype_default, "begin copyfile:");
#endif /* DEBUG */
if (newname) {
}
#ifdef DEBUG
- syslog(LOG_INFO, "end copyfile:");
+ LOG(log_info, logtype_default, "end copyfile:");
#endif /* DEBUG */
return( AFP_OK );
int openmode = O_RDWR;
#ifdef DEBUG
- syslog(LOG_INFO, "begin deletefile:");
+ LOG(log_info, logtype_default, "begin deletefile:");
#endif /* DEBUG */
while(1) {
ad_close( &ad, adflags );
#ifdef DEBUG
- syslog(LOG_INFO, "end deletefile:");
+ LOG(log_info, logtype_default, "end deletefile:");
#endif /* DEBUG */
return err;
u_short vid;
#ifdef DEBUG
- syslog(LOG_INFO, "begin afp_createid:");
+ LOG(log_info, logtype_default, "begin afp_createid:");
#endif /* DEBUG */
*rbuflen = 0;
}
#endif /* AD_VERSION > AD_VERSION1 */
- if (id = cnid_add(vol->v_db, &st, did, upath, len, id)) {
+ if (id = cnid_add(vol->v_db, &st, did, upath, len, id) != CNID_INVALID) {
memcpy(rbuf, &id, sizeof(id));
*rbuflen = sizeof(id);
return AFP_OK;
}
#ifdef DEBUG
- syslog(LOG_INFO, "ending afp_createid...:");
+ LOG(log_info, logtype_default, "ending afp_createid...:");
#endif /* DEBUG */
switch (errno) {
return AFPERR_ACCESS;
break;
default:
- syslog(LOG_ERR, "afp_createid: cnid_add: %m");
+ LOG(log_error, logtype_default, "afp_createid: cnid_add: %s", strerror(errno));
return AFPERR_PARAM;
}
}
u_int16_t vid, bitmap;
#ifdef DEBUG
- syslog(LOG_INFO, "begin afp_resolveid:");
+ LOG(log_info, logtype_default, "begin afp_resolveid:");
#endif /* DEBUG */
*rbuflen = 0;
memcpy(rbuf, ibuf, sizeof(bitmap));
#ifdef DEBUG
- syslog(LOG_INFO, "end afp_resolveid:");
+ LOG(log_info, logtype_default, "end afp_resolveid:");
#endif /* DEBUG */
return AFP_OK;
u_short vid;
#ifdef DEBUG
- syslog(LOG_INFO, "begin afp_deleteid:");
+ LOG(log_info, logtype_default, "begin afp_deleteid:");
#endif /* DEBUG */
*rbuflen = 0;
}
#ifdef DEBUG
- syslog(LOG_INFO, "end afp_deleteid:");
+ LOG(log_info, logtype_default, "end afp_deleteid:");
#endif /* DEBUG */
return err;
u_int16_t vid;
#ifdef DEBUG
- syslog(LOG_INFO, "begin afp_exchangefiles:");
+ LOG(log_info, logtype_default, "begin afp_exchangefiles:");
#endif /* DEBUG */
*rbuflen = 0;
case EPERM:
case EACCES:
err = AFPERR_ACCESS;
- break;
+ break;
default:
err = AFPERR_PARAM;
}
case EPERM:
case EACCES:
err = AFPERR_ACCESS;
- break;
+ break;
default:
err = AFPERR_PARAM;
}
#endif /* CNID_DB */
#ifdef DEBUG
- syslog(LOG_INFO, "ending afp_exchangefiles:");
+ LOG(log_info, logtype_default, "ending afp_exchangefiles:");
#endif /* DEBUG */
return AFP_OK;