blob: 010836beeae6f7bde567b0a1d2b8f11e1e79b457 [file] [log] [blame]
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +000012005-07-28 Miklos Szeredi <miklos@szeredi.hu>
2
3 * kernel: invalidate attributes for read/readdir/readlink
4 operations
5
6 * kernel: detect newer UML kernels
7
Miklos Szeredibfb99462005-07-26 11:07:55 +000082005-07-26 Miklos Szeredi <miklos@szeredi.hu>
9
10 * Make the installation path of fuse.ko and mount.fuse
11 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
12 environment variables. Requirement and help from Csaba Henk.
13
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +0000142005-07-22 Miklos Szeredi <miklos@szeredi.hu>
15
16 * Fix bug, that causes filesystem requests to hang when unique
17 request counter becomes negative. This happens after
18 2,147,483,648 operations, so most people won't care. Thanks to
19 Franco Broi for the report and testing.
20
Miklos Szeredie3b83092005-07-22 17:24:30 +000021 * Added file locking methods to kernel and low-level API.
22
Miklos Szeredi9b813af2005-07-21 07:59:37 +0000232005-07-21 Miklos Szeredi <miklos@szeredi.hu>
24
25 * Don't change mtime/ctime/atime to local time on read/write.
26 Bug reported by Ben Grimm
27
28 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
29 Magnusson
30
31 * fusermount: use getopt_long() for option parsing. It allows the
32 use of '--' to stop argument scanning, so fusermount can now
33 operate on directories whose names begin with a '-'. Patch by
34 Adam Connell
35
Miklos Szeredibd10a7b2005-07-15 09:59:59 +0000362005-07-15 Miklos Szeredi <miklos@szeredi.hu>
37
38 * fusermount: add '-v', '--version' and '--help' options
39
40 * add inode based API
41
Miklos Szeredi2482fdb2005-07-12 13:23:53 +0000422005-07-12 Miklos Szeredi <miklos@szeredi.hu>
43
44 * lib: don't block signals in worker threads. Problem noticed by
45 Usarin Heininga
46
Miklos Szeredic902a852005-07-07 12:35:37 +0000472005-07-07 Miklos Szeredi <miklos@szeredi.hu>
48
49 * lib: don't allow both 'allow_other' and 'allow_root' options to
50 be given
51
Miklos Szeredi437d8112005-07-06 09:14:20 +0000522005-07-06 Miklos Szeredi <miklos@szeredi.hu>
53
54 * fusermount: check if mountpoint is empty (only '.' and '..' for
55 directories, and size = 0 for regular files). If "nonempty"
56 option is given, omit this check. This is useful, so users don't
57 accidentally hide data (e.g. from backup programs). Thanks to
58 Frank van Maarseveen for pointing this out.
59
60 * kernel: check if mandatory mount options ('fd', 'rootmode',
61 'user_id', 'group_id') are all given
62
Miklos Szeredi340d21f2005-07-06 10:07:52 +000063 * lib: simplify 'readdir_ino' handling
64
Miklos Szeredie331c4b2005-07-06 13:34:02 +000065 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
66
Miklos Szeredibb9f5172005-07-03 18:03:11 +0000672005-07-03 Miklos Szeredi <miklos@szeredi.hu>
68
69 * kernel: clean up 'direct_io' code
70
Miklos Szeredie1bcece2005-06-28 10:37:06 +0000712005-06-28 Miklos Szeredi <miklos@szeredi.hu>
72
73 * Add 'mount.fuse' written by Petr Klima
74
Miklos Szeredi866826d2005-06-28 12:22:57 +000075 * '/dev/fuse' is created by 'make install' if does not yet exist
76
Miklos Szeredi129ef8f2005-06-20 13:48:42 +0000772005-06-20 Miklos Szeredi <miklos@szeredi.hu>
78
79 * Fix UCLIBC compile error. Patch by Christian Magnusson
80
Miklos Szerediec12fad2005-06-08 10:26:34 +0000812005-06-08 Miklos Szeredi <miklos@szeredi.hu>
82
83 * Enable the auto-loading of the module via access to the
84 corresponding device file. Patch by Takashi Iwai.
85
Miklos Szeredidaa690e2005-06-08 10:41:36 +000086 * Allow mounting a regular file (over a regular file) for
87 unprivleged users.
88
Miklos Szeredi7495abf2005-06-08 11:01:17 +000089 * Do not create temporary device file. Require "/dev/fuse" to
90 exist, and be readable/writable by the mounting user.
91
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000922005-06-02 Miklos Szeredi <miklos@szeredi.hu>
93
Miklos Szeredi56478552005-06-02 10:29:00 +000094 * Released 2.3.0
95
962005-06-02 Miklos Szeredi <miklos@szeredi.hu>
97
Miklos Szeredi46960ce2005-06-02 09:05:00 +000098 * Fix serious information leak: if the filesystem returns a short
99 byte count to a read request, and there are non-zero number of
100 pages which are not filled at all, these pages will not be zeroed.
101 Hence the user can read out previous memory contents. Found by
102 Sven Tantau.
103
Miklos Szeredi33be22d2005-05-27 09:12:43 +00001042005-05-27 Miklos Szeredi <miklos@szeredi.hu>
105
106 * Add "readdir_ino" mount option, which tries to fill in the d_ino
107 field in struct dirent. This mount option is ignored if "use_ino"
108 is used. It helps some programs (e.g. 'pwd' used over NFS from a
109 non-Linux OS). Patch by David Shaw.
110
Miklos Szeredif94e0102005-05-12 14:56:34 +00001112005-05-12 Miklos Szeredi <miklos@szeredi.hu>
112
Miklos Szeredieb009c42005-05-12 15:01:17 +0000113 * Released 2.3-rc1
114
1152005-05-12 Miklos Szeredi <miklos@szeredi.hu>
116
Miklos Szeredif94e0102005-05-12 14:56:34 +0000117 * File save in krusader and other editors doesn't work with sshfs,
118 because open() is interrupted by a periodic signal, and open()
119 restarts forever, without any progress. This could just be fixed
120 in open(), but the problem is more generic: if signals are
121 received more often than the filesystem can get the request to
122 userspace, it will never finish. This is probably only a
123 theoretical problem, nevertheless I'm removing the possibility to
124 interrupt requests with anything other than SIGKILL, even before
125 being sent to userspace. Bugreport by Eduard Czimbalmos.
126
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00001272005-05-09 Miklos Szeredi <miklos@szeredi.hu>
128
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000129 * libfuse: add "tree_lock" rwlock, that is locked for write in
130 rename, unlink and rmdir, and locked for read in all other
131 operations. This should fix the rename/release race reported by
132 Valient Gough and others. The solution is very coarse, a finer
133 grained locking scheme could be implemented, but it would be much
134 more complex. Let's see whether this is good enough.
135
1362005-05-09 Miklos Szeredi <miklos@szeredi.hu>
137
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000138 * Released 2.3-pre7
139
Miklos Szeredi38009022005-05-08 19:47:22 +00001402005-05-08 Miklos Szeredi <miklos@szeredi.hu>
141
142 * Better fix for out of order FORGET messages. Now the
143 LOOKUP/FORGET messages are balanced exactly (one FORGET can
144 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000145 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000146 compatible.
147
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00001482005-05-06 Miklos Szeredi <miklos@szeredi.hu>
149
150 * Fix abort for out of order FORGET messages. Again. Spotted by
151 Franco Broi again. Sorry :)
152
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00001532005-04-29 Miklos Szeredi <miklos@szeredi.hu>
154
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000155 * Released 2.3-pre6
156
1572005-04-29 Miklos Szeredi <miklos@szeredi.hu>
158
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000159 * Make fusermount work with fuse kernel modules not yet supporting
160 the "group_id" option (added for the purpose of stricter
161 permission checking).
162
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00001632005-04-28 Miklos Szeredi <miklos@szeredi.hu>
164
165 * Check for hard-linked directories in lookup. This could cause
166 problems in the VFS, which assumes that such objects never exist.
167
168 * Make checking of permission for other users more strict. Now
169 the same privilege is required for the mount owner as for ptrace
170 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000171
Miklos Szeredi3efcb562005-04-23 13:34:29 +00001722005-04-23 Miklos Szeredi <miklos@szeredi.hu>
173
174 * Released 2.3-pre5
175
Miklos Szeredid001bf92005-04-22 07:54:11 +00001762005-04-22 Miklos Szeredi <miklos@szeredi.hu>
177
178 * Add -msoft-float to kernel module compile flags for 2.4.X. This
179 is needed on certain architectures. Report from Chris Kirby
180
181 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
182 Reported by David Shaw
183
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000184 * Remove "allow_root" option from kernel module, and implement
185 it's functionality in the library
186
187 * Fix Oops caused by premature release of fuse_conn. Clean up
188 related code, to be more readable
189
Miklos Szeredif9137452005-04-23 10:59:44 +0000190 * Sendfile should not use page cache if "direct_io" mount option
191 is given
192
Miklos Szeredib7640d22005-04-08 15:15:28 +00001932005-04-08 Miklos Szeredi <miklos@szeredi.hu>
194
195 * Fix Oops in case of nfs export. Spotted by David Shaw
196
Miklos Szeredi89814a12005-04-08 16:39:09 +0000197 * Fix another Oops in case of write over nfs with direct_io turned
198 on. Again spotted by David Shaw
199
Miklos Szerediab974562005-04-07 15:40:21 +00002002005-04-07 Miklos Szeredi <miklos@szeredi.hu>
201
Miklos Szeredi432d6182005-04-07 15:56:13 +0000202 * Released 2.3-pre4
203
2042005-04-07 Miklos Szeredi <miklos@szeredi.hu>
205
Miklos Szerediab974562005-04-07 15:40:21 +0000206 * lib: finalized new readdir() interface, which now supersedes the
207 getdir() method.
208
Miklos Szeredi30e093a2005-04-03 17:44:54 +00002092005-04-03 Miklos Szeredi <miklos@szeredi.hu>
210
211 * Released 2.3-pre3
212
2132005-04-03 Miklos Szeredi <miklos@szeredi.hu>
214
215 * Implement backward compatibility with version 5 kernel ABI
216
Miklos Szeredi18fce982005-04-01 21:07:35 +00002172005-04-01 Miklos Szeredi <miklos@szeredi.hu>
218
219 * Released 2.3-pre2
220
2212005-04-01 Miklos Szeredi <miklos@szeredi.hu>
222
223 * kernel: fix dirent offset handling
224
225 * lib: add readdir and releasedir methods
226
227 * lib: use fh field of fuse_file_info in opendir, readdir,
228 releasedir and fsyncdir methods
229
230 * lib: check kernel API version and bail out of it's old. This
231 will be properly fixed in the next release
232
2332005-03-31 Miklos Szeredi <miklos@szeredi.hu>
234
235 * Released 2.3-pre1
236
Miklos Szeredieab72ef2005-03-31 19:59:12 +00002372005-03-31 Miklos Szeredi <miklos@szeredi.hu>
238
239 * kernel API: add padding to structures, so 64bit and 32bit
240 compiler will return the same size
241
242 * kernel API: add offset field to fuse_dirent. This will allow
243 more sophisticated readdir interface for userspace
244
245 * kernel API: change major number to 6
246
247 * kernel: fix warnings on 64bit archs
248
249 * kernel: in case of API version mismatch, return ECONNREFUSED
250
Miklos Szeredi407e6a72005-03-25 12:19:43 +00002512005-03-24 Miklos Szeredi <miklos@szeredi.hu>
252
253 * kernel: trivial cleanups
254
Miklos Szeredi4283ee72005-03-21 12:09:04 +00002552005-03-21 Miklos Szeredi <miklos@szeredi.hu>
256
257 * Add fsyncdir() operation
258
Miklos Szeredid17da462005-03-21 11:47:04 +00002592005-03-19 Miklos Szeredi <miklos@szeredi.hu>
260
261 * kernel: add locking to background list (fixes previous fix)
262
2632005-03-18 Miklos Szeredi <miklos@szeredi.hu>
264
265 * kernel: fix bug which could cause leave busy inodes after
266 unmount, and Oops.
267
2682005-03-08 Miklos Szeredi <miklos@szeredi.hu>
269
270 * examples: add -lpthread to link flags to work around valgrind
271 quirk
272
273 * lib: don't exit threads, so cancelation doesn't cause segfault
274
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00002752005-03-04 Miklos Szeredi <miklos@szeredi.hu>
276
277 * kernel: fix nasty bug which could cause an Oops under certain
278 situations. Found by Magnus Johansson
279
Miklos Szeredif43f0632005-02-28 11:46:56 +00002802005-02-28 Miklos Szeredi <miklos@szeredi.hu>
281
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000282 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000283 permission checking in getdir() is too late. Thanks to Usarin
284 Heininga for pointing out this deficiency
285
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000286 * libfuse: added init() and destroy() methods to fuse_operations
287
Miklos Szeredif43f0632005-02-28 11:46:56 +0000288 * kernel: llseek() method for files and directories made explicit
289
290 * kernel: fixed inode leak in NFS export in case of nodeid
291 wrapping
292
Miklos Szeredied3c97c2005-02-15 17:04:50 +00002932005-02-15 Miklos Szeredi <miklos@szeredi.hu>
294
295 * libfuse: clean up some unitialized memory found with valgrind
296
Miklos Szeredi47c52982005-02-23 09:27:38 +0000297 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
298 explicitly linked libpthread for applications
299
Miklos Szeredia7169412005-02-10 07:35:05 +00003002005-02-10 Miklos Szeredi <miklos@szeredi.hu>
301
302 * fusermount: set umask, otherwise /etc/mtab will have
303 unpredictable permission. Spotted by Jindrich Kolorenc
304
305 * fusermount: set owner and group of /etc/mtab to original values
306 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000307
308 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000309
Miklos Szeredib92d9782005-02-07 16:10:49 +00003102005-02-07 Miklos Szeredi <miklos@szeredi.hu>
311
312 * Cleaned up directory reading (temporary file is not used)
313
Miklos Szerediff30a6c2005-02-02 10:53:59 +00003142005-02-02 Miklos Szeredi <miklos@szeredi.hu>
315
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000316 * Released 2.2
317
3182005-02-02 Miklos Szeredi <miklos@szeredi.hu>
319
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000320 * Fix possible race when operation is interrupted
321
Miklos Szeredi7a983952005-01-28 09:58:19 +00003222005-01-28 Miklos Szeredi <miklos@szeredi.hu>
323
Miklos Szeredie5183742005-02-02 11:14:04 +0000324 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000325
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00003262005-01-26 Miklos Szeredi <miklos@szeredi.hu>
327
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000328 * Released 2.2-pre6
329
3302005-01-26 Miklos Szeredi <miklos@szeredi.hu>
331
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000332 * Fix bug in link() operation which caused the wrong path to be
333 passed as the first argument. Found by Anton Altaparmakov
334
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00003352005-01-21 Miklos Szeredi <miklos@szeredi.hu>
336
337 * LIB: fix double reply in readdir operation
338
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000339 * fusermount: fix uid checking bug. Patch by Adam Connell
340
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000341 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000342 Patch by Keshava Gowda
343
Miklos Szeredi64074142005-01-20 08:48:11 +00003442005-01-20 Miklos Szeredi <miklos@szeredi.hu>
345
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000346 * KERNEL: provide correct llseek semantics for fuse device (fixes
347 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
348
3492005-01-20 Miklos Szeredi <miklos@szeredi.hu>
350
Miklos Szeredi64074142005-01-20 08:48:11 +0000351 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
352
Miklos Szeredi1adb2272005-01-18 21:19:58 +00003532005-01-18 Miklos Szeredi <miklos@szeredi.hu>
354
355 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
356 and RELEASEDIR. This ends the ugly hack of passing a file
357 descriptor to the kernel, and actually makes the code simpler.
358
Miklos Szeredi7db35c02005-01-17 09:46:28 +00003592005-01-17 Miklos Szeredi <miklos@szeredi.hu>
360
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000361 * Released 2.2-pre4
362
3632005-01-17 Miklos Szeredi <miklos@szeredi.hu>
364
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000365 * fusermount: remove capability setting, which was the cause of
366 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000367 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000368
Miklos Szeredidbe0f652005-01-15 14:32:56 +00003692005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000370
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000371 * fix compilation on 2.4 kernels (reported by Valient Gough)
372
373 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000374
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000375 * fusermount: improve parsing of /etc/fuse.conf
376
3772005-01-13 Miklos Szeredi <miklos@szeredi.hu>
378
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000379 * Remove 'mount_max' and 'user_allow_other' module options. These
380 are now checked by fusermount, and can be set in /etc/fuse.conf
381
382 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
383
Miklos Szeredi81394522005-01-11 14:24:18 +00003842005-01-11 Miklos Szeredi <miklos@szeredi.hu>
385
386 * KERNEL: fix possible inode allocation problem, where
387 sizeof(struct inode) is not aligned (found by Mike Waychison)
388
389 * KERNEL: use new follow_link/put_link methods
390
391 * KERNEL: cosmetic fixes
392
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00003932005-01-10 Miklos Szeredi <miklos@szeredi.hu>
394
395 * Released 2.2-pre3
396
3972005-01-10 Miklos Szeredi <miklos@szeredi.hu>
398
399 * Add missing code that was accidently left out
400
Miklos Szeredi8c7da232005-01-09 12:27:41 +00004012005-01-09 Miklos Szeredi <miklos@szeredi.hu>
402
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000403 * Released 2.2-pre2
404
4052005-01-09 Miklos Szeredi <miklos@szeredi.hu>
406
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000407 * Change "uid" mount option to "user_id" to avoid confusion with a
408 mount option "uid" commonly used by many filesystems
409
4102005-01-09 Miklos Szeredi <miklos@szeredi.hu>
411
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000412 * Released 2.2-pre1
413
4142005-01-09 Miklos Szeredi <miklos@szeredi.hu>
415
416 * If FUSE is configured in the kernel, don't build it by default
417
Miklos Szeredi2a927272005-01-07 11:14:15 +00004182005-01-07 Miklos Szeredi <miklos@szeredi.hu>
419
420 * Compile fix by Christian Magnusson
421
Miklos Szeredib6220192005-01-05 16:19:10 +00004222005-01-05 Miklos Szeredi <miklos@szeredi.hu>
423
424 * Fix compilation for 2.6.{0-5} kernels
425
Miklos Szeredi0f62d722005-01-04 12:45:54 +00004262005-01-04 Miklos Szeredi <miklos@szeredi.hu>
427
428 * KERNEL: if request is interrupted, still keep reference to used
429 inode(s) and file, so that FORGET and RELEASE are not sent until
430 userspace finishes the request.
431
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000432 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
433 request with the same information, which is more flexible,
434 simpler, works on embedded systems.
435
Miklos Szeredi0f62d722005-01-04 12:45:54 +00004362004-12-16 Miklos Szeredi <miklos@szeredi.hu>
437
438 * KERNEL ABI: update interface to make it independent of type
439 sizes. This will help on 64 bit architectures which can run
440 legacy 32 bit applications.
441
442 * KERNEL ABI: add "len" field to request headers. This will allow
443 sending/receiving requests in multiple chunks.
444
445 * KERNEL: handle file type change more intelligently
446
447 * LIB: "-o debug" option should disable backgrounding (fix by
448 Fabien Reygrobellet)
449
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00004502004-12-13 Miklos Szeredi <miklos@szeredi.hu>
451
452 * KERNEL: invalidate dentry/attributes if interrupted request
453 could leave filesystem in an unknown state.
454
Miklos Szeredie56818b2004-12-12 11:45:24 +00004552004-12-12 Miklos Szeredi <miklos@szeredi.hu>
456
457 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
458 These will cause some regressions, but stability is considered
459 more important. If any of these features turns out to be
460 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000461
Miklos Szeredie56818b2004-12-12 11:45:24 +0000462 * Make all requests interruptible (only with SIGKILL currently).
463 This can be used to break any deadlock produced by the userspace
464 filesystem accessing it's own exported files. The RELEASE request
465 is special, because if it's interrupted before sending it to
466 userspace it is still sent, but the reply is not awaited.
467
468 * If request is interrupted before being sent to userspace, and if
469 it hasn't yet got any side effects, it is always restarted,
470 regardless of the SA_RESTART flag. This makes these interruptions
471 transparent to the process.
472
473 * Remove shared-writable mmap support, which was prone to an
474 out-of-memory deadlock situation
475
476 * Remove INVALIDATE userspace initiated request
477
478 * Make readpages() synchronous. Asynchronous requests are
479 deadlock prone, since they cannot be interrupted.
480
481 * Add readv/writev support to fuse device operations
482
483 * Remove some printks, which userspace FS can use for a DoS
484 against syslog
485
486 * Remove 'large_read' mount option from 2.6 in kernel, check it in
487 fusermount instead
488
489 * LIB: improve compatibility with a fuse.h header installed in
490 ${prefix}/include which in turn includes the real header.
491
492 * LIB: improve compatibility by defining fuse_main() (which is now
493 not used), so old configure scripts find it.
494
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00004952004-12-10 Miklos Szeredi <miklos@szeredi.hu>
496
497 * When mounting on a subdirectory of / don't duplicate slashes at
498 the beggining of path (spotted by David Shaw)
499
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00005002004-12-09 Miklos Szeredi <miklos@szeredi.hu>
501
502 * Fix bug causing garbage in mount options (spotted by David Shaw)
503
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00005042004-12-07 Miklos Szeredi <miklos@szeredi.hu>
505
506 * Add 'writepage' flag to 'fuse_file_info'.
507
508 * More comments in fuse.h
509
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000510 * Get rid of double underscores
511
Miklos Szeredi799993c2004-12-04 21:20:05 +00005122004-12-04 Miklos Szeredi <miklos@szeredi.hu>
513
514 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
515
516 * helper.c: add -ho option, which only displays the options not
517 the usage header. This can be used by filesystems which have
518 their own options.
519
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00005202004-12-03 Miklos Szeredi <miklos@szeredi.hu>
521
522 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
523 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
524 including the fuse header
525
526 * Add binary compatibility to 2.1 version of library with symbol
527 versioning
528
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00005292004-12-03 Miklos Szeredi <miklos@szeredi.hu>
530
531 * Released 2.1
532
Miklos Szeredi039322d2004-12-01 18:39:12 +00005332004-12-01 Miklos Szeredi <miklos@szeredi.hu>
534
535 * kernel: clean up writing functions
536
537 * kernel: no allocation on write in direct_io mode
538
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000539 * move linux/fuse.h to fuse_kernel.h
540
Miklos Szeredi83a07442004-11-30 18:25:20 +00005412004-11-30 Miklos Szeredi <miklos@szeredi.hu>
542
543 * kernel: clean up reading functions
544
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00005452004-11-29 Miklos Szeredi <miklos@szeredi.hu>
546
547 * kernel: make readpage() uninterruptible
548
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000549 * kernel: check readonly filesystem flag in fuse_permission
550
551 * lib: don't die if version file not found and new style device
552 exists
553
554 * lib: add '-r' option, which is short for '-o ro'
555
556 * fusermount: simplify device opening
557
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000558 * kernel: when direct_io is turend on, copy data directly to
559 destination without itermediate buffer. More efficient and safer,
560 since no allocation is done.
561
562 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000563
564 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000565
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00005662004-11-26 Miklos Szeredi <miklos@szeredi.hu>
567
568 * libfuse API change: open, read, write, flush, fsync and release
569 are passed a 'struct fuse_file_info' pointer containing the open
570 flags (open and release), and the file handle. Verion changed to
571 3.0.
572
Miklos Szeredia25d4c22004-11-23 22:32:16 +00005732004-11-23 Miklos Szeredi <miklos@szeredi.hu>
574
575 * More cleanups in the kernel
576
577 * The 10,229 charater device number has been assigned for FUSE
578
579 * Version file checking fix (reported by Christian Magnusson)
580
581 * fusermount: opening the fuse device now doesn't need /sys.
582
583 * Optimize reading by controlling the maximum readahead based on
584 the 'max_read' mount option
585
586 * fixes for UCLIBC (Christian Magnusson)
587
Miklos Szeredi13ed4822004-11-20 11:12:21 +00005882004-11-19 Miklos Szeredi <miklos@szeredi.hu>
589
590 * Cleaned up kernel in preparation for merge into mainline:
591
592 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
593
594 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
595
596 * __user annotations for sparse
597
598 * allocate individual pages instead of kmalloc in fuse_readdir,
599 fuse_read and fuse_write.
600
601 * Fix NFS export in case "use_ino" mount option is given
602
Miklos Szeredif3845c42004-11-20 11:18:34 +0000603 * Make libfuse and fusermount compatible with future versions
604
605 * fusermount: properly add mount options to /etc/mtab
606
6072004-11-15 Miklos Szeredi <miklos@szeredi.hu>
608
609 * fusermount: do not resolve last component of mountpoint on if it
610 is '.' or '..'. This new path resolvation is now done on mount as
611 well as unmount. This enables relative paths to work on unmount.
612
613 * fusermount: parse common mount options like "ro", "rw", etc...
614
615 * Allow module params to be changed through sysfs
616
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00006172004-11-14 Miklos Szeredi <miklos@szeredi.hu>
618
619 * Released 2.1-pre1
620
6212004-11-14 Miklos Szeredi <miklos@szeredi.hu>
622
623 * Fix bug in fuse_readpages() causing Oops in certain situations.
624 Bug found by Vincenzo Ciancia.
625
626 * Fix compilation with kernels versions > 2.6.9.
627
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00006282004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000629
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000630 * Check kernel interface version in fusermount to prevent
631 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000632
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000633 * No need to allocate fuse_conn until actual mount happens
634
635 * Fix potential race between umount and fuse_invalidate
636
637 * Check superblock of proc file in addition to inode number
638
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000639 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000640
Miklos Szeredi51ec1032004-11-10 11:52:26 +00006412004-11-10 Miklos Szeredi <miklos@szeredi.hu>
642
643 * Separate configure for the kernel directory
644
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000645 * Don't allow write to return more than 'count'
646
647 * Extend kernel interface for future use
648
Miklos Szeredi51ec1032004-11-10 11:52:26 +00006492004-11-09 Miklos Szeredi <miklos@szeredi.hu>
650
651 * Fix 'makeconf.sh' to use autoreconf if available
652
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00006532004-11-08 Miklos Szeredi <miklos@szeredi.hu>
654
Miklos Szeredid507c732004-11-08 17:32:25 +0000655 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
656 compatibility with earlier versions. To compile earier versions
657 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
658 Do not use the "use_ino" mount flag with filesystems compiled with
659 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000660
661 * Add pkg-config support. To compile a FUSE based filesystem you
662 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
663 or similar. Note, that the PKG_CONFIG_PATH environment variable
664 usually needs to be set to "/usr/local/lib/pkgconfig".
665
666 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000667
Miklos Szeredia13d9002004-11-02 17:32:03 +00006682004-11-02 Miklos Szeredi <miklos@szeredi.hu>
669
670 * Added "use_ino" mount option. This enables the filesystems to
671 set the st_ino field on files
672
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00006732004-11-01 Miklos Szeredi <miklos@szeredi.hu>
674
675 * Fix compile problems with ancient (<=2.4.18) kernels (reported
676 by Jeremy Smith)
677
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000678 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
679
680 * Clear the 'exited' flag when mail loop is finished
681
Miklos Szeredie989f0d2004-10-28 20:24:58 +00006822004-10-28 Miklos Szeredi <miklos@szeredi.hu>
683
684 * Make xattr functions work under 2.6 (bug found by Vincenzo
685 Ciancia)
686
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00006872004-10-26 Miklos Szeredi <miklos@szeredi.hu>
688
689 * Reset request in fuse_flush() (bugreport by David Shaw)
690
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00006912004-10-21 Miklos Szeredi <miklos@szeredi.hu>
692
Miklos Szeredi0e70aa72004-10-21 16:24:29 +0000693 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000694 error code
695
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000696 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000697 make it easier to implement a custom event loop.
698
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000699 * Use daemon() call to background the filesystem after mounting.
700 This function closes the standard input, output and error and
701 changes the current working directory to "/".
702
Miklos Szeredi127d49b2004-10-14 13:33:39 +00007032004-10-14 Miklos Szeredi <miklos@szeredi.hu>
704
705 * Released 1.9
706
Miklos Szeredid45baf42004-10-10 07:56:12 +00007072004-10-09 Miklos Szeredi <miklos@szeredi.hu>
708
709 * Don't allow fuse_flush() to be interrupted (bug found by David
710 Shaw)
711
Miklos Szeredi1f18db52004-09-27 06:54:49 +00007122004-09-27 Miklos Szeredi <miklos@szeredi.hu>
713
714 * Add PID to fuse_context. Patch by Steven James
715
Miklos Szeredi1eea0322004-09-27 18:50:11 +0000716 * Change file handle type to 'unsigned long' in kernel interface
717
Miklos Szeredid169f312004-09-22 08:48:26 +00007182004-09-22 Miklos Szeredi <miklos@szeredi.hu>
719
720 * A slight API change: fuse_get_context() doesn't need the "fuse"
721 pointer, but the returned context contains it instead. The
722 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +0000723
724 * Fix mounting and umounting FUSE filesystem under another FUSE
725 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +0000726
Miklos Szeredic2309912004-09-21 13:40:38 +00007272004-09-21 Miklos Szeredi <miklos@szeredi.hu>
728
729 * Fix deadlock in case of memory allocation failure. Patch by
730 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +0000731
Miklos Szeredib2cf9562004-09-16 08:42:40 +00007322004-09-16 Miklos Szeredi <miklos@szeredi.hu>
733
734 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +0000735
Miklos Szeredi65afea12004-09-14 07:13:45 +00007362004-09-14 Miklos Szeredi <miklos@szeredi.hu>
737
738 * Check temporary file creation failure in do_getdir(). Bug
739 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000740
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00007412004-09-13 Miklos Szeredi <miklos@szeredi.hu>
742
743 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000744
745 * Make requests non-interruptible so race with FORGET is avoided.
746 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000747
748 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000749
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00007502004-09-09 Miklos Szeredi <miklos@szeredi.hu>
751
752 * Fix bug in case two FORGETs for the same node are executed in
753 the wrong order. Bug spotted and endured for months by Franco
754 Broi, and logfile for solution provided by Terje Oseberg
755
Miklos Szeredi12085102004-09-02 18:13:57 +00007562004-09-01 Miklos Szeredi <miklos@szeredi.hu>
757
758 * Add -D_REENTRANT to the compile flags
759
760 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000761
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00007622004-08-16 Miklos Szeredi <miklos@szeredi.hu>
763
764 * Change release method to be non-interruptible. Fixes bug
765 causing missing release() call when program which has opened files
766 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000767
Miklos Szeredi891b8742004-07-29 09:27:49 +00007682004-07-29 Miklos Szeredi <miklos@szeredi.hu>
769
770 * Add fuse_invalidate() to library API
771
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00007722004-07-26 Miklos Szeredi <miklos@szeredi.hu>
773
774 * Check permissions in setattr if 'default_permissions' flag is
775 set. Bug spotted by Damjan Lango
776
Miklos Szeredid66d3942004-07-24 13:47:44 +00007772004-07-24 Miklos Szeredi <miklos@szeredi.hu>
778
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000779 * 'large_read' mount option removed for 2.6 kernels, since the
780 default (dynamic read size) is better
781
782 * Extend kernel API with file handles. A file handle is returned
783 by open, and passed to read, write, flush, fsync and release.
784 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +0000785
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000786 * Security changes:
787
788 * Change the current directory to the mountpoint before checking
789 the permissions and mount filesystem on "."
790
791 * By default don't modprobe the fuse module for non-root. The old
792 behavior can be restored with the '--enable-auto-modprobe' flag of
793 ./configure
794
795 * By default don't allow shared writable mappings for non-root.
796 The old behavior can be restored with the 'user_mmap=1' module
797 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000798
Miklos Szeredibd7661b2004-07-23 17:16:29 +00007992004-07-23 Miklos Szeredi <miklos@szeredi.hu>
800
801 * Clean up mount option passing to fusermount and to fuse_new()
802 BEWARE: this changes the userspace API slightly, and the command
803 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +0000804
Miklos Szeredi58865372004-07-20 14:22:26 +00008052004-07-20 Miklos Szeredi <miklos@szeredi.hu>
806
807 * Optimize reading under 2.6 kernels by issuing multiple page
808 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +0000809
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00008102004-07-18 Miklos Szeredi <miklos@szeredi.hu>
811
812 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000813
Miklos Szeredi069c9502004-07-16 16:17:02 +00008142004-07-16 Miklos Szeredi <miklos@szeredi.hu>
815
816 * Separate directory entry and inode attribute validity timer
817
818 * New write semaphore to stop page writeback during truncate
819
820 * Fsync now waits for all writes to complete before sending the
821 request
822
823 * Optimization: if a page is completely written by
824 fuse_commit_write(), clear the dirty flag and set the uptodate
825 flag for that page
826
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000827 * Some memory cleanup at exit
828
Miklos Szeredi2529ca22004-07-13 15:36:52 +00008292004-07-13 Miklos Szeredi <miklos@szeredi.hu>
830
831 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000832 disable the "hide if open" behavior of unlink/rename.
833
834 * If temporary buffer allocation fails in raw read, fall back to a
835 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +0000836
Miklos Szeredi73798f92004-07-12 15:55:11 +00008372004-07-12 Miklos Szeredi <miklos@szeredi.hu>
838
839 * Fix bug in do_open() in libfuse: open count was incremented
840 after the reply is sent so it could race with unlink/forget and
841 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +0000842
Miklos Szeredi015fe702004-07-12 11:52:24 +00008432004-07-08 Miklos Szeredi <miklos@szeredi.hu>
844
845 * When performing create or remove operation, refresh the parent's
846 attributes on next revalidate, as i_nlink (and maybe size/time)
847 could be inacurate.
848
849 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
850 pages (2.6 only)
851
852 * Set set_page_dirty address space operation (2.6 only)
853
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008542004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +0000855
856 * Minor fix in read: print debug info even if read size is zero
857
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008582004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +0000859
860 * Fix race between truncate and writepage (fsx-linux now runs
861 without error)
862
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008632004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000864
865 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
866 by Mattias Wadman)
867
868 * Added option for direct read/write (-r)
869
870 * Fix revalidate time setting for newly created inodes
871
Miklos Szerediacb4d362004-07-02 16:20:45 +0000872 * Remove uid==0 check for '-x' option in fusermount (kernel checks
873 this)
874
875 * fuse_main() only installs handlers for signals (out of INT, HUP,
876 TERM, PIPE), for which no handler has yet been installed
877
878 * Add module option 'user_allow_other' which if set to non-zero
879 will allow non root user to specify the 'allow_other' mount option
880 ('-x' option of fusermount)
881
Miklos Szeredi014d7d22004-07-02 21:22:37 +0000882 * Fix deadlock between page writeback completion and truncate
883 (bug found by Valient Gough with the fsx-linux utility)
884
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008852004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000886
887 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +0000888 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
889 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +0000890
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008912004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +0000892
893 * Acquire inode->i_sem before open and release methods to prevent
894 concurrent rename or unlink operations.
895
Miklos Szeredi65cf7c72004-06-30 11:34:56 +0000896 * Make __fuse_read_cmd() read only one command. This allows
897 multiplexing the fuse file descriptor with other event sources
898 using select() or poll() (patch by Jeff Harris)
899
900 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
901
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009022004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +0000903
904 * Fix file offset wrap around at 4G when doing large reads
905
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009062004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000907
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000908 * Fix memory leak in open (Valient Gough)
909
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009102004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000911
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000912 * Add "close after delete" support to libfuse (patch by Valient
913 Gough)
914
915 * Cancel all worker threads before exit in multithreaded mode
916
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009172004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +0000918
919 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +0000920
921 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +0000922
923 * Work with newer libtool (1.5a)
924
925 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +0000926
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009272004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +0000928
929 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +0000930
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009312004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +0000932
933 * Fix possible inode leak in userspace in case of unfinished
934 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +0000935
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009362004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +0000937
938 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +0000939
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009402004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +0000941
942 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +0000943
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009442004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +0000945
946 * Build shared library as well as static (using libtool)
947
948 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
949 there has not been a release with the previous minor number, and I
950 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +0000951
952 * Change fuse_main(), so that default behavior is to go into
953 background if mount is successful. '-f' and '-d' options disable
954 backgrounding. This fixes the "Why does my FUSE daemon hang?"
955 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +0000956
957 * Cache ENOSYS (function not implemented) errors on *xattr, flush
958 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +0000959
960 * Don't call getdir method from open() only from first readdir().
961 Open is sometimes just used to store the current directory
962 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +0000963
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009642004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +0000965
966 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +0000967
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009682004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +0000969
970 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +0000971
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009722004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +0000973
974 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +0000975
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009762004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +0000977
978 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +0000979
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009802004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +0000981
982 * Replaced binary mount data with text options
983
984 * Show FUSE specific mount options in /proc/mounts
985
986 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
987
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009882004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +0000989
990 * Check some limits so userspace won't get too big requests
991
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009922004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +0000993
994 * Kill compile warning
995
996 * Upgraded user-mount patch for 2.6.5
997
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009982004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +0000999
1000 * Add detection of user-mode-linux to configure
1001
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010022004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001003
1004 * fixed zero size case for getxattr and listxattr
1005
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010062004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001007
1008 * new fusermount flag '-z': lazy unmount, default is not lazy
1009
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001010 * Extended attributes operations added (getxattr, setxattr,
1011 listxattr, removexattr)
1012
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010132004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001014
1015 * If filesystem doesn't define a statfs operation, then an
1016 all-zero default statfs is returned instead of ENOSYS
1017
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010182004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001019
1020 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1021
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010222004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001023
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001024 * Fix for uClinux (Christian Magnusson)
1025
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010262004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001027
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001028 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001029
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001030 * More kernel interface changes:
1031
1032 * Lookup/getattr return cache timeout values
1033
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010342004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001035
1036 * Clean up option parsing in fuse_main()
1037
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001038 * Added fuse_get() function which returns the fuse object created
1039 by fuse_main()
1040
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010412004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001042
Miklos Szeredic40748a2004-02-20 16:38:45 +00001043 * removed old way of mounting (fusermount mountpoint program)
1044
Miklos Szeredib5958612004-02-20 14:10:49 +00001045 * more kernel interface changes:
1046
1047 * added nanosecond precision to file times
1048
Miklos Szeredic40748a2004-02-20 16:38:45 +00001049 * removed interface version from mount data
1050
1051 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1052
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010532004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001054
1055 * statfs library API changed to match other methods. Since this
1056 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1057
Miklos Szeredi76f65782004-02-19 16:55:40 +00001058 * kernel interface changes follow:
1059
1060 * statfs changed to 64 bits, added 'bavail' field
1061
1062 * add generation number to lookup result
1063
1064 * optimized mknod/mkdir/symlink/link (no separate lookup is
1065 needed)
1066
1067 * rdev size increased to 32 bits for mknod
1068
1069 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001070
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010712004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001072
1073 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001074
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010752004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001076
1077 * Added user-mount.2.6.2-rc3.patch
1078
1079 * Add FS_SAFE flag to fuse filesystem
1080
1081 * fusermount should allow (un)mounting for non-root even if not
1082 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001083
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010842004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001085
1086 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001087
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010882004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001089
1090 * Added check for i_size_read/write functions to configure.in
1091 (patch by Valient Gough)
1092
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010932004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001094
1095 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001096
1097 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001098
1099 * Readpage calls flush_dcache_page() after storing data
1100
1101 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001102
1103 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001104
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011052004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001106
1107 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001108
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011092004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001110
1111 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001112
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011132004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001114
1115 * Added -q option for fusermount
1116
1117 * fuse_unmount() now uses -q option of fusermount, so no error is
1118 printed if the cause of the program exit is that the filesystem
1119 has already been unmounted
1120
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001121 * Fix i_nlink correctness after rmdir/unlink
1122
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011232004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001124
Miklos Szeredib1158392004-01-26 14:43:12 +00001125 * Released 1.1-pre2
1126
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011272004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001128
Miklos Szeredi307242f2004-01-26 11:28:44 +00001129 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001130
1131 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001132
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011332004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001134
1135 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001136
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011372004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001138
1139 * Write all pending data before a RELEASE operation
1140
1141 * Suppress 'Bad file descriptor' warning on exit
1142
1143 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001144 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001145
Miklos Szeredib1158392004-01-26 14:43:12 +00001146 * New fusermount option '-l' which enables big reads. Big reads
1147 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001148
1149 * fuse_main() can accept fusermount arguments after a '--'
1150
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011512004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001152
1153 * Support for exporting filesystem over NFS (see README.NFS)
1154
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011552004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001156
1157 * Support non-blocking writepage on 2.6. This makes FUSE behave
1158 much more nicely in low-memory situations
1159
1160 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1161 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001162
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011632004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001164
1165 * Code cleanups
1166
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011672004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001168
1169 * Released 1.1-pre1
1170
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011712004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001172
1173 * Integrated 2.6 kernel support patch by Michael Grigoriev
1174
1175 * Improvements and cleanups for 2.6 kernels
1176
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011772004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001178
Miklos Szeredie5183742005-02-02 11:14:04 +00001179 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001180
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011812003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001182
1183 * Added major+minor version to library API, and minor version to
1184 kernel API
1185
David McNab7a19caf2003-12-13 02:05:46 +000011862003-12-13 David McNab <david@rebirthing.co.nz>
1187
1188 * Implemented fsync support in examples/example.py
1189
1190 * Implemented 'fsync' and 'statfs' methods in python
1191 interface
1192
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011932003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001194
Miklos Szeredie5183742005-02-02 11:14:04 +00001195 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001196
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001197 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001198
David McNab8bf62632003-12-11 22:49:22 +000011992003-12-12 David McNab <david@rebirthing.co.nz>
1200
1201 * Added distutils support to the python module, as per standard
1202 python development practice
1203
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012042003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001205
1206 * Add file locking for mount/unmount (based on patch by Valient
1207 Gough)
1208
12092003-12-11 David McNab <david@rebirthing.co.nz>
1210
1211 * Python filesystem - was broken with python2.3, now fixed:
1212 - changed PyTuple_* calls to PySequence_*, because os.lstat
1213 is no longer returning a pure tuple
1214 - changed PyInt_Check() calls to also call PyLong_Check,
1215 to cover for cases (eg os.lstat) where longs are returned
1216 - Added support for file 'release' handling, which IMO is
1217 essential since this signals to a FS that writes to a file
1218 are complete (and therefore the file can now be disposed of
1219 meaningfully at the python filesystem's discretion)
1220 - Added '__init__' handler to base Fuse class, which allows
1221 your Python class to know the mountpoint and mount args,
1222 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001223
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001224 * General:
1225 - added 'mount.fuse' script (in util/ dir), which is meant to be
1226 symlinked from /sbin, and which allows FUSE filesystems to
1227 be mounted with the 'mount' command, and listed in fstab;
1228 also, mount arguments get passed to your filesystem
1229
1230
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012312003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001232
1233 * Fix kernel version detection (again). Bugreport by Peter Levart
1234
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012352003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001236
1237 * Applied read combining patch by Michael Grigoriev (tested by
1238 Valient Gough and Vincent Wagelaar)
1239
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012402003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001241
1242 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1243 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001244
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012452003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001246
1247 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001248
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012492003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001250
1251 * kernel version detection fix
1252
1253 * fusermount now uses "lazy" umount option
1254
1255 * fusermount can use modprobe with module-init-tools
1256
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012572003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001258
1259 * Integrated caching patch by Michael Grigoriev
1260
Miklos Szeredida4e4862003-09-08 11:14:11 +00001261 * Added "Filesystems" file with descriptions of projects using
1262 FUSE
1263
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001264 * Added patch by Michael Grigoriev to allow compliation of FUSE
1265 kernel module for 2.6 kernels
1266
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012672003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001268
1269 * And another spec-file fix by Achim Settelmeier
1270
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012712003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001272
1273 * Spec-file fix by Achim Settelmeier
1274
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012752003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001276
Miklos Szerediac361172004-11-02 19:14:14 +00001277 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001278
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012792003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001280
1281 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1282
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012832003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001284
1285 * Updated fuse.spec file (Achim Settelmeier)
1286
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012872003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001288
1289 * Version 1.0 released
1290
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012912003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001292
1293 * SuSE compilation fix by Juan-Mariano de Goyeneche
1294
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012952002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001296
1297 * The release() VFS call is now exported to the FUSE interface
1298
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012992002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001300
1301 * 64 bit file offset fixes in the fuse kernel module
1302
1303 * Added function 'fuse_exit()' which can be used to exit the main
1304 loop
1305
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013062002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001307
1308 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1309 an incompatible interface change.
1310
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013112002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001312
1313 * Portablility fix (bug reported by C. Chris Erway)
1314
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013152002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001316
1317 * Use Mark Glines' fd passing method for default operation instead
1318 of old reexec
1319
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013202002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001321
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001322 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1323
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013242002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001325
Miklos Szeredi60c23522002-10-24 09:19:43 +00001326 * fix incompatiblity with Red Hat kernels, with help from Nathan
1327 Thompson-Amato.
1328
Mark Glines65ba2192002-04-18 14:41:48 +000013292002-04-18 Mark Glines <mark@glines.org>
1330
1331 * added an alternative to fuse_mount(), called
1332 fuse_mount_ioslave(), which does not need to reexec the
1333 FUSE program.
1334 * added a small helper util needed by fuse_mount_ioslave().
1335
Mark Glines220635a2002-03-17 07:01:14 +000013362002-03-16 Mark Glines <mark@glines.org>
1337
1338 * use struct fuse_statfs everywhere possible to avoid problems
1339 with the headerfiles changing struct statfs member sizes
1340
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013412002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001342
1343 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1344
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013452002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001346
1347 * RPM support by Achim Settelmeier
1348
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013492002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001350
Miklos Szerediddc862a2002-01-09 13:46:10 +00001351 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001352
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013532002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001354
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001355 * Revaidate all path components not just the last, this means a
1356 very small performance penalty for being more up-to-date.
1357
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013582002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001359
1360 * Update and fix python interface
1361
Mark Glinesd84b39a2002-01-07 16:32:02 +000013622002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001363
Mark Glinesd84b39a2002-01-07 16:32:02 +00001364 * Added statfs() support to kernel, lib, examples, and perl!
1365
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013662001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001367
1368 * Better cross compilation support
1369
1370 * Ported to Compaq IPAQ
1371
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013722001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001373
Miklos Szeredife25def2001-12-20 15:38:05 +00001374 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001375 patch from Matt Ryan)
1376
Miklos Szeredife25def2001-12-20 15:38:05 +00001377 * Added flags to fusermount and to kernel interface to control
1378 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001379
Miklos Szeredife25def2001-12-20 15:38:05 +00001380 * Integrated fuse_set_operations() into fuse_new()
1381
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013822001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001383
1384 * Applied header protection + extern "C" patch by Roland
1385 Bauerschmidt
1386
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013872001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001388
Miklos Szeredie5183742005-02-02 11:14:04 +00001389 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001390
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013912001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001392
1393 * Cleaned up way of mounting simple filesystems.
1394
1395 * fuse_main() helper function added
1396
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013972001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001398
Miklos Szeredife25def2001-12-20 15:38:05 +00001399 * Optimized read/write operations, so that minimal copying of data
1400 is done
1401
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014022001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001403
1404 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001405
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014062001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001407
1408 * Fixed vfsmount reference leak in fuse_follow_link
1409
1410 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1411 userspace is ignored
1412
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014132001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001414
Miklos Szeredife25def2001-12-20 15:38:05 +00001415 * Started ChangeLog