blob: 260c2cee5111c8118451ec0f56bd385aba69d985 [file] [log] [blame]
Csaba Henkdcce3e52006-02-10 06:22:15 +000012006-02-10 Csaba Henk <csaba.henk@creo.hu>
2
3 * Refine clock_gettime() querying so that linker options
4 shall be set as it's appropriate for the target platform.
5
Miklos Szeredi390ae312006-02-10 16:44:34 +000062006-02-09 Miklos Szeredi <miklos@szeredi.hu>
7
8 * Fix udev rule syntax. Reported by Nix
9
Miklos Szeredieb643582006-02-08 10:54:02 +0000102006-02-08 Miklos Szeredi <miklos@szeredi.hu>
11
12 * In some cases udev rule seems to be ineffective when installed
13 as 40-fuse.rules but work as 60-fuse.rules. Reported by John Hunt
14
Miklos Szeredi357529c2006-02-03 09:20:31 +0000152006-02-03 Miklos Szeredi <miklos@szeredi.hu>
16
17 * Fix compilation when build directory is different from source
18 directory. Reported by Frédéric L. W. Meunier
19
Miklos Szeredice28c7e2006-02-02 14:59:05 +0000202006-02-02 Miklos Szeredi <miklos@szeredi.hu>
21
22 * Fix even bigger bug introduced in fix for request_end() on
23 2006-01-14. Reported by Gal Rosen
24
Miklos Szeredi320abe42006-01-30 18:14:51 +0000252006-01-30 Miklos Szeredi <miklos@szeredi.hu>
26
27 * highlevel-lib: add 'auto_cache' option. This caches file data
28 based on modification time and size
29
Miklos Szeredi065f2222006-01-20 15:15:21 +0000302006-01-20 Miklos Szeredi <miklos@szeredi.hu>
31
Miklos Szeredid66b7282006-02-02 15:15:21 +000032 * Sanitize storage type and help message in mount_bsd.c. Patch
33 from Csaba Henk
34
Miklos Szeredi065f2222006-01-20 15:15:21 +000035 * fuse_opt: add new helper constants FUSE_OPT_KEY_KEEP and
36 FUSE_OPT_KEY_DISCARD
37
38 * Add options 'max_readahead', 'sync_read' and 'async_read'
39
40 * Kernel ABI version 7.6:
41
42 * Negotiate the 'max_readahead' value and 'async_read' flags with
43 userspace in the INIT method
44
45 * Add connection info to ->init() methods to both lowlevel and
46 highlevel API
47
48 * Fall back to synchronous read() behavior if either library or
49 userspace filesystem is using the old interface version. This is
50 needed so non-updated filesystems won't be confused by the
51 different read() behavior
52
532006-01-19 Miklos Szeredi <miklos@szeredi.hu>
54
55 * lib: if "fsname=" option was given, pass it to fusermount
56
57 * fuse_opt: add new fuse_opt_insert_arg() function, which is
58 needed by filesystems to implement some argument manipulations
59 correctly
60
61 * fuse_opt: fix memory leak in handling "--" option
62
632006-01-18 Miklos Szeredi <miklos@szeredi.hu>
64
65 * kernel: fix detection of case when fuse is not configured into
66 the kernel either as module or built-in
67
68 * fuse_opt.h: fix incompatibility with C++ compilers by renaming
69 'template' structure member to 'templ'. Reported by Takashi Iwai
70
71 * fuse.h: fix compatibility bugs. Patch by Yura Pakhuchiy
72
73 * kernel: support version 2.6.16 (i_sem -> i_mutex)
74
Miklos Szeredi15af1b82006-01-16 17:52:24 +0000752006-01-16 Miklos Szeredi <miklos@szeredi.hu>
76
77 * Added (again) asynchronous readpages support
78
79 * Each connection now shows up under /sys/fs/fuse/connections
80
81 * Connection attributes exported to sysfs: 'waiting' number of
82 waiting requests; 'abort' abort the connection
83
84 * Connection may be aborted through either the sysfs interface or
85 with 'umount -f mountpoint'
86
Miklos Szeredi9db5faa2006-01-14 14:47:21 +0000872006-01-14 Miklos Szeredi <miklos@szeredi.hu>
88
Miklos Szeredi75bb0de2006-01-14 18:38:54 +000089 * Released 2.5.0
90
912006-01-14 Miklos Szeredi <miklos@szeredi.hu>
92
Miklos Szeredi9db5faa2006-01-14 14:47:21 +000093 * kernel: fix a couple of bugs
94
Miklos Szeredi68183ca2006-01-27 11:16:11 +000095 * Order of request_end() and fuse_copy_finish() was wrong.
Miklos Szeredie0451092006-01-27 11:19:51 +000096 Posthumous note: Franco Broi managed to exploit this, though it
Miklos Szeredi68183ca2006-01-27 11:16:11 +000097 seemed quite impossible
Miklos Szeredi9db5faa2006-01-14 14:47:21 +000098
99 * request_end() used request pointer after decrementing refcount
100
101 * Clearing ->connected or ->mounted connection flags could race
102 with setting other bitfields not protected with a lock
Miklos Szeredi15af1b82006-01-16 17:52:24 +0000103
Miklos Szeredia9820342006-01-10 10:54:11 +00001042006-01-10 Miklos Szeredi <miklos@szeredi.hu>
105
106 * kernel: add necessary compile flags for 2.4.X/x86_64.
107 Report from Sean Ziegeler
108
Miklos Szeredi35676b02006-01-09 10:13:28 +00001092006-01-09 Miklos Szeredi <miklos@szeredi.hu>
110
Miklos Szeredie07b1a22006-01-09 14:46:10 +0000111 * Released 2.5.0-pre2
112
1132006-01-09 Miklos Szeredi <miklos@szeredi.hu>
114
Miklos Szeredi35676b02006-01-09 10:13:28 +0000115 * Applied patch from Csaba Henk, to update mount_bsd to new
116 fuse_mount() semantics
117
Miklos Szeredib32c79b2006-01-09 11:14:29 +0000118 * Ignore auto,noauto,... options in mount.fuse. Reported by Frank
119 Steiner and Don Taber
120
Miklos Szeredicb075c82006-01-09 11:33:04 +0000121 * fusermount: add 'dirsync' mount option
122
Miklos Szerediad005972006-01-07 10:14:34 +00001232006-01-07 Miklos Szeredi <miklos@szeredi.hu>
124
125 * Improved help reporting and added version reporting to library
126
Miklos Szeredi0af762a2006-01-06 09:47:54 +00001272006-01-06 Miklos Szeredi <miklos@szeredi.hu>
128
129 * Change working directory to "/" even if running in the
130 foreground. Patch from Jonathan Brandmeyer
131
Miklos Szeredi95da8602006-01-06 18:29:40 +0000132 * Changed lots of functions to use 'struct fuse_args' instead of
133 separate argc and argv
134
135 * Added fuse_parse_cmdline(), fuse_set_signal_handlers() and
136 fuse_remove_signal_handlers() functions, so that it's now pretty
137 easy to get all the functionality of fuse_main() with a filesystem
138 using the lowlevel API.
139
Miklos Szeredib8638182006-01-02 12:52:24 +00001402006-01-02 Miklos Szeredi <miklos@szeredi.hu>
141
Miklos Szeredif1941472006-01-02 16:27:48 +0000142 * mount.fuse: the 'user' option should be ignored. Report and
143 solution from Mattd.
144
145 * mount.fuse: export PATH in the right place. Report and patch
146 from Hannes Schweizer
Miklos Szeredib8638182006-01-02 12:52:24 +0000147
Miklos Szeredi73f41392005-12-16 11:12:16 +00001482005-12-16 Miklos Szeredi <miklos@szeredi.hu>
149
150 * Clean up the option parsing interface slightly, by creating an
151 "argument list" structure, that contains the argument vector and
152 count
153
Miklos Szeredi4e829092005-12-15 16:13:49 +00001542005-12-15 Miklos Szeredi <miklos@szeredi.hu>
155
156 * fusermount: check if /mnt/mtab is a symlink and don't modify it
157 in that case
158
Miklos Szeredi154ffe22005-12-15 16:41:20 +0000159 * kernel: simplify request size limiting. INIT only contains
160 maximum write size, maximum path component size remains fixed at
161 1024 bytes, and maximum xattr size depends on read buffer.
162
Miklos Szeredie248e4b2005-12-14 16:18:32 +00001632005-12-14 Miklos Szeredi <miklos@szeredi.hu>
164
165 * Fix readdir() failure on x86_64, of 32bit programs compiled
166 without largefile support. Bug report and help from Anthony
167 Kolasny
168
Miklos Szeredi64709572005-12-14 22:16:28 +0000169 * If lookup returns invalid mode, return -EIO instead of creating
Miklos Szeredicaa09312005-12-14 23:25:00 +0000170 a regular file
171
172 * Add current output argument vector to option processing
173 function
Miklos Szeredi64709572005-12-14 22:16:28 +0000174
Miklos Szeredi76fc3de2005-12-12 09:34:45 +00001752005-12-12 Miklos Szeredi <miklos@szeredi.hu>
176
177 * Fix stale code in ifdef FreeBSD. Patch from Csaba Henk
178
Miklos Szeredi659743b2005-12-09 17:41:42 +00001792005-12-09 Miklos Szeredi <miklos@szeredi.hu>
180
Miklos Szeredi3b534a42005-12-09 20:09:42 +0000181 * Released 2.5.0-pre1
182
1832005-12-09 Miklos Szeredi <miklos@szeredi.hu>
184
Miklos Szeredi659743b2005-12-09 17:41:42 +0000185 * libfuse: added option parsing interface, defined in
186 <fuse_opt.h>.
187
Miklos Szeredic53cddd2005-12-07 12:57:59 +00001882005-12-07 Miklos Szeredi <miklos@szeredi.hu>
189
190 * Return EIO for file operations (read, write, fsync, flush) on
191 open files whose inode has become "bad". Inodes will be marked
192 "bad" if their type changes. Bug report by Csaba Henk
193
Miklos Szeredi044da2e2005-12-06 17:59:55 +00001942005-12-06 Miklos Szeredi <miklos@szeredi.hu>
195
196 * Use bigger request buffer size. write() did not work on archs
197 with > 4k page size, Bug report by Mark Haney
198
199 * ABI version 7.5:
200
201 * Extend INIT reply with data size limits
202
Miklos Szeredifa829b52005-12-02 11:05:41 +00002032005-12-02 Miklos Szeredi <miklos@szeredi.hu>
204
205 * Fix memory leak in fuse_read_cmd()/fuse_process_cmd(). Bug
206 reported by Vincenzo Ciancia
207
208 * Handle exit-by-umount in fuse_read_cmd()
209
Miklos Szeredi3cc8a262005-11-29 11:04:27 +00002102005-11-29 Miklos Szeredi <miklos@szeredi.hu>
211
212 * Check if '-msoft-float' option is supported by compiler when
213 configuring for a 2.4.x kernel. Bug report by Mark Haney
214
Miklos Szeredi40d7b382005-11-29 20:07:23 +0000215 * In multithreaded loop send a TERM signal to the main thread if
216 one of the other threads exit. Needed on FreeBSD for a clean exit
217 on umount. Should not cause any harm on Linux either
218
Miklos Szerediead7f102005-11-28 16:02:27 +00002192005-11-28 Miklos Szeredi <miklos@szeredi.hu>
220
221 * Fix bug in 32-bit file handle compatibility
222
Miklos Szeredia90b7342005-11-27 19:22:42 +00002232005-11-27 Miklos Szeredi <miklos@szeredi.hu>
224
225 * Block TERM, INT, HUP and QUIT signals in all but the main
226 thread. According to POSIX it's not specified which thread will
227 receive these signals.
Miklos Szeredi2b478112005-11-28 13:27:10 +0000228
229 * Kernel changes:
230
231 * Check for directory aliasing on mkdir, not just on lookup
232
233 * Check for special node ID values in create+open operation
234
235 * Sync with -mm: readv, writev, aio_read and aio_write methods
236 added to file operations
237
238 * Cleanups: lookup code, page offset calculation
239
240 * ABI stepped to 7.4, changes:
241
242 * frsize member added to fuse_kstatfs structure
243
244 * added support for negative entry caching: on lowlevel API if
245 fuse_entry_param::ino is set to zero in reply to a lookup request,
246 the kernel will cache the dentry for the specified amount of time.
247
248 * libfuse: added 'negative_timeout' option: specifies how much
249 negative entries should be cached. Default is zero, to be
Miklos Szerediead7f102005-11-28 16:02:27 +0000250 compatible with prior versions
Miklos Szeredi2b478112005-11-28 13:27:10 +0000251
Miklos Szeredibac4c772005-11-23 13:35:54 +00002522005-11-22 Miklos Szeredi <miklos@szeredi.hu>
253
254 * Add detection of mainline FUSE code in running kernel
255
Miklos Szeredi8393e3d2005-11-21 11:37:01 +00002562005-11-21 Miklos Szeredi <miklos@szeredi.hu>
257
258 * Don't use async cancelation in multithreaded loop. This makes
259 it more portable to systems where read() is not async cancel safe.
260 Report from Andriy Gapon
261
Miklos Szeredi05c97842005-11-20 17:05:07 +00002622005-11-20 Miklos Szeredi <miklos@szeredi.hu>
263
264 * Warn if API version 11 compatibility is requested
265
Miklos Szeredi9c2ccb42005-11-17 17:11:48 +00002662005-11-17 Miklos Szeredi <miklos@szeredi.hu>
267
268 * More FreeBSD merge
269
Miklos Szeredi832ee442005-11-18 21:02:36 +0000270 * fusermount: don't allow mountpoints with '\n', '\t', or '\\' in
271 them, because it corrupts /etc/mtab. Found by Thomas Biege
Miklos Szeredibac4c772005-11-23 13:35:54 +0000272 CVE-2005-3531
Miklos Szeredi832ee442005-11-18 21:02:36 +0000273
274 * libfuse: don't use system() to invoke 'fusermount -u ...'
275 because it breaks mountpoints with spaces in them into multiple
276 arguments
277
Miklos Szeredib3f99722005-11-16 13:00:24 +00002782005-11-16 Miklos Szeredi <miklos@szeredi.hu>
279
280 * Merge library part of FreeBSD port. Patch by Csaba Henk
281
Miklos Szeredi3a770472005-11-11 21:32:42 +00002822005-11-11 Miklos Szeredi <miklos@szeredi.hu>
283
284 * Use 64bit type for file handle, so the full range supported by
285 the kernel interface is available to applications
286
Miklos Szeredibcc53852005-11-10 09:54:41 +00002872005-11-10 Miklos Szeredi <miklos@szeredi.hu>
288
289 * Moved mountpoint argument checking from fuse_parse_cmdline() to
290 fuse_mount() in preparation to FreeBSD merge.
291
Miklos Szeredi4ec06812005-11-08 13:04:27 +00002922005-11-08 Miklos Szeredi <miklos@szeredi.hu>
293
294 * Remove unneeded close() from fuse_teardown(). Spotted by Csaba
295 Henk.
296
Miklos Szeredic706ad92005-11-07 15:30:48 +00002972005-11-07 Miklos Szeredi <miklos@szeredi.hu>
298
299 * Make the statfs change backwards compatible.
300
Miklos Szeredi52cb09d2005-11-07 11:59:00 +00003012005-11-06 Miklos Szeredi <miklos@szeredi.hu>
302
303 * Change ->statfs() method to use 'struct statvfs' instead of
304 'struct statfs'. This makes the API more portable since statvfs()
305 is defined by POSIX.
306
Miklos Szeredif7eec032005-10-28 13:09:50 +00003072005-10-28 Miklos Szeredi <miklos@szeredi.hu>
308
309 * Add fgetattr() method, which currently will only be called after
310 a successful call to a create() method.
311
Miklos Szeredib0b13d12005-10-26 12:53:25 +00003122005-10-26 Miklos Szeredi <miklos@szeredi.hu>
313
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000314 * Change kernel ABI version to 7.3
315
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000316 * Add ACCESS operation. This is called from the access() system
Miklos Szeredid9079a72005-10-26 15:29:06 +0000317 call if 'default_permissions' mount option is not given, and is
318 not called on kernels 2.4.*
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000319
Miklos Szeredid9079a72005-10-26 15:29:06 +0000320 * Add atomic CREATE+OPEN operation. This will only work with
321 2.6.15 (presumably) or later Linux kernels.
322
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000323 * Add ftruncate() method. This will only work with 2.6.15
324 (presumably) or later Linux kernels.
325
326 * Fix kernel module compile if kernel source and build directories
327 differ. Report and initial patch by John Eastman
328
Miklos Szeredic4c12ae2005-10-20 14:48:50 +00003292005-10-18 Miklos Szeredi <miklos@szeredi.hu>
330
331 * lib: optimize buffer reallocation in fill_dir.
332
Miklos Szeredic9daeb12005-10-17 10:19:21 +00003332005-10-17 Miklos Szeredi <miklos@szeredi.hu>
334
335 * Released 2.4.1
336
Miklos Szeredif412d072005-10-14 21:24:32 +00003372005-10-14 Miklos Szeredi <miklos@szeredi.hu>
338
Miklos Szeredi062f0e52005-10-14 21:28:21 +0000339 * libfuse: add debug for write result (by Shaun Jackman) and
340 warnings for too large read/write result
Miklos Szeredif412d072005-10-14 21:24:32 +0000341
Miklos Szeredib75d4b92005-10-11 10:12:08 +00003422005-10-11 Miklos Szeredi <miklos@szeredi.hu>
343
344 * Spelling fixes, thanks to Ioannis Barkas
345
Miklos Szeredibaab5872005-10-10 08:41:14 +00003462005-10-10 Miklos Szeredi <miklos@szeredi.hu>
347
348 * fuse_common.h: use extern "C". Thanks to Valient Gough for the
349 patch
350
Miklos Szeredi4f5df5e2005-10-07 12:39:58 +00003512005-10-07 Miklos Szeredi <miklos@szeredi.hu>
352
353 * highlevel-lib: init() and destroy() methods didn't have an
354 initialized fuse_context. Bug reported by Tim Stoakes
355
Miklos Szeredif2491122005-10-04 10:10:41 +00003562005-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi83f253e2005-10-04 05:56:01 +0000357
358 * Released 2.4.0
359
Miklos Szeredi836ab712005-10-03 14:11:59 +00003602005-10-03 Miklos Szeredi <miklos@szeredi.hu>
361
362 * Add documentation to fuse_lowlevel.h
363
364 * API cleanups:
365
366 * Remove definitions of unused FATTR_CTIME / FUSE_SET_ATTR_CTIME
367
368 * Move fuse_mount() and fuse_unmount() to fuse_common.h
369
370 * Change the return type of fuse_reply_none() from int to void.
371
Miklos Szerediaf138742005-09-30 08:49:59 +00003722005-09-30 Miklos Szeredi <miklos@szeredi.hu>
373
374 * kernel: NFS exporting leaked dentries. Bug found and fixed by
375 Akshat Aranya.
376
Miklos Szeredidb016e02005-09-29 10:06:27 +00003772005-09-29 Miklos Szeredi <miklos@szeredi.hu>
378
379 * fusermount: fix error message, when unable to open /dev/fuse.
380 Report by Balázs Pozsár
381
Miklos Szeredi35200932005-09-28 14:50:49 +00003822005-09-28 Miklos Szeredi <miklos@szeredi.hu>
383
384 * UClibc fixes from Christian Magnusson
385
Miklos Szeredi8eddf642005-09-27 08:58:26 +00003862005-09-27 Miklos Szeredi <miklos@szeredi.hu>
387
388 * Added NAME="%k" to util/udev.rules. Fix by Mattias Wadman.
389
Miklos Szerediedec95c2005-09-26 10:22:22 +00003902005-09-26 Miklos Szeredi <miklos@szeredi.hu>
391
Miklos Szeredi39851ac2005-09-26 11:17:50 +0000392 * Released 2.4.0-rc1
393
3942005-09-26 Miklos Szeredi <miklos@szeredi.hu>
395
Miklos Szerediedec95c2005-09-26 10:22:22 +0000396 * fusermount: allow user umount in the case when /etc/mtab is a
397 symlink to /proc/mounts. Reported by Balázs Pozsár.
398
Miklos Szeredi6becf0b2005-09-23 11:25:28 +00003992005-09-23 Miklos Szeredi <miklos@szeredi.hu>
400
Miklos Szeredi8722dd22005-09-23 13:34:44 +0000401 * Check for special node ID values in lookup and creation
Miklos Szeredi6becf0b2005-09-23 11:25:28 +0000402
Miklos Szeredif45f3c12005-09-22 15:14:27 +00004032005-09-22 Miklos Szeredi <miklos@szeredi.hu>
404
405 * Slight optimization in returning EINVAL error in case of an open
406 with O_DIRECT flag.
407
Miklos Szeredi670d07a2005-09-20 11:36:32 +00004082005-09-20 Miklos Szeredi <miklos@szeredi.hu>
409
410 * Remove '--enable-auto-modprobe' configure flag. Module
411 auto-loading is now handled by the kernel.
412
Miklos Szeredid51fca12005-09-15 12:51:00 +00004132005-09-15 Miklos Szeredi <miklos@szeredi.hu>
414
415 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
416 Help from Jens M. Noedler.
417
Miklos Szeredi7e7530d2005-09-14 15:20:26 +00004182005-09-14 Miklos Szeredi <miklos@szeredi.hu>
419
420 * Add memory cleanup on thread exit
421
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +00004222005-09-13 Miklos Szeredi <miklos@szeredi.hu>
423
424 * Set umask to zero in fusexmp and fusexmp_fh, so that
425 files/directories are created with the requested mode.
426
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +00004272005-09-12 Miklos Szeredi <miklos@szeredi.hu>
428
429 * Don't ignore read error in multithreaded loop
430
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +00004312005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000432
Miklos Szeredi2277ecc2005-09-08 15:34:44 +0000433 * Released 2.4.0-pre2
434
4352005-09-08 Miklos Szeredi <miklos@szeredi.hu>
436
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000437 * Revert lock and access operations. Postpone these until 2.5.
438
4392005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000440
441 * Fix compile warning on 2.6.13 and later
442
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +0000443 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +0000444
Miklos Szeredi77ccf652005-08-19 14:40:27 +00004452005-08-19 Miklos Szeredi <miklos@szeredi.hu>
446
447 * lib: always refresh directory contents after rewinddir() to
448 conform to SUS. Bug found by John Muir.
449
Miklos Szeredia1482422005-08-14 23:00:27 +00004502005-08-15 Miklos Szeredi <miklos@szeredi.hu>
451
Miklos Szeredic43f9412005-08-15 15:10:48 +0000452 * Released 2.4.0-pre1
453
4542005-08-14 Miklos Szeredi <miklos@szeredi.hu>
455
Miklos Szeredia1482422005-08-14 23:00:27 +0000456 * lib: cleaned up (or messed up, depending on your POV) the low
457 level library API. Hopefully this is close to the final form.
458
Miklos Szeredicc1b97c2005-08-05 10:35:26 +00004592005-08-05 Miklos Szeredi <miklos@szeredi.hu>
460
461 * fusermount: don't allow empty mountpoint argument, which defeats
462 automatic umounting in fuse_main(). Bugreport by Václav Jůza
463
Miklos Szeredif6e0ec62005-08-03 09:11:06 +00004642005-08-03 Miklos Szeredi <miklos@szeredi.hu>
465
466 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
467 option is used (Paul Alfille).
468
Miklos Szeredi6c0209a2005-08-02 13:31:28 +00004692005-08-02 Miklos Szeredi <miklos@szeredi.hu>
470
471 * highlevel-lib: added mount options "attr_timeout" and
472 "entry_timeout". These options control the length of time file
473 attributes and entries (names) are cached. Both default to 1.0
474 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000475
476 * kernel: correctly handle zero timeout for attributes and entries
477
Miklos Szeredi56a61f02005-08-01 10:42:25 +00004782005-08-01 Miklos Szeredi <miklos@szeredi.hu>
479
480 * Added missing symbols to versionscript (Joshua J. Berry)
481
Miklos Szeredie77cc072005-08-01 11:58:51 +0000482 * kernel: implement two flags, open can set: 'direct_io' and
483 'keep_cache'. These correspond exactly to mount options
484 'direct_io' and 'kernel_cache', but allow a per-open setting.
485
486 * Move 'direct_io' and 'kernel_cache' mount option handling to
487 userspace. For both mount options, if the option is given, then
488 the respective open flag is set, otherwise the open flag is left
489 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +0000490
Miklos Szeredi31066bb2005-08-01 14:49:31 +0000491 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000492
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +00004932005-07-28 Miklos Szeredi <miklos@szeredi.hu>
494
495 * kernel: invalidate attributes for read/readdir/readlink
496 operations
497
498 * kernel: detect newer UML kernels
499
Miklos Szeredibfb99462005-07-26 11:07:55 +00005002005-07-26 Miklos Szeredi <miklos@szeredi.hu>
501
502 * Make the installation path of fuse.ko and mount.fuse
503 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
504 environment variables. Requirement and help from Csaba Henk.
505
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +00005062005-07-22 Miklos Szeredi <miklos@szeredi.hu>
507
508 * Fix bug, that causes filesystem requests to hang when unique
509 request counter becomes negative. This happens after
510 2,147,483,648 operations, so most people won't care. Thanks to
511 Franco Broi for the report and testing.
512
Miklos Szeredi9b813af2005-07-21 07:59:37 +00005132005-07-21 Miklos Szeredi <miklos@szeredi.hu>
514
515 * Don't change mtime/ctime/atime to local time on read/write.
516 Bug reported by Ben Grimm
517
518 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
519 Magnusson
520
521 * fusermount: use getopt_long() for option parsing. It allows the
522 use of '--' to stop argument scanning, so fusermount can now
523 operate on directories whose names begin with a '-'. Patch by
524 Adam Connell
525
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00005262005-07-15 Miklos Szeredi <miklos@szeredi.hu>
527
528 * fusermount: add '-v', '--version' and '--help' options
529
530 * add inode based API
531
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00005322005-07-12 Miklos Szeredi <miklos@szeredi.hu>
533
534 * lib: don't block signals in worker threads. Problem noticed by
535 Usarin Heininga
536
Miklos Szeredic902a852005-07-07 12:35:37 +00005372005-07-07 Miklos Szeredi <miklos@szeredi.hu>
538
539 * lib: don't allow both 'allow_other' and 'allow_root' options to
540 be given
541
Miklos Szeredi437d8112005-07-06 09:14:20 +00005422005-07-06 Miklos Szeredi <miklos@szeredi.hu>
543
544 * fusermount: check if mountpoint is empty (only '.' and '..' for
545 directories, and size = 0 for regular files). If "nonempty"
546 option is given, omit this check. This is useful, so users don't
547 accidentally hide data (e.g. from backup programs). Thanks to
548 Frank van Maarseveen for pointing this out.
549
550 * kernel: check if mandatory mount options ('fd', 'rootmode',
551 'user_id', 'group_id') are all given
552
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000553 * lib: simplify 'readdir_ino' handling
554
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000555 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
556
Miklos Szeredibb9f5172005-07-03 18:03:11 +00005572005-07-03 Miklos Szeredi <miklos@szeredi.hu>
558
559 * kernel: clean up 'direct_io' code
560
Miklos Szeredie1bcece2005-06-28 10:37:06 +00005612005-06-28 Miklos Szeredi <miklos@szeredi.hu>
562
563 * Add 'mount.fuse' written by Petr Klima
564
Miklos Szeredi866826d2005-06-28 12:22:57 +0000565 * '/dev/fuse' is created by 'make install' if does not yet exist
566
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00005672005-06-20 Miklos Szeredi <miklos@szeredi.hu>
568
569 * Fix UCLIBC compile error. Patch by Christian Magnusson
570
Miklos Szerediec12fad2005-06-08 10:26:34 +00005712005-06-08 Miklos Szeredi <miklos@szeredi.hu>
572
573 * Enable the auto-loading of the module via access to the
574 corresponding device file. Patch by Takashi Iwai.
575
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000576 * Allow mounting a regular file (over a regular file) for
577 unprivleged users.
578
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000579 * Do not create temporary device file. Require "/dev/fuse" to
580 exist, and be readable/writable by the mounting user.
581
Miklos Szeredi46960ce2005-06-02 09:05:00 +00005822005-06-02 Miklos Szeredi <miklos@szeredi.hu>
583
Miklos Szeredi56478552005-06-02 10:29:00 +0000584 * Released 2.3.0
585
5862005-06-02 Miklos Szeredi <miklos@szeredi.hu>
587
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000588 * Fix serious information leak: if the filesystem returns a short
589 byte count to a read request, and there are non-zero number of
590 pages which are not filled at all, these pages will not be zeroed.
591 Hence the user can read out previous memory contents. Found by
592 Sven Tantau.
593
Miklos Szeredi33be22d2005-05-27 09:12:43 +00005942005-05-27 Miklos Szeredi <miklos@szeredi.hu>
595
596 * Add "readdir_ino" mount option, which tries to fill in the d_ino
597 field in struct dirent. This mount option is ignored if "use_ino"
598 is used. It helps some programs (e.g. 'pwd' used over NFS from a
599 non-Linux OS). Patch by David Shaw.
600
Miklos Szeredif94e0102005-05-12 14:56:34 +00006012005-05-12 Miklos Szeredi <miklos@szeredi.hu>
602
Miklos Szeredieb009c42005-05-12 15:01:17 +0000603 * Released 2.3-rc1
604
6052005-05-12 Miklos Szeredi <miklos@szeredi.hu>
606
Miklos Szeredif94e0102005-05-12 14:56:34 +0000607 * File save in krusader and other editors doesn't work with sshfs,
608 because open() is interrupted by a periodic signal, and open()
609 restarts forever, without any progress. This could just be fixed
610 in open(), but the problem is more generic: if signals are
611 received more often than the filesystem can get the request to
612 userspace, it will never finish. This is probably only a
613 theoretical problem, nevertheless I'm removing the possibility to
614 interrupt requests with anything other than SIGKILL, even before
615 being sent to userspace. Bugreport by Eduard Czimbalmos.
616
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00006172005-05-09 Miklos Szeredi <miklos@szeredi.hu>
618
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000619 * libfuse: add "tree_lock" rwlock, that is locked for write in
620 rename, unlink and rmdir, and locked for read in all other
621 operations. This should fix the rename/release race reported by
622 Valient Gough and others. The solution is very coarse, a finer
623 grained locking scheme could be implemented, but it would be much
624 more complex. Let's see whether this is good enough.
625
6262005-05-09 Miklos Szeredi <miklos@szeredi.hu>
627
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000628 * Released 2.3-pre7
629
Miklos Szeredi38009022005-05-08 19:47:22 +00006302005-05-08 Miklos Szeredi <miklos@szeredi.hu>
631
632 * Better fix for out of order FORGET messages. Now the
633 LOOKUP/FORGET messages are balanced exactly (one FORGET can
634 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000635 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000636 compatible.
637
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00006382005-05-06 Miklos Szeredi <miklos@szeredi.hu>
639
640 * Fix abort for out of order FORGET messages. Again. Spotted by
641 Franco Broi again. Sorry :)
642
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00006432005-04-29 Miklos Szeredi <miklos@szeredi.hu>
644
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000645 * Released 2.3-pre6
646
6472005-04-29 Miklos Szeredi <miklos@szeredi.hu>
648
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000649 * Make fusermount work with fuse kernel modules not yet supporting
650 the "group_id" option (added for the purpose of stricter
651 permission checking).
652
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00006532005-04-28 Miklos Szeredi <miklos@szeredi.hu>
654
655 * Check for hard-linked directories in lookup. This could cause
656 problems in the VFS, which assumes that such objects never exist.
657
658 * Make checking of permission for other users more strict. Now
659 the same privilege is required for the mount owner as for ptrace
660 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000661
Miklos Szeredi3efcb562005-04-23 13:34:29 +00006622005-04-23 Miklos Szeredi <miklos@szeredi.hu>
663
664 * Released 2.3-pre5
665
Miklos Szeredid001bf92005-04-22 07:54:11 +00006662005-04-22 Miklos Szeredi <miklos@szeredi.hu>
667
668 * Add -msoft-float to kernel module compile flags for 2.4.X. This
669 is needed on certain architectures. Report from Chris Kirby
670
671 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
672 Reported by David Shaw
673
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000674 * Remove "allow_root" option from kernel module, and implement
675 it's functionality in the library
676
677 * Fix Oops caused by premature release of fuse_conn. Clean up
678 related code, to be more readable
679
Miklos Szeredif9137452005-04-23 10:59:44 +0000680 * Sendfile should not use page cache if "direct_io" mount option
681 is given
682
Miklos Szeredib7640d22005-04-08 15:15:28 +00006832005-04-08 Miklos Szeredi <miklos@szeredi.hu>
684
685 * Fix Oops in case of nfs export. Spotted by David Shaw
686
Miklos Szeredi89814a12005-04-08 16:39:09 +0000687 * Fix another Oops in case of write over nfs with direct_io turned
688 on. Again spotted by David Shaw
689
Miklos Szerediab974562005-04-07 15:40:21 +00006902005-04-07 Miklos Szeredi <miklos@szeredi.hu>
691
Miklos Szeredi432d6182005-04-07 15:56:13 +0000692 * Released 2.3-pre4
693
6942005-04-07 Miklos Szeredi <miklos@szeredi.hu>
695
Miklos Szerediab974562005-04-07 15:40:21 +0000696 * lib: finalized new readdir() interface, which now supersedes the
697 getdir() method.
698
Miklos Szeredi30e093a2005-04-03 17:44:54 +00006992005-04-03 Miklos Szeredi <miklos@szeredi.hu>
700
701 * Released 2.3-pre3
702
7032005-04-03 Miklos Szeredi <miklos@szeredi.hu>
704
705 * Implement backward compatibility with version 5 kernel ABI
706
Miklos Szeredi18fce982005-04-01 21:07:35 +00007072005-04-01 Miklos Szeredi <miklos@szeredi.hu>
708
709 * Released 2.3-pre2
710
7112005-04-01 Miklos Szeredi <miklos@szeredi.hu>
712
713 * kernel: fix dirent offset handling
714
715 * lib: add readdir and releasedir methods
716
717 * lib: use fh field of fuse_file_info in opendir, readdir,
718 releasedir and fsyncdir methods
719
720 * lib: check kernel API version and bail out of it's old. This
721 will be properly fixed in the next release
722
7232005-03-31 Miklos Szeredi <miklos@szeredi.hu>
724
725 * Released 2.3-pre1
726
Miklos Szeredieab72ef2005-03-31 19:59:12 +00007272005-03-31 Miklos Szeredi <miklos@szeredi.hu>
728
729 * kernel API: add padding to structures, so 64bit and 32bit
730 compiler will return the same size
731
732 * kernel API: add offset field to fuse_dirent. This will allow
733 more sophisticated readdir interface for userspace
734
735 * kernel API: change major number to 6
736
737 * kernel: fix warnings on 64bit archs
738
739 * kernel: in case of API version mismatch, return ECONNREFUSED
740
Miklos Szeredi407e6a72005-03-25 12:19:43 +00007412005-03-24 Miklos Szeredi <miklos@szeredi.hu>
742
743 * kernel: trivial cleanups
744
Miklos Szeredi4283ee72005-03-21 12:09:04 +00007452005-03-21 Miklos Szeredi <miklos@szeredi.hu>
746
747 * Add fsyncdir() operation
748
Miklos Szeredid17da462005-03-21 11:47:04 +00007492005-03-19 Miklos Szeredi <miklos@szeredi.hu>
750
751 * kernel: add locking to background list (fixes previous fix)
752
7532005-03-18 Miklos Szeredi <miklos@szeredi.hu>
754
755 * kernel: fix bug which could cause leave busy inodes after
756 unmount, and Oops.
757
7582005-03-08 Miklos Szeredi <miklos@szeredi.hu>
759
760 * examples: add -lpthread to link flags to work around valgrind
761 quirk
762
763 * lib: don't exit threads, so cancelation doesn't cause segfault
764
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00007652005-03-04 Miklos Szeredi <miklos@szeredi.hu>
766
767 * kernel: fix nasty bug which could cause an Oops under certain
768 situations. Found by Magnus Johansson
769
Miklos Szeredif43f0632005-02-28 11:46:56 +00007702005-02-28 Miklos Szeredi <miklos@szeredi.hu>
771
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000772 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000773 permission checking in getdir() is too late. Thanks to Usarin
774 Heininga for pointing out this deficiency
775
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000776 * libfuse: added init() and destroy() methods to fuse_operations
777
Miklos Szeredif43f0632005-02-28 11:46:56 +0000778 * kernel: llseek() method for files and directories made explicit
779
780 * kernel: fixed inode leak in NFS export in case of nodeid
781 wrapping
782
Miklos Szeredied3c97c2005-02-15 17:04:50 +00007832005-02-15 Miklos Szeredi <miklos@szeredi.hu>
784
785 * libfuse: clean up some unitialized memory found with valgrind
786
Miklos Szeredi47c52982005-02-23 09:27:38 +0000787 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
788 explicitly linked libpthread for applications
789
Miklos Szeredia7169412005-02-10 07:35:05 +00007902005-02-10 Miklos Szeredi <miklos@szeredi.hu>
791
792 * fusermount: set umask, otherwise /etc/mtab will have
793 unpredictable permission. Spotted by Jindrich Kolorenc
794
795 * fusermount: set owner and group of /etc/mtab to original values
796 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000797
798 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000799
Miklos Szeredib92d9782005-02-07 16:10:49 +00008002005-02-07 Miklos Szeredi <miklos@szeredi.hu>
801
802 * Cleaned up directory reading (temporary file is not used)
803
Miklos Szerediff30a6c2005-02-02 10:53:59 +00008042005-02-02 Miklos Szeredi <miklos@szeredi.hu>
805
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000806 * Released 2.2
807
8082005-02-02 Miklos Szeredi <miklos@szeredi.hu>
809
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000810 * Fix possible race when operation is interrupted
811
Miklos Szeredi7a983952005-01-28 09:58:19 +00008122005-01-28 Miklos Szeredi <miklos@szeredi.hu>
813
Miklos Szeredie5183742005-02-02 11:14:04 +0000814 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000815
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00008162005-01-26 Miklos Szeredi <miklos@szeredi.hu>
817
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000818 * Released 2.2-pre6
819
8202005-01-26 Miklos Szeredi <miklos@szeredi.hu>
821
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000822 * Fix bug in link() operation which caused the wrong path to be
823 passed as the first argument. Found by Anton Altaparmakov
824
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00008252005-01-21 Miklos Szeredi <miklos@szeredi.hu>
826
827 * LIB: fix double reply in readdir operation
828
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000829 * fusermount: fix uid checking bug. Patch by Adam Connell
830
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000831 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000832 Patch by Keshava Gowda
833
Miklos Szeredi64074142005-01-20 08:48:11 +00008342005-01-20 Miklos Szeredi <miklos@szeredi.hu>
835
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000836 * KERNEL: provide correct llseek semantics for fuse device (fixes
837 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
838
8392005-01-20 Miklos Szeredi <miklos@szeredi.hu>
840
Miklos Szeredi64074142005-01-20 08:48:11 +0000841 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
842
Miklos Szeredi1adb2272005-01-18 21:19:58 +00008432005-01-18 Miklos Szeredi <miklos@szeredi.hu>
844
845 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
846 and RELEASEDIR. This ends the ugly hack of passing a file
847 descriptor to the kernel, and actually makes the code simpler.
848
Miklos Szeredi7db35c02005-01-17 09:46:28 +00008492005-01-17 Miklos Szeredi <miklos@szeredi.hu>
850
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000851 * Released 2.2-pre4
852
8532005-01-17 Miklos Szeredi <miklos@szeredi.hu>
854
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000855 * fusermount: remove capability setting, which was the cause of
856 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000857 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000858
Miklos Szeredidbe0f652005-01-15 14:32:56 +00008592005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000860
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000861 * fix compilation on 2.4 kernels (reported by Valient Gough)
862
863 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000864
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000865 * fusermount: improve parsing of /etc/fuse.conf
866
8672005-01-13 Miklos Szeredi <miklos@szeredi.hu>
868
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000869 * Remove 'mount_max' and 'user_allow_other' module options. These
870 are now checked by fusermount, and can be set in /etc/fuse.conf
871
872 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
873
Miklos Szeredi81394522005-01-11 14:24:18 +00008742005-01-11 Miklos Szeredi <miklos@szeredi.hu>
875
876 * KERNEL: fix possible inode allocation problem, where
877 sizeof(struct inode) is not aligned (found by Mike Waychison)
878
879 * KERNEL: use new follow_link/put_link methods
880
881 * KERNEL: cosmetic fixes
882
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00008832005-01-10 Miklos Szeredi <miklos@szeredi.hu>
884
885 * Released 2.2-pre3
886
8872005-01-10 Miklos Szeredi <miklos@szeredi.hu>
888
889 * Add missing code that was accidently left out
890
Miklos Szeredi8c7da232005-01-09 12:27:41 +00008912005-01-09 Miklos Szeredi <miklos@szeredi.hu>
892
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000893 * Released 2.2-pre2
894
8952005-01-09 Miklos Szeredi <miklos@szeredi.hu>
896
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000897 * Change "uid" mount option to "user_id" to avoid confusion with a
898 mount option "uid" commonly used by many filesystems
899
9002005-01-09 Miklos Szeredi <miklos@szeredi.hu>
901
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000902 * Released 2.2-pre1
903
9042005-01-09 Miklos Szeredi <miklos@szeredi.hu>
905
906 * If FUSE is configured in the kernel, don't build it by default
907
Miklos Szeredi2a927272005-01-07 11:14:15 +00009082005-01-07 Miklos Szeredi <miklos@szeredi.hu>
909
910 * Compile fix by Christian Magnusson
911
Miklos Szeredib6220192005-01-05 16:19:10 +00009122005-01-05 Miklos Szeredi <miklos@szeredi.hu>
913
914 * Fix compilation for 2.6.{0-5} kernels
915
Miklos Szeredi0f62d722005-01-04 12:45:54 +00009162005-01-04 Miklos Szeredi <miklos@szeredi.hu>
917
918 * KERNEL: if request is interrupted, still keep reference to used
919 inode(s) and file, so that FORGET and RELEASE are not sent until
920 userspace finishes the request.
921
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000922 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
923 request with the same information, which is more flexible,
924 simpler, works on embedded systems.
925
Miklos Szeredi0f62d722005-01-04 12:45:54 +00009262004-12-16 Miklos Szeredi <miklos@szeredi.hu>
927
928 * KERNEL ABI: update interface to make it independent of type
929 sizes. This will help on 64 bit architectures which can run
930 legacy 32 bit applications.
931
932 * KERNEL ABI: add "len" field to request headers. This will allow
933 sending/receiving requests in multiple chunks.
934
935 * KERNEL: handle file type change more intelligently
936
937 * LIB: "-o debug" option should disable backgrounding (fix by
938 Fabien Reygrobellet)
939
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00009402004-12-13 Miklos Szeredi <miklos@szeredi.hu>
941
942 * KERNEL: invalidate dentry/attributes if interrupted request
943 could leave filesystem in an unknown state.
944
Miklos Szeredie56818b2004-12-12 11:45:24 +00009452004-12-12 Miklos Szeredi <miklos@szeredi.hu>
946
947 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
948 These will cause some regressions, but stability is considered
949 more important. If any of these features turns out to be
950 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000951
Miklos Szeredie56818b2004-12-12 11:45:24 +0000952 * Make all requests interruptible (only with SIGKILL currently).
953 This can be used to break any deadlock produced by the userspace
954 filesystem accessing it's own exported files. The RELEASE request
955 is special, because if it's interrupted before sending it to
956 userspace it is still sent, but the reply is not awaited.
957
958 * If request is interrupted before being sent to userspace, and if
959 it hasn't yet got any side effects, it is always restarted,
960 regardless of the SA_RESTART flag. This makes these interruptions
961 transparent to the process.
962
963 * Remove shared-writable mmap support, which was prone to an
964 out-of-memory deadlock situation
965
966 * Remove INVALIDATE userspace initiated request
967
968 * Make readpages() synchronous. Asynchronous requests are
969 deadlock prone, since they cannot be interrupted.
970
971 * Add readv/writev support to fuse device operations
972
973 * Remove some printks, which userspace FS can use for a DoS
974 against syslog
975
976 * Remove 'large_read' mount option from 2.6 in kernel, check it in
977 fusermount instead
978
979 * LIB: improve compatibility with a fuse.h header installed in
980 ${prefix}/include which in turn includes the real header.
981
982 * LIB: improve compatibility by defining fuse_main() (which is now
983 not used), so old configure scripts find it.
984
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00009852004-12-10 Miklos Szeredi <miklos@szeredi.hu>
986
987 * When mounting on a subdirectory of / don't duplicate slashes at
988 the beggining of path (spotted by David Shaw)
989
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00009902004-12-09 Miklos Szeredi <miklos@szeredi.hu>
991
992 * Fix bug causing garbage in mount options (spotted by David Shaw)
993
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00009942004-12-07 Miklos Szeredi <miklos@szeredi.hu>
995
996 * Add 'writepage' flag to 'fuse_file_info'.
997
998 * More comments in fuse.h
999
Miklos Szeredif458b8c2004-12-07 16:46:42 +00001000 * Get rid of double underscores
1001
Miklos Szeredi799993c2004-12-04 21:20:05 +000010022004-12-04 Miklos Szeredi <miklos@szeredi.hu>
1003
1004 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
1005
1006 * helper.c: add -ho option, which only displays the options not
1007 the usage header. This can be used by filesystems which have
1008 their own options.
1009
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +000010102004-12-03 Miklos Szeredi <miklos@szeredi.hu>
1011
1012 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
1013 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
1014 including the fuse header
1015
1016 * Add binary compatibility to 2.1 version of library with symbol
1017 versioning
1018
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +000010192004-12-03 Miklos Szeredi <miklos@szeredi.hu>
1020
1021 * Released 2.1
1022
Miklos Szeredi039322d2004-12-01 18:39:12 +000010232004-12-01 Miklos Szeredi <miklos@szeredi.hu>
1024
1025 * kernel: clean up writing functions
1026
1027 * kernel: no allocation on write in direct_io mode
1028
Miklos Szeredib9b94cd2004-12-01 18:56:39 +00001029 * move linux/fuse.h to fuse_kernel.h
1030
Miklos Szeredi83a07442004-11-30 18:25:20 +000010312004-11-30 Miklos Szeredi <miklos@szeredi.hu>
1032
1033 * kernel: clean up reading functions
1034
Miklos Szeredi2defe5e2004-11-29 16:53:44 +000010352004-11-29 Miklos Szeredi <miklos@szeredi.hu>
1036
1037 * kernel: make readpage() uninterruptible
1038
Miklos Szeredi96dfad72004-11-30 00:00:02 +00001039 * kernel: check readonly filesystem flag in fuse_permission
1040
1041 * lib: don't die if version file not found and new style device
1042 exists
1043
1044 * lib: add '-r' option, which is short for '-o ro'
1045
1046 * fusermount: simplify device opening
1047
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00001048 * kernel: when direct_io is turend on, copy data directly to
1049 destination without itermediate buffer. More efficient and safer,
1050 since no allocation is done.
1051
1052 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +00001053
1054 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +00001055
Miklos Szeredifb28c5e2004-11-26 12:15:06 +000010562004-11-26 Miklos Szeredi <miklos@szeredi.hu>
1057
1058 * libfuse API change: open, read, write, flush, fsync and release
1059 are passed a 'struct fuse_file_info' pointer containing the open
1060 flags (open and release), and the file handle. Verion changed to
1061 3.0.
1062
Miklos Szeredia25d4c22004-11-23 22:32:16 +000010632004-11-23 Miklos Szeredi <miklos@szeredi.hu>
1064
1065 * More cleanups in the kernel
1066
1067 * The 10,229 charater device number has been assigned for FUSE
1068
1069 * Version file checking fix (reported by Christian Magnusson)
1070
1071 * fusermount: opening the fuse device now doesn't need /sys.
1072
1073 * Optimize reading by controlling the maximum readahead based on
1074 the 'max_read' mount option
1075
1076 * fixes for UCLIBC (Christian Magnusson)
1077
Miklos Szeredi13ed4822004-11-20 11:12:21 +000010782004-11-19 Miklos Szeredi <miklos@szeredi.hu>
1079
1080 * Cleaned up kernel in preparation for merge into mainline:
1081
1082 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
1083
1084 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
1085
1086 * __user annotations for sparse
1087
1088 * allocate individual pages instead of kmalloc in fuse_readdir,
1089 fuse_read and fuse_write.
1090
1091 * Fix NFS export in case "use_ino" mount option is given
1092
Miklos Szeredif3845c42004-11-20 11:18:34 +00001093 * Make libfuse and fusermount compatible with future versions
1094
1095 * fusermount: properly add mount options to /etc/mtab
1096
10972004-11-15 Miklos Szeredi <miklos@szeredi.hu>
1098
1099 * fusermount: do not resolve last component of mountpoint on if it
1100 is '.' or '..'. This new path resolvation is now done on mount as
1101 well as unmount. This enables relative paths to work on unmount.
1102
1103 * fusermount: parse common mount options like "ro", "rw", etc...
1104
1105 * Allow module params to be changed through sysfs
1106
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +000011072004-11-14 Miklos Szeredi <miklos@szeredi.hu>
1108
1109 * Released 2.1-pre1
1110
11112004-11-14 Miklos Szeredi <miklos@szeredi.hu>
1112
1113 * Fix bug in fuse_readpages() causing Oops in certain situations.
1114 Bug found by Vincenzo Ciancia.
1115
1116 * Fix compilation with kernels versions > 2.6.9.
1117
Miklos Szeredi3a6ea062004-11-11 10:33:58 +000011182004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +00001119
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00001120 * Check kernel interface version in fusermount to prevent
1121 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +00001122
Miklos Szeredi3d60e762004-11-11 14:44:04 +00001123 * No need to allocate fuse_conn until actual mount happens
1124
1125 * Fix potential race between umount and fuse_invalidate
1126
1127 * Check superblock of proc file in addition to inode number
1128
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00001129 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +00001130
Miklos Szeredi51ec1032004-11-10 11:52:26 +000011312004-11-10 Miklos Szeredi <miklos@szeredi.hu>
1132
1133 * Separate configure for the kernel directory
1134
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00001135 * Don't allow write to return more than 'count'
1136
1137 * Extend kernel interface for future use
1138
Miklos Szeredi51ec1032004-11-10 11:52:26 +000011392004-11-09 Miklos Szeredi <miklos@szeredi.hu>
1140
1141 * Fix 'makeconf.sh' to use autoreconf if available
1142
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +000011432004-11-08 Miklos Szeredi <miklos@szeredi.hu>
1144
Miklos Szeredid507c732004-11-08 17:32:25 +00001145 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
1146 compatibility with earlier versions. To compile earier versions
1147 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
1148 Do not use the "use_ino" mount flag with filesystems compiled with
1149 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +00001150
1151 * Add pkg-config support. To compile a FUSE based filesystem you
1152 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
1153 or similar. Note, that the PKG_CONFIG_PATH environment variable
1154 usually needs to be set to "/usr/local/lib/pkgconfig".
1155
1156 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +00001157
Miklos Szeredia13d9002004-11-02 17:32:03 +000011582004-11-02 Miklos Szeredi <miklos@szeredi.hu>
1159
1160 * Added "use_ino" mount option. This enables the filesystems to
1161 set the st_ino field on files
1162
Miklos Szeredib1ab8b52004-11-01 10:57:41 +000011632004-11-01 Miklos Szeredi <miklos@szeredi.hu>
1164
1165 * Fix compile problems with ancient (<=2.4.18) kernels (reported
1166 by Jeremy Smith)
1167
Miklos Szeredi874e3c12004-11-01 23:15:20 +00001168 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
1169
1170 * Clear the 'exited' flag when mail loop is finished
1171
Miklos Szeredie989f0d2004-10-28 20:24:58 +000011722004-10-28 Miklos Szeredi <miklos@szeredi.hu>
1173
1174 * Make xattr functions work under 2.6 (bug found by Vincenzo
1175 Ciancia)
1176
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +000011772004-10-26 Miklos Szeredi <miklos@szeredi.hu>
1178
1179 * Reset request in fuse_flush() (bugreport by David Shaw)
1180
Miklos Szeredi5dc8a802004-10-21 09:35:10 +000011812004-10-21 Miklos Szeredi <miklos@szeredi.hu>
1182
Miklos Szeredi0e70aa72004-10-21 16:24:29 +00001183 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001184 error code
1185
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001186 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001187 make it easier to implement a custom event loop.
1188
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001189 * Use daemon() call to background the filesystem after mounting.
1190 This function closes the standard input, output and error and
1191 changes the current working directory to "/".
1192
Miklos Szeredi127d49b2004-10-14 13:33:39 +000011932004-10-14 Miklos Szeredi <miklos@szeredi.hu>
1194
1195 * Released 1.9
1196
Miklos Szeredid45baf42004-10-10 07:56:12 +000011972004-10-09 Miklos Szeredi <miklos@szeredi.hu>
1198
1199 * Don't allow fuse_flush() to be interrupted (bug found by David
1200 Shaw)
1201
Miklos Szeredi1f18db52004-09-27 06:54:49 +000012022004-09-27 Miklos Szeredi <miklos@szeredi.hu>
1203
1204 * Add PID to fuse_context. Patch by Steven James
1205
Miklos Szeredi1eea0322004-09-27 18:50:11 +00001206 * Change file handle type to 'unsigned long' in kernel interface
1207
Miklos Szeredid169f312004-09-22 08:48:26 +000012082004-09-22 Miklos Szeredi <miklos@szeredi.hu>
1209
1210 * A slight API change: fuse_get_context() doesn't need the "fuse"
1211 pointer, but the returned context contains it instead. The
1212 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +00001213
1214 * Fix mounting and umounting FUSE filesystem under another FUSE
1215 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +00001216
Miklos Szeredic2309912004-09-21 13:40:38 +000012172004-09-21 Miklos Szeredi <miklos@szeredi.hu>
1218
1219 * Fix deadlock in case of memory allocation failure. Patch by
1220 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +00001221
Miklos Szeredib2cf9562004-09-16 08:42:40 +000012222004-09-16 Miklos Szeredi <miklos@szeredi.hu>
1223
1224 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +00001225
Miklos Szeredi65afea12004-09-14 07:13:45 +000012262004-09-14 Miklos Szeredi <miklos@szeredi.hu>
1227
1228 * Check temporary file creation failure in do_getdir(). Bug
1229 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001230
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +000012312004-09-13 Miklos Szeredi <miklos@szeredi.hu>
1232
1233 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +00001234
1235 * Make requests non-interruptible so race with FORGET is avoided.
1236 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +00001237
1238 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001239
Miklos Szeredi8b2d3332004-09-09 08:44:01 +000012402004-09-09 Miklos Szeredi <miklos@szeredi.hu>
1241
1242 * Fix bug in case two FORGETs for the same node are executed in
1243 the wrong order. Bug spotted and endured for months by Franco
1244 Broi, and logfile for solution provided by Terje Oseberg
1245
Miklos Szeredi12085102004-09-02 18:13:57 +000012462004-09-01 Miklos Szeredi <miklos@szeredi.hu>
1247
1248 * Add -D_REENTRANT to the compile flags
1249
1250 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001251
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +000012522004-08-16 Miklos Szeredi <miklos@szeredi.hu>
1253
1254 * Change release method to be non-interruptible. Fixes bug
1255 causing missing release() call when program which has opened files
1256 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +00001257
Miklos Szeredi891b8742004-07-29 09:27:49 +000012582004-07-29 Miklos Szeredi <miklos@szeredi.hu>
1259
1260 * Add fuse_invalidate() to library API
1261
Miklos Szeredi94ed76a2004-07-26 19:38:45 +000012622004-07-26 Miklos Szeredi <miklos@szeredi.hu>
1263
1264 * Check permissions in setattr if 'default_permissions' flag is
1265 set. Bug spotted by Damjan Lango
1266
Miklos Szeredid66d3942004-07-24 13:47:44 +000012672004-07-24 Miklos Szeredi <miklos@szeredi.hu>
1268
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001269 * 'large_read' mount option removed for 2.6 kernels, since the
1270 default (dynamic read size) is better
1271
1272 * Extend kernel API with file handles. A file handle is returned
1273 by open, and passed to read, write, flush, fsync and release.
1274 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +00001275
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001276 * Security changes:
1277
1278 * Change the current directory to the mountpoint before checking
1279 the permissions and mount filesystem on "."
1280
1281 * By default don't modprobe the fuse module for non-root. The old
1282 behavior can be restored with the '--enable-auto-modprobe' flag of
1283 ./configure
1284
1285 * By default don't allow shared writable mappings for non-root.
1286 The old behavior can be restored with the 'user_mmap=1' module
1287 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +00001288
Miklos Szeredibd7661b2004-07-23 17:16:29 +000012892004-07-23 Miklos Szeredi <miklos@szeredi.hu>
1290
1291 * Clean up mount option passing to fusermount and to fuse_new()
1292 BEWARE: this changes the userspace API slightly, and the command
1293 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +00001294
Miklos Szeredi58865372004-07-20 14:22:26 +000012952004-07-20 Miklos Szeredi <miklos@szeredi.hu>
1296
1297 * Optimize reading under 2.6 kernels by issuing multiple page
1298 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +00001299
Miklos Szeredi84ba0f42004-07-18 11:32:59 +000013002004-07-18 Miklos Szeredi <miklos@szeredi.hu>
1301
1302 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001303
Miklos Szeredi069c9502004-07-16 16:17:02 +000013042004-07-16 Miklos Szeredi <miklos@szeredi.hu>
1305
1306 * Separate directory entry and inode attribute validity timer
1307
1308 * New write semaphore to stop page writeback during truncate
1309
1310 * Fsync now waits for all writes to complete before sending the
1311 request
1312
1313 * Optimization: if a page is completely written by
1314 fuse_commit_write(), clear the dirty flag and set the uptodate
1315 flag for that page
1316
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +00001317 * Some memory cleanup at exit
1318
Miklos Szeredi2529ca22004-07-13 15:36:52 +000013192004-07-13 Miklos Szeredi <miklos@szeredi.hu>
1320
1321 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +00001322 disable the "hide if open" behavior of unlink/rename.
1323
1324 * If temporary buffer allocation fails in raw read, fall back to a
1325 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +00001326
Miklos Szeredi73798f92004-07-12 15:55:11 +000013272004-07-12 Miklos Szeredi <miklos@szeredi.hu>
1328
1329 * Fix bug in do_open() in libfuse: open count was incremented
1330 after the reply is sent so it could race with unlink/forget and
1331 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +00001332
Miklos Szeredi015fe702004-07-12 11:52:24 +000013332004-07-08 Miklos Szeredi <miklos@szeredi.hu>
1334
1335 * When performing create or remove operation, refresh the parent's
1336 attributes on next revalidate, as i_nlink (and maybe size/time)
1337 could be inacurate.
1338
1339 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
1340 pages (2.6 only)
1341
1342 * Set set_page_dirty address space operation (2.6 only)
1343
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013442004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +00001345
1346 * Minor fix in read: print debug info even if read size is zero
1347
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013482004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +00001349
1350 * Fix race between truncate and writepage (fsx-linux now runs
1351 without error)
1352
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013532004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001354
1355 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
1356 by Mattias Wadman)
1357
1358 * Added option for direct read/write (-r)
1359
1360 * Fix revalidate time setting for newly created inodes
1361
Miklos Szerediacb4d362004-07-02 16:20:45 +00001362 * Remove uid==0 check for '-x' option in fusermount (kernel checks
1363 this)
1364
1365 * fuse_main() only installs handlers for signals (out of INT, HUP,
1366 TERM, PIPE), for which no handler has yet been installed
1367
1368 * Add module option 'user_allow_other' which if set to non-zero
1369 will allow non root user to specify the 'allow_other' mount option
1370 ('-x' option of fusermount)
1371
Miklos Szeredi014d7d22004-07-02 21:22:37 +00001372 * Fix deadlock between page writeback completion and truncate
1373 (bug found by Valient Gough with the fsx-linux utility)
1374
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013752004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001376
1377 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +00001378 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
1379 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +00001380
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013812004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +00001382
1383 * Acquire inode->i_sem before open and release methods to prevent
1384 concurrent rename or unlink operations.
1385
Miklos Szeredi65cf7c72004-06-30 11:34:56 +00001386 * Make __fuse_read_cmd() read only one command. This allows
1387 multiplexing the fuse file descriptor with other event sources
1388 using select() or poll() (patch by Jeff Harris)
1389
1390 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
1391
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013922004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +00001393
1394 * Fix file offset wrap around at 4G when doing large reads
1395
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013962004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001397
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001398 * Fix memory leak in open (Valient Gough)
1399
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014002004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001401
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001402 * Add "close after delete" support to libfuse (patch by Valient
1403 Gough)
1404
1405 * Cancel all worker threads before exit in multithreaded mode
1406
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014072004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001408
1409 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001410
1411 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001412
1413 * Work with newer libtool (1.5a)
1414
1415 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001416
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014172004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001418
1419 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001420
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014212004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001422
1423 * Fix possible inode leak in userspace in case of unfinished
1424 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001425
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014262004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001427
1428 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001429
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014302004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001431
1432 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001433
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014342004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001435
1436 * Build shared library as well as static (using libtool)
1437
1438 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1439 there has not been a release with the previous minor number, and I
1440 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001441
1442 * Change fuse_main(), so that default behavior is to go into
1443 background if mount is successful. '-f' and '-d' options disable
1444 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1445 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001446
1447 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1448 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001449
1450 * Don't call getdir method from open() only from first readdir().
1451 Open is sometimes just used to store the current directory
1452 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001453
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014542004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001455
1456 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001457
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014582004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001459
1460 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001461
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014622004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001463
1464 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001465
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014662004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001467
1468 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001469
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014702004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001471
1472 * Replaced binary mount data with text options
1473
1474 * Show FUSE specific mount options in /proc/mounts
1475
1476 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1477
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014782004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001479
1480 * Check some limits so userspace won't get too big requests
1481
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014822004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001483
1484 * Kill compile warning
1485
1486 * Upgraded user-mount patch for 2.6.5
1487
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014882004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001489
1490 * Add detection of user-mode-linux to configure
1491
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014922004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001493
1494 * fixed zero size case for getxattr and listxattr
1495
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014962004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001497
1498 * new fusermount flag '-z': lazy unmount, default is not lazy
1499
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001500 * Extended attributes operations added (getxattr, setxattr,
1501 listxattr, removexattr)
1502
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015032004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001504
1505 * If filesystem doesn't define a statfs operation, then an
1506 all-zero default statfs is returned instead of ENOSYS
1507
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015082004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001509
1510 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1511
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015122004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001513
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001514 * Fix for uClinux (Christian Magnusson)
1515
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015162004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001517
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001518 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001519
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001520 * More kernel interface changes:
1521
1522 * Lookup/getattr return cache timeout values
1523
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015242004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001525
1526 * Clean up option parsing in fuse_main()
1527
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001528 * Added fuse_get() function which returns the fuse object created
1529 by fuse_main()
1530
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015312004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001532
Miklos Szeredic40748a2004-02-20 16:38:45 +00001533 * removed old way of mounting (fusermount mountpoint program)
1534
Miklos Szeredib5958612004-02-20 14:10:49 +00001535 * more kernel interface changes:
1536
1537 * added nanosecond precision to file times
1538
Miklos Szeredic40748a2004-02-20 16:38:45 +00001539 * removed interface version from mount data
1540
1541 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1542
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015432004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001544
1545 * statfs library API changed to match other methods. Since this
1546 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1547
Miklos Szeredi76f65782004-02-19 16:55:40 +00001548 * kernel interface changes follow:
1549
1550 * statfs changed to 64 bits, added 'bavail' field
1551
1552 * add generation number to lookup result
1553
1554 * optimized mknod/mkdir/symlink/link (no separate lookup is
1555 needed)
1556
1557 * rdev size increased to 32 bits for mknod
1558
1559 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001560
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015612004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001562
1563 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001564
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015652004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001566
1567 * Added user-mount.2.6.2-rc3.patch
1568
1569 * Add FS_SAFE flag to fuse filesystem
1570
1571 * fusermount should allow (un)mounting for non-root even if not
1572 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001573
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015742004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001575
1576 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001577
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015782004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001579
1580 * Added check for i_size_read/write functions to configure.in
1581 (patch by Valient Gough)
1582
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015832004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001584
1585 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001586
1587 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001588
1589 * Readpage calls flush_dcache_page() after storing data
1590
1591 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001592
1593 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001594
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015952004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001596
1597 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001598
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015992004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001600
1601 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001602
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016032004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001604
1605 * Added -q option for fusermount
1606
1607 * fuse_unmount() now uses -q option of fusermount, so no error is
1608 printed if the cause of the program exit is that the filesystem
1609 has already been unmounted
1610
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001611 * Fix i_nlink correctness after rmdir/unlink
1612
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016132004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001614
Miklos Szeredib1158392004-01-26 14:43:12 +00001615 * Released 1.1-pre2
1616
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016172004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001618
Miklos Szeredi307242f2004-01-26 11:28:44 +00001619 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001620
1621 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001622
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016232004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001624
1625 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001626
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016272004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001628
1629 * Write all pending data before a RELEASE operation
1630
1631 * Suppress 'Bad file descriptor' warning on exit
1632
1633 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001634 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001635
Miklos Szeredib1158392004-01-26 14:43:12 +00001636 * New fusermount option '-l' which enables big reads. Big reads
1637 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001638
1639 * fuse_main() can accept fusermount arguments after a '--'
1640
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016412004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001642
1643 * Support for exporting filesystem over NFS (see README.NFS)
1644
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016452004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001646
1647 * Support non-blocking writepage on 2.6. This makes FUSE behave
1648 much more nicely in low-memory situations
1649
1650 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1651 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001652
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016532004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001654
1655 * Code cleanups
1656
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016572004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001658
1659 * Released 1.1-pre1
1660
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016612004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001662
1663 * Integrated 2.6 kernel support patch by Michael Grigoriev
1664
1665 * Improvements and cleanups for 2.6 kernels
1666
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016672004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001668
Miklos Szeredie5183742005-02-02 11:14:04 +00001669 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001670
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016712003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001672
1673 * Added major+minor version to library API, and minor version to
1674 kernel API
1675
David McNab7a19caf2003-12-13 02:05:46 +000016762003-12-13 David McNab <david@rebirthing.co.nz>
1677
1678 * Implemented fsync support in examples/example.py
1679
1680 * Implemented 'fsync' and 'statfs' methods in python
1681 interface
1682
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016832003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001684
Miklos Szeredie5183742005-02-02 11:14:04 +00001685 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001686
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001687 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001688
David McNab8bf62632003-12-11 22:49:22 +000016892003-12-12 David McNab <david@rebirthing.co.nz>
1690
1691 * Added distutils support to the python module, as per standard
1692 python development practice
1693
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016942003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001695
1696 * Add file locking for mount/unmount (based on patch by Valient
1697 Gough)
1698
16992003-12-11 David McNab <david@rebirthing.co.nz>
1700
1701 * Python filesystem - was broken with python2.3, now fixed:
1702 - changed PyTuple_* calls to PySequence_*, because os.lstat
1703 is no longer returning a pure tuple
1704 - changed PyInt_Check() calls to also call PyLong_Check,
1705 to cover for cases (eg os.lstat) where longs are returned
1706 - Added support for file 'release' handling, which IMO is
1707 essential since this signals to a FS that writes to a file
1708 are complete (and therefore the file can now be disposed of
1709 meaningfully at the python filesystem's discretion)
1710 - Added '__init__' handler to base Fuse class, which allows
1711 your Python class to know the mountpoint and mount args,
1712 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001713
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001714 * General:
1715 - added 'mount.fuse' script (in util/ dir), which is meant to be
1716 symlinked from /sbin, and which allows FUSE filesystems to
1717 be mounted with the 'mount' command, and listed in fstab;
1718 also, mount arguments get passed to your filesystem
1719
1720
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017212003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001722
1723 * Fix kernel version detection (again). Bugreport by Peter Levart
1724
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017252003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001726
1727 * Applied read combining patch by Michael Grigoriev (tested by
1728 Valient Gough and Vincent Wagelaar)
1729
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017302003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001731
1732 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1733 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001734
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017352003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001736
1737 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001738
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017392003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001740
1741 * kernel version detection fix
1742
1743 * fusermount now uses "lazy" umount option
1744
1745 * fusermount can use modprobe with module-init-tools
1746
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017472003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001748
1749 * Integrated caching patch by Michael Grigoriev
1750
Miklos Szeredida4e4862003-09-08 11:14:11 +00001751 * Added "Filesystems" file with descriptions of projects using
1752 FUSE
1753
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001754 * Added patch by Michael Grigoriev to allow compliation of FUSE
1755 kernel module for 2.6 kernels
1756
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017572003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001758
1759 * And another spec-file fix by Achim Settelmeier
1760
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017612003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001762
1763 * Spec-file fix by Achim Settelmeier
1764
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017652003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001766
Miklos Szerediac361172004-11-02 19:14:14 +00001767 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001768
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017692003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001770
1771 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1772
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017732003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001774
1775 * Updated fuse.spec file (Achim Settelmeier)
1776
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017772003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001778
1779 * Version 1.0 released
1780
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017812003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001782
1783 * SuSE compilation fix by Juan-Mariano de Goyeneche
1784
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017852002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001786
1787 * The release() VFS call is now exported to the FUSE interface
1788
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017892002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001790
1791 * 64 bit file offset fixes in the fuse kernel module
1792
1793 * Added function 'fuse_exit()' which can be used to exit the main
1794 loop
1795
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017962002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001797
1798 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1799 an incompatible interface change.
1800
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018012002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001802
1803 * Portablility fix (bug reported by C. Chris Erway)
1804
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018052002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001806
1807 * Use Mark Glines' fd passing method for default operation instead
1808 of old reexec
1809
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018102002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001811
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001812 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1813
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018142002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001815
Miklos Szeredi60c23522002-10-24 09:19:43 +00001816 * fix incompatiblity with Red Hat kernels, with help from Nathan
1817 Thompson-Amato.
1818
Mark Glines65ba2192002-04-18 14:41:48 +000018192002-04-18 Mark Glines <mark@glines.org>
1820
1821 * added an alternative to fuse_mount(), called
1822 fuse_mount_ioslave(), which does not need to reexec the
1823 FUSE program.
1824 * added a small helper util needed by fuse_mount_ioslave().
1825
Mark Glines220635a2002-03-17 07:01:14 +000018262002-03-16 Mark Glines <mark@glines.org>
1827
1828 * use struct fuse_statfs everywhere possible to avoid problems
1829 with the headerfiles changing struct statfs member sizes
1830
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018312002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001832
1833 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1834
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018352002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001836
1837 * RPM support by Achim Settelmeier
1838
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018392002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001840
Miklos Szerediddc862a2002-01-09 13:46:10 +00001841 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001842
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018432002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001844
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001845 * Revaidate all path components not just the last, this means a
1846 very small performance penalty for being more up-to-date.
1847
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018482002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001849
1850 * Update and fix python interface
1851
Mark Glinesd84b39a2002-01-07 16:32:02 +000018522002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001853
Mark Glinesd84b39a2002-01-07 16:32:02 +00001854 * Added statfs() support to kernel, lib, examples, and perl!
1855
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018562001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001857
1858 * Better cross compilation support
1859
1860 * Ported to Compaq IPAQ
1861
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018622001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001863
Miklos Szeredife25def2001-12-20 15:38:05 +00001864 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001865 patch from Matt Ryan)
1866
Miklos Szeredife25def2001-12-20 15:38:05 +00001867 * Added flags to fusermount and to kernel interface to control
1868 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001869
Miklos Szeredife25def2001-12-20 15:38:05 +00001870 * Integrated fuse_set_operations() into fuse_new()
1871
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018722001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001873
1874 * Applied header protection + extern "C" patch by Roland
1875 Bauerschmidt
1876
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018772001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001878
Miklos Szeredie5183742005-02-02 11:14:04 +00001879 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001880
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018812001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001882
1883 * Cleaned up way of mounting simple filesystems.
1884
1885 * fuse_main() helper function added
1886
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018872001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001888
Miklos Szeredife25def2001-12-20 15:38:05 +00001889 * Optimized read/write operations, so that minimal copying of data
1890 is done
1891
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018922001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001893
1894 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001895
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018962001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001897
1898 * Fixed vfsmount reference leak in fuse_follow_link
1899
1900 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1901 userspace is ignored
1902
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019032001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001904
Miklos Szeredife25def2001-12-20 15:38:05 +00001905 * Started ChangeLog