From: franklahm Date: Wed, 9 Dec 2009 15:25:28 +0000 (+0000) Subject: Adjust dbd to use the same fixup logic as afpd ie call dbd_lookup with hint X-Git-Tag: branch-symlink-start~41 X-Git-Url: https://arthur.barton.de/gitweb/?p=netatalk.git;a=commitdiff_plain;h=e4a6f1483c43b81c3dca414e58d1e9be4ff86031 Adjust dbd to use the same fixup logic as afpd ie call dbd_lookup with hint --- diff --git a/etc/cnid_dbd/cmd_dbd_scanvol.c b/etc/cnid_dbd/cmd_dbd_scanvol.c index 9af6e585..3addca9f 100644 --- a/etc/cnid_dbd/cmd_dbd_scanvol.c +++ b/etc/cnid_dbd/cmd_dbd_scanvol.c @@ -1,5 +1,5 @@ /* - $Id: cmd_dbd_scanvol.c,v 1.12 2009-12-03 13:33:44 franklahm Exp $ + $Id: cmd_dbd_scanvol.c,v 1.13 2009-12-09 15:25:28 franklahm Exp $ Copyright (c) 2009 Frank Lahm @@ -435,6 +435,7 @@ static cnid_t check_cnid(const char *name, cnid_t did, struct stat *st, int adfi memset(&rqst, 0, sizeof(struct cnid_dbd_rqst)); memset(&rply, 0, sizeof(struct cnid_dbd_rply)); rqst.did = did; + rqst.cnid = ad_cnid; if ( ! (volinfo->v_flags & AFPVOL_NODEV)) rqst.dev = st->st_dev; rqst.ino = st->st_ino; diff --git a/etc/cnid_dbd/dbd_lookup.c b/etc/cnid_dbd/dbd_lookup.c index b79548a6..1f310fe9 100644 --- a/etc/cnid_dbd/dbd_lookup.c +++ b/etc/cnid_dbd/dbd_lookup.c @@ -1,5 +1,5 @@ /* - * $Id: dbd_lookup.c,v 1.15 2009-12-08 10:26:12 franklahm Exp $ + * $Id: dbd_lookup.c,v 1.16 2009-12-09 15:25:28 franklahm Exp $ * * Copyright (C) Joerg Lenneis 2003 * Copyright (C) Frank Lahm 2009 @@ -240,8 +240,8 @@ int dbd_lookup(DBD *dbd, struct cnid_dbd_rqst *rqst, struct cnid_dbd_rply *rply, } if ( ! didname) { - LOG(log_debug, logtype_cnid, "dbd_lookup(DID:%u/'%s',0x%llx/0x%llx): CNID resolve problem: server side rename oder reused inode", - ntohl(rqst->did), rqst->name, (unsigned long long)rqst->dev, (unsigned long long)rqst->ino); + LOG(log_debug, logtype_cnid, "dbd_lookup(CNID hint: %u, DID:%u, \"%s\", 0x%llx/0x%llx): CNID resolve problem: server side rename oder reused inode", + ntohl(rqst->cnid), ntohl(rqst->did), rqst->name, (unsigned long long)rqst->dev, (unsigned long long)rqst->ino); if (rqst->cnid == id_devino) { LOG(log_debug, logtype_cnid, "dbd_lookup: server side mv (with resource fork)"); update = 1;