netatalk  4.5.0
Free and Open Source Apple Filing Protocol (AFP) Server
Loading...
Searching...
No Matches
afp.h File Reference
#include <stdint.h>
#include <sys/types.h>

Go to the source code of this file.

Macros

#define AFPPROTO_ASP   1
 
#define AFPPROTO_DSI   2
 
#define AFPSRVRINFO_COPY   (1<<0)
 
#define AFPSRVRINFO_PASSWD   (1<<1)
 
#define AFPSRVRINFO_NOSAVEPASSWD   (1<<2)
 
#define AFPSRVRINFO_SRVMSGS   (1<<3)
 
#define AFPSRVRINFO_SRVSIGNATURE   (1<<4)
 
#define AFPSRVRINFO_TCPIP   (1<<5)
 
#define AFPSRVRINFO_SRVNOTIFY   (1<<6)
 
#define AFPSRVRINFO_SRVRECONNECT   (1<<7)
 
#define AFPSRVRINFO_SRVRDIR   (1<<8)
 
#define AFPSRVRINFO_SRVUTF8   (1<<9)
 
#define AFPSRVRINFO_UUID   (1<<10)
 
#define AFPSRVRINFO_EXTSLEEP   (1<<11)
 
#define AFPSRVRINFO_FASTBOZO   (1<<15)
 
#define AFP_OK   0
 
#define AFPERR_MAXSESS   -1068
 
#define AFPERR_DID1   -4000
 
#define AFPERR_ACCESS   -5000
 
#define AFPERR_AUTHCONT   -5001
 
#define AFPERR_BADUAM   -5002
 
#define AFPERR_BADVERS   -5003
 
#define AFPERR_BITMAP   -5004
 
#define AFPERR_CANTMOVE   -5005
 
#define AFPERR_DENYCONF   -5006
 
#define AFPERR_DIRNEMPT   -5007
 
#define AFPERR_DFULL   -5008
 
#define AFPERR_EOF   -5009
 
#define AFPERR_BUSY   -5010
 
#define AFPERR_FLATVOL   -5011
 
#define AFPERR_NOITEM   -5012
 
#define AFPERR_LOCK   -5013
 
#define AFPERR_MISC   -5014
 
#define AFPERR_NLOCK   -5015
 
#define AFPERR_NOSRVR   -5016
 
#define AFPERR_EXIST   -5017
 
#define AFPERR_NOOBJ   -5018
 
#define AFPERR_PARAM   -5019
 
#define AFPERR_NORANGE   -5020
 
#define AFPERR_RANGEOVR   -5021
 
#define AFPERR_SESSCLOS   -5022
 
#define AFPERR_NOTAUTH   -5023
 
#define AFPERR_NOOP   -5024
 
#define AFPERR_BADTYPE   -5025
 
#define AFPERR_NFILE   -5026
 
#define AFPERR_SHUTDOWN   -5027
 
#define AFPERR_NORENAME   -5028
 
#define AFPERR_NODIR   -5029
 
#define AFPERR_ITYPE   -5030
 
#define AFPERR_VLOCK   -5031
 
#define AFPERR_OLOCK   -5032
 
#define AFPERR_CTNSHRD   -5033
 
#define AFPERR_NOID   -5034
 
#define AFPERR_EXISTID   -5035
 
#define AFPERR_DIFFVOL   -5036
 
#define AFPERR_CATCHNG   -5037
 
#define AFPERR_SAMEOBJ   -5038
 
#define AFPERR_BADID   -5039
 
#define AFPERR_PWDSAME   -5040
 
#define AFPERR_PWDSHORT   -5041
 
#define AFPERR_PWDEXPR   -5042
 
#define AFPERR_INSHRD   -5043
 
#define AFPERR_INTRASH   -5044
 
#define AFPERR_PWDCHNG   -5045
 
#define AFPERR_PWDPOLCY   -5046
 
#define AFPERR_USRLOGIN   -5047
 
#define AFPATTN_SHUTDOWN   (1 << 15)
 
#define AFPATTN_CRASH   (1 << 14)
 
#define AFPATTN_MESG   (1 << 13)
 
#define AFPATTN_NORECONNECT   (1 << 12)
 
#define AFPATTN_NOTIFY   (AFPATTN_MESG | AFPATTN_NORECONNECT)
 
#define AFPATTN_VOLCHANGED   (1 << 0)
 
#define AFPATTN_TIME(x)   ((x) & 0xfff)
 
#define AFPZZZ_EXT_SLEEP   1
 
#define AFPZZZ_EXT_WAKEUP   2
 
#define AFP_BYTELOCK   1
 
#define AFP_CLOSEVOL   2
 
#define AFP_CLOSEDIR   3
 
#define AFP_CLOSEFORK   4
 
#define AFP_COPYFILE   5
 
#define AFP_CREATEDIR   6
 
#define AFP_CREATEFILE   7
 
#define AFP_DELETE   8
 
#define AFP_ENUMERATE   9
 
#define AFP_FLUSH   10
 
#define AFP_FLUSHFORK   11
 
#define AFP_GETFORKPARAM   14
 
#define AFP_GETSRVINFO   15
 
#define AFP_GETSRVPARAM   16
 
#define AFP_GETVOLPARAM   17
 
#define AFP_LOGIN   18
 
#define AFP_LOGINCONT   19
 
#define AFP_LOGOUT   20
 
#define AFP_MAPID   21
 
#define AFP_MAPNAME   22
 
#define AFP_MOVE   23
 
#define AFP_OPENVOL   24
 
#define AFP_OPENDIR   25
 
#define AFP_OPENFORK   26
 
#define AFP_READ   27
 
#define AFP_RENAME   28
 
#define AFP_SETDIRPARAM   29
 
#define AFP_SETFILEPARAM   30
 
#define AFP_SETFORKPARAM   31
 
#define AFP_SETVOLPARAM   32
 
#define AFP_WRITE   33
 
#define AFP_GETFLDRPARAM   34
 
#define AFP_SETFLDRPARAM   35
 
#define AFP_CHANGEPW   36
 
#define AFP_GETUSERINFO   37
 
#define AFP_GETSRVRMSG   38
 
#define AFP_CREATEID   39
 
#define AFP_DELETEID   40
 
#define AFP_RESOLVEID   41
 
#define AFP_EXCHANGEFILE   42
 
#define AFP_CATSEARCH   43
 
#define AFP_OPENDT   48
 
#define AFP_CLOSEDT   49
 
#define AFP_GETICON   51
 
#define AFP_GTICNINFO   52
 
#define AFP_ADDAPPL   53
 
#define AFP_RMVAPPL   54
 
#define AFP_GETAPPL   55
 
#define AFP_ADDCMT   56
 
#define AFP_RMVCMT   57
 
#define AFP_GETCMT   58
 
#define AFP_ADDICON   192
 
#define AFP_BYTELOCK_EXT   59
 
#define AFP_CATSEARCH_EXT   67
 
#define AFP_ENUMERATE_EXT   66
 
#define AFP_READ_EXT   60
 
#define AFP_WRITE_EXT   61
 
#define AFP_LOGIN_EXT   63
 
#define AFP_GETSESSTOKEN   64
 
#define AFP_DISCTOLDSESS   65
 
#define AFP_ENUMERATE_EXT2   68
 
#define AFP_SPOTLIGHT_PRIVATE   76
 
#define AFP_SYNCDIR   78
 
#define AFP_SYNCFORK   79
 
#define AFP_ZZZ   122
 
#define AFP_GETEXTATTR   69
 
#define AFP_SETEXTATTR   70
 
#define AFP_REMOVEATTR   71
 
#define AFP_LISTEXTATTR   72
 
#define AFP_GETACL   73
 
#define AFP_SETACL   74
 
#define AFP_ACCESS   75
 
#define REPLAYCACHE_SIZE   128
 

Typedefs

typedef uint16_t AFPUserBytes
 

Enumerations

enum  afpmessage_t { AFPMESG_LOGIN = 0 , AFPMESG_SERVER = 1 }
 

Macro Definition Documentation

◆ AFP_ACCESS

#define AFP_ACCESS   75

◆ AFP_ADDAPPL

#define AFP_ADDAPPL   53

◆ AFP_ADDCMT

#define AFP_ADDCMT   56

◆ AFP_ADDICON

#define AFP_ADDICON   192

◆ AFP_BYTELOCK

#define AFP_BYTELOCK   1

◆ AFP_BYTELOCK_EXT

#define AFP_BYTELOCK_EXT   59

◆ AFP_CATSEARCH

#define AFP_CATSEARCH   43

◆ AFP_CATSEARCH_EXT

#define AFP_CATSEARCH_EXT   67

◆ AFP_CHANGEPW

#define AFP_CHANGEPW   36

◆ AFP_CLOSEDIR

#define AFP_CLOSEDIR   3

◆ AFP_CLOSEDT

#define AFP_CLOSEDT   49

◆ AFP_CLOSEFORK

#define AFP_CLOSEFORK   4

◆ AFP_CLOSEVOL

#define AFP_CLOSEVOL   2

◆ AFP_COPYFILE

#define AFP_COPYFILE   5

◆ AFP_CREATEDIR

#define AFP_CREATEDIR   6

◆ AFP_CREATEFILE

#define AFP_CREATEFILE   7

◆ AFP_CREATEID

#define AFP_CREATEID   39

◆ AFP_DELETE

#define AFP_DELETE   8

◆ AFP_DELETEID

#define AFP_DELETEID   40

◆ AFP_DISCTOLDSESS

#define AFP_DISCTOLDSESS   65

◆ AFP_ENUMERATE

#define AFP_ENUMERATE   9

◆ AFP_ENUMERATE_EXT

#define AFP_ENUMERATE_EXT   66

◆ AFP_ENUMERATE_EXT2

#define AFP_ENUMERATE_EXT2   68

◆ AFP_EXCHANGEFILE

#define AFP_EXCHANGEFILE   42

◆ AFP_FLUSH

#define AFP_FLUSH   10

◆ AFP_FLUSHFORK

#define AFP_FLUSHFORK   11

◆ AFP_GETACL

#define AFP_GETACL   73

◆ AFP_GETAPPL

#define AFP_GETAPPL   55

◆ AFP_GETCMT

#define AFP_GETCMT   58

◆ AFP_GETEXTATTR

#define AFP_GETEXTATTR   69

◆ AFP_GETFLDRPARAM

#define AFP_GETFLDRPARAM   34

◆ AFP_GETFORKPARAM

#define AFP_GETFORKPARAM   14

◆ AFP_GETICON

#define AFP_GETICON   51

◆ AFP_GETSESSTOKEN

#define AFP_GETSESSTOKEN   64

◆ AFP_GETSRVINFO

#define AFP_GETSRVINFO   15

◆ AFP_GETSRVPARAM

#define AFP_GETSRVPARAM   16

◆ AFP_GETSRVRMSG

#define AFP_GETSRVRMSG   38

◆ AFP_GETUSERINFO

#define AFP_GETUSERINFO   37

◆ AFP_GETVOLPARAM

#define AFP_GETVOLPARAM   17

◆ AFP_GTICNINFO

#define AFP_GTICNINFO   52

◆ AFP_LISTEXTATTR

#define AFP_LISTEXTATTR   72

◆ AFP_LOGIN

#define AFP_LOGIN   18

◆ AFP_LOGIN_EXT

#define AFP_LOGIN_EXT   63

◆ AFP_LOGINCONT

#define AFP_LOGINCONT   19

◆ AFP_LOGOUT

#define AFP_LOGOUT   20

◆ AFP_MAPID

#define AFP_MAPID   21

◆ AFP_MAPNAME

#define AFP_MAPNAME   22

◆ AFP_MOVE

#define AFP_MOVE   23

◆ AFP_OK

#define AFP_OK   0

◆ AFP_OPENDIR

#define AFP_OPENDIR   25

◆ AFP_OPENDT

#define AFP_OPENDT   48

◆ AFP_OPENFORK

#define AFP_OPENFORK   26

◆ AFP_OPENVOL

#define AFP_OPENVOL   24

◆ AFP_READ

#define AFP_READ   27

◆ AFP_READ_EXT

#define AFP_READ_EXT   60

◆ AFP_REMOVEATTR

#define AFP_REMOVEATTR   71

◆ AFP_RENAME

#define AFP_RENAME   28

◆ AFP_RESOLVEID

#define AFP_RESOLVEID   41

◆ AFP_RMVAPPL

#define AFP_RMVAPPL   54

◆ AFP_RMVCMT

#define AFP_RMVCMT   57

◆ AFP_SETACL

#define AFP_SETACL   74

◆ AFP_SETDIRPARAM

#define AFP_SETDIRPARAM   29

◆ AFP_SETEXTATTR

#define AFP_SETEXTATTR   70

◆ AFP_SETFILEPARAM

#define AFP_SETFILEPARAM   30

◆ AFP_SETFLDRPARAM

#define AFP_SETFLDRPARAM   35

◆ AFP_SETFORKPARAM

#define AFP_SETFORKPARAM   31

◆ AFP_SETVOLPARAM

#define AFP_SETVOLPARAM   32

◆ AFP_SPOTLIGHT_PRIVATE

#define AFP_SPOTLIGHT_PRIVATE   76

◆ AFP_SYNCDIR

#define AFP_SYNCDIR   78

◆ AFP_SYNCFORK

#define AFP_SYNCFORK   79

◆ AFP_WRITE

#define AFP_WRITE   33

◆ AFP_WRITE_EXT

#define AFP_WRITE_EXT   61

◆ AFP_ZZZ

#define AFP_ZZZ   122

◆ AFPATTN_CRASH

#define AFPATTN_CRASH   (1 << 14)

server crashed

◆ AFPATTN_MESG

#define AFPATTN_MESG   (1 << 13)

server has message

◆ AFPATTN_NORECONNECT

#define AFPATTN_NORECONNECT   (1 << 12)

don't reconnect

◆ AFPATTN_NOTIFY

#define AFPATTN_NOTIFY   (AFPATTN_MESG | AFPATTN_NORECONNECT)

◆ AFPATTN_SHUTDOWN

#define AFPATTN_SHUTDOWN   (1 << 15)

shutdown/disconnect

◆ AFPATTN_TIME

#define AFPATTN_TIME (   x)    ((x) & 0xfff)

time in minutes

◆ AFPATTN_VOLCHANGED

#define AFPATTN_VOLCHANGED   (1 << 0)

volume has changed

◆ AFPERR_ACCESS

#define AFPERR_ACCESS   -5000

permission denied

◆ AFPERR_AUTHCONT

#define AFPERR_AUTHCONT   -5001

logincont

◆ AFPERR_BADID

#define AFPERR_BADID   -5039

non-existent file id

◆ AFPERR_BADTYPE

#define AFPERR_BADTYPE   -5025

object is the wrong type

◆ AFPERR_BADUAM

#define AFPERR_BADUAM   -5002

uam doesn't exist

◆ AFPERR_BADVERS

#define AFPERR_BADVERS   -5003

bad afp version number

◆ AFPERR_BITMAP

#define AFPERR_BITMAP   -5004

invalid bitmap

◆ AFPERR_BUSY

#define AFPERR_BUSY   -5010

FileBusy

◆ AFPERR_CANTMOVE

#define AFPERR_CANTMOVE   -5005

can't move file

◆ AFPERR_CATCHNG

#define AFPERR_CATCHNG   -5037

catalog has changed

◆ AFPERR_CTNSHRD

#define AFPERR_CTNSHRD   -5033

share point contains a share point

◆ AFPERR_DENYCONF

#define AFPERR_DENYCONF   -5006

file synchronization locks conflict

◆ AFPERR_DFULL

#define AFPERR_DFULL   -5008

disk full

◆ AFPERR_DID1

#define AFPERR_DID1   -4000

not an afp error DID is 1

◆ AFPERR_DIFFVOL

#define AFPERR_DIFFVOL   -5036

different volume

◆ AFPERR_DIRNEMPT

#define AFPERR_DIRNEMPT   -5007

directory not empty

◆ AFPERR_EOF

#define AFPERR_EOF   -5009

end of file – catsearch and afp_read

◆ AFPERR_EXIST

#define AFPERR_EXIST   -5017

object already exists

◆ AFPERR_EXISTID

#define AFPERR_EXISTID   -5035

file already has an id

◆ AFPERR_FLATVOL

#define AFPERR_FLATVOL   -5011

volume doesn't support directories

◆ AFPERR_INSHRD

#define AFPERR_INSHRD   -5043

folder being shared is inside a shared folder. may be returned by afpMoveAndRename.

◆ AFPERR_INTRASH

#define AFPERR_INTRASH   -5044

shared folder in trash.

◆ AFPERR_ITYPE

#define AFPERR_ITYPE   -5030

wrong icon type

◆ AFPERR_LOCK

#define AFPERR_LOCK   -5013

LockErr

◆ AFPERR_MAXSESS

#define AFPERR_MAXSESS   -1068

maximum number of allowed sessions reached

◆ AFPERR_MISC

#define AFPERR_MISC   -5014

misc. err

◆ AFPERR_NFILE

#define AFPERR_NFILE   -5026

too many files open

◆ AFPERR_NLOCK

#define AFPERR_NLOCK   -5015

no more locks

◆ AFPERR_NODIR

#define AFPERR_NODIR   -5029

couldn't find directory

◆ AFPERR_NOID

#define AFPERR_NOID   -5034

file thread not found

◆ AFPERR_NOITEM

#define AFPERR_NOITEM   -5012

ItemNotFound

◆ AFPERR_NOOBJ

#define AFPERR_NOOBJ   -5018

object not found

◆ AFPERR_NOOP

#define AFPERR_NOOP   -5024

command not supported

◆ AFPERR_NORANGE

#define AFPERR_NORANGE   -5020

no range lock

◆ AFPERR_NORENAME

#define AFPERR_NORENAME   -5028

can't rename

◆ AFPERR_NOSRVR

#define AFPERR_NOSRVR   -5016

no response by server at that address

◆ AFPERR_NOTAUTH

#define AFPERR_NOTAUTH   -5023

user not authenticated

◆ AFPERR_OLOCK

#define AFPERR_OLOCK   -5032

object locked

◆ AFPERR_PARAM

#define AFPERR_PARAM   -5019

parameter error

◆ AFPERR_PWDCHNG

#define AFPERR_PWDCHNG   -5045

password needs to be changed

◆ AFPERR_PWDEXPR

#define AFPERR_PWDEXPR   -5042

password expired

◆ AFPERR_PWDPOLCY

#define AFPERR_PWDPOLCY   -5046

password fails policy check

◆ AFPERR_PWDSAME

#define AFPERR_PWDSAME   -5040

same password/can't change password

◆ AFPERR_PWDSHORT

#define AFPERR_PWDSHORT   -5041

password too short

◆ AFPERR_RANGEOVR

#define AFPERR_RANGEOVR   -5021

range overlap

◆ AFPERR_SAMEOBJ

#define AFPERR_SAMEOBJ   -5038

source file == destination file

◆ AFPERR_SESSCLOS

#define AFPERR_SESSCLOS   -5022

session closed

◆ AFPERR_SHUTDOWN

#define AFPERR_SHUTDOWN   -5027

server is going down

◆ AFPERR_USRLOGIN

#define AFPERR_USRLOGIN   -5047

user already logged on

◆ AFPERR_VLOCK

#define AFPERR_VLOCK   -5031

volume locked

◆ AFPPROTO_ASP

#define AFPPROTO_ASP   1

◆ AFPPROTO_DSI

#define AFPPROTO_DSI   2

◆ AFPSRVRINFO_COPY

#define AFPSRVRINFO_COPY   (1<<0)

supports copyfile

◆ AFPSRVRINFO_EXTSLEEP

#define AFPSRVRINFO_EXTSLEEP   (1<<11)

supports extended sleep

◆ AFPSRVRINFO_FASTBOZO

#define AFPSRVRINFO_FASTBOZO   (1<<15)

fast copying

◆ AFPSRVRINFO_NOSAVEPASSWD

#define AFPSRVRINFO_NOSAVEPASSWD   (1<<2)

don't allow save password

◆ AFPSRVRINFO_PASSWD

#define AFPSRVRINFO_PASSWD   (1<<1)

supports change password

◆ AFPSRVRINFO_SRVMSGS

#define AFPSRVRINFO_SRVMSGS   (1<<3)

supports server messages

◆ AFPSRVRINFO_SRVNOTIFY

#define AFPSRVRINFO_SRVNOTIFY   (1<<6)

supports server notifications

◆ AFPSRVRINFO_SRVRDIR

#define AFPSRVRINFO_SRVRDIR   (1<<8)

supports directories service

◆ AFPSRVRINFO_SRVRECONNECT

#define AFPSRVRINFO_SRVRECONNECT   (1<<7)

supports server reconnect

◆ AFPSRVRINFO_SRVSIGNATURE

#define AFPSRVRINFO_SRVSIGNATURE   (1<<4)

supports server signature

◆ AFPSRVRINFO_SRVUTF8

#define AFPSRVRINFO_SRVUTF8   (1<<9)

supports UTF8 names AFP 3.1

◆ AFPSRVRINFO_TCPIP

#define AFPSRVRINFO_TCPIP   (1<<5)

supports tcpip

◆ AFPSRVRINFO_UUID

#define AFPSRVRINFO_UUID   (1<<10)

supports UUIDs

◆ AFPZZZ_EXT_SLEEP

#define AFPZZZ_EXT_SLEEP   1

◆ AFPZZZ_EXT_WAKEUP

#define AFPZZZ_EXT_WAKEUP   2

◆ REPLAYCACHE_SIZE

#define REPLAYCACHE_SIZE   128

Typedef Documentation

◆ AFPUserBytes

typedef uint16_t AFPUserBytes

Enumeration Type Documentation

◆ afpmessage_t

Enumerator
AFPMESG_LOGIN 
AFPMESG_SERVER