#include <arpa/inet.h>
#include <ctype.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/param.h>
#include <sys/socket.h>
#include <sys/stat.h>
#include <sys/uio.h>
#include <netatalk/at.h>
#include <bstrlib.h>
#include <atalk/adouble.h>
#include <atalk/afp.h>
#include <atalk/atp.h>
#include <atalk/asp.h>
#include <atalk/dsi.h>
#include <atalk/errchk.h>
#include <atalk/globals.h>
#include <atalk/logger.h>
#include <atalk/netatalk_conf.h>
#include <atalk/unix.h>
#include <atalk/util.h>
#include "desktop.h"
#include "directory.h"
#include "fork.h"
#include "mangle.h"
#include "volume.h"
Macros | |
#define | EXEC_MODE (S_IXGRP | S_IXUSR | S_IXOTH) |
#define | min(a, b) |
Functions | |
int | setdeskmode (const struct vol *vol, const mode_t mode) |
int | setdeskowner (const struct vol *vol, uid_t uid, gid_t gid) |
static void | create_appledesktop_folder (const struct vol *vol) |
int | afp_opendt (AFPObj *obj _U_, char *ibuf, size_t ibuflen _U_, char *rbuf, size_t *rbuflen) |
int | afp_closedt (AFPObj *obj _U_, char *ibuf _U_, size_t ibuflen _U_, char *rbuf _U_, size_t *rbuflen) |
static char * | icon_dtfile (struct vol *vol, uint8_t creator[4]) |
static int | iconopen (struct vol *vol, uint8_t creator[4], int flags, int mode) |
int | afp_addicon (AFPObj *obj, char *ibuf, size_t ibuflen _U_, char *rbuf, size_t *rbuflen) |
int | afp_geticoninfo (AFPObj *obj _U_, char *ibuf, size_t ibuflen _U_, char *rbuf, size_t *rbuflen) |
int | afp_geticon (AFPObj *obj, char *ibuf, size_t ibuflen _U_, char *rbuf, size_t *rbuflen) |
char * | dtfile (const struct vol *vol, uint8_t creator[], char *ext) |
char * | mtoupath (const struct vol *vol, char *mpath, cnid_t did, int utf8) |
char * | utompath (const struct vol *vol, char *upath, cnid_t id, int utf8) |
static int | ad_addcomment (const AFPObj *obj, struct vol *vol, struct path *path, char *ibuf) |
int | afp_addcomment (AFPObj *obj, char *ibuf, size_t ibuflen _U_, char *rbuf _U_, size_t *rbuflen) |
static int | ad_getcomment (struct vol *vol, struct path *path, char *rbuf, size_t *rbuflen) |
int | afp_getcomment (AFPObj *obj _U_, char *ibuf, size_t ibuflen _U_, char *rbuf, size_t *rbuflen) |
static int | ad_rmvcomment (const AFPObj *obj, struct vol *vol, struct path *path) |
int | afp_rmvcomment (AFPObj *obj _U_, char *ibuf, size_t ibuflen _U_, char *rbuf _U_, size_t *rbuflen) |
Variables | |
static struct savedt | si = { { 0, 0, 0, 0 }, -1, 0, 0 } |
static const uint8_t | utag [] = { 0, 0, 0, 0 } |
static const uint8_t | ucreator [] = { 0, 0, 0, 0 } |
static const uint8_t | utype [] = { 0, 0, 0, 0 } |
static const short | usize = 256 |
static const char | hexdig [] = "0123456789abcdef" |
#define EXEC_MODE (S_IXGRP | S_IXUSR | S_IXOTH) |
#define min | ( | a, | |
b ) |
int afp_addcomment | ( | AFPObj * | obj, |
char * | ibuf, | ||
size_t ibuflen | _U_, | ||
char *rbuf | _U_, | ||
size_t * | rbuflen ) |
int afp_addicon | ( | AFPObj * | obj, |
char * | ibuf, | ||
size_t ibuflen | _U_, | ||
char * | rbuf, | ||
size_t * | rbuflen ) |
int afp_closedt | ( | AFPObj *obj | _U_, |
char *ibuf | _U_, | ||
size_t ibuflen | _U_, | ||
char *rbuf | _U_, | ||
size_t * | rbuflen ) |
int afp_getcomment | ( | AFPObj *obj | _U_, |
char * | ibuf, | ||
size_t ibuflen | _U_, | ||
char * | rbuf, | ||
size_t * | rbuflen ) |
int afp_geticon | ( | AFPObj * | obj, |
char * | ibuf, | ||
size_t ibuflen | _U_, | ||
char * | rbuf, | ||
size_t * | rbuflen ) |
int afp_geticoninfo | ( | AFPObj *obj | _U_, |
char * | ibuf, | ||
size_t ibuflen | _U_, | ||
char * | rbuf, | ||
size_t * | rbuflen ) |
int afp_rmvcomment | ( | AFPObj *obj | _U_, |
char * | ibuf, | ||
size_t ibuflen | _U_, | ||
char *rbuf | _U_, | ||
size_t * | rbuflen ) |
|
static |
char * dtfile | ( | const struct vol * | vol, |
uint8_t | creator[], | ||
char * | ext ) |
|
static |
|
static |
int setdeskmode | ( | const struct vol * | vol, |
const mode_t | mode ) |
int setdeskowner | ( | const struct vol * | vol, |
uid_t | uid, | ||
gid_t | gid ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |