OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [linux-2.4/] [include/] [asm-alpha/] [fcntl.h] - Blame information for rev 1774

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1275 phoenix
#ifndef _ALPHA_FCNTL_H
2
#define _ALPHA_FCNTL_H
3
 
4
/* open/fcntl - O_SYNC is only implemented on blocks devices and on files
5
   located on an ext2 file system */
6
#define O_ACCMODE         0003
7
#define O_RDONLY            00
8
#define O_WRONLY            01
9
#define O_RDWR              02
10
#define O_CREAT          01000  /* not fcntl */
11
#define O_TRUNC          02000  /* not fcntl */
12
#define O_EXCL           04000  /* not fcntl */
13
#define O_NOCTTY        010000  /* not fcntl */
14
 
15
#define O_NONBLOCK       00004
16
#define O_APPEND         00010
17
#define O_NDELAY        O_NONBLOCK
18
#define O_SYNC          040000
19
#define FASYNC          020000  /* fcntl, for BSD compatibility */
20
#define O_DIRECTORY     0100000 /* must be a directory */
21
#define O_NOFOLLOW      0200000 /* don't follow links */
22
#define O_LARGEFILE     0400000 /* will be set by the kernel on every open */
23
#define O_DIRECT        02000000 /* direct disk access - should check with OSF/1 */
24
 
25
#define F_DUPFD         0        /* dup */
26
#define F_GETFD         1       /* get close_on_exec */
27
#define F_SETFD         2       /* set/clear close_on_exec */
28
#define F_GETFL         3       /* get file->f_flags */
29
#define F_SETFL         4       /* set file->f_flags */
30
#define F_GETLK         7
31
#define F_SETLK         8
32
#define F_SETLKW        9
33
 
34
#define F_SETOWN        5       /*  for sockets. */
35
#define F_GETOWN        6       /*  for sockets. */
36
#define F_SETSIG        10      /*  for sockets. */
37
#define F_GETSIG        11      /*  for sockets. */
38
 
39
/* for F_[GET|SET]FL */
40
#define FD_CLOEXEC      1       /* actually anything with low bit set goes */
41
 
42
/* for posix fcntl() and lockf() */
43
#define F_RDLCK         1
44
#define F_WRLCK         2
45
#define F_UNLCK         8
46
 
47
/* for old implementation of bsd flock () */
48
#define F_EXLCK         16      /* or 3 */
49
#define F_SHLCK         32      /* or 4 */
50
 
51
#define F_INPROGRESS    64
52
 
53
/* operations for bsd flock(), also used by the kernel implementation */
54
#define LOCK_SH         1       /* shared lock */
55
#define LOCK_EX         2       /* exclusive lock */
56
#define LOCK_NB         4       /* or'd with one of the above to prevent
57
                                   blocking */
58
#define LOCK_UN         8       /* remove lock */
59
#define LOCK_MAND      32      /* This is a mandatory flock */
60
#define LOCK_READ      64      /* ... Which allows concurrent read operations */
61
#define LOCK_WRITE     128     /* ... Which allows concurrent write operations */
62
#define LOCK_RW        192     /* ... Which allows concurrent read & write ops */
63
 
64
struct flock {
65
        short l_type;
66
        short l_whence;
67
        __kernel_off_t l_start;
68
        __kernel_off_t l_len;
69
        __kernel_pid_t l_pid;
70
};
71
 
72
#ifdef __KERNEL__
73
#define flock64 flock
74
#endif
75
#define F_LINUX_SPECIFIC_BASE  1024
76
 
77
#endif

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.