OpenCores
URL https://opencores.org/ocsvn/hf-risc/hf-risc/trunk

Subversion Repositories hf-risc

[/] [hf-risc/] [trunk/] [tools/] [riscv-gnu-toolchain-master/] [linux-headers/] [include/] [linux/] [ncp_fs.h] - Blame information for rev 13

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 13 serginhofr
/*
2
 *  ncp_fs.h
3
 *
4
 *  Copyright (C) 1995, 1996 by Volker Lendecke
5
 *
6
 */
7
 
8
#ifndef _LINUX_NCP_FS_H
9
#define _LINUX_NCP_FS_H
10
 
11
#include <linux/fs.h>
12
#include <linux/in.h>
13
#include <linux/types.h>
14
#include <linux/magic.h>
15
 
16
#include <linux/ipx.h>
17
#include <linux/ncp_no.h>
18
 
19
/*
20
 * ioctl commands
21
 */
22
 
23
struct ncp_ioctl_request {
24
        unsigned int function;
25
        unsigned int size;
26
        char *data;
27
};
28
 
29
struct ncp_fs_info {
30
        int version;
31
        struct sockaddr_ipx addr;
32
        __kernel_uid_t mounted_uid;
33
        int connection;         /* Connection number the server assigned us */
34
        int buffer_size;        /* The negotiated buffer size, to be
35
                                   used for read/write requests! */
36
 
37
        int volume_number;
38
        __le32 directory_id;
39
};
40
 
41
struct ncp_fs_info_v2 {
42
        int version;
43
        unsigned long mounted_uid;
44
        unsigned int connection;
45
        unsigned int buffer_size;
46
 
47
        unsigned int volume_number;
48
        __le32 directory_id;
49
 
50
        __u32 dummy1;
51
        __u32 dummy2;
52
        __u32 dummy3;
53
};
54
 
55
struct ncp_sign_init
56
{
57
        char sign_root[8];
58
        char sign_last[16];
59
};
60
 
61
struct ncp_lock_ioctl
62
{
63
#define NCP_LOCK_LOG    0
64
#define NCP_LOCK_SH     1
65
#define NCP_LOCK_EX     2
66
#define NCP_LOCK_CLEAR  256
67
        int             cmd;
68
        int             origin;
69
        unsigned int    offset;
70
        unsigned int    length;
71
#define NCP_LOCK_DEFAULT_TIMEOUT        18
72
#define NCP_LOCK_MAX_TIMEOUT            180
73
        int             timeout;
74
};
75
 
76
struct ncp_setroot_ioctl
77
{
78
        int             volNumber;
79
        int             namespace;
80
        __le32          dirEntNum;
81
};
82
 
83
struct ncp_objectname_ioctl
84
{
85
#define NCP_AUTH_NONE   0x00
86
#define NCP_AUTH_BIND   0x31
87
#define NCP_AUTH_NDS    0x32
88
        int             auth_type;
89
        size_t          object_name_len;
90
        void *  object_name;    /* a userspace data, in most cases user name */
91
};
92
 
93
struct ncp_privatedata_ioctl
94
{
95
        size_t          len;
96
        void *  data;           /* ~1000 for NDS */
97
};
98
 
99
/* NLS charsets by ioctl */
100
#define NCP_IOCSNAME_LEN 20
101
struct ncp_nls_ioctl
102
{
103
        unsigned char codepage[NCP_IOCSNAME_LEN+1];
104
        unsigned char iocharset[NCP_IOCSNAME_LEN+1];
105
};
106
 
107
#define NCP_IOC_NCPREQUEST              _IOR('n', 1, struct ncp_ioctl_request)
108
#define NCP_IOC_GETMOUNTUID             _IOW('n', 2, __kernel_old_uid_t)
109
#define NCP_IOC_GETMOUNTUID2            _IOW('n', 2, unsigned long)
110
 
111
#define NCP_IOC_CONN_LOGGED_IN          _IO('n', 3)
112
 
113
#define NCP_GET_FS_INFO_VERSION    (1)
114
#define NCP_IOC_GET_FS_INFO             _IOWR('n', 4, struct ncp_fs_info)
115
#define NCP_GET_FS_INFO_VERSION_V2 (2)
116
#define NCP_IOC_GET_FS_INFO_V2          _IOWR('n', 4, struct ncp_fs_info_v2)
117
 
118
#define NCP_IOC_SIGN_INIT               _IOR('n', 5, struct ncp_sign_init)
119
#define NCP_IOC_SIGN_WANTED             _IOR('n', 6, int)
120
#define NCP_IOC_SET_SIGN_WANTED         _IOW('n', 6, int)
121
 
122
#define NCP_IOC_LOCKUNLOCK              _IOR('n', 7, struct ncp_lock_ioctl)
123
 
124
#define NCP_IOC_GETROOT                 _IOW('n', 8, struct ncp_setroot_ioctl)
125
#define NCP_IOC_SETROOT                 _IOR('n', 8, struct ncp_setroot_ioctl)
126
 
127
#define NCP_IOC_GETOBJECTNAME           _IOWR('n', 9, struct ncp_objectname_ioctl)
128
#define NCP_IOC_SETOBJECTNAME           _IOR('n', 9, struct ncp_objectname_ioctl)
129
#define NCP_IOC_GETPRIVATEDATA          _IOWR('n', 10, struct ncp_privatedata_ioctl)
130
#define NCP_IOC_SETPRIVATEDATA          _IOR('n', 10, struct ncp_privatedata_ioctl)
131
 
132
#define NCP_IOC_GETCHARSETS             _IOWR('n', 11, struct ncp_nls_ioctl)
133
#define NCP_IOC_SETCHARSETS             _IOR('n', 11, struct ncp_nls_ioctl)
134
 
135
#define NCP_IOC_GETDENTRYTTL            _IOW('n', 12, __u32)
136
#define NCP_IOC_SETDENTRYTTL            _IOR('n', 12, __u32)
137
 
138
/*
139
 * The packet size to allocate. One page should be enough.
140
 */
141
#define NCP_PACKET_SIZE 4070
142
 
143
#define NCP_MAXPATHLEN 255
144
#define NCP_MAXNAMELEN 14
145
 
146
#endif                          /* _LINUX_NCP_FS_H */

powered by: WebSVN 2.1.0

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