netatalk  4.5.0
Free and Open Source Apple Filing Protocol (AFP) Server
Loading...
Searching...
No Matches
cnid_bdb_private.h File Reference
#include <sys/param.h>
#include <sys/stat.h>
#include <atalk/adouble.h>
#include <atalk/cnid_private.h>

Go to the source code of this file.

Data Structures

struct  cnid_dbd_rqst
struct  cnid_dbd_rply
struct  CNID_bdb_private

Macros

#define CNID_DBD_OP_OPEN   0x01
#define CNID_DBD_OP_CLOSE   0x02
#define CNID_DBD_OP_ADD   0x03
#define CNID_DBD_OP_GET   0x04
#define CNID_DBD_OP_RESOLVE   0x05
#define CNID_DBD_OP_LOOKUP   0x06
#define CNID_DBD_OP_UPDATE   0x07
#define CNID_DBD_OP_DELETE   0x08
#define CNID_DBD_OP_MANGLE_ADD   0x09
#define CNID_DBD_OP_MANGLE_GET   0x0a
#define CNID_DBD_OP_GETSTAMP   0x0b
#define CNID_DBD_OP_REBUILD_ADD   0x0c
#define CNID_DBD_OP_SEARCH   0x0d
#define CNID_DBD_OP_WIPE   0x0e
#define CNID_DBD_RES_OK   0x00
#define CNID_DBD_RES_NOTFOUND   0x01
#define CNID_DBD_RES_ERR_DB   0x02
#define CNID_DBD_RES_ERR_MAX   0x03
#define CNID_DBD_RES_ERR_DUPLCNID   0x04
#define CNID_DBD_RES_SRCH_CNT   0x05
#define CNID_DBD_RES_SRCH_DONE   0x06
#define DBD_MAX_SRCH_RSLTS   100
#define DBD_SEARCH_MAX_OFFSET   50000
#define DBD_FIND_DEADLINE_SEC   10
#define DBD_NUM_OPEN_ARGS   3

Typedefs

typedef struct CNID_bdb_private CNID_bdb_private

Detailed Description

Interface to cnid_dbd daemon. The below structs are on-the-wire layout of a private TCP/IP RPC. All fields are written in NATIVE byte order.

SEARCH wire format: for op == CNID_DBD_OP_SEARCH the variable-length name payload is prefixed by a 4-byte native-byte-order srch_offset before the search-name bytes; namelen = 4 + actual_name_length. sizeof(struct cnid_dbd_rqst) is unchanged on the wire — non-SEARCH opcodes remain wire-compatible with previous releases.

Macro Definition Documentation

◆ CNID_DBD_OP_ADD

#define CNID_DBD_OP_ADD   0x03

◆ CNID_DBD_OP_CLOSE

#define CNID_DBD_OP_CLOSE   0x02

◆ CNID_DBD_OP_DELETE

#define CNID_DBD_OP_DELETE   0x08

◆ CNID_DBD_OP_GET

#define CNID_DBD_OP_GET   0x04

◆ CNID_DBD_OP_GETSTAMP

#define CNID_DBD_OP_GETSTAMP   0x0b

◆ CNID_DBD_OP_LOOKUP

#define CNID_DBD_OP_LOOKUP   0x06

◆ CNID_DBD_OP_MANGLE_ADD

#define CNID_DBD_OP_MANGLE_ADD   0x09

◆ CNID_DBD_OP_MANGLE_GET

#define CNID_DBD_OP_MANGLE_GET   0x0a

◆ CNID_DBD_OP_OPEN

#define CNID_DBD_OP_OPEN   0x01

◆ CNID_DBD_OP_REBUILD_ADD

#define CNID_DBD_OP_REBUILD_ADD   0x0c

◆ CNID_DBD_OP_RESOLVE

#define CNID_DBD_OP_RESOLVE   0x05

◆ CNID_DBD_OP_SEARCH

#define CNID_DBD_OP_SEARCH   0x0d

◆ CNID_DBD_OP_UPDATE

#define CNID_DBD_OP_UPDATE   0x07

◆ CNID_DBD_OP_WIPE

#define CNID_DBD_OP_WIPE   0x0e

◆ CNID_DBD_RES_ERR_DB

#define CNID_DBD_RES_ERR_DB   0x02

◆ CNID_DBD_RES_ERR_DUPLCNID

#define CNID_DBD_RES_ERR_DUPLCNID   0x04

◆ CNID_DBD_RES_ERR_MAX

#define CNID_DBD_RES_ERR_MAX   0x03

◆ CNID_DBD_RES_NOTFOUND

#define CNID_DBD_RES_NOTFOUND   0x01

◆ CNID_DBD_RES_OK

#define CNID_DBD_RES_OK   0x00

◆ CNID_DBD_RES_SRCH_CNT

#define CNID_DBD_RES_SRCH_CNT   0x05

◆ CNID_DBD_RES_SRCH_DONE

#define CNID_DBD_RES_SRCH_DONE   0x06

◆ DBD_FIND_DEADLINE_SEC

#define DBD_FIND_DEADLINE_SEC   10

◆ DBD_MAX_SRCH_RSLTS

#define DBD_MAX_SRCH_RSLTS   100

◆ DBD_NUM_OPEN_ARGS

#define DBD_NUM_OPEN_ARGS   3

◆ DBD_SEARCH_MAX_OFFSET

#define DBD_SEARCH_MAX_OFFSET   50000

Typedef Documentation

◆ CNID_bdb_private

typedef struct CNID_bdb_private CNID_bdb_private