-/*
- * $Id: cnid_cdb_private.h,v 1.4 2008-12-03 18:35:44 didg Exp $
- */
-
#ifndef LIBATALK_CDB_PRIVATE_H
#define LIBATALK_CDB_PRIVATE_H 1
#include "config.h"
#endif /* HAVE_CONFIG_H */
-#include <netatalk/endian.h>
-
-#ifdef HAVE_UNISTD_H
#include <unistd.h>
-#endif /* HAVE_UNISTD_H */
#include <stdlib.h>
#include <string.h>
#include <errno.h>
-#ifdef HAVE_FCNTL_H
#include <fcntl.h>
-#endif /* HAVE_FCNTL_H */
#include <sys/param.h>
#include <sys/stat.h>
-#ifdef HAVE_SYS_TIME_H
#include <sys/time.h>
-#endif /* HAVE_SYS_TIME_H */
-#ifdef HAVE_TIME_H
#include <time.h>
-#endif
-#include <sys/cdefs.h>
+#include <arpa/inet.h>
+
#include <db.h>
#include <atalk/logger.h>
#include <atalk/adouble.h>
+#include <atalk/cnid_private.h>
#include <atalk/cnid.h>
#include <atalk/util.h>
#include "cnid_cdb.h"
-#define CNID_DB_MAGIC 0x434E4944U /* CNID */
-#define CNID_DATA_MAGIC 0x434E4945U /* CNIE */
-
/* record structure
cnid 4
dev 8
char name[50];
} cnid_record;
-#define CNID_OFS 0
-#define CNID_LEN 4
-
-#define CNID_DEV_OFS CNID_LEN
-#define CNID_DEV_LEN 8
-
-#define CNID_INO_OFS (CNID_DEV_OFS + CNID_DEV_LEN)
-#define CNID_INO_LEN 8
-
-#define CNID_DEVINO_OFS CNID_LEN
-#define CNID_DEVINO_LEN (CNID_DEV_LEN +CNID_INO_LEN)
-
-#define CNID_TYPE_OFS (CNID_DEVINO_OFS +CNID_DEVINO_LEN)
-#define CNID_TYPE_LEN 4
-
-#define CNID_DID_OFS (CNID_TYPE_OFS +CNID_TYPE_LEN)
-#define CNID_DID_LEN CNID_LEN
-
-#define CNID_NAME_OFS (CNID_DID_OFS + CNID_DID_LEN)
-#define CNID_HEADER_LEN (CNID_NAME_OFS)
-
-#define CNID_START 17
-
-#define CNIDFLAG_ROOTINFO_RO (1 << 0)
-#define CNIDFLAG_DB_RO (1 << 1)
-
-/* the key is cnid 0
- * we use 0/RootInfo. */
-#define ROOTINFO_KEY "\0\0\0\0"
-#define ROOTINFO_KEYLEN 4
-
-/* cnid - dev - inode - type - did - name */
-#define ROOTINFO_DATA "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0RootInfo"
-#define ROOTINFO_DATALEN (3*4 +2*8 +9)
-
-
typedef struct CNID_private {
u_int32_t magic;
DB *db_cnid;
char lock_file[MAXPATHLEN + 1];
} CNID_private;
+/* XXX stuff below is outdate */
/* on-disk data format (in network byte order where appropriate) --
* db_cnid: (key: cnid)
* name size (in bytes)
*/
/* construct db_cnid data. NOTE: this is not re-entrant. */
-extern unsigned char *make_cnid_data __P((const struct stat *,const cnid_t ,
- const char *, const size_t ));
+extern unsigned char *make_cnid_data (u_int32_t flags, const struct stat *,const cnid_t ,
+ const char *, const size_t );
#endif /* atalk/cnid/cnid_private.h */