2 * $Id: cnid_mangle_get.c,v 1.5 2002-06-09 07:15:58 jmarcus Exp $
7 #endif /* HAVE_CONFIG_H */
12 #include <sys/param.h>
15 #include <atalk/logger.h>
19 #include <netatalk/endian.h>
20 #include <atalk/adouble.h>
21 #include <atalk/cnid.h>
23 #include "cnid_private.h"
25 /* Find a mangled filename entry. */
27 cnid_mangle_get(void *CNID, char *mfilename)
41 memset(&key, 0, sizeof(key));
42 memset(&data, 0, sizeof(data));
45 key.size = strlen(mfilename);
47 while ((rc = db->db_mangle->get(db->db_mangle, NULL, &key, &data, 0))) {
48 if (rc == DB_LOCK_DEADLOCK) {
52 if (rc == DB_NOTFOUND) {
53 LOG(log_debug, logtype_default, "cnid_mangle_get: Failed to find mangled entry for %s", mfilename);
58 LOG(log_error, logtype_default, "cnid_mangle_get: Failed to get mangle entry from the database: %s", db_strerror(rc));
62 filename = (char *)data.data;
66 #endif /* FILE_MANGLING */