blob: 3b2f2d966157817bfbcaf87c7b87b9887908ccad [file] [log] [blame]
Miklos Szeredid65cdfe2006-02-15 14:25:17 +000012006-02-15 Miklos Szeredi <miklos@szeredi.hu>
2
3 * Work around FreeBSD runtime linker "feature" which binds an old
4 version of a symbol to internal references if the symbol has more
5 than one version. This resulted in infinite recursion in
6 fuse_lowlevel_new_compat25().
7
Csaba Henkdcce3e52006-02-10 06:22:15 +000082006-02-10 Csaba Henk <csaba.henk@creo.hu>
9
10 * Refine clock_gettime() querying so that linker options
11 shall be set as it's appropriate for the target platform.
12
Miklos Szeredi390ae312006-02-10 16:44:34 +0000132006-02-09 Miklos Szeredi <miklos@szeredi.hu>
14
15 * Fix udev rule syntax. Reported by Nix
16
Miklos Szeredieb643582006-02-08 10:54:02 +0000172006-02-08 Miklos Szeredi <miklos@szeredi.hu>
18
19 * In some cases udev rule seems to be ineffective when installed
20 as 40-fuse.rules but work as 60-fuse.rules. Reported by John Hunt
21
Miklos Szeredi357529c2006-02-03 09:20:31 +0000222006-02-03 Miklos Szeredi <miklos@szeredi.hu>
23
24 * Fix compilation when build directory is different from source
25 directory. Reported by Frédéric L. W. Meunier
26
Miklos Szeredice28c7e2006-02-02 14:59:05 +0000272006-02-02 Miklos Szeredi <miklos@szeredi.hu>
28
29 * Fix even bigger bug introduced in fix for request_end() on
30 2006-01-14. Reported by Gal Rosen
31
Miklos Szeredi320abe42006-01-30 18:14:51 +0000322006-01-30 Miklos Szeredi <miklos@szeredi.hu>
33
34 * highlevel-lib: add 'auto_cache' option. This caches file data
35 based on modification time and size
36
Miklos Szeredi065f2222006-01-20 15:15:21 +0000372006-01-20 Miklos Szeredi <miklos@szeredi.hu>
38
Miklos Szeredid66b7282006-02-02 15:15:21 +000039 * Sanitize storage type and help message in mount_bsd.c. Patch
40 from Csaba Henk
41
Miklos Szeredi065f2222006-01-20 15:15:21 +000042 * fuse_opt: add new helper constants FUSE_OPT_KEY_KEEP and
43 FUSE_OPT_KEY_DISCARD
44
45 * Add options 'max_readahead', 'sync_read' and 'async_read'
46
47 * Kernel ABI version 7.6:
48
49 * Negotiate the 'max_readahead' value and 'async_read' flags with
50 userspace in the INIT method
51
52 * Add connection info to ->init() methods to both lowlevel and
53 highlevel API
54
55 * Fall back to synchronous read() behavior if either library or
56 userspace filesystem is using the old interface version. This is
57 needed so non-updated filesystems won't be confused by the
58 different read() behavior
59
602006-01-19 Miklos Szeredi <miklos@szeredi.hu>
61
62 * lib: if "fsname=" option was given, pass it to fusermount
63
64 * fuse_opt: add new fuse_opt_insert_arg() function, which is
65 needed by filesystems to implement some argument manipulations
66 correctly
67
68 * fuse_opt: fix memory leak in handling "--" option
69
702006-01-18 Miklos Szeredi <miklos@szeredi.hu>
71
72 * kernel: fix detection of case when fuse is not configured into
73 the kernel either as module or built-in
74
75 * fuse_opt.h: fix incompatibility with C++ compilers by renaming
76 'template' structure member to 'templ'. Reported by Takashi Iwai
77
78 * fuse.h: fix compatibility bugs. Patch by Yura Pakhuchiy
79
80 * kernel: support version 2.6.16 (i_sem -> i_mutex)
81
Miklos Szeredi15af1b82006-01-16 17:52:24 +0000822006-01-16 Miklos Szeredi <miklos@szeredi.hu>
83
84 * Added (again) asynchronous readpages support
85
86 * Each connection now shows up under /sys/fs/fuse/connections
87
88 * Connection attributes exported to sysfs: 'waiting' number of
89 waiting requests; 'abort' abort the connection
90
91 * Connection may be aborted through either the sysfs interface or
92 with 'umount -f mountpoint'
93
Miklos Szeredi9db5faa2006-01-14 14:47:21 +0000942006-01-14 Miklos Szeredi <miklos@szeredi.hu>
95
Miklos Szeredi75bb0de2006-01-14 18:38:54 +000096 * Released 2.5.0
97
982006-01-14 Miklos Szeredi <miklos@szeredi.hu>
99
Miklos Szeredi9db5faa2006-01-14 14:47:21 +0000100 * kernel: fix a couple of bugs
101
Miklos Szeredi68183ca2006-01-27 11:16:11 +0000102 * Order of request_end() and fuse_copy_finish() was wrong.
Miklos Szeredie0451092006-01-27 11:19:51 +0000103 Posthumous note: Franco Broi managed to exploit this, though it
Miklos Szeredi68183ca2006-01-27 11:16:11 +0000104 seemed quite impossible
Miklos Szeredi9db5faa2006-01-14 14:47:21 +0000105
106 * request_end() used request pointer after decrementing refcount
107
108 * Clearing ->connected or ->mounted connection flags could race
109 with setting other bitfields not protected with a lock
Miklos Szeredi15af1b82006-01-16 17:52:24 +0000110
Miklos Szeredia9820342006-01-10 10:54:11 +00001112006-01-10 Miklos Szeredi <miklos@szeredi.hu>
112
113 * kernel: add necessary compile flags for 2.4.X/x86_64.
114 Report from Sean Ziegeler
115
Miklos Szeredi35676b02006-01-09 10:13:28 +00001162006-01-09 Miklos Szeredi <miklos@szeredi.hu>
117
Miklos Szeredie07b1a22006-01-09 14:46:10 +0000118 * Released 2.5.0-pre2
119
1202006-01-09 Miklos Szeredi <miklos@szeredi.hu>
121
Miklos Szeredi35676b02006-01-09 10:13:28 +0000122 * Applied patch from Csaba Henk, to update mount_bsd to new
123 fuse_mount() semantics
124
Miklos Szeredib32c79b2006-01-09 11:14:29 +0000125 * Ignore auto,noauto,... options in mount.fuse. Reported by Frank
126 Steiner and Don Taber
127
Miklos Szeredicb075c82006-01-09 11:33:04 +0000128 * fusermount: add 'dirsync' mount option
129
Miklos Szerediad005972006-01-07 10:14:34 +00001302006-01-07 Miklos Szeredi <miklos@szeredi.hu>
131
132 * Improved help reporting and added version reporting to library
133
Miklos Szeredi0af762a2006-01-06 09:47:54 +00001342006-01-06 Miklos Szeredi <miklos@szeredi.hu>
135
136 * Change working directory to "/" even if running in the
137 foreground. Patch from Jonathan Brandmeyer
138
Miklos Szeredi95da8602006-01-06 18:29:40 +0000139 * Changed lots of functions to use 'struct fuse_args' instead of
140 separate argc and argv
141
142 * Added fuse_parse_cmdline(), fuse_set_signal_handlers() and
143 fuse_remove_signal_handlers() functions, so that it's now pretty
144 easy to get all the functionality of fuse_main() with a filesystem
145 using the lowlevel API.
146
Miklos Szeredib8638182006-01-02 12:52:24 +00001472006-01-02 Miklos Szeredi <miklos@szeredi.hu>
148
Miklos Szeredif1941472006-01-02 16:27:48 +0000149 * mount.fuse: the 'user' option should be ignored. Report and
150 solution from Mattd.
151
152 * mount.fuse: export PATH in the right place. Report and patch
153 from Hannes Schweizer
Miklos Szeredib8638182006-01-02 12:52:24 +0000154
Miklos Szeredi73f41392005-12-16 11:12:16 +00001552005-12-16 Miklos Szeredi <miklos@szeredi.hu>
156
157 * Clean up the option parsing interface slightly, by creating an
158 "argument list" structure, that contains the argument vector and
159 count
160
Miklos Szeredi4e829092005-12-15 16:13:49 +00001612005-12-15 Miklos Szeredi <miklos@szeredi.hu>
162
163 * fusermount: check if /mnt/mtab is a symlink and don't modify it
164 in that case
165
Miklos Szeredi154ffe22005-12-15 16:41:20 +0000166 * kernel: simplify request size limiting. INIT only contains
167 maximum write size, maximum path component size remains fixed at
168 1024 bytes, and maximum xattr size depends on read buffer.
169
Miklos Szeredie248e4b2005-12-14 16:18:32 +00001702005-12-14 Miklos Szeredi <miklos@szeredi.hu>
171
172 * Fix readdir() failure on x86_64, of 32bit programs compiled
173 without largefile support. Bug report and help from Anthony
174 Kolasny
175
Miklos Szeredi64709572005-12-14 22:16:28 +0000176 * If lookup returns invalid mode, return -EIO instead of creating
Miklos Szeredicaa09312005-12-14 23:25:00 +0000177 a regular file
178
179 * Add current output argument vector to option processing
180 function
Miklos Szeredi64709572005-12-14 22:16:28 +0000181
Miklos Szeredi76fc3de2005-12-12 09:34:45 +00001822005-12-12 Miklos Szeredi <miklos@szeredi.hu>
183
184 * Fix stale code in ifdef FreeBSD. Patch from Csaba Henk
185
Miklos Szeredi659743b2005-12-09 17:41:42 +00001862005-12-09 Miklos Szeredi <miklos@szeredi.hu>
187
Miklos Szeredi3b534a42005-12-09 20:09:42 +0000188 * Released 2.5.0-pre1
189
1902005-12-09 Miklos Szeredi <miklos@szeredi.hu>
191
Miklos Szeredi659743b2005-12-09 17:41:42 +0000192 * libfuse: added option parsing interface, defined in
193 <fuse_opt.h>.
194
Miklos Szeredic53cddd2005-12-07 12:57:59 +00001952005-12-07 Miklos Szeredi <miklos@szeredi.hu>
196
197 * Return EIO for file operations (read, write, fsync, flush) on
198 open files whose inode has become "bad". Inodes will be marked
199 "bad" if their type changes. Bug report by Csaba Henk
200
Miklos Szeredi044da2e2005-12-06 17:59:55 +00002012005-12-06 Miklos Szeredi <miklos@szeredi.hu>
202
203 * Use bigger request buffer size. write() did not work on archs
204 with > 4k page size, Bug report by Mark Haney
205
206 * ABI version 7.5:
207
208 * Extend INIT reply with data size limits
209
Miklos Szeredifa829b52005-12-02 11:05:41 +00002102005-12-02 Miklos Szeredi <miklos@szeredi.hu>
211
212 * Fix memory leak in fuse_read_cmd()/fuse_process_cmd(). Bug
213 reported by Vincenzo Ciancia
214
215 * Handle exit-by-umount in fuse_read_cmd()
216
Miklos Szeredi3cc8a262005-11-29 11:04:27 +00002172005-11-29 Miklos Szeredi <miklos@szeredi.hu>
218
219 * Check if '-msoft-float' option is supported by compiler when
220 configuring for a 2.4.x kernel. Bug report by Mark Haney
221
Miklos Szeredi40d7b382005-11-29 20:07:23 +0000222 * In multithreaded loop send a TERM signal to the main thread if
223 one of the other threads exit. Needed on FreeBSD for a clean exit
224 on umount. Should not cause any harm on Linux either
225
Miklos Szerediead7f102005-11-28 16:02:27 +00002262005-11-28 Miklos Szeredi <miklos@szeredi.hu>
227
228 * Fix bug in 32-bit file handle compatibility
229
Miklos Szeredia90b7342005-11-27 19:22:42 +00002302005-11-27 Miklos Szeredi <miklos@szeredi.hu>
231
232 * Block TERM, INT, HUP and QUIT signals in all but the main
233 thread. According to POSIX it's not specified which thread will
234 receive these signals.
Miklos Szeredi2b478112005-11-28 13:27:10 +0000235
236 * Kernel changes:
237
238 * Check for directory aliasing on mkdir, not just on lookup
239
240 * Check for special node ID values in create+open operation
241
242 * Sync with -mm: readv, writev, aio_read and aio_write methods
243 added to file operations
244
245 * Cleanups: lookup code, page offset calculation
246
247 * ABI stepped to 7.4, changes:
248
249 * frsize member added to fuse_kstatfs structure
250
251 * added support for negative entry caching: on lowlevel API if
252 fuse_entry_param::ino is set to zero in reply to a lookup request,
253 the kernel will cache the dentry for the specified amount of time.
254
255 * libfuse: added 'negative_timeout' option: specifies how much
256 negative entries should be cached. Default is zero, to be
Miklos Szerediead7f102005-11-28 16:02:27 +0000257 compatible with prior versions
Miklos Szeredi2b478112005-11-28 13:27:10 +0000258
Miklos Szeredibac4c772005-11-23 13:35:54 +00002592005-11-22 Miklos Szeredi <miklos@szeredi.hu>
260
261 * Add detection of mainline FUSE code in running kernel
262
Miklos Szeredi8393e3d2005-11-21 11:37:01 +00002632005-11-21 Miklos Szeredi <miklos@szeredi.hu>
264
265 * Don't use async cancelation in multithreaded loop. This makes
266 it more portable to systems where read() is not async cancel safe.
267 Report from Andriy Gapon
268
Miklos Szeredi05c97842005-11-20 17:05:07 +00002692005-11-20 Miklos Szeredi <miklos@szeredi.hu>
270
271 * Warn if API version 11 compatibility is requested
272
Miklos Szeredi9c2ccb42005-11-17 17:11:48 +00002732005-11-17 Miklos Szeredi <miklos@szeredi.hu>
274
275 * More FreeBSD merge
276
Miklos Szeredi832ee442005-11-18 21:02:36 +0000277 * fusermount: don't allow mountpoints with '\n', '\t', or '\\' in
278 them, because it corrupts /etc/mtab. Found by Thomas Biege
Miklos Szeredibac4c772005-11-23 13:35:54 +0000279 CVE-2005-3531
Miklos Szeredi832ee442005-11-18 21:02:36 +0000280
281 * libfuse: don't use system() to invoke 'fusermount -u ...'
282 because it breaks mountpoints with spaces in them into multiple
283 arguments
284
Miklos Szeredib3f99722005-11-16 13:00:24 +00002852005-11-16 Miklos Szeredi <miklos@szeredi.hu>
286
287 * Merge library part of FreeBSD port. Patch by Csaba Henk
288
Miklos Szeredi3a770472005-11-11 21:32:42 +00002892005-11-11 Miklos Szeredi <miklos@szeredi.hu>
290
291 * Use 64bit type for file handle, so the full range supported by
292 the kernel interface is available to applications
293
Miklos Szeredibcc53852005-11-10 09:54:41 +00002942005-11-10 Miklos Szeredi <miklos@szeredi.hu>
295
296 * Moved mountpoint argument checking from fuse_parse_cmdline() to
297 fuse_mount() in preparation to FreeBSD merge.
298
Miklos Szeredi4ec06812005-11-08 13:04:27 +00002992005-11-08 Miklos Szeredi <miklos@szeredi.hu>
300
301 * Remove unneeded close() from fuse_teardown(). Spotted by Csaba
302 Henk.
303
Miklos Szeredic706ad92005-11-07 15:30:48 +00003042005-11-07 Miklos Szeredi <miklos@szeredi.hu>
305
306 * Make the statfs change backwards compatible.
307
Miklos Szeredi52cb09d2005-11-07 11:59:00 +00003082005-11-06 Miklos Szeredi <miklos@szeredi.hu>
309
310 * Change ->statfs() method to use 'struct statvfs' instead of
311 'struct statfs'. This makes the API more portable since statvfs()
312 is defined by POSIX.
313
Miklos Szeredif7eec032005-10-28 13:09:50 +00003142005-10-28 Miklos Szeredi <miklos@szeredi.hu>
315
316 * Add fgetattr() method, which currently will only be called after
317 a successful call to a create() method.
318
Miklos Szeredib0b13d12005-10-26 12:53:25 +00003192005-10-26 Miklos Szeredi <miklos@szeredi.hu>
320
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000321 * Change kernel ABI version to 7.3
322
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000323 * Add ACCESS operation. This is called from the access() system
Miklos Szeredid9079a72005-10-26 15:29:06 +0000324 call if 'default_permissions' mount option is not given, and is
325 not called on kernels 2.4.*
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000326
Miklos Szeredid9079a72005-10-26 15:29:06 +0000327 * Add atomic CREATE+OPEN operation. This will only work with
328 2.6.15 (presumably) or later Linux kernels.
329
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000330 * Add ftruncate() method. This will only work with 2.6.15
331 (presumably) or later Linux kernels.
332
333 * Fix kernel module compile if kernel source and build directories
334 differ. Report and initial patch by John Eastman
335
Miklos Szeredic4c12ae2005-10-20 14:48:50 +00003362005-10-18 Miklos Szeredi <miklos@szeredi.hu>
337
338 * lib: optimize buffer reallocation in fill_dir.
339
Miklos Szeredic9daeb12005-10-17 10:19:21 +00003402005-10-17 Miklos Szeredi <miklos@szeredi.hu>
341
342 * Released 2.4.1
343
Miklos Szeredif412d072005-10-14 21:24:32 +00003442005-10-14 Miklos Szeredi <miklos@szeredi.hu>
345
Miklos Szeredi062f0e52005-10-14 21:28:21 +0000346 * libfuse: add debug for write result (by Shaun Jackman) and
347 warnings for too large read/write result
Miklos Szeredif412d072005-10-14 21:24:32 +0000348
Miklos Szeredib75d4b92005-10-11 10:12:08 +00003492005-10-11 Miklos Szeredi <miklos@szeredi.hu>
350
351 * Spelling fixes, thanks to Ioannis Barkas
352
Miklos Szeredibaab5872005-10-10 08:41:14 +00003532005-10-10 Miklos Szeredi <miklos@szeredi.hu>
354
355 * fuse_common.h: use extern "C". Thanks to Valient Gough for the
356 patch
357
Miklos Szeredi4f5df5e2005-10-07 12:39:58 +00003582005-10-07 Miklos Szeredi <miklos@szeredi.hu>
359
360 * highlevel-lib: init() and destroy() methods didn't have an
361 initialized fuse_context. Bug reported by Tim Stoakes
362
Miklos Szeredif2491122005-10-04 10:10:41 +00003632005-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi83f253e2005-10-04 05:56:01 +0000364
365 * Released 2.4.0
366
Miklos Szeredi836ab712005-10-03 14:11:59 +00003672005-10-03 Miklos Szeredi <miklos@szeredi.hu>
368
369 * Add documentation to fuse_lowlevel.h
370
371 * API cleanups:
372
373 * Remove definitions of unused FATTR_CTIME / FUSE_SET_ATTR_CTIME
374
375 * Move fuse_mount() and fuse_unmount() to fuse_common.h
376
377 * Change the return type of fuse_reply_none() from int to void.
378
Miklos Szerediaf138742005-09-30 08:49:59 +00003792005-09-30 Miklos Szeredi <miklos@szeredi.hu>
380
381 * kernel: NFS exporting leaked dentries. Bug found and fixed by
382 Akshat Aranya.
383
Miklos Szeredidb016e02005-09-29 10:06:27 +00003842005-09-29 Miklos Szeredi <miklos@szeredi.hu>
385
386 * fusermount: fix error message, when unable to open /dev/fuse.
387 Report by Balázs Pozsár
388
Miklos Szeredi35200932005-09-28 14:50:49 +00003892005-09-28 Miklos Szeredi <miklos@szeredi.hu>
390
391 * UClibc fixes from Christian Magnusson
392
Miklos Szeredi8eddf642005-09-27 08:58:26 +00003932005-09-27 Miklos Szeredi <miklos@szeredi.hu>
394
395 * Added NAME="%k" to util/udev.rules. Fix by Mattias Wadman.
396
Miklos Szerediedec95c2005-09-26 10:22:22 +00003972005-09-26 Miklos Szeredi <miklos@szeredi.hu>
398
Miklos Szeredi39851ac2005-09-26 11:17:50 +0000399 * Released 2.4.0-rc1
400
4012005-09-26 Miklos Szeredi <miklos@szeredi.hu>
402
Miklos Szerediedec95c2005-09-26 10:22:22 +0000403 * fusermount: allow user umount in the case when /etc/mtab is a
404 symlink to /proc/mounts. Reported by Balázs Pozsár.
405
Miklos Szeredi6becf0b2005-09-23 11:25:28 +00004062005-09-23 Miklos Szeredi <miklos@szeredi.hu>
407
Miklos Szeredi8722dd22005-09-23 13:34:44 +0000408 * Check for special node ID values in lookup and creation
Miklos Szeredi6becf0b2005-09-23 11:25:28 +0000409
Miklos Szeredif45f3c12005-09-22 15:14:27 +00004102005-09-22 Miklos Szeredi <miklos@szeredi.hu>
411
412 * Slight optimization in returning EINVAL error in case of an open
413 with O_DIRECT flag.
414
Miklos Szeredi670d07a2005-09-20 11:36:32 +00004152005-09-20 Miklos Szeredi <miklos@szeredi.hu>
416
417 * Remove '--enable-auto-modprobe' configure flag. Module
418 auto-loading is now handled by the kernel.
419
Miklos Szeredid51fca12005-09-15 12:51:00 +00004202005-09-15 Miklos Szeredi <miklos@szeredi.hu>
421
422 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
423 Help from Jens M. Noedler.
424
Miklos Szeredi7e7530d2005-09-14 15:20:26 +00004252005-09-14 Miklos Szeredi <miklos@szeredi.hu>
426
427 * Add memory cleanup on thread exit
428
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +00004292005-09-13 Miklos Szeredi <miklos@szeredi.hu>
430
431 * Set umask to zero in fusexmp and fusexmp_fh, so that
432 files/directories are created with the requested mode.
433
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +00004342005-09-12 Miklos Szeredi <miklos@szeredi.hu>
435
436 * Don't ignore read error in multithreaded loop
437
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +00004382005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000439
Miklos Szeredi2277ecc2005-09-08 15:34:44 +0000440 * Released 2.4.0-pre2
441
4422005-09-08 Miklos Szeredi <miklos@szeredi.hu>
443
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000444 * Revert lock and access operations. Postpone these until 2.5.
445
4462005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000447
448 * Fix compile warning on 2.6.13 and later
449
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +0000450 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +0000451
Miklos Szeredi77ccf652005-08-19 14:40:27 +00004522005-08-19 Miklos Szeredi <miklos@szeredi.hu>
453
454 * lib: always refresh directory contents after rewinddir() to
455 conform to SUS. Bug found by John Muir.
456
Miklos Szeredia1482422005-08-14 23:00:27 +00004572005-08-15 Miklos Szeredi <miklos@szeredi.hu>
458
Miklos Szeredic43f9412005-08-15 15:10:48 +0000459 * Released 2.4.0-pre1
460
4612005-08-14 Miklos Szeredi <miklos@szeredi.hu>
462
Miklos Szeredia1482422005-08-14 23:00:27 +0000463 * lib: cleaned up (or messed up, depending on your POV) the low
464 level library API. Hopefully this is close to the final form.
465
Miklos Szeredicc1b97c2005-08-05 10:35:26 +00004662005-08-05 Miklos Szeredi <miklos@szeredi.hu>
467
468 * fusermount: don't allow empty mountpoint argument, which defeats
469 automatic umounting in fuse_main(). Bugreport by Václav Jůza
470
Miklos Szeredif6e0ec62005-08-03 09:11:06 +00004712005-08-03 Miklos Szeredi <miklos@szeredi.hu>
472
473 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
474 option is used (Paul Alfille).
475
Miklos Szeredi6c0209a2005-08-02 13:31:28 +00004762005-08-02 Miklos Szeredi <miklos@szeredi.hu>
477
478 * highlevel-lib: added mount options "attr_timeout" and
479 "entry_timeout". These options control the length of time file
480 attributes and entries (names) are cached. Both default to 1.0
481 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000482
483 * kernel: correctly handle zero timeout for attributes and entries
484
Miklos Szeredi56a61f02005-08-01 10:42:25 +00004852005-08-01 Miklos Szeredi <miklos@szeredi.hu>
486
487 * Added missing symbols to versionscript (Joshua J. Berry)
488
Miklos Szeredie77cc072005-08-01 11:58:51 +0000489 * kernel: implement two flags, open can set: 'direct_io' and
490 'keep_cache'. These correspond exactly to mount options
491 'direct_io' and 'kernel_cache', but allow a per-open setting.
492
493 * Move 'direct_io' and 'kernel_cache' mount option handling to
494 userspace. For both mount options, if the option is given, then
495 the respective open flag is set, otherwise the open flag is left
496 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +0000497
Miklos Szeredi31066bb2005-08-01 14:49:31 +0000498 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000499
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +00005002005-07-28 Miklos Szeredi <miklos@szeredi.hu>
501
502 * kernel: invalidate attributes for read/readdir/readlink
503 operations
504
505 * kernel: detect newer UML kernels
506
Miklos Szeredibfb99462005-07-26 11:07:55 +00005072005-07-26 Miklos Szeredi <miklos@szeredi.hu>
508
509 * Make the installation path of fuse.ko and mount.fuse
510 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
511 environment variables. Requirement and help from Csaba Henk.
512
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +00005132005-07-22 Miklos Szeredi <miklos@szeredi.hu>
514
515 * Fix bug, that causes filesystem requests to hang when unique
516 request counter becomes negative. This happens after
517 2,147,483,648 operations, so most people won't care. Thanks to
518 Franco Broi for the report and testing.
519
Miklos Szeredi9b813af2005-07-21 07:59:37 +00005202005-07-21 Miklos Szeredi <miklos@szeredi.hu>
521
522 * Don't change mtime/ctime/atime to local time on read/write.
523 Bug reported by Ben Grimm
524
525 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
526 Magnusson
527
528 * fusermount: use getopt_long() for option parsing. It allows the
529 use of '--' to stop argument scanning, so fusermount can now
530 operate on directories whose names begin with a '-'. Patch by
531 Adam Connell
532
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00005332005-07-15 Miklos Szeredi <miklos@szeredi.hu>
534
535 * fusermount: add '-v', '--version' and '--help' options
536
537 * add inode based API
538
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00005392005-07-12 Miklos Szeredi <miklos@szeredi.hu>
540
541 * lib: don't block signals in worker threads. Problem noticed by
542 Usarin Heininga
543
Miklos Szeredic902a852005-07-07 12:35:37 +00005442005-07-07 Miklos Szeredi <miklos@szeredi.hu>
545
546 * lib: don't allow both 'allow_other' and 'allow_root' options to
547 be given
548
Miklos Szeredi437d8112005-07-06 09:14:20 +00005492005-07-06 Miklos Szeredi <miklos@szeredi.hu>
550
551 * fusermount: check if mountpoint is empty (only '.' and '..' for
552 directories, and size = 0 for regular files). If "nonempty"
553 option is given, omit this check. This is useful, so users don't
554 accidentally hide data (e.g. from backup programs). Thanks to
555 Frank van Maarseveen for pointing this out.
556
557 * kernel: check if mandatory mount options ('fd', 'rootmode',
558 'user_id', 'group_id') are all given
559
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000560 * lib: simplify 'readdir_ino' handling
561
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000562 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
563
Miklos Szeredibb9f5172005-07-03 18:03:11 +00005642005-07-03 Miklos Szeredi <miklos@szeredi.hu>
565
566 * kernel: clean up 'direct_io' code
567
Miklos Szeredie1bcece2005-06-28 10:37:06 +00005682005-06-28 Miklos Szeredi <miklos@szeredi.hu>
569
570 * Add 'mount.fuse' written by Petr Klima
571
Miklos Szeredi866826d2005-06-28 12:22:57 +0000572 * '/dev/fuse' is created by 'make install' if does not yet exist
573
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00005742005-06-20 Miklos Szeredi <miklos@szeredi.hu>
575
576 * Fix UCLIBC compile error. Patch by Christian Magnusson
577
Miklos Szerediec12fad2005-06-08 10:26:34 +00005782005-06-08 Miklos Szeredi <miklos@szeredi.hu>
579
580 * Enable the auto-loading of the module via access to the
581 corresponding device file. Patch by Takashi Iwai.
582
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000583 * Allow mounting a regular file (over a regular file) for
584 unprivleged users.
585
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000586 * Do not create temporary device file. Require "/dev/fuse" to
587 exist, and be readable/writable by the mounting user.
588
Miklos Szeredi46960ce2005-06-02 09:05:00 +00005892005-06-02 Miklos Szeredi <miklos@szeredi.hu>
590
Miklos Szeredi56478552005-06-02 10:29:00 +0000591 * Released 2.3.0
592
5932005-06-02 Miklos Szeredi <miklos@szeredi.hu>
594
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000595 * Fix serious information leak: if the filesystem returns a short
596 byte count to a read request, and there are non-zero number of
597 pages which are not filled at all, these pages will not be zeroed.
598 Hence the user can read out previous memory contents. Found by
599 Sven Tantau.
600
Miklos Szeredi33be22d2005-05-27 09:12:43 +00006012005-05-27 Miklos Szeredi <miklos@szeredi.hu>
602
603 * Add "readdir_ino" mount option, which tries to fill in the d_ino
604 field in struct dirent. This mount option is ignored if "use_ino"
605 is used. It helps some programs (e.g. 'pwd' used over NFS from a
606 non-Linux OS). Patch by David Shaw.
607
Miklos Szeredif94e0102005-05-12 14:56:34 +00006082005-05-12 Miklos Szeredi <miklos@szeredi.hu>
609
Miklos Szeredieb009c42005-05-12 15:01:17 +0000610 * Released 2.3-rc1
611
6122005-05-12 Miklos Szeredi <miklos@szeredi.hu>
613
Miklos Szeredif94e0102005-05-12 14:56:34 +0000614 * File save in krusader and other editors doesn't work with sshfs,
615 because open() is interrupted by a periodic signal, and open()
616 restarts forever, without any progress. This could just be fixed
617 in open(), but the problem is more generic: if signals are
618 received more often than the filesystem can get the request to
619 userspace, it will never finish. This is probably only a
620 theoretical problem, nevertheless I'm removing the possibility to
621 interrupt requests with anything other than SIGKILL, even before
622 being sent to userspace. Bugreport by Eduard Czimbalmos.
623
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00006242005-05-09 Miklos Szeredi <miklos@szeredi.hu>
625
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000626 * libfuse: add "tree_lock" rwlock, that is locked for write in
627 rename, unlink and rmdir, and locked for read in all other
628 operations. This should fix the rename/release race reported by
629 Valient Gough and others. The solution is very coarse, a finer
630 grained locking scheme could be implemented, but it would be much
631 more complex. Let's see whether this is good enough.
632
6332005-05-09 Miklos Szeredi <miklos@szeredi.hu>
634
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000635 * Released 2.3-pre7
636
Miklos Szeredi38009022005-05-08 19:47:22 +00006372005-05-08 Miklos Szeredi <miklos@szeredi.hu>
638
639 * Better fix for out of order FORGET messages. Now the
640 LOOKUP/FORGET messages are balanced exactly (one FORGET can
641 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000642 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000643 compatible.
644
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00006452005-05-06 Miklos Szeredi <miklos@szeredi.hu>
646
647 * Fix abort for out of order FORGET messages. Again. Spotted by
648 Franco Broi again. Sorry :)
649
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00006502005-04-29 Miklos Szeredi <miklos@szeredi.hu>
651
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000652 * Released 2.3-pre6
653
6542005-04-29 Miklos Szeredi <miklos@szeredi.hu>
655
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000656 * Make fusermount work with fuse kernel modules not yet supporting
657 the "group_id" option (added for the purpose of stricter
658 permission checking).
659
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00006602005-04-28 Miklos Szeredi <miklos@szeredi.hu>
661
662 * Check for hard-linked directories in lookup. This could cause
663 problems in the VFS, which assumes that such objects never exist.
664
665 * Make checking of permission for other users more strict. Now
666 the same privilege is required for the mount owner as for ptrace
667 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000668
Miklos Szeredi3efcb562005-04-23 13:34:29 +00006692005-04-23 Miklos Szeredi <miklos@szeredi.hu>
670
671 * Released 2.3-pre5
672
Miklos Szeredid001bf92005-04-22 07:54:11 +00006732005-04-22 Miklos Szeredi <miklos@szeredi.hu>
674
675 * Add -msoft-float to kernel module compile flags for 2.4.X. This
676 is needed on certain architectures. Report from Chris Kirby
677
678 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
679 Reported by David Shaw
680
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000681 * Remove "allow_root" option from kernel module, and implement
682 it's functionality in the library
683
684 * Fix Oops caused by premature release of fuse_conn. Clean up
685 related code, to be more readable
686
Miklos Szeredif9137452005-04-23 10:59:44 +0000687 * Sendfile should not use page cache if "direct_io" mount option
688 is given
689
Miklos Szeredib7640d22005-04-08 15:15:28 +00006902005-04-08 Miklos Szeredi <miklos@szeredi.hu>
691
692 * Fix Oops in case of nfs export. Spotted by David Shaw
693
Miklos Szeredi89814a12005-04-08 16:39:09 +0000694 * Fix another Oops in case of write over nfs with direct_io turned
695 on. Again spotted by David Shaw
696
Miklos Szerediab974562005-04-07 15:40:21 +00006972005-04-07 Miklos Szeredi <miklos@szeredi.hu>
698
Miklos Szeredi432d6182005-04-07 15:56:13 +0000699 * Released 2.3-pre4
700
7012005-04-07 Miklos Szeredi <miklos@szeredi.hu>
702
Miklos Szerediab974562005-04-07 15:40:21 +0000703 * lib: finalized new readdir() interface, which now supersedes the
704 getdir() method.
705
Miklos Szeredi30e093a2005-04-03 17:44:54 +00007062005-04-03 Miklos Szeredi <miklos@szeredi.hu>
707
708 * Released 2.3-pre3
709
7102005-04-03 Miklos Szeredi <miklos@szeredi.hu>
711
712 * Implement backward compatibility with version 5 kernel ABI
713
Miklos Szeredi18fce982005-04-01 21:07:35 +00007142005-04-01 Miklos Szeredi <miklos@szeredi.hu>
715
716 * Released 2.3-pre2
717
7182005-04-01 Miklos Szeredi <miklos@szeredi.hu>
719
720 * kernel: fix dirent offset handling
721
722 * lib: add readdir and releasedir methods
723
724 * lib: use fh field of fuse_file_info in opendir, readdir,
725 releasedir and fsyncdir methods
726
727 * lib: check kernel API version and bail out of it's old. This
728 will be properly fixed in the next release
729
7302005-03-31 Miklos Szeredi <miklos@szeredi.hu>
731
732 * Released 2.3-pre1
733
Miklos Szeredieab72ef2005-03-31 19:59:12 +00007342005-03-31 Miklos Szeredi <miklos@szeredi.hu>
735
736 * kernel API: add padding to structures, so 64bit and 32bit
737 compiler will return the same size
738
739 * kernel API: add offset field to fuse_dirent. This will allow
740 more sophisticated readdir interface for userspace
741
742 * kernel API: change major number to 6
743
744 * kernel: fix warnings on 64bit archs
745
746 * kernel: in case of API version mismatch, return ECONNREFUSED
747
Miklos Szeredi407e6a72005-03-25 12:19:43 +00007482005-03-24 Miklos Szeredi <miklos@szeredi.hu>
749
750 * kernel: trivial cleanups
751
Miklos Szeredi4283ee72005-03-21 12:09:04 +00007522005-03-21 Miklos Szeredi <miklos@szeredi.hu>
753
754 * Add fsyncdir() operation
755
Miklos Szeredid17da462005-03-21 11:47:04 +00007562005-03-19 Miklos Szeredi <miklos@szeredi.hu>
757
758 * kernel: add locking to background list (fixes previous fix)
759
7602005-03-18 Miklos Szeredi <miklos@szeredi.hu>
761
762 * kernel: fix bug which could cause leave busy inodes after
763 unmount, and Oops.
764
7652005-03-08 Miklos Szeredi <miklos@szeredi.hu>
766
767 * examples: add -lpthread to link flags to work around valgrind
768 quirk
769
770 * lib: don't exit threads, so cancelation doesn't cause segfault
771
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00007722005-03-04 Miklos Szeredi <miklos@szeredi.hu>
773
774 * kernel: fix nasty bug which could cause an Oops under certain
775 situations. Found by Magnus Johansson
776
Miklos Szeredif43f0632005-02-28 11:46:56 +00007772005-02-28 Miklos Szeredi <miklos@szeredi.hu>
778
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000779 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000780 permission checking in getdir() is too late. Thanks to Usarin
781 Heininga for pointing out this deficiency
782
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000783 * libfuse: added init() and destroy() methods to fuse_operations
784
Miklos Szeredif43f0632005-02-28 11:46:56 +0000785 * kernel: llseek() method for files and directories made explicit
786
787 * kernel: fixed inode leak in NFS export in case of nodeid
788 wrapping
789
Miklos Szeredied3c97c2005-02-15 17:04:50 +00007902005-02-15 Miklos Szeredi <miklos@szeredi.hu>
791
792 * libfuse: clean up some unitialized memory found with valgrind
793
Miklos Szeredi47c52982005-02-23 09:27:38 +0000794 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
795 explicitly linked libpthread for applications
796
Miklos Szeredia7169412005-02-10 07:35:05 +00007972005-02-10 Miklos Szeredi <miklos@szeredi.hu>
798
799 * fusermount: set umask, otherwise /etc/mtab will have
800 unpredictable permission. Spotted by Jindrich Kolorenc
801
802 * fusermount: set owner and group of /etc/mtab to original values
803 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000804
805 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000806
Miklos Szeredib92d9782005-02-07 16:10:49 +00008072005-02-07 Miklos Szeredi <miklos@szeredi.hu>
808
809 * Cleaned up directory reading (temporary file is not used)
810
Miklos Szerediff30a6c2005-02-02 10:53:59 +00008112005-02-02 Miklos Szeredi <miklos@szeredi.hu>
812
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000813 * Released 2.2
814
8152005-02-02 Miklos Szeredi <miklos@szeredi.hu>
816
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000817 * Fix possible race when operation is interrupted
818
Miklos Szeredi7a983952005-01-28 09:58:19 +00008192005-01-28 Miklos Szeredi <miklos@szeredi.hu>
820
Miklos Szeredie5183742005-02-02 11:14:04 +0000821 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000822
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00008232005-01-26 Miklos Szeredi <miklos@szeredi.hu>
824
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000825 * Released 2.2-pre6
826
8272005-01-26 Miklos Szeredi <miklos@szeredi.hu>
828
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000829 * Fix bug in link() operation which caused the wrong path to be
830 passed as the first argument. Found by Anton Altaparmakov
831
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00008322005-01-21 Miklos Szeredi <miklos@szeredi.hu>
833
834 * LIB: fix double reply in readdir operation
835
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000836 * fusermount: fix uid checking bug. Patch by Adam Connell
837
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000838 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000839 Patch by Keshava Gowda
840
Miklos Szeredi64074142005-01-20 08:48:11 +00008412005-01-20 Miklos Szeredi <miklos@szeredi.hu>
842
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000843 * KERNEL: provide correct llseek semantics for fuse device (fixes
844 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
845
8462005-01-20 Miklos Szeredi <miklos@szeredi.hu>
847
Miklos Szeredi64074142005-01-20 08:48:11 +0000848 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
849
Miklos Szeredi1adb2272005-01-18 21:19:58 +00008502005-01-18 Miklos Szeredi <miklos@szeredi.hu>
851
852 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
853 and RELEASEDIR. This ends the ugly hack of passing a file
854 descriptor to the kernel, and actually makes the code simpler.
855
Miklos Szeredi7db35c02005-01-17 09:46:28 +00008562005-01-17 Miklos Szeredi <miklos@szeredi.hu>
857
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000858 * Released 2.2-pre4
859
8602005-01-17 Miklos Szeredi <miklos@szeredi.hu>
861
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000862 * fusermount: remove capability setting, which was the cause of
863 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000864 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000865
Miklos Szeredidbe0f652005-01-15 14:32:56 +00008662005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000867
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000868 * fix compilation on 2.4 kernels (reported by Valient Gough)
869
870 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000871
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000872 * fusermount: improve parsing of /etc/fuse.conf
873
8742005-01-13 Miklos Szeredi <miklos@szeredi.hu>
875
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000876 * Remove 'mount_max' and 'user_allow_other' module options. These
877 are now checked by fusermount, and can be set in /etc/fuse.conf
878
879 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
880
Miklos Szeredi81394522005-01-11 14:24:18 +00008812005-01-11 Miklos Szeredi <miklos@szeredi.hu>
882
883 * KERNEL: fix possible inode allocation problem, where
884 sizeof(struct inode) is not aligned (found by Mike Waychison)
885
886 * KERNEL: use new follow_link/put_link methods
887
888 * KERNEL: cosmetic fixes
889
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00008902005-01-10 Miklos Szeredi <miklos@szeredi.hu>
891
892 * Released 2.2-pre3
893
8942005-01-10 Miklos Szeredi <miklos@szeredi.hu>
895
896 * Add missing code that was accidently left out
897
Miklos Szeredi8c7da232005-01-09 12:27:41 +00008982005-01-09 Miklos Szeredi <miklos@szeredi.hu>
899
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000900 * Released 2.2-pre2
901
9022005-01-09 Miklos Szeredi <miklos@szeredi.hu>
903
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000904 * Change "uid" mount option to "user_id" to avoid confusion with a
905 mount option "uid" commonly used by many filesystems
906
9072005-01-09 Miklos Szeredi <miklos@szeredi.hu>
908
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000909 * Released 2.2-pre1
910
9112005-01-09 Miklos Szeredi <miklos@szeredi.hu>
912
913 * If FUSE is configured in the kernel, don't build it by default
914
Miklos Szeredi2a927272005-01-07 11:14:15 +00009152005-01-07 Miklos Szeredi <miklos@szeredi.hu>
916
917 * Compile fix by Christian Magnusson
918
Miklos Szeredib6220192005-01-05 16:19:10 +00009192005-01-05 Miklos Szeredi <miklos@szeredi.hu>
920
921 * Fix compilation for 2.6.{0-5} kernels
922
Miklos Szeredi0f62d722005-01-04 12:45:54 +00009232005-01-04 Miklos Szeredi <miklos@szeredi.hu>
924
925 * KERNEL: if request is interrupted, still keep reference to used
926 inode(s) and file, so that FORGET and RELEASE are not sent until
927 userspace finishes the request.
928
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000929 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
930 request with the same information, which is more flexible,
931 simpler, works on embedded systems.
932
Miklos Szeredi0f62d722005-01-04 12:45:54 +00009332004-12-16 Miklos Szeredi <miklos@szeredi.hu>
934
935 * KERNEL ABI: update interface to make it independent of type
936 sizes. This will help on 64 bit architectures which can run
937 legacy 32 bit applications.
938
939 * KERNEL ABI: add "len" field to request headers. This will allow
940 sending/receiving requests in multiple chunks.
941
942 * KERNEL: handle file type change more intelligently
943
944 * LIB: "-o debug" option should disable backgrounding (fix by
945 Fabien Reygrobellet)
946
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00009472004-12-13 Miklos Szeredi <miklos@szeredi.hu>
948
949 * KERNEL: invalidate dentry/attributes if interrupted request
950 could leave filesystem in an unknown state.
951
Miklos Szeredie56818b2004-12-12 11:45:24 +00009522004-12-12 Miklos Szeredi <miklos@szeredi.hu>
953
954 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
955 These will cause some regressions, but stability is considered
956 more important. If any of these features turns out to be
957 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000958
Miklos Szeredie56818b2004-12-12 11:45:24 +0000959 * Make all requests interruptible (only with SIGKILL currently).
960 This can be used to break any deadlock produced by the userspace
961 filesystem accessing it's own exported files. The RELEASE request
962 is special, because if it's interrupted before sending it to
963 userspace it is still sent, but the reply is not awaited.
964
965 * If request is interrupted before being sent to userspace, and if
966 it hasn't yet got any side effects, it is always restarted,
967 regardless of the SA_RESTART flag. This makes these interruptions
968 transparent to the process.
969
970 * Remove shared-writable mmap support, which was prone to an
971 out-of-memory deadlock situation
972
973 * Remove INVALIDATE userspace initiated request
974
975 * Make readpages() synchronous. Asynchronous requests are
976 deadlock prone, since they cannot be interrupted.
977
978 * Add readv/writev support to fuse device operations
979
980 * Remove some printks, which userspace FS can use for a DoS
981 against syslog
982
983 * Remove 'large_read' mount option from 2.6 in kernel, check it in
984 fusermount instead
985
986 * LIB: improve compatibility with a fuse.h header installed in
987 ${prefix}/include which in turn includes the real header.
988
989 * LIB: improve compatibility by defining fuse_main() (which is now
990 not used), so old configure scripts find it.
991
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00009922004-12-10 Miklos Szeredi <miklos@szeredi.hu>
993
994 * When mounting on a subdirectory of / don't duplicate slashes at
995 the beggining of path (spotted by David Shaw)
996
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00009972004-12-09 Miklos Szeredi <miklos@szeredi.hu>
998
999 * Fix bug causing garbage in mount options (spotted by David Shaw)
1000
Miklos Szeredid59bb9d2004-12-07 10:04:24 +000010012004-12-07 Miklos Szeredi <miklos@szeredi.hu>
1002
1003 * Add 'writepage' flag to 'fuse_file_info'.
1004
1005 * More comments in fuse.h
1006
Miklos Szeredif458b8c2004-12-07 16:46:42 +00001007 * Get rid of double underscores
1008
Miklos Szeredi799993c2004-12-04 21:20:05 +000010092004-12-04 Miklos Szeredi <miklos@szeredi.hu>
1010
1011 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
1012
1013 * helper.c: add -ho option, which only displays the options not
1014 the usage header. This can be used by filesystems which have
1015 their own options.
1016
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +000010172004-12-03 Miklos Szeredi <miklos@szeredi.hu>
1018
1019 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
1020 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
1021 including the fuse header
1022
1023 * Add binary compatibility to 2.1 version of library with symbol
1024 versioning
1025
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +000010262004-12-03 Miklos Szeredi <miklos@szeredi.hu>
1027
1028 * Released 2.1
1029
Miklos Szeredi039322d2004-12-01 18:39:12 +000010302004-12-01 Miklos Szeredi <miklos@szeredi.hu>
1031
1032 * kernel: clean up writing functions
1033
1034 * kernel: no allocation on write in direct_io mode
1035
Miklos Szeredib9b94cd2004-12-01 18:56:39 +00001036 * move linux/fuse.h to fuse_kernel.h
1037
Miklos Szeredi83a07442004-11-30 18:25:20 +000010382004-11-30 Miklos Szeredi <miklos@szeredi.hu>
1039
1040 * kernel: clean up reading functions
1041
Miklos Szeredi2defe5e2004-11-29 16:53:44 +000010422004-11-29 Miklos Szeredi <miklos@szeredi.hu>
1043
1044 * kernel: make readpage() uninterruptible
1045
Miklos Szeredi96dfad72004-11-30 00:00:02 +00001046 * kernel: check readonly filesystem flag in fuse_permission
1047
1048 * lib: don't die if version file not found and new style device
1049 exists
1050
1051 * lib: add '-r' option, which is short for '-o ro'
1052
1053 * fusermount: simplify device opening
1054
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00001055 * kernel: when direct_io is turend on, copy data directly to
1056 destination without itermediate buffer. More efficient and safer,
1057 since no allocation is done.
1058
1059 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +00001060
1061 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +00001062
Miklos Szeredifb28c5e2004-11-26 12:15:06 +000010632004-11-26 Miklos Szeredi <miklos@szeredi.hu>
1064
1065 * libfuse API change: open, read, write, flush, fsync and release
1066 are passed a 'struct fuse_file_info' pointer containing the open
1067 flags (open and release), and the file handle. Verion changed to
1068 3.0.
1069
Miklos Szeredia25d4c22004-11-23 22:32:16 +000010702004-11-23 Miklos Szeredi <miklos@szeredi.hu>
1071
1072 * More cleanups in the kernel
1073
1074 * The 10,229 charater device number has been assigned for FUSE
1075
1076 * Version file checking fix (reported by Christian Magnusson)
1077
1078 * fusermount: opening the fuse device now doesn't need /sys.
1079
1080 * Optimize reading by controlling the maximum readahead based on
1081 the 'max_read' mount option
1082
1083 * fixes for UCLIBC (Christian Magnusson)
1084
Miklos Szeredi13ed4822004-11-20 11:12:21 +000010852004-11-19 Miklos Szeredi <miklos@szeredi.hu>
1086
1087 * Cleaned up kernel in preparation for merge into mainline:
1088
1089 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
1090
1091 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
1092
1093 * __user annotations for sparse
1094
1095 * allocate individual pages instead of kmalloc in fuse_readdir,
1096 fuse_read and fuse_write.
1097
1098 * Fix NFS export in case "use_ino" mount option is given
1099
Miklos Szeredif3845c42004-11-20 11:18:34 +00001100 * Make libfuse and fusermount compatible with future versions
1101
1102 * fusermount: properly add mount options to /etc/mtab
1103
11042004-11-15 Miklos Szeredi <miklos@szeredi.hu>
1105
1106 * fusermount: do not resolve last component of mountpoint on if it
1107 is '.' or '..'. This new path resolvation is now done on mount as
1108 well as unmount. This enables relative paths to work on unmount.
1109
1110 * fusermount: parse common mount options like "ro", "rw", etc...
1111
1112 * Allow module params to be changed through sysfs
1113
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +000011142004-11-14 Miklos Szeredi <miklos@szeredi.hu>
1115
1116 * Released 2.1-pre1
1117
11182004-11-14 Miklos Szeredi <miklos@szeredi.hu>
1119
1120 * Fix bug in fuse_readpages() causing Oops in certain situations.
1121 Bug found by Vincenzo Ciancia.
1122
1123 * Fix compilation with kernels versions > 2.6.9.
1124
Miklos Szeredi3a6ea062004-11-11 10:33:58 +000011252004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +00001126
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00001127 * Check kernel interface version in fusermount to prevent
1128 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +00001129
Miklos Szeredi3d60e762004-11-11 14:44:04 +00001130 * No need to allocate fuse_conn until actual mount happens
1131
1132 * Fix potential race between umount and fuse_invalidate
1133
1134 * Check superblock of proc file in addition to inode number
1135
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00001136 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +00001137
Miklos Szeredi51ec1032004-11-10 11:52:26 +000011382004-11-10 Miklos Szeredi <miklos@szeredi.hu>
1139
1140 * Separate configure for the kernel directory
1141
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00001142 * Don't allow write to return more than 'count'
1143
1144 * Extend kernel interface for future use
1145
Miklos Szeredi51ec1032004-11-10 11:52:26 +000011462004-11-09 Miklos Szeredi <miklos@szeredi.hu>
1147
1148 * Fix 'makeconf.sh' to use autoreconf if available
1149
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +000011502004-11-08 Miklos Szeredi <miklos@szeredi.hu>
1151
Miklos Szeredid507c732004-11-08 17:32:25 +00001152 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
1153 compatibility with earlier versions. To compile earier versions
1154 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
1155 Do not use the "use_ino" mount flag with filesystems compiled with
1156 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +00001157
1158 * Add pkg-config support. To compile a FUSE based filesystem you
1159 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
1160 or similar. Note, that the PKG_CONFIG_PATH environment variable
1161 usually needs to be set to "/usr/local/lib/pkgconfig".
1162
1163 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +00001164
Miklos Szeredia13d9002004-11-02 17:32:03 +000011652004-11-02 Miklos Szeredi <miklos@szeredi.hu>
1166
1167 * Added "use_ino" mount option. This enables the filesystems to
1168 set the st_ino field on files
1169
Miklos Szeredib1ab8b52004-11-01 10:57:41 +000011702004-11-01 Miklos Szeredi <miklos@szeredi.hu>
1171
1172 * Fix compile problems with ancient (<=2.4.18) kernels (reported
1173 by Jeremy Smith)
1174
Miklos Szeredi874e3c12004-11-01 23:15:20 +00001175 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
1176
1177 * Clear the 'exited' flag when mail loop is finished
1178
Miklos Szeredie989f0d2004-10-28 20:24:58 +000011792004-10-28 Miklos Szeredi <miklos@szeredi.hu>
1180
1181 * Make xattr functions work under 2.6 (bug found by Vincenzo
1182 Ciancia)
1183
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +000011842004-10-26 Miklos Szeredi <miklos@szeredi.hu>
1185
1186 * Reset request in fuse_flush() (bugreport by David Shaw)
1187
Miklos Szeredi5dc8a802004-10-21 09:35:10 +000011882004-10-21 Miklos Szeredi <miklos@szeredi.hu>
1189
Miklos Szeredi0e70aa72004-10-21 16:24:29 +00001190 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001191 error code
1192
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001193 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001194 make it easier to implement a custom event loop.
1195
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001196 * Use daemon() call to background the filesystem after mounting.
1197 This function closes the standard input, output and error and
1198 changes the current working directory to "/".
1199
Miklos Szeredi127d49b2004-10-14 13:33:39 +000012002004-10-14 Miklos Szeredi <miklos@szeredi.hu>
1201
1202 * Released 1.9
1203
Miklos Szeredid45baf42004-10-10 07:56:12 +000012042004-10-09 Miklos Szeredi <miklos@szeredi.hu>
1205
1206 * Don't allow fuse_flush() to be interrupted (bug found by David
1207 Shaw)
1208
Miklos Szeredi1f18db52004-09-27 06:54:49 +000012092004-09-27 Miklos Szeredi <miklos@szeredi.hu>
1210
1211 * Add PID to fuse_context. Patch by Steven James
1212
Miklos Szeredi1eea0322004-09-27 18:50:11 +00001213 * Change file handle type to 'unsigned long' in kernel interface
1214
Miklos Szeredid169f312004-09-22 08:48:26 +000012152004-09-22 Miklos Szeredi <miklos@szeredi.hu>
1216
1217 * A slight API change: fuse_get_context() doesn't need the "fuse"
1218 pointer, but the returned context contains it instead. The
1219 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +00001220
1221 * Fix mounting and umounting FUSE filesystem under another FUSE
1222 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +00001223
Miklos Szeredic2309912004-09-21 13:40:38 +000012242004-09-21 Miklos Szeredi <miklos@szeredi.hu>
1225
1226 * Fix deadlock in case of memory allocation failure. Patch by
1227 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +00001228
Miklos Szeredib2cf9562004-09-16 08:42:40 +000012292004-09-16 Miklos Szeredi <miklos@szeredi.hu>
1230
1231 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +00001232
Miklos Szeredi65afea12004-09-14 07:13:45 +000012332004-09-14 Miklos Szeredi <miklos@szeredi.hu>
1234
1235 * Check temporary file creation failure in do_getdir(). Bug
1236 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001237
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +000012382004-09-13 Miklos Szeredi <miklos@szeredi.hu>
1239
1240 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +00001241
1242 * Make requests non-interruptible so race with FORGET is avoided.
1243 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +00001244
1245 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001246
Miklos Szeredi8b2d3332004-09-09 08:44:01 +000012472004-09-09 Miklos Szeredi <miklos@szeredi.hu>
1248
1249 * Fix bug in case two FORGETs for the same node are executed in
1250 the wrong order. Bug spotted and endured for months by Franco
1251 Broi, and logfile for solution provided by Terje Oseberg
1252
Miklos Szeredi12085102004-09-02 18:13:57 +000012532004-09-01 Miklos Szeredi <miklos@szeredi.hu>
1254
1255 * Add -D_REENTRANT to the compile flags
1256
1257 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001258
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +000012592004-08-16 Miklos Szeredi <miklos@szeredi.hu>
1260
1261 * Change release method to be non-interruptible. Fixes bug
1262 causing missing release() call when program which has opened files
1263 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +00001264
Miklos Szeredi891b8742004-07-29 09:27:49 +000012652004-07-29 Miklos Szeredi <miklos@szeredi.hu>
1266
1267 * Add fuse_invalidate() to library API
1268
Miklos Szeredi94ed76a2004-07-26 19:38:45 +000012692004-07-26 Miklos Szeredi <miklos@szeredi.hu>
1270
1271 * Check permissions in setattr if 'default_permissions' flag is
1272 set. Bug spotted by Damjan Lango
1273
Miklos Szeredid66d3942004-07-24 13:47:44 +000012742004-07-24 Miklos Szeredi <miklos@szeredi.hu>
1275
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001276 * 'large_read' mount option removed for 2.6 kernels, since the
1277 default (dynamic read size) is better
1278
1279 * Extend kernel API with file handles. A file handle is returned
1280 by open, and passed to read, write, flush, fsync and release.
1281 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +00001282
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001283 * Security changes:
1284
1285 * Change the current directory to the mountpoint before checking
1286 the permissions and mount filesystem on "."
1287
1288 * By default don't modprobe the fuse module for non-root. The old
1289 behavior can be restored with the '--enable-auto-modprobe' flag of
1290 ./configure
1291
1292 * By default don't allow shared writable mappings for non-root.
1293 The old behavior can be restored with the 'user_mmap=1' module
1294 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +00001295
Miklos Szeredibd7661b2004-07-23 17:16:29 +000012962004-07-23 Miklos Szeredi <miklos@szeredi.hu>
1297
1298 * Clean up mount option passing to fusermount and to fuse_new()
1299 BEWARE: this changes the userspace API slightly, and the command
1300 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +00001301
Miklos Szeredi58865372004-07-20 14:22:26 +000013022004-07-20 Miklos Szeredi <miklos@szeredi.hu>
1303
1304 * Optimize reading under 2.6 kernels by issuing multiple page
1305 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +00001306
Miklos Szeredi84ba0f42004-07-18 11:32:59 +000013072004-07-18 Miklos Szeredi <miklos@szeredi.hu>
1308
1309 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001310
Miklos Szeredi069c9502004-07-16 16:17:02 +000013112004-07-16 Miklos Szeredi <miklos@szeredi.hu>
1312
1313 * Separate directory entry and inode attribute validity timer
1314
1315 * New write semaphore to stop page writeback during truncate
1316
1317 * Fsync now waits for all writes to complete before sending the
1318 request
1319
1320 * Optimization: if a page is completely written by
1321 fuse_commit_write(), clear the dirty flag and set the uptodate
1322 flag for that page
1323
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +00001324 * Some memory cleanup at exit
1325
Miklos Szeredi2529ca22004-07-13 15:36:52 +000013262004-07-13 Miklos Szeredi <miklos@szeredi.hu>
1327
1328 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +00001329 disable the "hide if open" behavior of unlink/rename.
1330
1331 * If temporary buffer allocation fails in raw read, fall back to a
1332 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +00001333
Miklos Szeredi73798f92004-07-12 15:55:11 +000013342004-07-12 Miklos Szeredi <miklos@szeredi.hu>
1335
1336 * Fix bug in do_open() in libfuse: open count was incremented
1337 after the reply is sent so it could race with unlink/forget and
1338 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +00001339
Miklos Szeredi015fe702004-07-12 11:52:24 +000013402004-07-08 Miklos Szeredi <miklos@szeredi.hu>
1341
1342 * When performing create or remove operation, refresh the parent's
1343 attributes on next revalidate, as i_nlink (and maybe size/time)
1344 could be inacurate.
1345
1346 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
1347 pages (2.6 only)
1348
1349 * Set set_page_dirty address space operation (2.6 only)
1350
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013512004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +00001352
1353 * Minor fix in read: print debug info even if read size is zero
1354
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013552004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +00001356
1357 * Fix race between truncate and writepage (fsx-linux now runs
1358 without error)
1359
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013602004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001361
1362 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
1363 by Mattias Wadman)
1364
1365 * Added option for direct read/write (-r)
1366
1367 * Fix revalidate time setting for newly created inodes
1368
Miklos Szerediacb4d362004-07-02 16:20:45 +00001369 * Remove uid==0 check for '-x' option in fusermount (kernel checks
1370 this)
1371
1372 * fuse_main() only installs handlers for signals (out of INT, HUP,
1373 TERM, PIPE), for which no handler has yet been installed
1374
1375 * Add module option 'user_allow_other' which if set to non-zero
1376 will allow non root user to specify the 'allow_other' mount option
1377 ('-x' option of fusermount)
1378
Miklos Szeredi014d7d22004-07-02 21:22:37 +00001379 * Fix deadlock between page writeback completion and truncate
1380 (bug found by Valient Gough with the fsx-linux utility)
1381
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013822004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001383
1384 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +00001385 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
1386 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +00001387
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013882004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +00001389
1390 * Acquire inode->i_sem before open and release methods to prevent
1391 concurrent rename or unlink operations.
1392
Miklos Szeredi65cf7c72004-06-30 11:34:56 +00001393 * Make __fuse_read_cmd() read only one command. This allows
1394 multiplexing the fuse file descriptor with other event sources
1395 using select() or poll() (patch by Jeff Harris)
1396
1397 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
1398
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013992004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +00001400
1401 * Fix file offset wrap around at 4G when doing large reads
1402
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014032004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001404
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001405 * Fix memory leak in open (Valient Gough)
1406
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014072004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001408
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001409 * Add "close after delete" support to libfuse (patch by Valient
1410 Gough)
1411
1412 * Cancel all worker threads before exit in multithreaded mode
1413
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014142004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001415
1416 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001417
1418 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001419
1420 * Work with newer libtool (1.5a)
1421
1422 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001423
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014242004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001425
1426 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001427
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014282004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001429
1430 * Fix possible inode leak in userspace in case of unfinished
1431 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001432
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014332004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001434
1435 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001436
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014372004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001438
1439 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001440
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014412004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001442
1443 * Build shared library as well as static (using libtool)
1444
1445 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1446 there has not been a release with the previous minor number, and I
1447 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001448
1449 * Change fuse_main(), so that default behavior is to go into
1450 background if mount is successful. '-f' and '-d' options disable
1451 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1452 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001453
1454 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1455 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001456
1457 * Don't call getdir method from open() only from first readdir().
1458 Open is sometimes just used to store the current directory
1459 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001460
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014612004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001462
1463 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001464
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014652004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001466
1467 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001468
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014692004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001470
1471 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001472
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014732004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001474
1475 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001476
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014772004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001478
1479 * Replaced binary mount data with text options
1480
1481 * Show FUSE specific mount options in /proc/mounts
1482
1483 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1484
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014852004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001486
1487 * Check some limits so userspace won't get too big requests
1488
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014892004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001490
1491 * Kill compile warning
1492
1493 * Upgraded user-mount patch for 2.6.5
1494
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014952004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001496
1497 * Add detection of user-mode-linux to configure
1498
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014992004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001500
1501 * fixed zero size case for getxattr and listxattr
1502
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015032004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001504
1505 * new fusermount flag '-z': lazy unmount, default is not lazy
1506
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001507 * Extended attributes operations added (getxattr, setxattr,
1508 listxattr, removexattr)
1509
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015102004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001511
1512 * If filesystem doesn't define a statfs operation, then an
1513 all-zero default statfs is returned instead of ENOSYS
1514
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015152004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001516
1517 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1518
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015192004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001520
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001521 * Fix for uClinux (Christian Magnusson)
1522
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015232004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001524
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001525 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001526
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001527 * More kernel interface changes:
1528
1529 * Lookup/getattr return cache timeout values
1530
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015312004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001532
1533 * Clean up option parsing in fuse_main()
1534
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001535 * Added fuse_get() function which returns the fuse object created
1536 by fuse_main()
1537
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015382004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001539
Miklos Szeredic40748a2004-02-20 16:38:45 +00001540 * removed old way of mounting (fusermount mountpoint program)
1541
Miklos Szeredib5958612004-02-20 14:10:49 +00001542 * more kernel interface changes:
1543
1544 * added nanosecond precision to file times
1545
Miklos Szeredic40748a2004-02-20 16:38:45 +00001546 * removed interface version from mount data
1547
1548 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1549
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015502004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001551
1552 * statfs library API changed to match other methods. Since this
1553 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1554
Miklos Szeredi76f65782004-02-19 16:55:40 +00001555 * kernel interface changes follow:
1556
1557 * statfs changed to 64 bits, added 'bavail' field
1558
1559 * add generation number to lookup result
1560
1561 * optimized mknod/mkdir/symlink/link (no separate lookup is
1562 needed)
1563
1564 * rdev size increased to 32 bits for mknod
1565
1566 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001567
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015682004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001569
1570 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001571
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015722004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001573
1574 * Added user-mount.2.6.2-rc3.patch
1575
1576 * Add FS_SAFE flag to fuse filesystem
1577
1578 * fusermount should allow (un)mounting for non-root even if not
1579 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001580
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015812004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001582
1583 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001584
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015852004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001586
1587 * Added check for i_size_read/write functions to configure.in
1588 (patch by Valient Gough)
1589
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015902004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001591
1592 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001593
1594 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001595
1596 * Readpage calls flush_dcache_page() after storing data
1597
1598 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001599
1600 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001601
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016022004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001603
1604 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001605
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016062004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001607
1608 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001609
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016102004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001611
1612 * Added -q option for fusermount
1613
1614 * fuse_unmount() now uses -q option of fusermount, so no error is
1615 printed if the cause of the program exit is that the filesystem
1616 has already been unmounted
1617
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001618 * Fix i_nlink correctness after rmdir/unlink
1619
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016202004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001621
Miklos Szeredib1158392004-01-26 14:43:12 +00001622 * Released 1.1-pre2
1623
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016242004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001625
Miklos Szeredi307242f2004-01-26 11:28:44 +00001626 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001627
1628 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001629
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016302004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001631
1632 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001633
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016342004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001635
1636 * Write all pending data before a RELEASE operation
1637
1638 * Suppress 'Bad file descriptor' warning on exit
1639
1640 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001641 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001642
Miklos Szeredib1158392004-01-26 14:43:12 +00001643 * New fusermount option '-l' which enables big reads. Big reads
1644 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001645
1646 * fuse_main() can accept fusermount arguments after a '--'
1647
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016482004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001649
1650 * Support for exporting filesystem over NFS (see README.NFS)
1651
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016522004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001653
1654 * Support non-blocking writepage on 2.6. This makes FUSE behave
1655 much more nicely in low-memory situations
1656
1657 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1658 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001659
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016602004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001661
1662 * Code cleanups
1663
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016642004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001665
1666 * Released 1.1-pre1
1667
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016682004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001669
1670 * Integrated 2.6 kernel support patch by Michael Grigoriev
1671
1672 * Improvements and cleanups for 2.6 kernels
1673
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016742004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001675
Miklos Szeredie5183742005-02-02 11:14:04 +00001676 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001677
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016782003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001679
1680 * Added major+minor version to library API, and minor version to
1681 kernel API
1682
David McNab7a19caf2003-12-13 02:05:46 +000016832003-12-13 David McNab <david@rebirthing.co.nz>
1684
1685 * Implemented fsync support in examples/example.py
1686
1687 * Implemented 'fsync' and 'statfs' methods in python
1688 interface
1689
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016902003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001691
Miklos Szeredie5183742005-02-02 11:14:04 +00001692 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001693
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001694 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001695
David McNab8bf62632003-12-11 22:49:22 +000016962003-12-12 David McNab <david@rebirthing.co.nz>
1697
1698 * Added distutils support to the python module, as per standard
1699 python development practice
1700
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017012003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001702
1703 * Add file locking for mount/unmount (based on patch by Valient
1704 Gough)
1705
17062003-12-11 David McNab <david@rebirthing.co.nz>
1707
1708 * Python filesystem - was broken with python2.3, now fixed:
1709 - changed PyTuple_* calls to PySequence_*, because os.lstat
1710 is no longer returning a pure tuple
1711 - changed PyInt_Check() calls to also call PyLong_Check,
1712 to cover for cases (eg os.lstat) where longs are returned
1713 - Added support for file 'release' handling, which IMO is
1714 essential since this signals to a FS that writes to a file
1715 are complete (and therefore the file can now be disposed of
1716 meaningfully at the python filesystem's discretion)
1717 - Added '__init__' handler to base Fuse class, which allows
1718 your Python class to know the mountpoint and mount args,
1719 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001720
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001721 * General:
1722 - added 'mount.fuse' script (in util/ dir), which is meant to be
1723 symlinked from /sbin, and which allows FUSE filesystems to
1724 be mounted with the 'mount' command, and listed in fstab;
1725 also, mount arguments get passed to your filesystem
1726
1727
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017282003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001729
1730 * Fix kernel version detection (again). Bugreport by Peter Levart
1731
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017322003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001733
1734 * Applied read combining patch by Michael Grigoriev (tested by
1735 Valient Gough and Vincent Wagelaar)
1736
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017372003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001738
1739 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1740 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001741
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017422003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001743
1744 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001745
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017462003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001747
1748 * kernel version detection fix
1749
1750 * fusermount now uses "lazy" umount option
1751
1752 * fusermount can use modprobe with module-init-tools
1753
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017542003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001755
1756 * Integrated caching patch by Michael Grigoriev
1757
Miklos Szeredida4e4862003-09-08 11:14:11 +00001758 * Added "Filesystems" file with descriptions of projects using
1759 FUSE
1760
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001761 * Added patch by Michael Grigoriev to allow compliation of FUSE
1762 kernel module for 2.6 kernels
1763
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017642003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001765
1766 * And another spec-file fix by Achim Settelmeier
1767
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017682003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001769
1770 * Spec-file fix by Achim Settelmeier
1771
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017722003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001773
Miklos Szerediac361172004-11-02 19:14:14 +00001774 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001775
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017762003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001777
1778 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1779
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017802003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001781
1782 * Updated fuse.spec file (Achim Settelmeier)
1783
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017842003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001785
1786 * Version 1.0 released
1787
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017882003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001789
1790 * SuSE compilation fix by Juan-Mariano de Goyeneche
1791
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017922002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001793
1794 * The release() VFS call is now exported to the FUSE interface
1795
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017962002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001797
1798 * 64 bit file offset fixes in the fuse kernel module
1799
1800 * Added function 'fuse_exit()' which can be used to exit the main
1801 loop
1802
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018032002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001804
1805 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1806 an incompatible interface change.
1807
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018082002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001809
1810 * Portablility fix (bug reported by C. Chris Erway)
1811
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018122002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001813
1814 * Use Mark Glines' fd passing method for default operation instead
1815 of old reexec
1816
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018172002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001818
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001819 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1820
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018212002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001822
Miklos Szeredi60c23522002-10-24 09:19:43 +00001823 * fix incompatiblity with Red Hat kernels, with help from Nathan
1824 Thompson-Amato.
1825
Mark Glines65ba2192002-04-18 14:41:48 +000018262002-04-18 Mark Glines <mark@glines.org>
1827
1828 * added an alternative to fuse_mount(), called
1829 fuse_mount_ioslave(), which does not need to reexec the
1830 FUSE program.
1831 * added a small helper util needed by fuse_mount_ioslave().
1832
Mark Glines220635a2002-03-17 07:01:14 +000018332002-03-16 Mark Glines <mark@glines.org>
1834
1835 * use struct fuse_statfs everywhere possible to avoid problems
1836 with the headerfiles changing struct statfs member sizes
1837
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018382002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001839
1840 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1841
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018422002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001843
1844 * RPM support by Achim Settelmeier
1845
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018462002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001847
Miklos Szerediddc862a2002-01-09 13:46:10 +00001848 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001849
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018502002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001851
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001852 * Revaidate all path components not just the last, this means a
1853 very small performance penalty for being more up-to-date.
1854
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018552002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001856
1857 * Update and fix python interface
1858
Mark Glinesd84b39a2002-01-07 16:32:02 +000018592002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001860
Mark Glinesd84b39a2002-01-07 16:32:02 +00001861 * Added statfs() support to kernel, lib, examples, and perl!
1862
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018632001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001864
1865 * Better cross compilation support
1866
1867 * Ported to Compaq IPAQ
1868
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018692001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001870
Miklos Szeredife25def2001-12-20 15:38:05 +00001871 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001872 patch from Matt Ryan)
1873
Miklos Szeredife25def2001-12-20 15:38:05 +00001874 * Added flags to fusermount and to kernel interface to control
1875 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001876
Miklos Szeredife25def2001-12-20 15:38:05 +00001877 * Integrated fuse_set_operations() into fuse_new()
1878
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018792001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001880
1881 * Applied header protection + extern "C" patch by Roland
1882 Bauerschmidt
1883
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018842001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001885
Miklos Szeredie5183742005-02-02 11:14:04 +00001886 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001887
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018882001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001889
1890 * Cleaned up way of mounting simple filesystems.
1891
1892 * fuse_main() helper function added
1893
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018942001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001895
Miklos Szeredife25def2001-12-20 15:38:05 +00001896 * Optimized read/write operations, so that minimal copying of data
1897 is done
1898
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000018992001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001900
1901 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001902
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019032001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001904
1905 * Fixed vfsmount reference leak in fuse_follow_link
1906
1907 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1908 userspace is ignored
1909
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000019102001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001911
Miklos Szeredife25def2001-12-20 15:38:05 +00001912 * Started ChangeLog