#include <errno.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/file.h>#include <sys/param.h>#include <bstrlib.h>#include <atalk/adouble.h>#include <atalk/afp.h>#include <atalk/cnid.h>#include <atalk/globals.h>#include <atalk/logger.h>#include <atalk/netatalk_conf.h>#include <atalk/util.h>#include <atalk/vfs.h>#include "desktop.h"#include "dircache.h"#include "directory.h"#include "file.h"#include "filedir.h"#include "fork.h"#include "volume.h"Data Structures | |
| struct | savedir |
| Struct to save directory reading context in. More... | |
Macros | |
| #define | min(a, b) |
| #define | SDBUFBRK 2048 |
| #define | REPLY_PARAM_MAXLEN (4 + 104 + 1 + MACFILELEN + 4 + 2 + UTF8FILELEN_EARLY + 1) |
Functions | |
| static int | enumerate_loop (struct dirent *de, char *mname, void *data) |
| char * | check_dirent (const struct vol *vol, char *name) |
| int | for_each_dirent (const struct vol *vol, char *name, dir_loop fn, void *data) |
| static int | enumerate (AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen, int ext) |
| int | afp_enumerate (AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen) |
| int | afp_enumerate_ext (AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen) |
| int | afp_enumerate_ext2 (AFPObj *obj, char *ibuf, size_t ibuflen, char *rbuf, size_t *rbuflen) |
| #define min | ( | a, | |
| b ) |
| #define REPLY_PARAM_MAXLEN (4 + 104 + 1 + MACFILELEN + 4 + 2 + UTF8FILELEN_EARLY + 1) |
This is the maximal length of a single entry for a file/dir in the reply block if all bits in the file/dir bitmap are set: header(4) + params(104) + macnamelength(1) + macname(31) + utf8(4) + utf8namelen(2) + utf8name(255) + oddpadding(1)
| #define SDBUFBRK 2048 |
| int afp_enumerate | ( | AFPObj * | obj, |
| char * | ibuf, | ||
| size_t | ibuflen, | ||
| char * | rbuf, | ||
| size_t * | rbuflen ) |
| int afp_enumerate_ext | ( | AFPObj * | obj, |
| char * | ibuf, | ||
| size_t | ibuflen, | ||
| char * | rbuf, | ||
| size_t * | rbuflen ) |
| int afp_enumerate_ext2 | ( | AFPObj * | obj, |
| char * | ibuf, | ||
| size_t | ibuflen, | ||
| char * | rbuf, | ||
| size_t * | rbuflen ) |
| char * check_dirent | ( | const struct vol * | vol, |
| char * | name ) |
afp_enumerate return an empty listing but offspring count != 0 in afp_getdirparams and the Mac doesn't try to call afp_delete!
|
static |
|
static |