blob: b8add582d0234183627f88ca2c96b9e7d0d89b38 [file] [log] [blame]
Miklos Szeredi320abe42006-01-30 18:14:51 +000012006-01-30 Miklos Szeredi <miklos@szeredi.hu>
2
3 * highlevel-lib: add 'auto_cache' option. This caches file data
4 based on modification time and size
5
Miklos Szeredi065f2222006-01-20 15:15:21 +000062006-01-20 Miklos Szeredi <miklos@szeredi.hu>
7
8 * fuse_opt: add new helper constants FUSE_OPT_KEY_KEEP and
9 FUSE_OPT_KEY_DISCARD
10
11 * Add options 'max_readahead', 'sync_read' and 'async_read'
12
13 * Kernel ABI version 7.6:
14
15 * Negotiate the 'max_readahead' value and 'async_read' flags with
16 userspace in the INIT method
17
18 * Add connection info to ->init() methods to both lowlevel and
19 highlevel API
20
21 * Fall back to synchronous read() behavior if either library or
22 userspace filesystem is using the old interface version. This is
23 needed so non-updated filesystems won't be confused by the
24 different read() behavior
25
262006-01-19 Miklos Szeredi <miklos@szeredi.hu>
27
28 * lib: if "fsname=" option was given, pass it to fusermount
29
30 * fuse_opt: add new fuse_opt_insert_arg() function, which is
31 needed by filesystems to implement some argument manipulations
32 correctly
33
34 * fuse_opt: fix memory leak in handling "--" option
35
362006-01-18 Miklos Szeredi <miklos@szeredi.hu>
37
38 * kernel: fix detection of case when fuse is not configured into
39 the kernel either as module or built-in
40
41 * fuse_opt.h: fix incompatibility with C++ compilers by renaming
42 'template' structure member to 'templ'. Reported by Takashi Iwai
43
44 * fuse.h: fix compatibility bugs. Patch by Yura Pakhuchiy
45
46 * kernel: support version 2.6.16 (i_sem -> i_mutex)
47
Miklos Szeredi15af1b82006-01-16 17:52:24 +0000482006-01-16 Miklos Szeredi <miklos@szeredi.hu>
49
50 * Added (again) asynchronous readpages support
51
52 * Each connection now shows up under /sys/fs/fuse/connections
53
54 * Connection attributes exported to sysfs: 'waiting' number of
55 waiting requests; 'abort' abort the connection
56
57 * Connection may be aborted through either the sysfs interface or
58 with 'umount -f mountpoint'
59
Miklos Szeredi9db5faa2006-01-14 14:47:21 +0000602006-01-14 Miklos Szeredi <miklos@szeredi.hu>
61
Miklos Szeredi75bb0de2006-01-14 18:38:54 +000062 * Released 2.5.0
63
642006-01-14 Miklos Szeredi <miklos@szeredi.hu>
65
Miklos Szeredi9db5faa2006-01-14 14:47:21 +000066 * kernel: fix a couple of bugs
67
Miklos Szeredi68183ca2006-01-27 11:16:11 +000068 * Order of request_end() and fuse_copy_finish() was wrong.
Miklos Szeredie0451092006-01-27 11:19:51 +000069 Posthumous note: Franco Broi managed to exploit this, though it
Miklos Szeredi68183ca2006-01-27 11:16:11 +000070 seemed quite impossible
Miklos Szeredi9db5faa2006-01-14 14:47:21 +000071
72 * request_end() used request pointer after decrementing refcount
73
74 * Clearing ->connected or ->mounted connection flags could race
75 with setting other bitfields not protected with a lock
Miklos Szeredi15af1b82006-01-16 17:52:24 +000076
Miklos Szeredia9820342006-01-10 10:54:11 +0000772006-01-10 Miklos Szeredi <miklos@szeredi.hu>
78
79 * kernel: add necessary compile flags for 2.4.X/x86_64.
80 Report from Sean Ziegeler
81
Miklos Szeredi35676b02006-01-09 10:13:28 +0000822006-01-09 Miklos Szeredi <miklos@szeredi.hu>
83
Miklos Szeredie07b1a22006-01-09 14:46:10 +000084 * Released 2.5.0-pre2
85
862006-01-09 Miklos Szeredi <miklos@szeredi.hu>
87
Miklos Szeredi35676b02006-01-09 10:13:28 +000088 * Applied patch from Csaba Henk, to update mount_bsd to new
89 fuse_mount() semantics
90
Miklos Szeredib32c79b2006-01-09 11:14:29 +000091 * Ignore auto,noauto,... options in mount.fuse. Reported by Frank
92 Steiner and Don Taber
93
Miklos Szeredicb075c82006-01-09 11:33:04 +000094 * fusermount: add 'dirsync' mount option
95
Miklos Szerediad005972006-01-07 10:14:34 +0000962006-01-07 Miklos Szeredi <miklos@szeredi.hu>
97
98 * Improved help reporting and added version reporting to library
99
Miklos Szeredi0af762a2006-01-06 09:47:54 +00001002006-01-06 Miklos Szeredi <miklos@szeredi.hu>
101
102 * Change working directory to "/" even if running in the
103 foreground. Patch from Jonathan Brandmeyer
104
Miklos Szeredi95da8602006-01-06 18:29:40 +0000105 * Changed lots of functions to use 'struct fuse_args' instead of
106 separate argc and argv
107
108 * Added fuse_parse_cmdline(), fuse_set_signal_handlers() and
109 fuse_remove_signal_handlers() functions, so that it's now pretty
110 easy to get all the functionality of fuse_main() with a filesystem
111 using the lowlevel API.
112
Miklos Szeredib8638182006-01-02 12:52:24 +00001132006-01-02 Miklos Szeredi <miklos@szeredi.hu>
114
Miklos Szeredif1941472006-01-02 16:27:48 +0000115 * mount.fuse: the 'user' option should be ignored. Report and
116 solution from Mattd.
117
118 * mount.fuse: export PATH in the right place. Report and patch
119 from Hannes Schweizer
Miklos Szeredib8638182006-01-02 12:52:24 +0000120
Miklos Szeredi73f41392005-12-16 11:12:16 +00001212005-12-16 Miklos Szeredi <miklos@szeredi.hu>
122
123 * Clean up the option parsing interface slightly, by creating an
124 "argument list" structure, that contains the argument vector and
125 count
126
Miklos Szeredi4e829092005-12-15 16:13:49 +00001272005-12-15 Miklos Szeredi <miklos@szeredi.hu>
128
129 * fusermount: check if /mnt/mtab is a symlink and don't modify it
130 in that case
131
Miklos Szeredi154ffe22005-12-15 16:41:20 +0000132 * kernel: simplify request size limiting. INIT only contains
133 maximum write size, maximum path component size remains fixed at
134 1024 bytes, and maximum xattr size depends on read buffer.
135
Miklos Szeredie248e4b2005-12-14 16:18:32 +00001362005-12-14 Miklos Szeredi <miklos@szeredi.hu>
137
138 * Fix readdir() failure on x86_64, of 32bit programs compiled
139 without largefile support. Bug report and help from Anthony
140 Kolasny
141
Miklos Szeredi64709572005-12-14 22:16:28 +0000142 * If lookup returns invalid mode, return -EIO instead of creating
Miklos Szeredicaa09312005-12-14 23:25:00 +0000143 a regular file
144
145 * Add current output argument vector to option processing
146 function
Miklos Szeredi64709572005-12-14 22:16:28 +0000147
Miklos Szeredi76fc3de2005-12-12 09:34:45 +00001482005-12-12 Miklos Szeredi <miklos@szeredi.hu>
149
150 * Fix stale code in ifdef FreeBSD. Patch from Csaba Henk
151
Miklos Szeredi659743b2005-12-09 17:41:42 +00001522005-12-09 Miklos Szeredi <miklos@szeredi.hu>
153
Miklos Szeredi3b534a42005-12-09 20:09:42 +0000154 * Released 2.5.0-pre1
155
1562005-12-09 Miklos Szeredi <miklos@szeredi.hu>
157
Miklos Szeredi659743b2005-12-09 17:41:42 +0000158 * libfuse: added option parsing interface, defined in
159 <fuse_opt.h>.
160
Miklos Szeredic53cddd2005-12-07 12:57:59 +00001612005-12-07 Miklos Szeredi <miklos@szeredi.hu>
162
163 * Return EIO for file operations (read, write, fsync, flush) on
164 open files whose inode has become "bad". Inodes will be marked
165 "bad" if their type changes. Bug report by Csaba Henk
166
Miklos Szeredi044da2e2005-12-06 17:59:55 +00001672005-12-06 Miklos Szeredi <miklos@szeredi.hu>
168
169 * Use bigger request buffer size. write() did not work on archs
170 with > 4k page size, Bug report by Mark Haney
171
172 * ABI version 7.5:
173
174 * Extend INIT reply with data size limits
175
Miklos Szeredifa829b52005-12-02 11:05:41 +00001762005-12-02 Miklos Szeredi <miklos@szeredi.hu>
177
178 * Fix memory leak in fuse_read_cmd()/fuse_process_cmd(). Bug
179 reported by Vincenzo Ciancia
180
181 * Handle exit-by-umount in fuse_read_cmd()
182
Miklos Szeredi3cc8a262005-11-29 11:04:27 +00001832005-11-29 Miklos Szeredi <miklos@szeredi.hu>
184
185 * Check if '-msoft-float' option is supported by compiler when
186 configuring for a 2.4.x kernel. Bug report by Mark Haney
187
Miklos Szeredi40d7b382005-11-29 20:07:23 +0000188 * In multithreaded loop send a TERM signal to the main thread if
189 one of the other threads exit. Needed on FreeBSD for a clean exit
190 on umount. Should not cause any harm on Linux either
191
Miklos Szerediead7f102005-11-28 16:02:27 +00001922005-11-28 Miklos Szeredi <miklos@szeredi.hu>
193
194 * Fix bug in 32-bit file handle compatibility
195
Miklos Szeredia90b7342005-11-27 19:22:42 +00001962005-11-27 Miklos Szeredi <miklos@szeredi.hu>
197
198 * Block TERM, INT, HUP and QUIT signals in all but the main
199 thread. According to POSIX it's not specified which thread will
200 receive these signals.
Miklos Szeredi2b478112005-11-28 13:27:10 +0000201
202 * Kernel changes:
203
204 * Check for directory aliasing on mkdir, not just on lookup
205
206 * Check for special node ID values in create+open operation
207
208 * Sync with -mm: readv, writev, aio_read and aio_write methods
209 added to file operations
210
211 * Cleanups: lookup code, page offset calculation
212
213 * ABI stepped to 7.4, changes:
214
215 * frsize member added to fuse_kstatfs structure
216
217 * added support for negative entry caching: on lowlevel API if
218 fuse_entry_param::ino is set to zero in reply to a lookup request,
219 the kernel will cache the dentry for the specified amount of time.
220
221 * libfuse: added 'negative_timeout' option: specifies how much
222 negative entries should be cached. Default is zero, to be
Miklos Szerediead7f102005-11-28 16:02:27 +0000223 compatible with prior versions
Miklos Szeredi2b478112005-11-28 13:27:10 +0000224
Miklos Szeredibac4c772005-11-23 13:35:54 +00002252005-11-22 Miklos Szeredi <miklos@szeredi.hu>
226
227 * Add detection of mainline FUSE code in running kernel
228
Miklos Szeredi8393e3d2005-11-21 11:37:01 +00002292005-11-21 Miklos Szeredi <miklos@szeredi.hu>
230
231 * Don't use async cancelation in multithreaded loop. This makes
232 it more portable to systems where read() is not async cancel safe.
233 Report from Andriy Gapon
234
Miklos Szeredi05c97842005-11-20 17:05:07 +00002352005-11-20 Miklos Szeredi <miklos@szeredi.hu>
236
237 * Warn if API version 11 compatibility is requested
238
Miklos Szeredi9c2ccb42005-11-17 17:11:48 +00002392005-11-17 Miklos Szeredi <miklos@szeredi.hu>
240
241 * More FreeBSD merge
242
Miklos Szeredi832ee442005-11-18 21:02:36 +0000243 * fusermount: don't allow mountpoints with '\n', '\t', or '\\' in
244 them, because it corrupts /etc/mtab. Found by Thomas Biege
Miklos Szeredibac4c772005-11-23 13:35:54 +0000245 CVE-2005-3531
Miklos Szeredi832ee442005-11-18 21:02:36 +0000246
247 * libfuse: don't use system() to invoke 'fusermount -u ...'
248 because it breaks mountpoints with spaces in them into multiple
249 arguments
250
Miklos Szeredib3f99722005-11-16 13:00:24 +00002512005-11-16 Miklos Szeredi <miklos@szeredi.hu>
252
253 * Merge library part of FreeBSD port. Patch by Csaba Henk
254
Miklos Szeredi3a770472005-11-11 21:32:42 +00002552005-11-11 Miklos Szeredi <miklos@szeredi.hu>
256
257 * Use 64bit type for file handle, so the full range supported by
258 the kernel interface is available to applications
259
Miklos Szeredibcc53852005-11-10 09:54:41 +00002602005-11-10 Miklos Szeredi <miklos@szeredi.hu>
261
262 * Moved mountpoint argument checking from fuse_parse_cmdline() to
263 fuse_mount() in preparation to FreeBSD merge.
264
Miklos Szeredi4ec06812005-11-08 13:04:27 +00002652005-11-08 Miklos Szeredi <miklos@szeredi.hu>
266
267 * Remove unneeded close() from fuse_teardown(). Spotted by Csaba
268 Henk.
269
Miklos Szeredic706ad92005-11-07 15:30:48 +00002702005-11-07 Miklos Szeredi <miklos@szeredi.hu>
271
272 * Make the statfs change backwards compatible.
273
Miklos Szeredi52cb09d2005-11-07 11:59:00 +00002742005-11-06 Miklos Szeredi <miklos@szeredi.hu>
275
276 * Change ->statfs() method to use 'struct statvfs' instead of
277 'struct statfs'. This makes the API more portable since statvfs()
278 is defined by POSIX.
279
Miklos Szeredif7eec032005-10-28 13:09:50 +00002802005-10-28 Miklos Szeredi <miklos@szeredi.hu>
281
282 * Add fgetattr() method, which currently will only be called after
283 a successful call to a create() method.
284
Miklos Szeredib0b13d12005-10-26 12:53:25 +00002852005-10-26 Miklos Szeredi <miklos@szeredi.hu>
286
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000287 * Change kernel ABI version to 7.3
288
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000289 * Add ACCESS operation. This is called from the access() system
Miklos Szeredid9079a72005-10-26 15:29:06 +0000290 call if 'default_permissions' mount option is not given, and is
291 not called on kernels 2.4.*
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000292
Miklos Szeredid9079a72005-10-26 15:29:06 +0000293 * Add atomic CREATE+OPEN operation. This will only work with
294 2.6.15 (presumably) or later Linux kernels.
295
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000296 * Add ftruncate() method. This will only work with 2.6.15
297 (presumably) or later Linux kernels.
298
299 * Fix kernel module compile if kernel source and build directories
300 differ. Report and initial patch by John Eastman
301
Miklos Szeredic4c12ae2005-10-20 14:48:50 +00003022005-10-18 Miklos Szeredi <miklos@szeredi.hu>
303
304 * lib: optimize buffer reallocation in fill_dir.
305
Miklos Szeredic9daeb12005-10-17 10:19:21 +00003062005-10-17 Miklos Szeredi <miklos@szeredi.hu>
307
308 * Released 2.4.1
309
Miklos Szeredif412d072005-10-14 21:24:32 +00003102005-10-14 Miklos Szeredi <miklos@szeredi.hu>
311
Miklos Szeredi062f0e52005-10-14 21:28:21 +0000312 * libfuse: add debug for write result (by Shaun Jackman) and
313 warnings for too large read/write result
Miklos Szeredif412d072005-10-14 21:24:32 +0000314
Miklos Szeredib75d4b92005-10-11 10:12:08 +00003152005-10-11 Miklos Szeredi <miklos@szeredi.hu>
316
317 * Spelling fixes, thanks to Ioannis Barkas
318
Miklos Szeredibaab5872005-10-10 08:41:14 +00003192005-10-10 Miklos Szeredi <miklos@szeredi.hu>
320
321 * fuse_common.h: use extern "C". Thanks to Valient Gough for the
322 patch
323
Miklos Szeredi4f5df5e2005-10-07 12:39:58 +00003242005-10-07 Miklos Szeredi <miklos@szeredi.hu>
325
326 * highlevel-lib: init() and destroy() methods didn't have an
327 initialized fuse_context. Bug reported by Tim Stoakes
328
Miklos Szeredif2491122005-10-04 10:10:41 +00003292005-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi83f253e2005-10-04 05:56:01 +0000330
331 * Released 2.4.0
332
Miklos Szeredi836ab712005-10-03 14:11:59 +00003332005-10-03 Miklos Szeredi <miklos@szeredi.hu>
334
335 * Add documentation to fuse_lowlevel.h
336
337 * API cleanups:
338
339 * Remove definitions of unused FATTR_CTIME / FUSE_SET_ATTR_CTIME
340
341 * Move fuse_mount() and fuse_unmount() to fuse_common.h
342
343 * Change the return type of fuse_reply_none() from int to void.
344
Miklos Szerediaf138742005-09-30 08:49:59 +00003452005-09-30 Miklos Szeredi <miklos@szeredi.hu>
346
347 * kernel: NFS exporting leaked dentries. Bug found and fixed by
348 Akshat Aranya.
349
Miklos Szeredidb016e02005-09-29 10:06:27 +00003502005-09-29 Miklos Szeredi <miklos@szeredi.hu>
351
352 * fusermount: fix error message, when unable to open /dev/fuse.
353 Report by Balázs Pozsár
354
Miklos Szeredi35200932005-09-28 14:50:49 +00003552005-09-28 Miklos Szeredi <miklos@szeredi.hu>
356
357 * UClibc fixes from Christian Magnusson
358
Miklos Szeredi8eddf642005-09-27 08:58:26 +00003592005-09-27 Miklos Szeredi <miklos@szeredi.hu>
360
361 * Added NAME="%k" to util/udev.rules. Fix by Mattias Wadman.
362
Miklos Szerediedec95c2005-09-26 10:22:22 +00003632005-09-26 Miklos Szeredi <miklos@szeredi.hu>
364
Miklos Szeredi39851ac2005-09-26 11:17:50 +0000365 * Released 2.4.0-rc1
366
3672005-09-26 Miklos Szeredi <miklos@szeredi.hu>
368
Miklos Szerediedec95c2005-09-26 10:22:22 +0000369 * fusermount: allow user umount in the case when /etc/mtab is a
370 symlink to /proc/mounts. Reported by Balázs Pozsár.
371
Miklos Szeredi6becf0b2005-09-23 11:25:28 +00003722005-09-23 Miklos Szeredi <miklos@szeredi.hu>
373
Miklos Szeredi8722dd22005-09-23 13:34:44 +0000374 * Check for special node ID values in lookup and creation
Miklos Szeredi6becf0b2005-09-23 11:25:28 +0000375
Miklos Szeredif45f3c12005-09-22 15:14:27 +00003762005-09-22 Miklos Szeredi <miklos@szeredi.hu>
377
378 * Slight optimization in returning EINVAL error in case of an open
379 with O_DIRECT flag.
380
Miklos Szeredi670d07a2005-09-20 11:36:32 +00003812005-09-20 Miklos Szeredi <miklos@szeredi.hu>
382
383 * Remove '--enable-auto-modprobe' configure flag. Module
384 auto-loading is now handled by the kernel.
385
Miklos Szeredid51fca12005-09-15 12:51:00 +00003862005-09-15 Miklos Szeredi <miklos@szeredi.hu>
387
388 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
389 Help from Jens M. Noedler.
390
Miklos Szeredi7e7530d2005-09-14 15:20:26 +00003912005-09-14 Miklos Szeredi <miklos@szeredi.hu>
392
393 * Add memory cleanup on thread exit
394
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +00003952005-09-13 Miklos Szeredi <miklos@szeredi.hu>
396
397 * Set umask to zero in fusexmp and fusexmp_fh, so that
398 files/directories are created with the requested mode.
399
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +00004002005-09-12 Miklos Szeredi <miklos@szeredi.hu>
401
402 * Don't ignore read error in multithreaded loop
403
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +00004042005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000405
Miklos Szeredi2277ecc2005-09-08 15:34:44 +0000406 * Released 2.4.0-pre2
407
4082005-09-08 Miklos Szeredi <miklos@szeredi.hu>
409
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000410 * Revert lock and access operations. Postpone these until 2.5.
411
4122005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000413
414 * Fix compile warning on 2.6.13 and later
415
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +0000416 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +0000417
Miklos Szeredi77ccf652005-08-19 14:40:27 +00004182005-08-19 Miklos Szeredi <miklos@szeredi.hu>
419
420 * lib: always refresh directory contents after rewinddir() to
421 conform to SUS. Bug found by John Muir.
422
Miklos Szeredia1482422005-08-14 23:00:27 +00004232005-08-15 Miklos Szeredi <miklos@szeredi.hu>
424
Miklos Szeredic43f9412005-08-15 15:10:48 +0000425 * Released 2.4.0-pre1
426
4272005-08-14 Miklos Szeredi <miklos@szeredi.hu>
428
Miklos Szeredia1482422005-08-14 23:00:27 +0000429 * lib: cleaned up (or messed up, depending on your POV) the low
430 level library API. Hopefully this is close to the final form.
431
Miklos Szeredicc1b97c2005-08-05 10:35:26 +00004322005-08-05 Miklos Szeredi <miklos@szeredi.hu>
433
434 * fusermount: don't allow empty mountpoint argument, which defeats
435 automatic umounting in fuse_main(). Bugreport by Václav Jůza
436
Miklos Szeredif6e0ec62005-08-03 09:11:06 +00004372005-08-03 Miklos Szeredi <miklos@szeredi.hu>
438
439 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
440 option is used (Paul Alfille).
441
Miklos Szeredi6c0209a2005-08-02 13:31:28 +00004422005-08-02 Miklos Szeredi <miklos@szeredi.hu>
443
444 * highlevel-lib: added mount options "attr_timeout" and
445 "entry_timeout". These options control the length of time file
446 attributes and entries (names) are cached. Both default to 1.0
447 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000448
449 * kernel: correctly handle zero timeout for attributes and entries
450
Miklos Szeredi56a61f02005-08-01 10:42:25 +00004512005-08-01 Miklos Szeredi <miklos@szeredi.hu>
452
453 * Added missing symbols to versionscript (Joshua J. Berry)
454
Miklos Szeredie77cc072005-08-01 11:58:51 +0000455 * kernel: implement two flags, open can set: 'direct_io' and
456 'keep_cache'. These correspond exactly to mount options
457 'direct_io' and 'kernel_cache', but allow a per-open setting.
458
459 * Move 'direct_io' and 'kernel_cache' mount option handling to
460 userspace. For both mount options, if the option is given, then
461 the respective open flag is set, otherwise the open flag is left
462 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +0000463
Miklos Szeredi31066bb2005-08-01 14:49:31 +0000464 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000465
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +00004662005-07-28 Miklos Szeredi <miklos@szeredi.hu>
467
468 * kernel: invalidate attributes for read/readdir/readlink
469 operations
470
471 * kernel: detect newer UML kernels
472
Miklos Szeredibfb99462005-07-26 11:07:55 +00004732005-07-26 Miklos Szeredi <miklos@szeredi.hu>
474
475 * Make the installation path of fuse.ko and mount.fuse
476 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
477 environment variables. Requirement and help from Csaba Henk.
478
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +00004792005-07-22 Miklos Szeredi <miklos@szeredi.hu>
480
481 * Fix bug, that causes filesystem requests to hang when unique
482 request counter becomes negative. This happens after
483 2,147,483,648 operations, so most people won't care. Thanks to
484 Franco Broi for the report and testing.
485
Miklos Szeredi9b813af2005-07-21 07:59:37 +00004862005-07-21 Miklos Szeredi <miklos@szeredi.hu>
487
488 * Don't change mtime/ctime/atime to local time on read/write.
489 Bug reported by Ben Grimm
490
491 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
492 Magnusson
493
494 * fusermount: use getopt_long() for option parsing. It allows the
495 use of '--' to stop argument scanning, so fusermount can now
496 operate on directories whose names begin with a '-'. Patch by
497 Adam Connell
498
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00004992005-07-15 Miklos Szeredi <miklos@szeredi.hu>
500
501 * fusermount: add '-v', '--version' and '--help' options
502
503 * add inode based API
504
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00005052005-07-12 Miklos Szeredi <miklos@szeredi.hu>
506
507 * lib: don't block signals in worker threads. Problem noticed by
508 Usarin Heininga
509
Miklos Szeredic902a852005-07-07 12:35:37 +00005102005-07-07 Miklos Szeredi <miklos@szeredi.hu>
511
512 * lib: don't allow both 'allow_other' and 'allow_root' options to
513 be given
514
Miklos Szeredi437d8112005-07-06 09:14:20 +00005152005-07-06 Miklos Szeredi <miklos@szeredi.hu>
516
517 * fusermount: check if mountpoint is empty (only '.' and '..' for
518 directories, and size = 0 for regular files). If "nonempty"
519 option is given, omit this check. This is useful, so users don't
520 accidentally hide data (e.g. from backup programs). Thanks to
521 Frank van Maarseveen for pointing this out.
522
523 * kernel: check if mandatory mount options ('fd', 'rootmode',
524 'user_id', 'group_id') are all given
525
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000526 * lib: simplify 'readdir_ino' handling
527
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000528 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
529
Miklos Szeredibb9f5172005-07-03 18:03:11 +00005302005-07-03 Miklos Szeredi <miklos@szeredi.hu>
531
532 * kernel: clean up 'direct_io' code
533
Miklos Szeredie1bcece2005-06-28 10:37:06 +00005342005-06-28 Miklos Szeredi <miklos@szeredi.hu>
535
536 * Add 'mount.fuse' written by Petr Klima
537
Miklos Szeredi866826d2005-06-28 12:22:57 +0000538 * '/dev/fuse' is created by 'make install' if does not yet exist
539
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00005402005-06-20 Miklos Szeredi <miklos@szeredi.hu>
541
542 * Fix UCLIBC compile error. Patch by Christian Magnusson
543
Miklos Szerediec12fad2005-06-08 10:26:34 +00005442005-06-08 Miklos Szeredi <miklos@szeredi.hu>
545
546 * Enable the auto-loading of the module via access to the
547 corresponding device file. Patch by Takashi Iwai.
548
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000549 * Allow mounting a regular file (over a regular file) for
550 unprivleged users.
551
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000552 * Do not create temporary device file. Require "/dev/fuse" to
553 exist, and be readable/writable by the mounting user.
554
Miklos Szeredi46960ce2005-06-02 09:05:00 +00005552005-06-02 Miklos Szeredi <miklos@szeredi.hu>
556
Miklos Szeredi56478552005-06-02 10:29:00 +0000557 * Released 2.3.0
558
5592005-06-02 Miklos Szeredi <miklos@szeredi.hu>
560
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000561 * Fix serious information leak: if the filesystem returns a short
562 byte count to a read request, and there are non-zero number of
563 pages which are not filled at all, these pages will not be zeroed.
564 Hence the user can read out previous memory contents. Found by
565 Sven Tantau.
566
Miklos Szeredi33be22d2005-05-27 09:12:43 +00005672005-05-27 Miklos Szeredi <miklos@szeredi.hu>
568
569 * Add "readdir_ino" mount option, which tries to fill in the d_ino
570 field in struct dirent. This mount option is ignored if "use_ino"
571 is used. It helps some programs (e.g. 'pwd' used over NFS from a
572 non-Linux OS). Patch by David Shaw.
573
Miklos Szeredif94e0102005-05-12 14:56:34 +00005742005-05-12 Miklos Szeredi <miklos@szeredi.hu>
575
Miklos Szeredieb009c42005-05-12 15:01:17 +0000576 * Released 2.3-rc1
577
5782005-05-12 Miklos Szeredi <miklos@szeredi.hu>
579
Miklos Szeredif94e0102005-05-12 14:56:34 +0000580 * File save in krusader and other editors doesn't work with sshfs,
581 because open() is interrupted by a periodic signal, and open()
582 restarts forever, without any progress. This could just be fixed
583 in open(), but the problem is more generic: if signals are
584 received more often than the filesystem can get the request to
585 userspace, it will never finish. This is probably only a
586 theoretical problem, nevertheless I'm removing the possibility to
587 interrupt requests with anything other than SIGKILL, even before
588 being sent to userspace. Bugreport by Eduard Czimbalmos.
589
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00005902005-05-09 Miklos Szeredi <miklos@szeredi.hu>
591
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000592 * libfuse: add "tree_lock" rwlock, that is locked for write in
593 rename, unlink and rmdir, and locked for read in all other
594 operations. This should fix the rename/release race reported by
595 Valient Gough and others. The solution is very coarse, a finer
596 grained locking scheme could be implemented, but it would be much
597 more complex. Let's see whether this is good enough.
598
5992005-05-09 Miklos Szeredi <miklos@szeredi.hu>
600
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000601 * Released 2.3-pre7
602
Miklos Szeredi38009022005-05-08 19:47:22 +00006032005-05-08 Miklos Szeredi <miklos@szeredi.hu>
604
605 * Better fix for out of order FORGET messages. Now the
606 LOOKUP/FORGET messages are balanced exactly (one FORGET can
607 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000608 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000609 compatible.
610
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00006112005-05-06 Miklos Szeredi <miklos@szeredi.hu>
612
613 * Fix abort for out of order FORGET messages. Again. Spotted by
614 Franco Broi again. Sorry :)
615
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00006162005-04-29 Miklos Szeredi <miklos@szeredi.hu>
617
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000618 * Released 2.3-pre6
619
6202005-04-29 Miklos Szeredi <miklos@szeredi.hu>
621
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000622 * Make fusermount work with fuse kernel modules not yet supporting
623 the "group_id" option (added for the purpose of stricter
624 permission checking).
625
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00006262005-04-28 Miklos Szeredi <miklos@szeredi.hu>
627
628 * Check for hard-linked directories in lookup. This could cause
629 problems in the VFS, which assumes that such objects never exist.
630
631 * Make checking of permission for other users more strict. Now
632 the same privilege is required for the mount owner as for ptrace
633 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000634
Miklos Szeredi3efcb562005-04-23 13:34:29 +00006352005-04-23 Miklos Szeredi <miklos@szeredi.hu>
636
637 * Released 2.3-pre5
638
Miklos Szeredid001bf92005-04-22 07:54:11 +00006392005-04-22 Miklos Szeredi <miklos@szeredi.hu>
640
641 * Add -msoft-float to kernel module compile flags for 2.4.X. This
642 is needed on certain architectures. Report from Chris Kirby
643
644 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
645 Reported by David Shaw
646
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000647 * Remove "allow_root" option from kernel module, and implement
648 it's functionality in the library
649
650 * Fix Oops caused by premature release of fuse_conn. Clean up
651 related code, to be more readable
652
Miklos Szeredif9137452005-04-23 10:59:44 +0000653 * Sendfile should not use page cache if "direct_io" mount option
654 is given
655
Miklos Szeredib7640d22005-04-08 15:15:28 +00006562005-04-08 Miklos Szeredi <miklos@szeredi.hu>
657
658 * Fix Oops in case of nfs export. Spotted by David Shaw
659
Miklos Szeredi89814a12005-04-08 16:39:09 +0000660 * Fix another Oops in case of write over nfs with direct_io turned
661 on. Again spotted by David Shaw
662
Miklos Szerediab974562005-04-07 15:40:21 +00006632005-04-07 Miklos Szeredi <miklos@szeredi.hu>
664
Miklos Szeredi432d6182005-04-07 15:56:13 +0000665 * Released 2.3-pre4
666
6672005-04-07 Miklos Szeredi <miklos@szeredi.hu>
668
Miklos Szerediab974562005-04-07 15:40:21 +0000669 * lib: finalized new readdir() interface, which now supersedes the
670 getdir() method.
671
Miklos Szeredi30e093a2005-04-03 17:44:54 +00006722005-04-03 Miklos Szeredi <miklos@szeredi.hu>
673
674 * Released 2.3-pre3
675
6762005-04-03 Miklos Szeredi <miklos@szeredi.hu>
677
678 * Implement backward compatibility with version 5 kernel ABI
679
Miklos Szeredi18fce982005-04-01 21:07:35 +00006802005-04-01 Miklos Szeredi <miklos@szeredi.hu>
681
682 * Released 2.3-pre2
683
6842005-04-01 Miklos Szeredi <miklos@szeredi.hu>
685
686 * kernel: fix dirent offset handling
687
688 * lib: add readdir and releasedir methods
689
690 * lib: use fh field of fuse_file_info in opendir, readdir,
691 releasedir and fsyncdir methods
692
693 * lib: check kernel API version and bail out of it's old. This
694 will be properly fixed in the next release
695
6962005-03-31 Miklos Szeredi <miklos@szeredi.hu>
697
698 * Released 2.3-pre1
699
Miklos Szeredieab72ef2005-03-31 19:59:12 +00007002005-03-31 Miklos Szeredi <miklos@szeredi.hu>
701
702 * kernel API: add padding to structures, so 64bit and 32bit
703 compiler will return the same size
704
705 * kernel API: add offset field to fuse_dirent. This will allow
706 more sophisticated readdir interface for userspace
707
708 * kernel API: change major number to 6
709
710 * kernel: fix warnings on 64bit archs
711
712 * kernel: in case of API version mismatch, return ECONNREFUSED
713
Miklos Szeredi407e6a72005-03-25 12:19:43 +00007142005-03-24 Miklos Szeredi <miklos@szeredi.hu>
715
716 * kernel: trivial cleanups
717
Miklos Szeredi4283ee72005-03-21 12:09:04 +00007182005-03-21 Miklos Szeredi <miklos@szeredi.hu>
719
720 * Add fsyncdir() operation
721
Miklos Szeredid17da462005-03-21 11:47:04 +00007222005-03-19 Miklos Szeredi <miklos@szeredi.hu>
723
724 * kernel: add locking to background list (fixes previous fix)
725
7262005-03-18 Miklos Szeredi <miklos@szeredi.hu>
727
728 * kernel: fix bug which could cause leave busy inodes after
729 unmount, and Oops.
730
7312005-03-08 Miklos Szeredi <miklos@szeredi.hu>
732
733 * examples: add -lpthread to link flags to work around valgrind
734 quirk
735
736 * lib: don't exit threads, so cancelation doesn't cause segfault
737
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00007382005-03-04 Miklos Szeredi <miklos@szeredi.hu>
739
740 * kernel: fix nasty bug which could cause an Oops under certain
741 situations. Found by Magnus Johansson
742
Miklos Szeredif43f0632005-02-28 11:46:56 +00007432005-02-28 Miklos Szeredi <miklos@szeredi.hu>
744
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000745 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000746 permission checking in getdir() is too late. Thanks to Usarin
747 Heininga for pointing out this deficiency
748
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000749 * libfuse: added init() and destroy() methods to fuse_operations
750
Miklos Szeredif43f0632005-02-28 11:46:56 +0000751 * kernel: llseek() method for files and directories made explicit
752
753 * kernel: fixed inode leak in NFS export in case of nodeid
754 wrapping
755
Miklos Szeredied3c97c2005-02-15 17:04:50 +00007562005-02-15 Miklos Szeredi <miklos@szeredi.hu>
757
758 * libfuse: clean up some unitialized memory found with valgrind
759
Miklos Szeredi47c52982005-02-23 09:27:38 +0000760 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
761 explicitly linked libpthread for applications
762
Miklos Szeredia7169412005-02-10 07:35:05 +00007632005-02-10 Miklos Szeredi <miklos@szeredi.hu>
764
765 * fusermount: set umask, otherwise /etc/mtab will have
766 unpredictable permission. Spotted by Jindrich Kolorenc
767
768 * fusermount: set owner and group of /etc/mtab to original values
769 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000770
771 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000772
Miklos Szeredib92d9782005-02-07 16:10:49 +00007732005-02-07 Miklos Szeredi <miklos@szeredi.hu>
774
775 * Cleaned up directory reading (temporary file is not used)
776
Miklos Szerediff30a6c2005-02-02 10:53:59 +00007772005-02-02 Miklos Szeredi <miklos@szeredi.hu>
778
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000779 * Released 2.2
780
7812005-02-02 Miklos Szeredi <miklos@szeredi.hu>
782
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000783 * Fix possible race when operation is interrupted
784
Miklos Szeredi7a983952005-01-28 09:58:19 +00007852005-01-28 Miklos Szeredi <miklos@szeredi.hu>
786
Miklos Szeredie5183742005-02-02 11:14:04 +0000787 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000788
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00007892005-01-26 Miklos Szeredi <miklos@szeredi.hu>
790
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000791 * Released 2.2-pre6
792
7932005-01-26 Miklos Szeredi <miklos@szeredi.hu>
794
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000795 * Fix bug in link() operation which caused the wrong path to be
796 passed as the first argument. Found by Anton Altaparmakov
797
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00007982005-01-21 Miklos Szeredi <miklos@szeredi.hu>
799
800 * LIB: fix double reply in readdir operation
801
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000802 * fusermount: fix uid checking bug. Patch by Adam Connell
803
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000804 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000805 Patch by Keshava Gowda
806
Miklos Szeredi64074142005-01-20 08:48:11 +00008072005-01-20 Miklos Szeredi <miklos@szeredi.hu>
808
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000809 * KERNEL: provide correct llseek semantics for fuse device (fixes
810 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
811
8122005-01-20 Miklos Szeredi <miklos@szeredi.hu>
813
Miklos Szeredi64074142005-01-20 08:48:11 +0000814 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
815
Miklos Szeredi1adb2272005-01-18 21:19:58 +00008162005-01-18 Miklos Szeredi <miklos@szeredi.hu>
817
818 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
819 and RELEASEDIR. This ends the ugly hack of passing a file
820 descriptor to the kernel, and actually makes the code simpler.
821
Miklos Szeredi7db35c02005-01-17 09:46:28 +00008222005-01-17 Miklos Szeredi <miklos@szeredi.hu>
823
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000824 * Released 2.2-pre4
825
8262005-01-17 Miklos Szeredi <miklos@szeredi.hu>
827
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000828 * fusermount: remove capability setting, which was the cause of
829 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000830 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000831
Miklos Szeredidbe0f652005-01-15 14:32:56 +00008322005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000833
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000834 * fix compilation on 2.4 kernels (reported by Valient Gough)
835
836 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000837
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000838 * fusermount: improve parsing of /etc/fuse.conf
839
8402005-01-13 Miklos Szeredi <miklos@szeredi.hu>
841
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000842 * Remove 'mount_max' and 'user_allow_other' module options. These
843 are now checked by fusermount, and can be set in /etc/fuse.conf
844
845 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
846
Miklos Szeredi81394522005-01-11 14:24:18 +00008472005-01-11 Miklos Szeredi <miklos@szeredi.hu>
848
849 * KERNEL: fix possible inode allocation problem, where
850 sizeof(struct inode) is not aligned (found by Mike Waychison)
851
852 * KERNEL: use new follow_link/put_link methods
853
854 * KERNEL: cosmetic fixes
855
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00008562005-01-10 Miklos Szeredi <miklos@szeredi.hu>
857
858 * Released 2.2-pre3
859
8602005-01-10 Miklos Szeredi <miklos@szeredi.hu>
861
862 * Add missing code that was accidently left out
863
Miklos Szeredi8c7da232005-01-09 12:27:41 +00008642005-01-09 Miklos Szeredi <miklos@szeredi.hu>
865
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000866 * Released 2.2-pre2
867
8682005-01-09 Miklos Szeredi <miklos@szeredi.hu>
869
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000870 * Change "uid" mount option to "user_id" to avoid confusion with a
871 mount option "uid" commonly used by many filesystems
872
8732005-01-09 Miklos Szeredi <miklos@szeredi.hu>
874
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000875 * Released 2.2-pre1
876
8772005-01-09 Miklos Szeredi <miklos@szeredi.hu>
878
879 * If FUSE is configured in the kernel, don't build it by default
880
Miklos Szeredi2a927272005-01-07 11:14:15 +00008812005-01-07 Miklos Szeredi <miklos@szeredi.hu>
882
883 * Compile fix by Christian Magnusson
884
Miklos Szeredib6220192005-01-05 16:19:10 +00008852005-01-05 Miklos Szeredi <miklos@szeredi.hu>
886
887 * Fix compilation for 2.6.{0-5} kernels
888
Miklos Szeredi0f62d722005-01-04 12:45:54 +00008892005-01-04 Miklos Szeredi <miklos@szeredi.hu>
890
891 * KERNEL: if request is interrupted, still keep reference to used
892 inode(s) and file, so that FORGET and RELEASE are not sent until
893 userspace finishes the request.
894
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000895 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
896 request with the same information, which is more flexible,
897 simpler, works on embedded systems.
898
Miklos Szeredi0f62d722005-01-04 12:45:54 +00008992004-12-16 Miklos Szeredi <miklos@szeredi.hu>
900
901 * KERNEL ABI: update interface to make it independent of type
902 sizes. This will help on 64 bit architectures which can run
903 legacy 32 bit applications.
904
905 * KERNEL ABI: add "len" field to request headers. This will allow
906 sending/receiving requests in multiple chunks.
907
908 * KERNEL: handle file type change more intelligently
909
910 * LIB: "-o debug" option should disable backgrounding (fix by
911 Fabien Reygrobellet)
912
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00009132004-12-13 Miklos Szeredi <miklos@szeredi.hu>
914
915 * KERNEL: invalidate dentry/attributes if interrupted request
916 could leave filesystem in an unknown state.
917
Miklos Szeredie56818b2004-12-12 11:45:24 +00009182004-12-12 Miklos Szeredi <miklos@szeredi.hu>
919
920 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
921 These will cause some regressions, but stability is considered
922 more important. If any of these features turns out to be
923 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000924
Miklos Szeredie56818b2004-12-12 11:45:24 +0000925 * Make all requests interruptible (only with SIGKILL currently).
926 This can be used to break any deadlock produced by the userspace
927 filesystem accessing it's own exported files. The RELEASE request
928 is special, because if it's interrupted before sending it to
929 userspace it is still sent, but the reply is not awaited.
930
931 * If request is interrupted before being sent to userspace, and if
932 it hasn't yet got any side effects, it is always restarted,
933 regardless of the SA_RESTART flag. This makes these interruptions
934 transparent to the process.
935
936 * Remove shared-writable mmap support, which was prone to an
937 out-of-memory deadlock situation
938
939 * Remove INVALIDATE userspace initiated request
940
941 * Make readpages() synchronous. Asynchronous requests are
942 deadlock prone, since they cannot be interrupted.
943
944 * Add readv/writev support to fuse device operations
945
946 * Remove some printks, which userspace FS can use for a DoS
947 against syslog
948
949 * Remove 'large_read' mount option from 2.6 in kernel, check it in
950 fusermount instead
951
952 * LIB: improve compatibility with a fuse.h header installed in
953 ${prefix}/include which in turn includes the real header.
954
955 * LIB: improve compatibility by defining fuse_main() (which is now
956 not used), so old configure scripts find it.
957
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00009582004-12-10 Miklos Szeredi <miklos@szeredi.hu>
959
960 * When mounting on a subdirectory of / don't duplicate slashes at
961 the beggining of path (spotted by David Shaw)
962
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00009632004-12-09 Miklos Szeredi <miklos@szeredi.hu>
964
965 * Fix bug causing garbage in mount options (spotted by David Shaw)
966
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00009672004-12-07 Miklos Szeredi <miklos@szeredi.hu>
968
969 * Add 'writepage' flag to 'fuse_file_info'.
970
971 * More comments in fuse.h
972
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000973 * Get rid of double underscores
974
Miklos Szeredi799993c2004-12-04 21:20:05 +00009752004-12-04 Miklos Szeredi <miklos@szeredi.hu>
976
977 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
978
979 * helper.c: add -ho option, which only displays the options not
980 the usage header. This can be used by filesystems which have
981 their own options.
982
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00009832004-12-03 Miklos Szeredi <miklos@szeredi.hu>
984
985 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
986 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
987 including the fuse header
988
989 * Add binary compatibility to 2.1 version of library with symbol
990 versioning
991
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00009922004-12-03 Miklos Szeredi <miklos@szeredi.hu>
993
994 * Released 2.1
995
Miklos Szeredi039322d2004-12-01 18:39:12 +00009962004-12-01 Miklos Szeredi <miklos@szeredi.hu>
997
998 * kernel: clean up writing functions
999
1000 * kernel: no allocation on write in direct_io mode
1001
Miklos Szeredib9b94cd2004-12-01 18:56:39 +00001002 * move linux/fuse.h to fuse_kernel.h
1003
Miklos Szeredi83a07442004-11-30 18:25:20 +000010042004-11-30 Miklos Szeredi <miklos@szeredi.hu>
1005
1006 * kernel: clean up reading functions
1007
Miklos Szeredi2defe5e2004-11-29 16:53:44 +000010082004-11-29 Miklos Szeredi <miklos@szeredi.hu>
1009
1010 * kernel: make readpage() uninterruptible
1011
Miklos Szeredi96dfad72004-11-30 00:00:02 +00001012 * kernel: check readonly filesystem flag in fuse_permission
1013
1014 * lib: don't die if version file not found and new style device
1015 exists
1016
1017 * lib: add '-r' option, which is short for '-o ro'
1018
1019 * fusermount: simplify device opening
1020
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00001021 * kernel: when direct_io is turend on, copy data directly to
1022 destination without itermediate buffer. More efficient and safer,
1023 since no allocation is done.
1024
1025 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +00001026
1027 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +00001028
Miklos Szeredifb28c5e2004-11-26 12:15:06 +000010292004-11-26 Miklos Szeredi <miklos@szeredi.hu>
1030
1031 * libfuse API change: open, read, write, flush, fsync and release
1032 are passed a 'struct fuse_file_info' pointer containing the open
1033 flags (open and release), and the file handle. Verion changed to
1034 3.0.
1035
Miklos Szeredia25d4c22004-11-23 22:32:16 +000010362004-11-23 Miklos Szeredi <miklos@szeredi.hu>
1037
1038 * More cleanups in the kernel
1039
1040 * The 10,229 charater device number has been assigned for FUSE
1041
1042 * Version file checking fix (reported by Christian Magnusson)
1043
1044 * fusermount: opening the fuse device now doesn't need /sys.
1045
1046 * Optimize reading by controlling the maximum readahead based on
1047 the 'max_read' mount option
1048
1049 * fixes for UCLIBC (Christian Magnusson)
1050
Miklos Szeredi13ed4822004-11-20 11:12:21 +000010512004-11-19 Miklos Szeredi <miklos@szeredi.hu>
1052
1053 * Cleaned up kernel in preparation for merge into mainline:
1054
1055 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
1056
1057 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
1058
1059 * __user annotations for sparse
1060
1061 * allocate individual pages instead of kmalloc in fuse_readdir,
1062 fuse_read and fuse_write.
1063
1064 * Fix NFS export in case "use_ino" mount option is given
1065
Miklos Szeredif3845c42004-11-20 11:18:34 +00001066 * Make libfuse and fusermount compatible with future versions
1067
1068 * fusermount: properly add mount options to /etc/mtab
1069
10702004-11-15 Miklos Szeredi <miklos@szeredi.hu>
1071
1072 * fusermount: do not resolve last component of mountpoint on if it
1073 is '.' or '..'. This new path resolvation is now done on mount as
1074 well as unmount. This enables relative paths to work on unmount.
1075
1076 * fusermount: parse common mount options like "ro", "rw", etc...
1077
1078 * Allow module params to be changed through sysfs
1079
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +000010802004-11-14 Miklos Szeredi <miklos@szeredi.hu>
1081
1082 * Released 2.1-pre1
1083
10842004-11-14 Miklos Szeredi <miklos@szeredi.hu>
1085
1086 * Fix bug in fuse_readpages() causing Oops in certain situations.
1087 Bug found by Vincenzo Ciancia.
1088
1089 * Fix compilation with kernels versions > 2.6.9.
1090
Miklos Szeredi3a6ea062004-11-11 10:33:58 +000010912004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +00001092
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00001093 * Check kernel interface version in fusermount to prevent
1094 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +00001095
Miklos Szeredi3d60e762004-11-11 14:44:04 +00001096 * No need to allocate fuse_conn until actual mount happens
1097
1098 * Fix potential race between umount and fuse_invalidate
1099
1100 * Check superblock of proc file in addition to inode number
1101
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00001102 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +00001103
Miklos Szeredi51ec1032004-11-10 11:52:26 +000011042004-11-10 Miklos Szeredi <miklos@szeredi.hu>
1105
1106 * Separate configure for the kernel directory
1107
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00001108 * Don't allow write to return more than 'count'
1109
1110 * Extend kernel interface for future use
1111
Miklos Szeredi51ec1032004-11-10 11:52:26 +000011122004-11-09 Miklos Szeredi <miklos@szeredi.hu>
1113
1114 * Fix 'makeconf.sh' to use autoreconf if available
1115
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +000011162004-11-08 Miklos Szeredi <miklos@szeredi.hu>
1117
Miklos Szeredid507c732004-11-08 17:32:25 +00001118 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
1119 compatibility with earlier versions. To compile earier versions
1120 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
1121 Do not use the "use_ino" mount flag with filesystems compiled with
1122 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +00001123
1124 * Add pkg-config support. To compile a FUSE based filesystem you
1125 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
1126 or similar. Note, that the PKG_CONFIG_PATH environment variable
1127 usually needs to be set to "/usr/local/lib/pkgconfig".
1128
1129 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +00001130
Miklos Szeredia13d9002004-11-02 17:32:03 +000011312004-11-02 Miklos Szeredi <miklos@szeredi.hu>
1132
1133 * Added "use_ino" mount option. This enables the filesystems to
1134 set the st_ino field on files
1135
Miklos Szeredib1ab8b52004-11-01 10:57:41 +000011362004-11-01 Miklos Szeredi <miklos@szeredi.hu>
1137
1138 * Fix compile problems with ancient (<=2.4.18) kernels (reported
1139 by Jeremy Smith)
1140
Miklos Szeredi874e3c12004-11-01 23:15:20 +00001141 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
1142
1143 * Clear the 'exited' flag when mail loop is finished
1144
Miklos Szeredie989f0d2004-10-28 20:24:58 +000011452004-10-28 Miklos Szeredi <miklos@szeredi.hu>
1146
1147 * Make xattr functions work under 2.6 (bug found by Vincenzo
1148 Ciancia)
1149
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +000011502004-10-26 Miklos Szeredi <miklos@szeredi.hu>
1151
1152 * Reset request in fuse_flush() (bugreport by David Shaw)
1153
Miklos Szeredi5dc8a802004-10-21 09:35:10 +000011542004-10-21 Miklos Szeredi <miklos@szeredi.hu>
1155
Miklos Szeredi0e70aa72004-10-21 16:24:29 +00001156 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001157 error code
1158
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001159 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001160 make it easier to implement a custom event loop.
1161
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001162 * Use daemon() call to background the filesystem after mounting.
1163 This function closes the standard input, output and error and
1164 changes the current working directory to "/".
1165
Miklos Szeredi127d49b2004-10-14 13:33:39 +000011662004-10-14 Miklos Szeredi <miklos@szeredi.hu>
1167
1168 * Released 1.9
1169
Miklos Szeredid45baf42004-10-10 07:56:12 +000011702004-10-09 Miklos Szeredi <miklos@szeredi.hu>
1171
1172 * Don't allow fuse_flush() to be interrupted (bug found by David
1173 Shaw)
1174
Miklos Szeredi1f18db52004-09-27 06:54:49 +000011752004-09-27 Miklos Szeredi <miklos@szeredi.hu>
1176
1177 * Add PID to fuse_context. Patch by Steven James
1178
Miklos Szeredi1eea0322004-09-27 18:50:11 +00001179 * Change file handle type to 'unsigned long' in kernel interface
1180
Miklos Szeredid169f312004-09-22 08:48:26 +000011812004-09-22 Miklos Szeredi <miklos@szeredi.hu>
1182
1183 * A slight API change: fuse_get_context() doesn't need the "fuse"
1184 pointer, but the returned context contains it instead. The
1185 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +00001186
1187 * Fix mounting and umounting FUSE filesystem under another FUSE
1188 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +00001189
Miklos Szeredic2309912004-09-21 13:40:38 +000011902004-09-21 Miklos Szeredi <miklos@szeredi.hu>
1191
1192 * Fix deadlock in case of memory allocation failure. Patch by
1193 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +00001194
Miklos Szeredib2cf9562004-09-16 08:42:40 +000011952004-09-16 Miklos Szeredi <miklos@szeredi.hu>
1196
1197 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +00001198
Miklos Szeredi65afea12004-09-14 07:13:45 +000011992004-09-14 Miklos Szeredi <miklos@szeredi.hu>
1200
1201 * Check temporary file creation failure in do_getdir(). Bug
1202 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001203
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +000012042004-09-13 Miklos Szeredi <miklos@szeredi.hu>
1205
1206 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +00001207
1208 * Make requests non-interruptible so race with FORGET is avoided.
1209 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +00001210
1211 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001212
Miklos Szeredi8b2d3332004-09-09 08:44:01 +000012132004-09-09 Miklos Szeredi <miklos@szeredi.hu>
1214
1215 * Fix bug in case two FORGETs for the same node are executed in
1216 the wrong order. Bug spotted and endured for months by Franco
1217 Broi, and logfile for solution provided by Terje Oseberg
1218
Miklos Szeredi12085102004-09-02 18:13:57 +000012192004-09-01 Miklos Szeredi <miklos@szeredi.hu>
1220
1221 * Add -D_REENTRANT to the compile flags
1222
1223 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001224
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +000012252004-08-16 Miklos Szeredi <miklos@szeredi.hu>
1226
1227 * Change release method to be non-interruptible. Fixes bug
1228 causing missing release() call when program which has opened files
1229 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +00001230
Miklos Szeredi891b8742004-07-29 09:27:49 +000012312004-07-29 Miklos Szeredi <miklos@szeredi.hu>
1232
1233 * Add fuse_invalidate() to library API
1234
Miklos Szeredi94ed76a2004-07-26 19:38:45 +000012352004-07-26 Miklos Szeredi <miklos@szeredi.hu>
1236
1237 * Check permissions in setattr if 'default_permissions' flag is
1238 set. Bug spotted by Damjan Lango
1239
Miklos Szeredid66d3942004-07-24 13:47:44 +000012402004-07-24 Miklos Szeredi <miklos@szeredi.hu>
1241
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001242 * 'large_read' mount option removed for 2.6 kernels, since the
1243 default (dynamic read size) is better
1244
1245 * Extend kernel API with file handles. A file handle is returned
1246 by open, and passed to read, write, flush, fsync and release.
1247 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +00001248
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001249 * Security changes:
1250
1251 * Change the current directory to the mountpoint before checking
1252 the permissions and mount filesystem on "."
1253
1254 * By default don't modprobe the fuse module for non-root. The old
1255 behavior can be restored with the '--enable-auto-modprobe' flag of
1256 ./configure
1257
1258 * By default don't allow shared writable mappings for non-root.
1259 The old behavior can be restored with the 'user_mmap=1' module
1260 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +00001261
Miklos Szeredibd7661b2004-07-23 17:16:29 +000012622004-07-23 Miklos Szeredi <miklos@szeredi.hu>
1263
1264 * Clean up mount option passing to fusermount and to fuse_new()
1265 BEWARE: this changes the userspace API slightly, and the command
1266 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +00001267
Miklos Szeredi58865372004-07-20 14:22:26 +000012682004-07-20 Miklos Szeredi <miklos@szeredi.hu>
1269
1270 * Optimize reading under 2.6 kernels by issuing multiple page
1271 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +00001272
Miklos Szeredi84ba0f42004-07-18 11:32:59 +000012732004-07-18 Miklos Szeredi <miklos@szeredi.hu>
1274
1275 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001276
Miklos Szeredi069c9502004-07-16 16:17:02 +000012772004-07-16 Miklos Szeredi <miklos@szeredi.hu>
1278
1279 * Separate directory entry and inode attribute validity timer
1280
1281 * New write semaphore to stop page writeback during truncate
1282
1283 * Fsync now waits for all writes to complete before sending the
1284 request
1285
1286 * Optimization: if a page is completely written by
1287 fuse_commit_write(), clear the dirty flag and set the uptodate
1288 flag for that page
1289
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +00001290 * Some memory cleanup at exit
1291
Miklos Szeredi2529ca22004-07-13 15:36:52 +000012922004-07-13 Miklos Szeredi <miklos@szeredi.hu>
1293
1294 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +00001295 disable the "hide if open" behavior of unlink/rename.
1296
1297 * If temporary buffer allocation fails in raw read, fall back to a
1298 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +00001299
Miklos Szeredi73798f92004-07-12 15:55:11 +000013002004-07-12 Miklos Szeredi <miklos@szeredi.hu>
1301
1302 * Fix bug in do_open() in libfuse: open count was incremented
1303 after the reply is sent so it could race with unlink/forget and
1304 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +00001305
Miklos Szeredi015fe702004-07-12 11:52:24 +000013062004-07-08 Miklos Szeredi <miklos@szeredi.hu>
1307
1308 * When performing create or remove operation, refresh the parent's
1309 attributes on next revalidate, as i_nlink (and maybe size/time)
1310 could be inacurate.
1311
1312 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
1313 pages (2.6 only)
1314
1315 * Set set_page_dirty address space operation (2.6 only)
1316
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013172004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +00001318
1319 * Minor fix in read: print debug info even if read size is zero
1320
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013212004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +00001322
1323 * Fix race between truncate and writepage (fsx-linux now runs
1324 without error)
1325
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013262004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001327
1328 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
1329 by Mattias Wadman)
1330
1331 * Added option for direct read/write (-r)
1332
1333 * Fix revalidate time setting for newly created inodes
1334
Miklos Szerediacb4d362004-07-02 16:20:45 +00001335 * Remove uid==0 check for '-x' option in fusermount (kernel checks
1336 this)
1337
1338 * fuse_main() only installs handlers for signals (out of INT, HUP,
1339 TERM, PIPE), for which no handler has yet been installed
1340
1341 * Add module option 'user_allow_other' which if set to non-zero
1342 will allow non root user to specify the 'allow_other' mount option
1343 ('-x' option of fusermount)
1344
Miklos Szeredi014d7d22004-07-02 21:22:37 +00001345 * Fix deadlock between page writeback completion and truncate
1346 (bug found by Valient Gough with the fsx-linux utility)
1347
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013482004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001349
1350 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +00001351 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
1352 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +00001353
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013542004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +00001355
1356 * Acquire inode->i_sem before open and release methods to prevent
1357 concurrent rename or unlink operations.
1358
Miklos Szeredi65cf7c72004-06-30 11:34:56 +00001359 * Make __fuse_read_cmd() read only one command. This allows
1360 multiplexing the fuse file descriptor with other event sources
1361 using select() or poll() (patch by Jeff Harris)
1362
1363 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
1364
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013652004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +00001366
1367 * Fix file offset wrap around at 4G when doing large reads
1368
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013692004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001370
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001371 * Fix memory leak in open (Valient Gough)
1372
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013732004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001374
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001375 * Add "close after delete" support to libfuse (patch by Valient
1376 Gough)
1377
1378 * Cancel all worker threads before exit in multithreaded mode
1379
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013802004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001381
1382 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001383
1384 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001385
1386 * Work with newer libtool (1.5a)
1387
1388 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001389
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013902004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001391
1392 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001393
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013942004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001395
1396 * Fix possible inode leak in userspace in case of unfinished
1397 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001398
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013992004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001400
1401 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001402
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014032004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001404
1405 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001406
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014072004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001408
1409 * Build shared library as well as static (using libtool)
1410
1411 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1412 there has not been a release with the previous minor number, and I
1413 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001414
1415 * Change fuse_main(), so that default behavior is to go into
1416 background if mount is successful. '-f' and '-d' options disable
1417 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1418 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001419
1420 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1421 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001422
1423 * Don't call getdir method from open() only from first readdir().
1424 Open is sometimes just used to store the current directory
1425 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001426
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014272004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001428
1429 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001430
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014312004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001432
1433 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001434
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014352004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001436
1437 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001438
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014392004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001440
1441 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001442
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014432004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001444
1445 * Replaced binary mount data with text options
1446
1447 * Show FUSE specific mount options in /proc/mounts
1448
1449 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1450
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014512004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001452
1453 * Check some limits so userspace won't get too big requests
1454
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014552004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001456
1457 * Kill compile warning
1458
1459 * Upgraded user-mount patch for 2.6.5
1460
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014612004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001462
1463 * Add detection of user-mode-linux to configure
1464
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014652004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001466
1467 * fixed zero size case for getxattr and listxattr
1468
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014692004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001470
1471 * new fusermount flag '-z': lazy unmount, default is not lazy
1472
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001473 * Extended attributes operations added (getxattr, setxattr,
1474 listxattr, removexattr)
1475
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014762004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001477
1478 * If filesystem doesn't define a statfs operation, then an
1479 all-zero default statfs is returned instead of ENOSYS
1480
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014812004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001482
1483 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1484
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014852004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001486
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001487 * Fix for uClinux (Christian Magnusson)
1488
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014892004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001490
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001491 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001492
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001493 * More kernel interface changes:
1494
1495 * Lookup/getattr return cache timeout values
1496
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014972004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001498
1499 * Clean up option parsing in fuse_main()
1500
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001501 * Added fuse_get() function which returns the fuse object created
1502 by fuse_main()
1503
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015042004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001505
Miklos Szeredic40748a2004-02-20 16:38:45 +00001506 * removed old way of mounting (fusermount mountpoint program)
1507
Miklos Szeredib5958612004-02-20 14:10:49 +00001508 * more kernel interface changes:
1509
1510 * added nanosecond precision to file times
1511
Miklos Szeredic40748a2004-02-20 16:38:45 +00001512 * removed interface version from mount data
1513
1514 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1515
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015162004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001517
1518 * statfs library API changed to match other methods. Since this
1519 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1520
Miklos Szeredi76f65782004-02-19 16:55:40 +00001521 * kernel interface changes follow:
1522
1523 * statfs changed to 64 bits, added 'bavail' field
1524
1525 * add generation number to lookup result
1526
1527 * optimized mknod/mkdir/symlink/link (no separate lookup is
1528 needed)
1529
1530 * rdev size increased to 32 bits for mknod
1531
1532 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001533
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015342004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001535
1536 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001537
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015382004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001539
1540 * Added user-mount.2.6.2-rc3.patch
1541
1542 * Add FS_SAFE flag to fuse filesystem
1543
1544 * fusermount should allow (un)mounting for non-root even if not
1545 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001546
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015472004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001548
1549 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001550
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015512004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001552
1553 * Added check for i_size_read/write functions to configure.in
1554 (patch by Valient Gough)
1555
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015562004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001557
1558 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001559
1560 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001561
1562 * Readpage calls flush_dcache_page() after storing data
1563
1564 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001565
1566 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001567
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015682004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001569
1570 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001571
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015722004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001573
1574 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001575
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015762004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001577
1578 * Added -q option for fusermount
1579
1580 * fuse_unmount() now uses -q option of fusermount, so no error is
1581 printed if the cause of the program exit is that the filesystem
1582 has already been unmounted
1583
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001584 * Fix i_nlink correctness after rmdir/unlink
1585
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015862004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001587
Miklos Szeredib1158392004-01-26 14:43:12 +00001588 * Released 1.1-pre2
1589
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015902004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001591
Miklos Szeredi307242f2004-01-26 11:28:44 +00001592 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001593
1594 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001595
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015962004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001597
1598 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001599
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016002004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001601
1602 * Write all pending data before a RELEASE operation
1603
1604 * Suppress 'Bad file descriptor' warning on exit
1605
1606 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001607 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001608
Miklos Szeredib1158392004-01-26 14:43:12 +00001609 * New fusermount option '-l' which enables big reads. Big reads
1610 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001611
1612 * fuse_main() can accept fusermount arguments after a '--'
1613
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016142004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001615
1616 * Support for exporting filesystem over NFS (see README.NFS)
1617
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016182004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001619
1620 * Support non-blocking writepage on 2.6. This makes FUSE behave
1621 much more nicely in low-memory situations
1622
1623 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1624 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001625
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016262004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001627
1628 * Code cleanups
1629
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016302004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001631
1632 * Released 1.1-pre1
1633
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016342004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001635
1636 * Integrated 2.6 kernel support patch by Michael Grigoriev
1637
1638 * Improvements and cleanups for 2.6 kernels
1639
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016402004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001641
Miklos Szeredie5183742005-02-02 11:14:04 +00001642 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001643
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016442003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001645
1646 * Added major+minor version to library API, and minor version to
1647 kernel API
1648
David McNab7a19caf2003-12-13 02:05:46 +000016492003-12-13 David McNab <david@rebirthing.co.nz>
1650
1651 * Implemented fsync support in examples/example.py
1652
1653 * Implemented 'fsync' and 'statfs' methods in python
1654 interface
1655
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016562003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001657
Miklos Szeredie5183742005-02-02 11:14:04 +00001658 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001659
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001660 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001661
David McNab8bf62632003-12-11 22:49:22 +000016622003-12-12 David McNab <david@rebirthing.co.nz>
1663
1664 * Added distutils support to the python module, as per standard
1665 python development practice
1666
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016672003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001668
1669 * Add file locking for mount/unmount (based on patch by Valient
1670 Gough)
1671
16722003-12-11 David McNab <david@rebirthing.co.nz>
1673
1674 * Python filesystem - was broken with python2.3, now fixed:
1675 - changed PyTuple_* calls to PySequence_*, because os.lstat
1676 is no longer returning a pure tuple
1677 - changed PyInt_Check() calls to also call PyLong_Check,
1678 to cover for cases (eg os.lstat) where longs are returned
1679 - Added support for file 'release' handling, which IMO is
1680 essential since this signals to a FS that writes to a file
1681 are complete (and therefore the file can now be disposed of
1682 meaningfully at the python filesystem's discretion)
1683 - Added '__init__' handler to base Fuse class, which allows
1684 your Python class to know the mountpoint and mount args,
1685 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001686
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001687 * General:
1688 - added 'mount.fuse' script (in util/ dir), which is meant to be
1689 symlinked from /sbin, and which allows FUSE filesystems to
1690 be mounted with the 'mount' command, and listed in fstab;
1691 also, mount arguments get passed to your filesystem
1692
1693
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016942003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001695
1696 * Fix kernel version detection (again). Bugreport by Peter Levart
1697
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016982003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001699
1700 * Applied read combining patch by Michael Grigoriev (tested by
1701 Valient Gough and Vincent Wagelaar)
1702
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017032003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001704
1705 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1706 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001707
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017082003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001709
1710 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001711
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017122003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001713
1714 * kernel version detection fix
1715
1716 * fusermount now uses "lazy" umount option
1717
1718 * fusermount can use modprobe with module-init-tools
1719
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017202003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001721
1722 * Integrated caching patch by Michael Grigoriev
1723
Miklos Szeredida4e4862003-09-08 11:14:11 +00001724 * Added "Filesystems" file with descriptions of projects using
1725 FUSE
1726
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001727 * Added patch by Michael Grigoriev to allow compliation of FUSE
1728 kernel module for 2.6 kernels
1729
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017302003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001731
1732 * And another spec-file fix by Achim Settelmeier
1733
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017342003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001735
1736 * Spec-file fix by Achim Settelmeier
1737
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017382003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001739
Miklos Szerediac361172004-11-02 19:14:14 +00001740 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001741
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017422003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001743
1744 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1745
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017462003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001747
1748 * Updated fuse.spec file (Achim Settelmeier)
1749
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017502003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001751
1752 * Version 1.0 released
1753
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017542003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001755
1756 * SuSE compilation fix by Juan-Mariano de Goyeneche
1757
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017582002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001759
1760 * The release() VFS call is now exported to the FUSE interface
1761
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017622002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001763
1764 * 64 bit file offset fixes in the fuse kernel module
1765
1766 * Added function 'fuse_exit()' which can be used to exit the main
1767 loop
1768
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017692002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001770
1771 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1772 an incompatible interface change.
1773
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017742002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001775
1776 * Portablility fix (bug reported by C. Chris Erway)
1777
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017782002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001779
1780 * Use Mark Glines' fd passing method for default operation instead
1781 of old reexec
1782
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017832002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001784
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001785 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1786
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017872002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001788
Miklos Szeredi60c23522002-10-24 09:19:43 +00001789 * fix incompatiblity with Red Hat kernels, with help from Nathan
1790 Thompson-Amato.
1791
Mark Glines65ba2192002-04-18 14:41:48 +000017922002-04-18 Mark Glines <mark@glines.org>
1793
1794 * added an alternative to fuse_mount(), called
1795 fuse_mount_ioslave(), which does not need to reexec the
1796 FUSE program.
1797 * added a small helper util needed by fuse_mount_ioslave().
1798
Mark Glines220635a2002-03-17 07:01:14 +000017992002-03-16 Mark Glines <mark@glines.org>
1800
1801 * use struct fuse_statfs everywhere possible to avoid problems
1802 with the headerfiles changing struct statfs member sizes
1803
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018042002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001805
1806 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1807
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018082002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001809
1810 * RPM support by Achim Settelmeier
1811
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018122002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001813
Miklos Szerediddc862a2002-01-09 13:46:10 +00001814 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001815
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018162002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001817
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001818 * Revaidate all path components not just the last, this means a
1819 very small performance penalty for being more up-to-date.
1820
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018212002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001822
1823 * Update and fix python interface
1824
Mark Glinesd84b39a2002-01-07 16:32:02 +000018252002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001826
Mark Glinesd84b39a2002-01-07 16:32:02 +00001827 * Added statfs() support to kernel, lib, examples, and perl!
1828
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018292001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001830
1831 * Better cross compilation support
1832
1833 * Ported to Compaq IPAQ
1834
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018352001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001836
Miklos Szeredife25def2001-12-20 15:38:05 +00001837 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001838 patch from Matt Ryan)
1839
Miklos Szeredife25def2001-12-20 15:38:05 +00001840 * Added flags to fusermount and to kernel interface to control
1841 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001842
Miklos Szeredife25def2001-12-20 15:38:05 +00001843 * Integrated fuse_set_operations() into fuse_new()
1844
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018452001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001846
1847 * Applied header protection + extern "C" patch by Roland
1848 Bauerschmidt
1849
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018502001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001851
Miklos Szeredie5183742005-02-02 11:14:04 +00001852 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001853
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018542001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001855
1856 * Cleaned up way of mounting simple filesystems.
1857
1858 * fuse_main() helper function added
1859
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018602001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001861
Miklos Szeredife25def2001-12-20 15:38:05 +00001862 * Optimized read/write operations, so that minimal copying of data
1863 is done
1864
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018652001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001866
1867 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001868
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018692001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001870
1871 * Fixed vfsmount reference leak in fuse_follow_link
1872
1873 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1874 userspace is ignored
1875
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018762001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001877
Miklos Szeredife25def2001-12-20 15:38:05 +00001878 * Started ChangeLog