X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=netatalk.git;a=blobdiff_plain;f=libatalk%2Fcnid%2Ftdb%2Fcnid_tdb_resolve.c;h=b999ca3e001d73b6d5271149b52c3a3e814dc773;hp=0f18e822750112282c3678e6d5c8d0e278f31c54;hb=5eb3b5ac51c8221009041928a5a08c101d2be743;hpb=ecfc96169ab669b578e53fa8e13592934fe37788 diff --git a/libatalk/cnid/tdb/cnid_tdb_resolve.c b/libatalk/cnid/tdb/cnid_tdb_resolve.c index 0f18e822..b999ca3e 100644 --- a/libatalk/cnid/tdb/cnid_tdb_resolve.c +++ b/libatalk/cnid/tdb/cnid_tdb_resolve.c @@ -1,5 +1,4 @@ /* - * $Id: cnid_tdb_resolve.c,v 1.2 2005-04-28 20:50:02 bfernhomberg Exp $ */ #ifdef HAVE_CONFIG_H @@ -11,22 +10,22 @@ #include "cnid_tdb.h" /* Return the did/name pair corresponding to a CNID. */ -char *cnid_tdb_resolve(struct _cnid_db *cdb, cnid_t * id, void *buffer, u_int32_t len) +char *cnid_tdb_resolve(struct _cnid_db *cdb, cnid_t * id, void *buffer, size_t len) { struct _cnid_tdb_private *db; TDB_DATA key, data; - if (!cdb || !(db = cdb->_private) || !id || !(*id)) { + if (!cdb || !(db = cdb->cnid_db_private) || !id || !(*id)) { return NULL; } - key.dptr = (char *)id; + key.dptr = (unsigned char *)id; key.dsize = sizeof(cnid_t); data = tdb_fetch(db->tdb_cnid, key); if (data.dptr) { if (data.dsize < len && data.dsize > sizeof(cnid_t)) { - memcpy(id, (char *)data.dptr + TDB_DEVINO_LEN, sizeof(cnid_t)); - strcpy(buffer, (char *)data.dptr + TDB_HEADER_LEN); + memcpy(id, (char *)data.dptr + +CNID_DID_OFS, sizeof(cnid_t)); + strcpy(buffer, (char *)data.dptr + CNID_NAME_OFS); free(data.dptr); return buffer; }