1655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/****************************************************************************
2655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************
3655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
4655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   This header was automatically generated from a Linux kernel header
5655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   of the same name, to make information necessary for userspace to
6655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   call into the kernel available to libc.  It contains only constants,
7655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   structures, and macros generated from the original header, and thus,
8655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   contains no copyrightable information.
9655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
10655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   To edit the content of this header, modify the corresponding
11655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   source file (e.g. under external/kernel-headers/original/) then
12655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   run bionic/libc/kernel/tools/update_all.py
13655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
14655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   Any manual change here will be lost the next time this script will
15655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   be run. You've been warned!
16655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
17655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************
18655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************/
19655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#ifndef _LINUX_NCP_FS_H
20655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define _LINUX_NCP_FS_H
21655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/fs.h>
22655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/in.h>
23655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/types.h>
25655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/magic.h>
26655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/ipx.h>
27655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/ncp_no.h>
28655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ncp_ioctl_request {
30d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int function;
31d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int size;
32d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char __user * data;
33655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
35655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ncp_fs_info {
36d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int version;
37d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  struct sockaddr_ipx addr;
38655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  __kernel_uid_t mounted_uid;
40d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int connection;
41d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int buffer_size;
42d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int volume_number;
43655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  __le32 directory_id;
45655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
46655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ncp_fs_info_v2 {
47d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int version;
48655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned long mounted_uid;
50d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int connection;
51d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int buffer_size;
52d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int volume_number;
53655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  __le32 directory_id;
55d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  __u32 dummy1;
56d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  __u32 dummy2;
57d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  __u32 dummy3;
58655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
60d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct ncp_sign_init {
61d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char sign_root[8];
62d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  char sign_last[16];
63655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
65d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct ncp_lock_ioctl {
66655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_LOCK_LOG 0
67655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_LOCK_SH 1
68d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_LOCK_EX 2
70655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_LOCK_CLEAR 256
71d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int cmd;
72d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int origin;
73655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int offset;
75d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned int length;
76655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_LOCK_DEFAULT_TIMEOUT 18
77655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_LOCK_MAX_TIMEOUT 180
78655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int timeout;
80d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao};
81d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct ncp_setroot_ioctl {
82d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int volNumber;
83655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int namespace;
85d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  __le32 dirEntNum;
86655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
87d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct ncp_objectname_ioctl {
88655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_AUTH_NONE 0x00
90655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_AUTH_BIND 0x31
91655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_AUTH_NDS 0x32
92d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  int auth_type;
93655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  size_t object_name_len;
95d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  void __user * object_name;
96655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
97d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct ncp_privatedata_ioctl {
98655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  size_t len;
100d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  void __user * data;
101655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
102655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOCSNAME_LEN 20
103655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct ncp_nls_ioctl {
105d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char codepage[NCP_IOCSNAME_LEN + 1];
106d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao  unsigned char iocharset[NCP_IOCSNAME_LEN + 1];
107655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
108d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_NCPREQUEST _IOR('n', 1, struct ncp_ioctl_request)
110655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GETMOUNTUID _IOW('n', 2, __kernel_old_uid_t)
111655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GETMOUNTUID2 _IOW('n', 2, unsigned long)
112655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_CONN_LOGGED_IN _IO('n', 3)
113d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_GET_FS_INFO_VERSION (1)
115655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GET_FS_INFO _IOWR('n', 4, struct ncp_fs_info)
116655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_GET_FS_INFO_VERSION_V2 (2)
117655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GET_FS_INFO_V2 _IOWR('n', 4, struct ncp_fs_info_v2)
118d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_SIGN_INIT _IOR('n', 5, struct ncp_sign_init)
120655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_SIGN_WANTED _IOR('n', 6, int)
121655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_SET_SIGN_WANTED _IOW('n', 6, int)
122655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_LOCKUNLOCK _IOR('n', 7, struct ncp_lock_ioctl)
123d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GETROOT _IOW('n', 8, struct ncp_setroot_ioctl)
125655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_SETROOT _IOR('n', 8, struct ncp_setroot_ioctl)
126655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GETOBJECTNAME _IOWR('n', 9, struct ncp_objectname_ioctl)
127655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_SETOBJECTNAME _IOR('n', 9, struct ncp_objectname_ioctl)
128d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GETPRIVATEDATA _IOWR('n', 10, struct ncp_privatedata_ioctl)
130655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_SETPRIVATEDATA _IOR('n', 10, struct ncp_privatedata_ioctl)
131655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GETCHARSETS _IOWR('n', 11, struct ncp_nls_ioctl)
132655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_SETCHARSETS _IOR('n', 11, struct ncp_nls_ioctl)
133d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_GETDENTRYTTL _IOW('n', 12, __u32)
135655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_IOC_SETDENTRYTTL _IOR('n', 12, __u32)
136655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_PACKET_SIZE 4070
137655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_MAXPATHLEN 255
138d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define NCP_MAXNAMELEN 14
140655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#endif
141