rev |
line source |
pascal@20616
|
1 --- virtualbox-ose-4.2.6/src/VBox/Additions/linux/sharedfolders/dirops.c
|
pascal@20616
|
2 +++ virtualbox-ose-4.2.6/src/VBox/Additions/linux/sharedfolders/dirops.c
|
pascal@20616
|
3 @@ -233,7 +233,11 @@
|
pascal@20616
|
4 * b. failure to compute fake inode number
|
pascal@20616
|
5 * c. filldir returns an error (see comment on that)
|
pascal@20616
|
6 */
|
pascal@20616
|
7 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
8 +static int sf_dir_iterate (struct file *dir, struct dir_context *ctx)
|
pascal@20616
|
9 +#else
|
pascal@20616
|
10 static int sf_dir_read (struct file *dir, void *opaque, filldir_t filldir)
|
pascal@20616
|
11 +#endif
|
pascal@20616
|
12 {
|
pascal@20616
|
13 TRACE();
|
pascal@20616
|
14 for (;;)
|
pascal@20616
|
15 @@ -257,12 +261,19 @@
|
pascal@20616
|
16 /* skip erroneous entry and proceed */
|
pascal@20616
|
17 LogFunc(("sf_getdent error %d\n", err));
|
pascal@20616
|
18 dir->f_pos += 1;
|
pascal@20616
|
19 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
20 + ctx->pos += 1;
|
pascal@20616
|
21 +#endif
|
pascal@20616
|
22 continue;
|
pascal@20616
|
23 }
|
pascal@20616
|
24
|
pascal@20616
|
25 /* d_name now contains a valid entry name */
|
pascal@20616
|
26
|
pascal@20616
|
27 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
28 + sanity = ctx->pos + 0xbeef;
|
pascal@20616
|
29 +#else
|
pascal@20616
|
30 sanity = dir->f_pos + 0xbeef;
|
pascal@20616
|
31 +#endif
|
pascal@20616
|
32 fake_ino = sanity;
|
pascal@20616
|
33 if (sanity - fake_ino)
|
pascal@20616
|
34 {
|
pascal@20616
|
35 @@ -270,8 +281,12 @@
|
pascal@20616
|
36 return -EINVAL;
|
pascal@20616
|
37 }
|
pascal@20616
|
38
|
pascal@20616
|
39 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
40 + err = dir_emit(ctx, d_name, strlen(d_name), fake_ino, DT_UNKNOWN);
|
pascal@20616
|
41 +#else
|
pascal@20616
|
42 err = filldir(opaque, d_name, strlen(d_name),
|
pascal@20616
|
43 dir->f_pos, fake_ino, DT_UNKNOWN);
|
pascal@20616
|
44 +#endif
|
pascal@20616
|
45 if (err)
|
pascal@20616
|
46 {
|
pascal@20616
|
47 LogFunc(("filldir returned error %d\n", err));
|
pascal@20616
|
48 @@ -281,6 +296,9 @@
|
pascal@20616
|
49 }
|
pascal@20616
|
50
|
pascal@20616
|
51 dir->f_pos += 1;
|
pascal@20616
|
52 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
53 + ctx->pos += 1;
|
pascal@20616
|
54 +#endif
|
pascal@20616
|
55 }
|
pascal@20616
|
56
|
pascal@20616
|
57 BUG();
|
pascal@20616
|
58 @@ -289,7 +307,11 @@
|
pascal@20616
|
59 struct file_operations sf_dir_fops =
|
pascal@20616
|
60 {
|
pascal@20616
|
61 .open = sf_dir_open,
|
pascal@20616
|
62 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
63 + .iterate = sf_dir_iterate,
|
pascal@20616
|
64 +#else
|
pascal@20616
|
65 .readdir = sf_dir_read,
|
pascal@20616
|
66 +#endif
|
pascal@20616
|
67 .release = sf_dir_release,
|
pascal@20616
|
68 .read = generic_read_dir
|
pascal@20616
|
69 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
|
pascal@20616
|
70 --- virtualbox-ose-4.2.6/src/VBox/Additions/linux/drm/vboxvideo_drv.c
|
pascal@20616
|
71 +++ virtualbox-ose-4.2.6/src/VBox/Additions/linux/drm/vboxvideo_drv.c
|
pascal@20616
|
72 @@ -88,7 +88,6 @@
|
pascal@20616
|
73 #endif
|
pascal@20616
|
74 .mmap = drm_mmap,
|
pascal@20616
|
75 .poll = drm_poll,
|
pascal@20616
|
76 - .fasync = drm_fasync,
|
pascal@20616
|
77 },
|
pascal@20616
|
78 #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 39)
|
pascal@20616
|
79 .pci_driver =
|
pascal@20616
|
80 --- virtualbox-ose-4.2.6/src/VBox/Additions/linux/drm/vboxvideo_drm.c
|
pascal@20616
|
81 +++ virtualbox-ose-4.2.6/src/VBox/Additions/linux/drm/vboxvideo_drm.c
|
pascal@20616
|
82 @@ -98,7 +98,6 @@
|
pascal@20616
|
83 .unlocked_ioctl = drm_ioctl,
|
pascal@20616
|
84 .mmap = drm_mmap,
|
pascal@20616
|
85 .poll = drm_poll,
|
pascal@20616
|
86 - .fasync = drm_fasync,
|
pascal@20616
|
87 };
|
pascal@20616
|
88 #endif
|
pascal@20616
|
89
|
pascal@20616
|
90 @@ -129,7 +128,6 @@
|
pascal@20616
|
91 #endif
|
pascal@20616
|
92 .mmap = drm_mmap,
|
pascal@20616
|
93 .poll = drm_poll,
|
pascal@20616
|
94 - .fasync = drm_fasync,
|
pascal@20616
|
95 },
|
pascal@20616
|
96 #else /* LINUX_VERSION_CODE >= KERNEL_VERSION(3, 3, 0) || defined(DRM_RHEL63) */
|
pascal@20616
|
97 .fops = &driver_fops,
|
pascal@20616
|
98 --- virtualbox-ose-4.2.6/src/VBox/Additions/linux/sharedfolders/utils.c
|
pascal@20616
|
99 +++ virtualbox-ose-4.2.6/src/VBox/Additions/linux/sharedfolders/utils.c
|
pascal@20616
|
100 @@ -144,8 +144,13 @@
|
pascal@20616
|
101 #endif
|
pascal@20616
|
102 }
|
pascal@20616
|
103
|
pascal@20616
|
104 +#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
105 inode->i_uid = sf_g->uid;
|
pascal@20616
|
106 inode->i_gid = sf_g->gid;
|
pascal@20616
|
107 +#else
|
pascal@20616
|
108 + inode->i_uid.val = sf_g->uid;
|
pascal@20616
|
109 + inode->i_gid.val = sf_g->gid;
|
pascal@20616
|
110 +#endif
|
pascal@20616
|
111 inode->i_size = info->cbObject;
|
pascal@20616
|
112 #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 19) && !defined(KERNEL_FC6)
|
pascal@20616
|
113 inode->i_blksize = 4096;
|
pascal@20616
|
114 --- virtualBbx-ose-4.2.6/src/VBox/Additions/common/VBoxGuest/VBoxGuest-linux.c
|
pascal@20616
|
115 +++ virtualbox-ose-4.2.6/src/VBox/Additions/common/VBoxGuest/VBoxGuest-linux.c
|
pascal@20616
|
116 @@ -196,7 +196,7 @@
|
pascal@20616
|
117
|
pascal@20616
|
118
|
pascal@20616
|
119 /** PCI hotplug structure. */
|
pascal@20616
|
120 -static const struct pci_device_id __devinitdata g_VBoxGuestPciId[] =
|
pascal@20616
|
121 +static const struct pci_device_id g_VBoxGuestPciId[] =
|
pascal@20616
|
122 {
|
pascal@20616
|
123 {
|
pascal@20616
|
124 vendor: VMMDEV_VENDORID,
|
pascal@20616
|
125 --- virtualbox-ose-4.2.6/src/VBox/Additions/linux/sharedfolders/regops.c
|
pascal@20616
|
126 +++ virtualbox-ose-4.2.6/src/VBox/Additions/linux/sharedfolders/regops.c
|
pascal@20616
|
127 @@ -574,8 +574,13 @@
|
pascal@20616
|
128 # else
|
pascal@20616
|
129 .sendfile = generic_file_sendfile,
|
pascal@20616
|
130 # endif
|
pascal@20616
|
131 +# if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)
|
pascal@20616
|
132 + .read_iter = generic_file_read_iter,
|
pascal@20616
|
133 + .write_iter = generic_file_write_iter,
|
pascal@20616
|
134 +# else
|
pascal@20616
|
135 .aio_read = generic_file_aio_read,
|
pascal@20616
|
136 .aio_write = generic_file_aio_write,
|
pascal@20616
|
137 +# endif
|
pascal@20616
|
138 # if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 35)
|
pascal@20616
|
139 .fsync = noop_fsync,
|
pascal@20616
|
140 # else
|
pascal@20616
|
141 --- virtualbox-ose-4.2.6/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
|
pascal@20616
|
142 +++ virtualbox-ose-4.2.6/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
|
pascal@20616
|
143 @@ -429,7 +429,11 @@
|
pascal@20616
|
144 if (!pNewCreds)
|
pascal@20616
|
145 goto done;
|
pascal@20616
|
146
|
pascal@20616
|
147 +# if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
148 + pNewCreds->fsuid.val = 0;
|
pascal@20616
|
149 +# else
|
pascal@20616
|
150 pNewCreds->fsuid = 0;
|
pascal@20616
|
151 +# endif
|
pascal@20616
|
152 pOldCreds = override_creds(pNewCreds);
|
pascal@20616
|
153 #endif
|
pascal@20616
|
154
|
pascal@20616
|
155 @@ -539,7 +543,11 @@
|
pascal@20616
|
156 if (!pNewCreds)
|
pascal@20616
|
157 goto done;
|
pascal@20616
|
158
|
pascal@20616
|
159 +# if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
160 + pNewCreds->fsuid.val = 0;
|
pascal@20616
|
161 +# else
|
pascal@20616
|
162 pNewCreds->fsuid = 0;
|
pascal@20616
|
163 +# endif
|
pascal@20616
|
164 pOldCreds = override_creds(pNewCreds);
|
pascal@20616
|
165 #endif
|
pascal@20616
|
166 RTStrPrintf(szFileBuf, cMaxBuf,
|
pascal@20616
|
167 --- virtualbox-ose-4.2.6/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
|
pascal@20616
|
168 +++ virtualbox-ose-4.2.6/src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c
|
pascal@20616
|
169 @@ -223,7 +223,11 @@
|
pascal@20616
|
170 DECLINLINE(RTUID) vboxdrvLinuxUid(void)
|
pascal@20616
|
171 {
|
pascal@20616
|
172 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29)
|
pascal@20616
|
173 +# if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
174 + return current->cred->uid.val;
|
pascal@20616
|
175 +# else
|
pascal@20616
|
176 return current->cred->uid;
|
pascal@20616
|
177 +# endif
|
pascal@20616
|
178 #else
|
pascal@20616
|
179 return current->uid;
|
pascal@20616
|
180 #endif
|
pascal@20616
|
181 @@ -232,7 +236,11 @@
|
pascal@20616
|
182 DECLINLINE(RTGID) vboxdrvLinuxGid(void)
|
pascal@20616
|
183 {
|
pascal@20616
|
184 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29)
|
pascal@20616
|
185 +# if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
186 + return current->cred->gid.val;
|
pascal@20616
|
187 +# else
|
pascal@20616
|
188 return current->cred->gid;
|
pascal@20616
|
189 +# endif
|
pascal@20616
|
190 #else
|
pascal@20616
|
191 return current->gid;
|
pascal@20616
|
192 #endif
|
pascal@20616
|
193 @@ -241,7 +249,11 @@
|
pascal@20616
|
194 DECLINLINE(RTUID) vboxdrvLinuxEuid(void)
|
pascal@20616
|
195 {
|
pascal@20616
|
196 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29)
|
pascal@20616
|
197 +# if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
pascal@20616
|
198 + return current->cred->euid.val;
|
pascal@20616
|
199 +# else
|
pascal@20616
|
200 return current->cred->euid;
|
pascal@20616
|
201 +# endif
|
pascal@20616
|
202 #else
|
pascal@20616
|
203 return current->euid;
|
pascal@20616
|
204 #endif
|