blob: d1d98e9e7db2dccea2dc7de4366de6a77c77423a [file] [log] [blame]
Miklos Szeredi659743b2005-12-09 17:41:42 +000012005-12-09 Miklos Szeredi <miklos@szeredi.hu>
2
Miklos Szeredi3b534a42005-12-09 20:09:42 +00003 * Released 2.5.0-pre1
4
52005-12-09 Miklos Szeredi <miklos@szeredi.hu>
6
Miklos Szeredi659743b2005-12-09 17:41:42 +00007 * libfuse: added option parsing interface, defined in
8 <fuse_opt.h>.
9
Miklos Szeredic53cddd2005-12-07 12:57:59 +0000102005-12-07 Miklos Szeredi <miklos@szeredi.hu>
11
12 * Return EIO for file operations (read, write, fsync, flush) on
13 open files whose inode has become "bad". Inodes will be marked
14 "bad" if their type changes. Bug report by Csaba Henk
15
Miklos Szeredi044da2e2005-12-06 17:59:55 +0000162005-12-06 Miklos Szeredi <miklos@szeredi.hu>
17
18 * Use bigger request buffer size. write() did not work on archs
19 with > 4k page size, Bug report by Mark Haney
20
21 * ABI version 7.5:
22
23 * Extend INIT reply with data size limits
24
Miklos Szeredifa829b52005-12-02 11:05:41 +0000252005-12-02 Miklos Szeredi <miklos@szeredi.hu>
26
27 * Fix memory leak in fuse_read_cmd()/fuse_process_cmd(). Bug
28 reported by Vincenzo Ciancia
29
30 * Handle exit-by-umount in fuse_read_cmd()
31
Miklos Szeredi3cc8a262005-11-29 11:04:27 +0000322005-11-29 Miklos Szeredi <miklos@szeredi.hu>
33
34 * Check if '-msoft-float' option is supported by compiler when
35 configuring for a 2.4.x kernel. Bug report by Mark Haney
36
Miklos Szeredi40d7b382005-11-29 20:07:23 +000037 * In multithreaded loop send a TERM signal to the main thread if
38 one of the other threads exit. Needed on FreeBSD for a clean exit
39 on umount. Should not cause any harm on Linux either
40
Miklos Szerediead7f102005-11-28 16:02:27 +0000412005-11-28 Miklos Szeredi <miklos@szeredi.hu>
42
43 * Fix bug in 32-bit file handle compatibility
44
Miklos Szeredia90b7342005-11-27 19:22:42 +0000452005-11-27 Miklos Szeredi <miklos@szeredi.hu>
46
47 * Block TERM, INT, HUP and QUIT signals in all but the main
48 thread. According to POSIX it's not specified which thread will
49 receive these signals.
Miklos Szeredi2b478112005-11-28 13:27:10 +000050
51 * Kernel changes:
52
53 * Check for directory aliasing on mkdir, not just on lookup
54
55 * Check for special node ID values in create+open operation
56
57 * Sync with -mm: readv, writev, aio_read and aio_write methods
58 added to file operations
59
60 * Cleanups: lookup code, page offset calculation
61
62 * ABI stepped to 7.4, changes:
63
64 * frsize member added to fuse_kstatfs structure
65
66 * added support for negative entry caching: on lowlevel API if
67 fuse_entry_param::ino is set to zero in reply to a lookup request,
68 the kernel will cache the dentry for the specified amount of time.
69
70 * libfuse: added 'negative_timeout' option: specifies how much
71 negative entries should be cached. Default is zero, to be
Miklos Szerediead7f102005-11-28 16:02:27 +000072 compatible with prior versions
Miklos Szeredi2b478112005-11-28 13:27:10 +000073
Miklos Szeredibac4c772005-11-23 13:35:54 +0000742005-11-22 Miklos Szeredi <miklos@szeredi.hu>
75
76 * Add detection of mainline FUSE code in running kernel
77
Miklos Szeredi8393e3d2005-11-21 11:37:01 +0000782005-11-21 Miklos Szeredi <miklos@szeredi.hu>
79
80 * Don't use async cancelation in multithreaded loop. This makes
81 it more portable to systems where read() is not async cancel safe.
82 Report from Andriy Gapon
83
Miklos Szeredi05c97842005-11-20 17:05:07 +0000842005-11-20 Miklos Szeredi <miklos@szeredi.hu>
85
86 * Warn if API version 11 compatibility is requested
87
Miklos Szeredi9c2ccb42005-11-17 17:11:48 +0000882005-11-17 Miklos Szeredi <miklos@szeredi.hu>
89
90 * More FreeBSD merge
91
Miklos Szeredi832ee442005-11-18 21:02:36 +000092 * fusermount: don't allow mountpoints with '\n', '\t', or '\\' in
93 them, because it corrupts /etc/mtab. Found by Thomas Biege
Miklos Szeredibac4c772005-11-23 13:35:54 +000094 CVE-2005-3531
Miklos Szeredi832ee442005-11-18 21:02:36 +000095
96 * libfuse: don't use system() to invoke 'fusermount -u ...'
97 because it breaks mountpoints with spaces in them into multiple
98 arguments
99
Miklos Szeredib3f99722005-11-16 13:00:24 +00001002005-11-16 Miklos Szeredi <miklos@szeredi.hu>
101
102 * Merge library part of FreeBSD port. Patch by Csaba Henk
103
Miklos Szeredi3a770472005-11-11 21:32:42 +00001042005-11-11 Miklos Szeredi <miklos@szeredi.hu>
105
106 * Use 64bit type for file handle, so the full range supported by
107 the kernel interface is available to applications
108
Miklos Szeredibcc53852005-11-10 09:54:41 +00001092005-11-10 Miklos Szeredi <miklos@szeredi.hu>
110
111 * Moved mountpoint argument checking from fuse_parse_cmdline() to
112 fuse_mount() in preparation to FreeBSD merge.
113
Miklos Szeredi4ec06812005-11-08 13:04:27 +00001142005-11-08 Miklos Szeredi <miklos@szeredi.hu>
115
116 * Remove unneeded close() from fuse_teardown(). Spotted by Csaba
117 Henk.
118
Miklos Szeredic706ad92005-11-07 15:30:48 +00001192005-11-07 Miklos Szeredi <miklos@szeredi.hu>
120
121 * Make the statfs change backwards compatible.
122
Miklos Szeredi52cb09d2005-11-07 11:59:00 +00001232005-11-06 Miklos Szeredi <miklos@szeredi.hu>
124
125 * Change ->statfs() method to use 'struct statvfs' instead of
126 'struct statfs'. This makes the API more portable since statvfs()
127 is defined by POSIX.
128
Miklos Szeredif7eec032005-10-28 13:09:50 +00001292005-10-28 Miklos Szeredi <miklos@szeredi.hu>
130
131 * Add fgetattr() method, which currently will only be called after
132 a successful call to a create() method.
133
Miklos Szeredib0b13d12005-10-26 12:53:25 +00001342005-10-26 Miklos Szeredi <miklos@szeredi.hu>
135
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000136 * Change kernel ABI version to 7.3
137
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000138 * Add ACCESS operation. This is called from the access() system
Miklos Szeredid9079a72005-10-26 15:29:06 +0000139 call if 'default_permissions' mount option is not given, and is
140 not called on kernels 2.4.*
Miklos Szeredib0b13d12005-10-26 12:53:25 +0000141
Miklos Szeredid9079a72005-10-26 15:29:06 +0000142 * Add atomic CREATE+OPEN operation. This will only work with
143 2.6.15 (presumably) or later Linux kernels.
144
Miklos Szeredi11509ce2005-10-26 16:04:04 +0000145 * Add ftruncate() method. This will only work with 2.6.15
146 (presumably) or later Linux kernels.
147
148 * Fix kernel module compile if kernel source and build directories
149 differ. Report and initial patch by John Eastman
150
Miklos Szeredic4c12ae2005-10-20 14:48:50 +00001512005-10-18 Miklos Szeredi <miklos@szeredi.hu>
152
153 * lib: optimize buffer reallocation in fill_dir.
154
Miklos Szeredic9daeb12005-10-17 10:19:21 +00001552005-10-17 Miklos Szeredi <miklos@szeredi.hu>
156
157 * Released 2.4.1
158
Miklos Szeredif412d072005-10-14 21:24:32 +00001592005-10-14 Miklos Szeredi <miklos@szeredi.hu>
160
Miklos Szeredi062f0e52005-10-14 21:28:21 +0000161 * libfuse: add debug for write result (by Shaun Jackman) and
162 warnings for too large read/write result
Miklos Szeredif412d072005-10-14 21:24:32 +0000163
Miklos Szeredib75d4b92005-10-11 10:12:08 +00001642005-10-11 Miklos Szeredi <miklos@szeredi.hu>
165
166 * Spelling fixes, thanks to Ioannis Barkas
167
Miklos Szeredibaab5872005-10-10 08:41:14 +00001682005-10-10 Miklos Szeredi <miklos@szeredi.hu>
169
170 * fuse_common.h: use extern "C". Thanks to Valient Gough for the
171 patch
172
Miklos Szeredi4f5df5e2005-10-07 12:39:58 +00001732005-10-07 Miklos Szeredi <miklos@szeredi.hu>
174
175 * highlevel-lib: init() and destroy() methods didn't have an
176 initialized fuse_context. Bug reported by Tim Stoakes
177
Miklos Szeredif2491122005-10-04 10:10:41 +00001782005-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi83f253e2005-10-04 05:56:01 +0000179
180 * Released 2.4.0
181
Miklos Szeredi836ab712005-10-03 14:11:59 +00001822005-10-03 Miklos Szeredi <miklos@szeredi.hu>
183
184 * Add documentation to fuse_lowlevel.h
185
186 * API cleanups:
187
188 * Remove definitions of unused FATTR_CTIME / FUSE_SET_ATTR_CTIME
189
190 * Move fuse_mount() and fuse_unmount() to fuse_common.h
191
192 * Change the return type of fuse_reply_none() from int to void.
193
Miklos Szerediaf138742005-09-30 08:49:59 +00001942005-09-30 Miklos Szeredi <miklos@szeredi.hu>
195
196 * kernel: NFS exporting leaked dentries. Bug found and fixed by
197 Akshat Aranya.
198
Miklos Szeredidb016e02005-09-29 10:06:27 +00001992005-09-29 Miklos Szeredi <miklos@szeredi.hu>
200
201 * fusermount: fix error message, when unable to open /dev/fuse.
202 Report by Balázs Pozsár
203
Miklos Szeredi35200932005-09-28 14:50:49 +00002042005-09-28 Miklos Szeredi <miklos@szeredi.hu>
205
206 * UClibc fixes from Christian Magnusson
207
Miklos Szeredi8eddf642005-09-27 08:58:26 +00002082005-09-27 Miklos Szeredi <miklos@szeredi.hu>
209
210 * Added NAME="%k" to util/udev.rules. Fix by Mattias Wadman.
211
Miklos Szerediedec95c2005-09-26 10:22:22 +00002122005-09-26 Miklos Szeredi <miklos@szeredi.hu>
213
Miklos Szeredi39851ac2005-09-26 11:17:50 +0000214 * Released 2.4.0-rc1
215
2162005-09-26 Miklos Szeredi <miklos@szeredi.hu>
217
Miklos Szerediedec95c2005-09-26 10:22:22 +0000218 * fusermount: allow user umount in the case when /etc/mtab is a
219 symlink to /proc/mounts. Reported by Balázs Pozsár.
220
Miklos Szeredi6becf0b2005-09-23 11:25:28 +00002212005-09-23 Miklos Szeredi <miklos@szeredi.hu>
222
Miklos Szeredi8722dd22005-09-23 13:34:44 +0000223 * Check for special node ID values in lookup and creation
Miklos Szeredi6becf0b2005-09-23 11:25:28 +0000224
Miklos Szeredif45f3c12005-09-22 15:14:27 +00002252005-09-22 Miklos Szeredi <miklos@szeredi.hu>
226
227 * Slight optimization in returning EINVAL error in case of an open
228 with O_DIRECT flag.
229
Miklos Szeredi670d07a2005-09-20 11:36:32 +00002302005-09-20 Miklos Szeredi <miklos@szeredi.hu>
231
232 * Remove '--enable-auto-modprobe' configure flag. Module
233 auto-loading is now handled by the kernel.
234
Miklos Szeredid51fca12005-09-15 12:51:00 +00002352005-09-15 Miklos Szeredi <miklos@szeredi.hu>
236
237 * Install UDEV rule file, so /dev/fuse is created with mode 0666.
238 Help from Jens M. Noedler.
239
Miklos Szeredi7e7530d2005-09-14 15:20:26 +00002402005-09-14 Miklos Szeredi <miklos@szeredi.hu>
241
242 * Add memory cleanup on thread exit
243
Miklos Szeredid7ea8cf2005-09-13 12:53:58 +00002442005-09-13 Miklos Szeredi <miklos@szeredi.hu>
245
246 * Set umask to zero in fusexmp and fusexmp_fh, so that
247 files/directories are created with the requested mode.
248
Miklos Szeredi0d41f2f2005-09-12 16:40:26 +00002492005-09-12 Miklos Szeredi <miklos@szeredi.hu>
250
251 * Don't ignore read error in multithreaded loop
252
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +00002532005-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000254
Miklos Szeredi2277ecc2005-09-08 15:34:44 +0000255 * Released 2.4.0-pre2
256
2572005-09-08 Miklos Szeredi <miklos@szeredi.hu>
258
Miklos Szeredifcf9f8d2005-09-08 14:28:54 +0000259 * Revert lock and access operations. Postpone these until 2.5.
260
2612005-09-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi56487812005-09-02 13:05:06 +0000262
263 * Fix compile warning on 2.6.13 and later
264
Miklos Szeredi3b9e53f2005-09-02 16:04:48 +0000265 * Fix compilation on old kernels
Miklos Szeredi0716de02005-09-02 14:56:09 +0000266
Miklos Szeredi77ccf652005-08-19 14:40:27 +00002672005-08-19 Miklos Szeredi <miklos@szeredi.hu>
268
269 * lib: always refresh directory contents after rewinddir() to
270 conform to SUS. Bug found by John Muir.
271
Miklos Szeredia1482422005-08-14 23:00:27 +00002722005-08-15 Miklos Szeredi <miklos@szeredi.hu>
273
Miklos Szeredic43f9412005-08-15 15:10:48 +0000274 * Released 2.4.0-pre1
275
2762005-08-14 Miklos Szeredi <miklos@szeredi.hu>
277
Miklos Szeredia1482422005-08-14 23:00:27 +0000278 * lib: cleaned up (or messed up, depending on your POV) the low
279 level library API. Hopefully this is close to the final form.
280
Miklos Szeredicc1b97c2005-08-05 10:35:26 +00002812005-08-05 Miklos Szeredi <miklos@szeredi.hu>
282
283 * fusermount: don't allow empty mountpoint argument, which defeats
284 automatic umounting in fuse_main(). Bugreport by Václav Jůza
285
Miklos Szeredif6e0ec62005-08-03 09:11:06 +00002862005-08-03 Miklos Szeredi <miklos@szeredi.hu>
287
288 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
289 option is used (Paul Alfille).
290
Miklos Szeredi6c0209a2005-08-02 13:31:28 +00002912005-08-02 Miklos Szeredi <miklos@szeredi.hu>
292
293 * highlevel-lib: added mount options "attr_timeout" and
294 "entry_timeout". These options control the length of time file
295 attributes and entries (names) are cached. Both default to 1.0
296 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000297
298 * kernel: correctly handle zero timeout for attributes and entries
299
Miklos Szeredi56a61f02005-08-01 10:42:25 +00003002005-08-01 Miklos Szeredi <miklos@szeredi.hu>
301
302 * Added missing symbols to versionscript (Joshua J. Berry)
303
Miklos Szeredie77cc072005-08-01 11:58:51 +0000304 * kernel: implement two flags, open can set: 'direct_io' and
305 'keep_cache'. These correspond exactly to mount options
306 'direct_io' and 'kernel_cache', but allow a per-open setting.
307
308 * Move 'direct_io' and 'kernel_cache' mount option handling to
309 userspace. For both mount options, if the option is given, then
310 the respective open flag is set, otherwise the open flag is left
311 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +0000312
Miklos Szeredi31066bb2005-08-01 14:49:31 +0000313 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +0000314
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +00003152005-07-28 Miklos Szeredi <miklos@szeredi.hu>
316
317 * kernel: invalidate attributes for read/readdir/readlink
318 operations
319
320 * kernel: detect newer UML kernels
321
Miklos Szeredibfb99462005-07-26 11:07:55 +00003222005-07-26 Miklos Szeredi <miklos@szeredi.hu>
323
324 * Make the installation path of fuse.ko and mount.fuse
325 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
326 environment variables. Requirement and help from Csaba Henk.
327
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +00003282005-07-22 Miklos Szeredi <miklos@szeredi.hu>
329
330 * Fix bug, that causes filesystem requests to hang when unique
331 request counter becomes negative. This happens after
332 2,147,483,648 operations, so most people won't care. Thanks to
333 Franco Broi for the report and testing.
334
Miklos Szeredi9b813af2005-07-21 07:59:37 +00003352005-07-21 Miklos Szeredi <miklos@szeredi.hu>
336
337 * Don't change mtime/ctime/atime to local time on read/write.
338 Bug reported by Ben Grimm
339
340 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
341 Magnusson
342
343 * fusermount: use getopt_long() for option parsing. It allows the
344 use of '--' to stop argument scanning, so fusermount can now
345 operate on directories whose names begin with a '-'. Patch by
346 Adam Connell
347
Miklos Szeredibd10a7b2005-07-15 09:59:59 +00003482005-07-15 Miklos Szeredi <miklos@szeredi.hu>
349
350 * fusermount: add '-v', '--version' and '--help' options
351
352 * add inode based API
353
Miklos Szeredi2482fdb2005-07-12 13:23:53 +00003542005-07-12 Miklos Szeredi <miklos@szeredi.hu>
355
356 * lib: don't block signals in worker threads. Problem noticed by
357 Usarin Heininga
358
Miklos Szeredic902a852005-07-07 12:35:37 +00003592005-07-07 Miklos Szeredi <miklos@szeredi.hu>
360
361 * lib: don't allow both 'allow_other' and 'allow_root' options to
362 be given
363
Miklos Szeredi437d8112005-07-06 09:14:20 +00003642005-07-06 Miklos Szeredi <miklos@szeredi.hu>
365
366 * fusermount: check if mountpoint is empty (only '.' and '..' for
367 directories, and size = 0 for regular files). If "nonempty"
368 option is given, omit this check. This is useful, so users don't
369 accidentally hide data (e.g. from backup programs). Thanks to
370 Frank van Maarseveen for pointing this out.
371
372 * kernel: check if mandatory mount options ('fd', 'rootmode',
373 'user_id', 'group_id') are all given
374
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000375 * lib: simplify 'readdir_ino' handling
376
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000377 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
378
Miklos Szeredibb9f5172005-07-03 18:03:11 +00003792005-07-03 Miklos Szeredi <miklos@szeredi.hu>
380
381 * kernel: clean up 'direct_io' code
382
Miklos Szeredie1bcece2005-06-28 10:37:06 +00003832005-06-28 Miklos Szeredi <miklos@szeredi.hu>
384
385 * Add 'mount.fuse' written by Petr Klima
386
Miklos Szeredi866826d2005-06-28 12:22:57 +0000387 * '/dev/fuse' is created by 'make install' if does not yet exist
388
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00003892005-06-20 Miklos Szeredi <miklos@szeredi.hu>
390
391 * Fix UCLIBC compile error. Patch by Christian Magnusson
392
Miklos Szerediec12fad2005-06-08 10:26:34 +00003932005-06-08 Miklos Szeredi <miklos@szeredi.hu>
394
395 * Enable the auto-loading of the module via access to the
396 corresponding device file. Patch by Takashi Iwai.
397
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000398 * Allow mounting a regular file (over a regular file) for
399 unprivleged users.
400
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000401 * Do not create temporary device file. Require "/dev/fuse" to
402 exist, and be readable/writable by the mounting user.
403
Miklos Szeredi46960ce2005-06-02 09:05:00 +00004042005-06-02 Miklos Szeredi <miklos@szeredi.hu>
405
Miklos Szeredi56478552005-06-02 10:29:00 +0000406 * Released 2.3.0
407
4082005-06-02 Miklos Szeredi <miklos@szeredi.hu>
409
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000410 * Fix serious information leak: if the filesystem returns a short
411 byte count to a read request, and there are non-zero number of
412 pages which are not filled at all, these pages will not be zeroed.
413 Hence the user can read out previous memory contents. Found by
414 Sven Tantau.
415
Miklos Szeredi33be22d2005-05-27 09:12:43 +00004162005-05-27 Miklos Szeredi <miklos@szeredi.hu>
417
418 * Add "readdir_ino" mount option, which tries to fill in the d_ino
419 field in struct dirent. This mount option is ignored if "use_ino"
420 is used. It helps some programs (e.g. 'pwd' used over NFS from a
421 non-Linux OS). Patch by David Shaw.
422
Miklos Szeredif94e0102005-05-12 14:56:34 +00004232005-05-12 Miklos Szeredi <miklos@szeredi.hu>
424
Miklos Szeredieb009c42005-05-12 15:01:17 +0000425 * Released 2.3-rc1
426
4272005-05-12 Miklos Szeredi <miklos@szeredi.hu>
428
Miklos Szeredif94e0102005-05-12 14:56:34 +0000429 * File save in krusader and other editors doesn't work with sshfs,
430 because open() is interrupted by a periodic signal, and open()
431 restarts forever, without any progress. This could just be fixed
432 in open(), but the problem is more generic: if signals are
433 received more often than the filesystem can get the request to
434 userspace, it will never finish. This is probably only a
435 theoretical problem, nevertheless I'm removing the possibility to
436 interrupt requests with anything other than SIGKILL, even before
437 being sent to userspace. Bugreport by Eduard Czimbalmos.
438
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00004392005-05-09 Miklos Szeredi <miklos@szeredi.hu>
440
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000441 * libfuse: add "tree_lock" rwlock, that is locked for write in
442 rename, unlink and rmdir, and locked for read in all other
443 operations. This should fix the rename/release race reported by
444 Valient Gough and others. The solution is very coarse, a finer
445 grained locking scheme could be implemented, but it would be much
446 more complex. Let's see whether this is good enough.
447
4482005-05-09 Miklos Szeredi <miklos@szeredi.hu>
449
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000450 * Released 2.3-pre7
451
Miklos Szeredi38009022005-05-08 19:47:22 +00004522005-05-08 Miklos Szeredi <miklos@szeredi.hu>
453
454 * Better fix for out of order FORGET messages. Now the
455 LOOKUP/FORGET messages are balanced exactly (one FORGET can
456 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000457 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000458 compatible.
459
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00004602005-05-06 Miklos Szeredi <miklos@szeredi.hu>
461
462 * Fix abort for out of order FORGET messages. Again. Spotted by
463 Franco Broi again. Sorry :)
464
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00004652005-04-29 Miklos Szeredi <miklos@szeredi.hu>
466
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000467 * Released 2.3-pre6
468
4692005-04-29 Miklos Szeredi <miklos@szeredi.hu>
470
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000471 * Make fusermount work with fuse kernel modules not yet supporting
472 the "group_id" option (added for the purpose of stricter
473 permission checking).
474
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00004752005-04-28 Miklos Szeredi <miklos@szeredi.hu>
476
477 * Check for hard-linked directories in lookup. This could cause
478 problems in the VFS, which assumes that such objects never exist.
479
480 * Make checking of permission for other users more strict. Now
481 the same privilege is required for the mount owner as for ptrace
482 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000483
Miklos Szeredi3efcb562005-04-23 13:34:29 +00004842005-04-23 Miklos Szeredi <miklos@szeredi.hu>
485
486 * Released 2.3-pre5
487
Miklos Szeredid001bf92005-04-22 07:54:11 +00004882005-04-22 Miklos Szeredi <miklos@szeredi.hu>
489
490 * Add -msoft-float to kernel module compile flags for 2.4.X. This
491 is needed on certain architectures. Report from Chris Kirby
492
493 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
494 Reported by David Shaw
495
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000496 * Remove "allow_root" option from kernel module, and implement
497 it's functionality in the library
498
499 * Fix Oops caused by premature release of fuse_conn. Clean up
500 related code, to be more readable
501
Miklos Szeredif9137452005-04-23 10:59:44 +0000502 * Sendfile should not use page cache if "direct_io" mount option
503 is given
504
Miklos Szeredib7640d22005-04-08 15:15:28 +00005052005-04-08 Miklos Szeredi <miklos@szeredi.hu>
506
507 * Fix Oops in case of nfs export. Spotted by David Shaw
508
Miklos Szeredi89814a12005-04-08 16:39:09 +0000509 * Fix another Oops in case of write over nfs with direct_io turned
510 on. Again spotted by David Shaw
511
Miklos Szerediab974562005-04-07 15:40:21 +00005122005-04-07 Miklos Szeredi <miklos@szeredi.hu>
513
Miklos Szeredi432d6182005-04-07 15:56:13 +0000514 * Released 2.3-pre4
515
5162005-04-07 Miklos Szeredi <miklos@szeredi.hu>
517
Miklos Szerediab974562005-04-07 15:40:21 +0000518 * lib: finalized new readdir() interface, which now supersedes the
519 getdir() method.
520
Miklos Szeredi30e093a2005-04-03 17:44:54 +00005212005-04-03 Miklos Szeredi <miklos@szeredi.hu>
522
523 * Released 2.3-pre3
524
5252005-04-03 Miklos Szeredi <miklos@szeredi.hu>
526
527 * Implement backward compatibility with version 5 kernel ABI
528
Miklos Szeredi18fce982005-04-01 21:07:35 +00005292005-04-01 Miklos Szeredi <miklos@szeredi.hu>
530
531 * Released 2.3-pre2
532
5332005-04-01 Miklos Szeredi <miklos@szeredi.hu>
534
535 * kernel: fix dirent offset handling
536
537 * lib: add readdir and releasedir methods
538
539 * lib: use fh field of fuse_file_info in opendir, readdir,
540 releasedir and fsyncdir methods
541
542 * lib: check kernel API version and bail out of it's old. This
543 will be properly fixed in the next release
544
5452005-03-31 Miklos Szeredi <miklos@szeredi.hu>
546
547 * Released 2.3-pre1
548
Miklos Szeredieab72ef2005-03-31 19:59:12 +00005492005-03-31 Miklos Szeredi <miklos@szeredi.hu>
550
551 * kernel API: add padding to structures, so 64bit and 32bit
552 compiler will return the same size
553
554 * kernel API: add offset field to fuse_dirent. This will allow
555 more sophisticated readdir interface for userspace
556
557 * kernel API: change major number to 6
558
559 * kernel: fix warnings on 64bit archs
560
561 * kernel: in case of API version mismatch, return ECONNREFUSED
562
Miklos Szeredi407e6a72005-03-25 12:19:43 +00005632005-03-24 Miklos Szeredi <miklos@szeredi.hu>
564
565 * kernel: trivial cleanups
566
Miklos Szeredi4283ee72005-03-21 12:09:04 +00005672005-03-21 Miklos Szeredi <miklos@szeredi.hu>
568
569 * Add fsyncdir() operation
570
Miklos Szeredid17da462005-03-21 11:47:04 +00005712005-03-19 Miklos Szeredi <miklos@szeredi.hu>
572
573 * kernel: add locking to background list (fixes previous fix)
574
5752005-03-18 Miklos Szeredi <miklos@szeredi.hu>
576
577 * kernel: fix bug which could cause leave busy inodes after
578 unmount, and Oops.
579
5802005-03-08 Miklos Szeredi <miklos@szeredi.hu>
581
582 * examples: add -lpthread to link flags to work around valgrind
583 quirk
584
585 * lib: don't exit threads, so cancelation doesn't cause segfault
586
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00005872005-03-04 Miklos Szeredi <miklos@szeredi.hu>
588
589 * kernel: fix nasty bug which could cause an Oops under certain
590 situations. Found by Magnus Johansson
591
Miklos Szeredif43f0632005-02-28 11:46:56 +00005922005-02-28 Miklos Szeredi <miklos@szeredi.hu>
593
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000594 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000595 permission checking in getdir() is too late. Thanks to Usarin
596 Heininga for pointing out this deficiency
597
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000598 * libfuse: added init() and destroy() methods to fuse_operations
599
Miklos Szeredif43f0632005-02-28 11:46:56 +0000600 * kernel: llseek() method for files and directories made explicit
601
602 * kernel: fixed inode leak in NFS export in case of nodeid
603 wrapping
604
Miklos Szeredied3c97c2005-02-15 17:04:50 +00006052005-02-15 Miklos Szeredi <miklos@szeredi.hu>
606
607 * libfuse: clean up some unitialized memory found with valgrind
608
Miklos Szeredi47c52982005-02-23 09:27:38 +0000609 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
610 explicitly linked libpthread for applications
611
Miklos Szeredia7169412005-02-10 07:35:05 +00006122005-02-10 Miklos Szeredi <miklos@szeredi.hu>
613
614 * fusermount: set umask, otherwise /etc/mtab will have
615 unpredictable permission. Spotted by Jindrich Kolorenc
616
617 * fusermount: set owner and group of /etc/mtab to original values
618 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000619
620 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000621
Miklos Szeredib92d9782005-02-07 16:10:49 +00006222005-02-07 Miklos Szeredi <miklos@szeredi.hu>
623
624 * Cleaned up directory reading (temporary file is not used)
625
Miklos Szerediff30a6c2005-02-02 10:53:59 +00006262005-02-02 Miklos Szeredi <miklos@szeredi.hu>
627
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000628 * Released 2.2
629
6302005-02-02 Miklos Szeredi <miklos@szeredi.hu>
631
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000632 * Fix possible race when operation is interrupted
633
Miklos Szeredi7a983952005-01-28 09:58:19 +00006342005-01-28 Miklos Szeredi <miklos@szeredi.hu>
635
Miklos Szeredie5183742005-02-02 11:14:04 +0000636 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000637
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00006382005-01-26 Miklos Szeredi <miklos@szeredi.hu>
639
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000640 * Released 2.2-pre6
641
6422005-01-26 Miklos Szeredi <miklos@szeredi.hu>
643
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000644 * Fix bug in link() operation which caused the wrong path to be
645 passed as the first argument. Found by Anton Altaparmakov
646
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00006472005-01-21 Miklos Szeredi <miklos@szeredi.hu>
648
649 * LIB: fix double reply in readdir operation
650
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000651 * fusermount: fix uid checking bug. Patch by Adam Connell
652
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000653 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000654 Patch by Keshava Gowda
655
Miklos Szeredi64074142005-01-20 08:48:11 +00006562005-01-20 Miklos Szeredi <miklos@szeredi.hu>
657
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000658 * KERNEL: provide correct llseek semantics for fuse device (fixes
659 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
660
6612005-01-20 Miklos Szeredi <miklos@szeredi.hu>
662
Miklos Szeredi64074142005-01-20 08:48:11 +0000663 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
664
Miklos Szeredi1adb2272005-01-18 21:19:58 +00006652005-01-18 Miklos Szeredi <miklos@szeredi.hu>
666
667 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
668 and RELEASEDIR. This ends the ugly hack of passing a file
669 descriptor to the kernel, and actually makes the code simpler.
670
Miklos Szeredi7db35c02005-01-17 09:46:28 +00006712005-01-17 Miklos Szeredi <miklos@szeredi.hu>
672
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000673 * Released 2.2-pre4
674
6752005-01-17 Miklos Szeredi <miklos@szeredi.hu>
676
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000677 * fusermount: remove capability setting, which was the cause of
678 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000679 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000680
Miklos Szeredidbe0f652005-01-15 14:32:56 +00006812005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000682
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000683 * fix compilation on 2.4 kernels (reported by Valient Gough)
684
685 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000686
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000687 * fusermount: improve parsing of /etc/fuse.conf
688
6892005-01-13 Miklos Szeredi <miklos@szeredi.hu>
690
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000691 * Remove 'mount_max' and 'user_allow_other' module options. These
692 are now checked by fusermount, and can be set in /etc/fuse.conf
693
694 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
695
Miklos Szeredi81394522005-01-11 14:24:18 +00006962005-01-11 Miklos Szeredi <miklos@szeredi.hu>
697
698 * KERNEL: fix possible inode allocation problem, where
699 sizeof(struct inode) is not aligned (found by Mike Waychison)
700
701 * KERNEL: use new follow_link/put_link methods
702
703 * KERNEL: cosmetic fixes
704
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00007052005-01-10 Miklos Szeredi <miklos@szeredi.hu>
706
707 * Released 2.2-pre3
708
7092005-01-10 Miklos Szeredi <miklos@szeredi.hu>
710
711 * Add missing code that was accidently left out
712
Miklos Szeredi8c7da232005-01-09 12:27:41 +00007132005-01-09 Miklos Szeredi <miklos@szeredi.hu>
714
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000715 * Released 2.2-pre2
716
7172005-01-09 Miklos Szeredi <miklos@szeredi.hu>
718
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000719 * Change "uid" mount option to "user_id" to avoid confusion with a
720 mount option "uid" commonly used by many filesystems
721
7222005-01-09 Miklos Szeredi <miklos@szeredi.hu>
723
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000724 * Released 2.2-pre1
725
7262005-01-09 Miklos Szeredi <miklos@szeredi.hu>
727
728 * If FUSE is configured in the kernel, don't build it by default
729
Miklos Szeredi2a927272005-01-07 11:14:15 +00007302005-01-07 Miklos Szeredi <miklos@szeredi.hu>
731
732 * Compile fix by Christian Magnusson
733
Miklos Szeredib6220192005-01-05 16:19:10 +00007342005-01-05 Miklos Szeredi <miklos@szeredi.hu>
735
736 * Fix compilation for 2.6.{0-5} kernels
737
Miklos Szeredi0f62d722005-01-04 12:45:54 +00007382005-01-04 Miklos Szeredi <miklos@szeredi.hu>
739
740 * KERNEL: if request is interrupted, still keep reference to used
741 inode(s) and file, so that FORGET and RELEASE are not sent until
742 userspace finishes the request.
743
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000744 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
745 request with the same information, which is more flexible,
746 simpler, works on embedded systems.
747
Miklos Szeredi0f62d722005-01-04 12:45:54 +00007482004-12-16 Miklos Szeredi <miklos@szeredi.hu>
749
750 * KERNEL ABI: update interface to make it independent of type
751 sizes. This will help on 64 bit architectures which can run
752 legacy 32 bit applications.
753
754 * KERNEL ABI: add "len" field to request headers. This will allow
755 sending/receiving requests in multiple chunks.
756
757 * KERNEL: handle file type change more intelligently
758
759 * LIB: "-o debug" option should disable backgrounding (fix by
760 Fabien Reygrobellet)
761
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00007622004-12-13 Miklos Szeredi <miklos@szeredi.hu>
763
764 * KERNEL: invalidate dentry/attributes if interrupted request
765 could leave filesystem in an unknown state.
766
Miklos Szeredie56818b2004-12-12 11:45:24 +00007672004-12-12 Miklos Szeredi <miklos@szeredi.hu>
768
769 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
770 These will cause some regressions, but stability is considered
771 more important. If any of these features turns out to be
772 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000773
Miklos Szeredie56818b2004-12-12 11:45:24 +0000774 * Make all requests interruptible (only with SIGKILL currently).
775 This can be used to break any deadlock produced by the userspace
776 filesystem accessing it's own exported files. The RELEASE request
777 is special, because if it's interrupted before sending it to
778 userspace it is still sent, but the reply is not awaited.
779
780 * If request is interrupted before being sent to userspace, and if
781 it hasn't yet got any side effects, it is always restarted,
782 regardless of the SA_RESTART flag. This makes these interruptions
783 transparent to the process.
784
785 * Remove shared-writable mmap support, which was prone to an
786 out-of-memory deadlock situation
787
788 * Remove INVALIDATE userspace initiated request
789
790 * Make readpages() synchronous. Asynchronous requests are
791 deadlock prone, since they cannot be interrupted.
792
793 * Add readv/writev support to fuse device operations
794
795 * Remove some printks, which userspace FS can use for a DoS
796 against syslog
797
798 * Remove 'large_read' mount option from 2.6 in kernel, check it in
799 fusermount instead
800
801 * LIB: improve compatibility with a fuse.h header installed in
802 ${prefix}/include which in turn includes the real header.
803
804 * LIB: improve compatibility by defining fuse_main() (which is now
805 not used), so old configure scripts find it.
806
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00008072004-12-10 Miklos Szeredi <miklos@szeredi.hu>
808
809 * When mounting on a subdirectory of / don't duplicate slashes at
810 the beggining of path (spotted by David Shaw)
811
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00008122004-12-09 Miklos Szeredi <miklos@szeredi.hu>
813
814 * Fix bug causing garbage in mount options (spotted by David Shaw)
815
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00008162004-12-07 Miklos Szeredi <miklos@szeredi.hu>
817
818 * Add 'writepage' flag to 'fuse_file_info'.
819
820 * More comments in fuse.h
821
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000822 * Get rid of double underscores
823
Miklos Szeredi799993c2004-12-04 21:20:05 +00008242004-12-04 Miklos Szeredi <miklos@szeredi.hu>
825
826 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
827
828 * helper.c: add -ho option, which only displays the options not
829 the usage header. This can be used by filesystems which have
830 their own options.
831
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00008322004-12-03 Miklos Szeredi <miklos@szeredi.hu>
833
834 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
835 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
836 including the fuse header
837
838 * Add binary compatibility to 2.1 version of library with symbol
839 versioning
840
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00008412004-12-03 Miklos Szeredi <miklos@szeredi.hu>
842
843 * Released 2.1
844
Miklos Szeredi039322d2004-12-01 18:39:12 +00008452004-12-01 Miklos Szeredi <miklos@szeredi.hu>
846
847 * kernel: clean up writing functions
848
849 * kernel: no allocation on write in direct_io mode
850
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000851 * move linux/fuse.h to fuse_kernel.h
852
Miklos Szeredi83a07442004-11-30 18:25:20 +00008532004-11-30 Miklos Szeredi <miklos@szeredi.hu>
854
855 * kernel: clean up reading functions
856
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00008572004-11-29 Miklos Szeredi <miklos@szeredi.hu>
858
859 * kernel: make readpage() uninterruptible
860
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000861 * kernel: check readonly filesystem flag in fuse_permission
862
863 * lib: don't die if version file not found and new style device
864 exists
865
866 * lib: add '-r' option, which is short for '-o ro'
867
868 * fusermount: simplify device opening
869
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000870 * kernel: when direct_io is turend on, copy data directly to
871 destination without itermediate buffer. More efficient and safer,
872 since no allocation is done.
873
874 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000875
876 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000877
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00008782004-11-26 Miklos Szeredi <miklos@szeredi.hu>
879
880 * libfuse API change: open, read, write, flush, fsync and release
881 are passed a 'struct fuse_file_info' pointer containing the open
882 flags (open and release), and the file handle. Verion changed to
883 3.0.
884
Miklos Szeredia25d4c22004-11-23 22:32:16 +00008852004-11-23 Miklos Szeredi <miklos@szeredi.hu>
886
887 * More cleanups in the kernel
888
889 * The 10,229 charater device number has been assigned for FUSE
890
891 * Version file checking fix (reported by Christian Magnusson)
892
893 * fusermount: opening the fuse device now doesn't need /sys.
894
895 * Optimize reading by controlling the maximum readahead based on
896 the 'max_read' mount option
897
898 * fixes for UCLIBC (Christian Magnusson)
899
Miklos Szeredi13ed4822004-11-20 11:12:21 +00009002004-11-19 Miklos Szeredi <miklos@szeredi.hu>
901
902 * Cleaned up kernel in preparation for merge into mainline:
903
904 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
905
906 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
907
908 * __user annotations for sparse
909
910 * allocate individual pages instead of kmalloc in fuse_readdir,
911 fuse_read and fuse_write.
912
913 * Fix NFS export in case "use_ino" mount option is given
914
Miklos Szeredif3845c42004-11-20 11:18:34 +0000915 * Make libfuse and fusermount compatible with future versions
916
917 * fusermount: properly add mount options to /etc/mtab
918
9192004-11-15 Miklos Szeredi <miklos@szeredi.hu>
920
921 * fusermount: do not resolve last component of mountpoint on if it
922 is '.' or '..'. This new path resolvation is now done on mount as
923 well as unmount. This enables relative paths to work on unmount.
924
925 * fusermount: parse common mount options like "ro", "rw", etc...
926
927 * Allow module params to be changed through sysfs
928
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00009292004-11-14 Miklos Szeredi <miklos@szeredi.hu>
930
931 * Released 2.1-pre1
932
9332004-11-14 Miklos Szeredi <miklos@szeredi.hu>
934
935 * Fix bug in fuse_readpages() causing Oops in certain situations.
936 Bug found by Vincenzo Ciancia.
937
938 * Fix compilation with kernels versions > 2.6.9.
939
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00009402004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000941
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000942 * Check kernel interface version in fusermount to prevent
943 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000944
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000945 * No need to allocate fuse_conn until actual mount happens
946
947 * Fix potential race between umount and fuse_invalidate
948
949 * Check superblock of proc file in addition to inode number
950
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000951 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000952
Miklos Szeredi51ec1032004-11-10 11:52:26 +00009532004-11-10 Miklos Szeredi <miklos@szeredi.hu>
954
955 * Separate configure for the kernel directory
956
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000957 * Don't allow write to return more than 'count'
958
959 * Extend kernel interface for future use
960
Miklos Szeredi51ec1032004-11-10 11:52:26 +00009612004-11-09 Miklos Szeredi <miklos@szeredi.hu>
962
963 * Fix 'makeconf.sh' to use autoreconf if available
964
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00009652004-11-08 Miklos Szeredi <miklos@szeredi.hu>
966
Miklos Szeredid507c732004-11-08 17:32:25 +0000967 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
968 compatibility with earlier versions. To compile earier versions
969 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
970 Do not use the "use_ino" mount flag with filesystems compiled with
971 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000972
973 * Add pkg-config support. To compile a FUSE based filesystem you
974 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
975 or similar. Note, that the PKG_CONFIG_PATH environment variable
976 usually needs to be set to "/usr/local/lib/pkgconfig".
977
978 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000979
Miklos Szeredia13d9002004-11-02 17:32:03 +00009802004-11-02 Miklos Szeredi <miklos@szeredi.hu>
981
982 * Added "use_ino" mount option. This enables the filesystems to
983 set the st_ino field on files
984
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00009852004-11-01 Miklos Szeredi <miklos@szeredi.hu>
986
987 * Fix compile problems with ancient (<=2.4.18) kernels (reported
988 by Jeremy Smith)
989
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000990 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
991
992 * Clear the 'exited' flag when mail loop is finished
993
Miklos Szeredie989f0d2004-10-28 20:24:58 +00009942004-10-28 Miklos Szeredi <miklos@szeredi.hu>
995
996 * Make xattr functions work under 2.6 (bug found by Vincenzo
997 Ciancia)
998
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00009992004-10-26 Miklos Szeredi <miklos@szeredi.hu>
1000
1001 * Reset request in fuse_flush() (bugreport by David Shaw)
1002
Miklos Szeredi5dc8a802004-10-21 09:35:10 +000010032004-10-21 Miklos Szeredi <miklos@szeredi.hu>
1004
Miklos Szeredi0e70aa72004-10-21 16:24:29 +00001005 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001006 error code
1007
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001008 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00001009 make it easier to implement a custom event loop.
1010
Miklos Szeredifb97a1b2004-10-21 09:59:13 +00001011 * Use daemon() call to background the filesystem after mounting.
1012 This function closes the standard input, output and error and
1013 changes the current working directory to "/".
1014
Miklos Szeredi127d49b2004-10-14 13:33:39 +000010152004-10-14 Miklos Szeredi <miklos@szeredi.hu>
1016
1017 * Released 1.9
1018
Miklos Szeredid45baf42004-10-10 07:56:12 +000010192004-10-09 Miklos Szeredi <miklos@szeredi.hu>
1020
1021 * Don't allow fuse_flush() to be interrupted (bug found by David
1022 Shaw)
1023
Miklos Szeredi1f18db52004-09-27 06:54:49 +000010242004-09-27 Miklos Szeredi <miklos@szeredi.hu>
1025
1026 * Add PID to fuse_context. Patch by Steven James
1027
Miklos Szeredi1eea0322004-09-27 18:50:11 +00001028 * Change file handle type to 'unsigned long' in kernel interface
1029
Miklos Szeredid169f312004-09-22 08:48:26 +000010302004-09-22 Miklos Szeredi <miklos@szeredi.hu>
1031
1032 * A slight API change: fuse_get_context() doesn't need the "fuse"
1033 pointer, but the returned context contains it instead. The
1034 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +00001035
1036 * Fix mounting and umounting FUSE filesystem under another FUSE
1037 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +00001038
Miklos Szeredic2309912004-09-21 13:40:38 +000010392004-09-21 Miklos Szeredi <miklos@szeredi.hu>
1040
1041 * Fix deadlock in case of memory allocation failure. Patch by
1042 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +00001043
Miklos Szeredib2cf9562004-09-16 08:42:40 +000010442004-09-16 Miklos Szeredi <miklos@szeredi.hu>
1045
1046 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +00001047
Miklos Szeredi65afea12004-09-14 07:13:45 +000010482004-09-14 Miklos Szeredi <miklos@szeredi.hu>
1049
1050 * Check temporary file creation failure in do_getdir(). Bug
1051 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001052
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +000010532004-09-13 Miklos Szeredi <miklos@szeredi.hu>
1054
1055 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +00001056
1057 * Make requests non-interruptible so race with FORGET is avoided.
1058 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +00001059
1060 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001061
Miklos Szeredi8b2d3332004-09-09 08:44:01 +000010622004-09-09 Miklos Szeredi <miklos@szeredi.hu>
1063
1064 * Fix bug in case two FORGETs for the same node are executed in
1065 the wrong order. Bug spotted and endured for months by Franco
1066 Broi, and logfile for solution provided by Terje Oseberg
1067
Miklos Szeredi12085102004-09-02 18:13:57 +000010682004-09-01 Miklos Szeredi <miklos@szeredi.hu>
1069
1070 * Add -D_REENTRANT to the compile flags
1071
1072 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +00001073
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +000010742004-08-16 Miklos Szeredi <miklos@szeredi.hu>
1075
1076 * Change release method to be non-interruptible. Fixes bug
1077 causing missing release() call when program which has opened files
1078 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +00001079
Miklos Szeredi891b8742004-07-29 09:27:49 +000010802004-07-29 Miklos Szeredi <miklos@szeredi.hu>
1081
1082 * Add fuse_invalidate() to library API
1083
Miklos Szeredi94ed76a2004-07-26 19:38:45 +000010842004-07-26 Miklos Szeredi <miklos@szeredi.hu>
1085
1086 * Check permissions in setattr if 'default_permissions' flag is
1087 set. Bug spotted by Damjan Lango
1088
Miklos Szeredid66d3942004-07-24 13:47:44 +000010892004-07-24 Miklos Szeredi <miklos@szeredi.hu>
1090
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001091 * 'large_read' mount option removed for 2.6 kernels, since the
1092 default (dynamic read size) is better
1093
1094 * Extend kernel API with file handles. A file handle is returned
1095 by open, and passed to read, write, flush, fsync and release.
1096 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +00001097
Miklos Szeredi209f5d02004-07-24 19:56:16 +00001098 * Security changes:
1099
1100 * Change the current directory to the mountpoint before checking
1101 the permissions and mount filesystem on "."
1102
1103 * By default don't modprobe the fuse module for non-root. The old
1104 behavior can be restored with the '--enable-auto-modprobe' flag of
1105 ./configure
1106
1107 * By default don't allow shared writable mappings for non-root.
1108 The old behavior can be restored with the 'user_mmap=1' module
1109 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +00001110
Miklos Szeredibd7661b2004-07-23 17:16:29 +000011112004-07-23 Miklos Szeredi <miklos@szeredi.hu>
1112
1113 * Clean up mount option passing to fusermount and to fuse_new()
1114 BEWARE: this changes the userspace API slightly, and the command
1115 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +00001116
Miklos Szeredi58865372004-07-20 14:22:26 +000011172004-07-20 Miklos Szeredi <miklos@szeredi.hu>
1118
1119 * Optimize reading under 2.6 kernels by issuing multiple page
1120 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +00001121
Miklos Szeredi84ba0f42004-07-18 11:32:59 +000011222004-07-18 Miklos Szeredi <miklos@szeredi.hu>
1123
1124 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001125
Miklos Szeredi069c9502004-07-16 16:17:02 +000011262004-07-16 Miklos Szeredi <miklos@szeredi.hu>
1127
1128 * Separate directory entry and inode attribute validity timer
1129
1130 * New write semaphore to stop page writeback during truncate
1131
1132 * Fsync now waits for all writes to complete before sending the
1133 request
1134
1135 * Optimization: if a page is completely written by
1136 fuse_commit_write(), clear the dirty flag and set the uptodate
1137 flag for that page
1138
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +00001139 * Some memory cleanup at exit
1140
Miklos Szeredi2529ca22004-07-13 15:36:52 +000011412004-07-13 Miklos Szeredi <miklos@szeredi.hu>
1142
1143 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +00001144 disable the "hide if open" behavior of unlink/rename.
1145
1146 * If temporary buffer allocation fails in raw read, fall back to a
1147 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +00001148
Miklos Szeredi73798f92004-07-12 15:55:11 +000011492004-07-12 Miklos Szeredi <miklos@szeredi.hu>
1150
1151 * Fix bug in do_open() in libfuse: open count was incremented
1152 after the reply is sent so it could race with unlink/forget and
1153 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +00001154
Miklos Szeredi015fe702004-07-12 11:52:24 +000011552004-07-08 Miklos Szeredi <miklos@szeredi.hu>
1156
1157 * When performing create or remove operation, refresh the parent's
1158 attributes on next revalidate, as i_nlink (and maybe size/time)
1159 could be inacurate.
1160
1161 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
1162 pages (2.6 only)
1163
1164 * Set set_page_dirty address space operation (2.6 only)
1165
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011662004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +00001167
1168 * Minor fix in read: print debug info even if read size is zero
1169
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011702004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +00001171
1172 * Fix race between truncate and writepage (fsx-linux now runs
1173 without error)
1174
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011752004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001176
1177 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
1178 by Mattias Wadman)
1179
1180 * Added option for direct read/write (-r)
1181
1182 * Fix revalidate time setting for newly created inodes
1183
Miklos Szerediacb4d362004-07-02 16:20:45 +00001184 * Remove uid==0 check for '-x' option in fusermount (kernel checks
1185 this)
1186
1187 * fuse_main() only installs handlers for signals (out of INT, HUP,
1188 TERM, PIPE), for which no handler has yet been installed
1189
1190 * Add module option 'user_allow_other' which if set to non-zero
1191 will allow non root user to specify the 'allow_other' mount option
1192 ('-x' option of fusermount)
1193
Miklos Szeredi014d7d22004-07-02 21:22:37 +00001194 * Fix deadlock between page writeback completion and truncate
1195 (bug found by Valient Gough with the fsx-linux utility)
1196
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011972004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +00001198
1199 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +00001200 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
1201 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +00001202
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012032004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +00001204
1205 * Acquire inode->i_sem before open and release methods to prevent
1206 concurrent rename or unlink operations.
1207
Miklos Szeredi65cf7c72004-06-30 11:34:56 +00001208 * Make __fuse_read_cmd() read only one command. This allows
1209 multiplexing the fuse file descriptor with other event sources
1210 using select() or poll() (patch by Jeff Harris)
1211
1212 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
1213
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012142004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +00001215
1216 * Fix file offset wrap around at 4G when doing large reads
1217
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012182004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001219
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001220 * Fix memory leak in open (Valient Gough)
1221
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012222004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +00001223
Miklos Szeredi1ea9c962004-06-24 21:00:00 +00001224 * Add "close after delete" support to libfuse (patch by Valient
1225 Gough)
1226
1227 * Cancel all worker threads before exit in multithreaded mode
1228
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012292004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +00001230
1231 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +00001232
1233 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +00001234
1235 * Work with newer libtool (1.5a)
1236
1237 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +00001238
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012392004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +00001240
1241 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +00001242
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012432004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +00001244
1245 * Fix possible inode leak in userspace in case of unfinished
1246 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +00001247
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012482004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +00001249
1250 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +00001251
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012522004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +00001253
1254 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +00001255
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012562004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +00001257
1258 * Build shared library as well as static (using libtool)
1259
1260 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
1261 there has not been a release with the previous minor number, and I
1262 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +00001263
1264 * Change fuse_main(), so that default behavior is to go into
1265 background if mount is successful. '-f' and '-d' options disable
1266 backgrounding. This fixes the "Why does my FUSE daemon hang?"
1267 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +00001268
1269 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1270 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001271
1272 * Don't call getdir method from open() only from first readdir().
1273 Open is sometimes just used to store the current directory
1274 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001275
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012762004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001277
1278 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001279
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012802004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001281
1282 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001283
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012842004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001285
1286 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001287
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012882004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001289
1290 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001291
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012922004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001293
1294 * Replaced binary mount data with text options
1295
1296 * Show FUSE specific mount options in /proc/mounts
1297
1298 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1299
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013002004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001301
1302 * Check some limits so userspace won't get too big requests
1303
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013042004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001305
1306 * Kill compile warning
1307
1308 * Upgraded user-mount patch for 2.6.5
1309
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013102004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001311
1312 * Add detection of user-mode-linux to configure
1313
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013142004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001315
1316 * fixed zero size case for getxattr and listxattr
1317
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013182004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001319
1320 * new fusermount flag '-z': lazy unmount, default is not lazy
1321
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001322 * Extended attributes operations added (getxattr, setxattr,
1323 listxattr, removexattr)
1324
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013252004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001326
1327 * If filesystem doesn't define a statfs operation, then an
1328 all-zero default statfs is returned instead of ENOSYS
1329
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013302004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001331
1332 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1333
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013342004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001335
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001336 * Fix for uClinux (Christian Magnusson)
1337
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013382004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001339
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001340 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001341
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001342 * More kernel interface changes:
1343
1344 * Lookup/getattr return cache timeout values
1345
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013462004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001347
1348 * Clean up option parsing in fuse_main()
1349
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001350 * Added fuse_get() function which returns the fuse object created
1351 by fuse_main()
1352
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013532004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001354
Miklos Szeredic40748a2004-02-20 16:38:45 +00001355 * removed old way of mounting (fusermount mountpoint program)
1356
Miklos Szeredib5958612004-02-20 14:10:49 +00001357 * more kernel interface changes:
1358
1359 * added nanosecond precision to file times
1360
Miklos Szeredic40748a2004-02-20 16:38:45 +00001361 * removed interface version from mount data
1362
1363 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1364
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013652004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001366
1367 * statfs library API changed to match other methods. Since this
1368 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1369
Miklos Szeredi76f65782004-02-19 16:55:40 +00001370 * kernel interface changes follow:
1371
1372 * statfs changed to 64 bits, added 'bavail' field
1373
1374 * add generation number to lookup result
1375
1376 * optimized mknod/mkdir/symlink/link (no separate lookup is
1377 needed)
1378
1379 * rdev size increased to 32 bits for mknod
1380
1381 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001382
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013832004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001384
1385 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001386
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013872004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001388
1389 * Added user-mount.2.6.2-rc3.patch
1390
1391 * Add FS_SAFE flag to fuse filesystem
1392
1393 * fusermount should allow (un)mounting for non-root even if not
1394 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001395
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013962004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001397
1398 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001399
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014002004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001401
1402 * Added check for i_size_read/write functions to configure.in
1403 (patch by Valient Gough)
1404
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014052004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001406
1407 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001408
1409 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001410
1411 * Readpage calls flush_dcache_page() after storing data
1412
1413 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001414
1415 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001416
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014172004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001418
1419 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001420
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014212004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001422
1423 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001424
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014252004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001426
1427 * Added -q option for fusermount
1428
1429 * fuse_unmount() now uses -q option of fusermount, so no error is
1430 printed if the cause of the program exit is that the filesystem
1431 has already been unmounted
1432
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001433 * Fix i_nlink correctness after rmdir/unlink
1434
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014352004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001436
Miklos Szeredib1158392004-01-26 14:43:12 +00001437 * Released 1.1-pre2
1438
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014392004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001440
Miklos Szeredi307242f2004-01-26 11:28:44 +00001441 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001442
1443 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001444
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014452004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001446
1447 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001448
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014492004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001450
1451 * Write all pending data before a RELEASE operation
1452
1453 * Suppress 'Bad file descriptor' warning on exit
1454
1455 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001456 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001457
Miklos Szeredib1158392004-01-26 14:43:12 +00001458 * New fusermount option '-l' which enables big reads. Big reads
1459 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001460
1461 * fuse_main() can accept fusermount arguments after a '--'
1462
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014632004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001464
1465 * Support for exporting filesystem over NFS (see README.NFS)
1466
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014672004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001468
1469 * Support non-blocking writepage on 2.6. This makes FUSE behave
1470 much more nicely in low-memory situations
1471
1472 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1473 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001474
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014752004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001476
1477 * Code cleanups
1478
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014792004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001480
1481 * Released 1.1-pre1
1482
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014832004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001484
1485 * Integrated 2.6 kernel support patch by Michael Grigoriev
1486
1487 * Improvements and cleanups for 2.6 kernels
1488
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014892004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001490
Miklos Szeredie5183742005-02-02 11:14:04 +00001491 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001492
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014932003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001494
1495 * Added major+minor version to library API, and minor version to
1496 kernel API
1497
David McNab7a19caf2003-12-13 02:05:46 +000014982003-12-13 David McNab <david@rebirthing.co.nz>
1499
1500 * Implemented fsync support in examples/example.py
1501
1502 * Implemented 'fsync' and 'statfs' methods in python
1503 interface
1504
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015052003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001506
Miklos Szeredie5183742005-02-02 11:14:04 +00001507 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001508
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001509 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001510
David McNab8bf62632003-12-11 22:49:22 +000015112003-12-12 David McNab <david@rebirthing.co.nz>
1512
1513 * Added distutils support to the python module, as per standard
1514 python development practice
1515
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015162003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001517
1518 * Add file locking for mount/unmount (based on patch by Valient
1519 Gough)
1520
15212003-12-11 David McNab <david@rebirthing.co.nz>
1522
1523 * Python filesystem - was broken with python2.3, now fixed:
1524 - changed PyTuple_* calls to PySequence_*, because os.lstat
1525 is no longer returning a pure tuple
1526 - changed PyInt_Check() calls to also call PyLong_Check,
1527 to cover for cases (eg os.lstat) where longs are returned
1528 - Added support for file 'release' handling, which IMO is
1529 essential since this signals to a FS that writes to a file
1530 are complete (and therefore the file can now be disposed of
1531 meaningfully at the python filesystem's discretion)
1532 - Added '__init__' handler to base Fuse class, which allows
1533 your Python class to know the mountpoint and mount args,
1534 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001535
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001536 * General:
1537 - added 'mount.fuse' script (in util/ dir), which is meant to be
1538 symlinked from /sbin, and which allows FUSE filesystems to
1539 be mounted with the 'mount' command, and listed in fstab;
1540 also, mount arguments get passed to your filesystem
1541
1542
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015432003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001544
1545 * Fix kernel version detection (again). Bugreport by Peter Levart
1546
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015472003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001548
1549 * Applied read combining patch by Michael Grigoriev (tested by
1550 Valient Gough and Vincent Wagelaar)
1551
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015522003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001553
1554 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1555 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001556
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015572003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001558
1559 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001560
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015612003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001562
1563 * kernel version detection fix
1564
1565 * fusermount now uses "lazy" umount option
1566
1567 * fusermount can use modprobe with module-init-tools
1568
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015692003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001570
1571 * Integrated caching patch by Michael Grigoriev
1572
Miklos Szeredida4e4862003-09-08 11:14:11 +00001573 * Added "Filesystems" file with descriptions of projects using
1574 FUSE
1575
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001576 * Added patch by Michael Grigoriev to allow compliation of FUSE
1577 kernel module for 2.6 kernels
1578
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015792003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001580
1581 * And another spec-file fix by Achim Settelmeier
1582
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015832003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001584
1585 * Spec-file fix by Achim Settelmeier
1586
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015872003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001588
Miklos Szerediac361172004-11-02 19:14:14 +00001589 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001590
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015912003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001592
1593 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1594
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015952003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001596
1597 * Updated fuse.spec file (Achim Settelmeier)
1598
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000015992003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001600
1601 * Version 1.0 released
1602
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016032003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001604
1605 * SuSE compilation fix by Juan-Mariano de Goyeneche
1606
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016072002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001608
1609 * The release() VFS call is now exported to the FUSE interface
1610
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016112002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001612
1613 * 64 bit file offset fixes in the fuse kernel module
1614
1615 * Added function 'fuse_exit()' which can be used to exit the main
1616 loop
1617
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016182002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001619
1620 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1621 an incompatible interface change.
1622
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016232002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001624
1625 * Portablility fix (bug reported by C. Chris Erway)
1626
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016272002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001628
1629 * Use Mark Glines' fd passing method for default operation instead
1630 of old reexec
1631
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016322002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001633
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001634 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1635
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016362002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001637
Miklos Szeredi60c23522002-10-24 09:19:43 +00001638 * fix incompatiblity with Red Hat kernels, with help from Nathan
1639 Thompson-Amato.
1640
Mark Glines65ba2192002-04-18 14:41:48 +000016412002-04-18 Mark Glines <mark@glines.org>
1642
1643 * added an alternative to fuse_mount(), called
1644 fuse_mount_ioslave(), which does not need to reexec the
1645 FUSE program.
1646 * added a small helper util needed by fuse_mount_ioslave().
1647
Mark Glines220635a2002-03-17 07:01:14 +000016482002-03-16 Mark Glines <mark@glines.org>
1649
1650 * use struct fuse_statfs everywhere possible to avoid problems
1651 with the headerfiles changing struct statfs member sizes
1652
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016532002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001654
1655 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1656
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016572002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001658
1659 * RPM support by Achim Settelmeier
1660
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016612002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001662
Miklos Szerediddc862a2002-01-09 13:46:10 +00001663 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001664
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016652002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001666
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001667 * Revaidate all path components not just the last, this means a
1668 very small performance penalty for being more up-to-date.
1669
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016702002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001671
1672 * Update and fix python interface
1673
Mark Glinesd84b39a2002-01-07 16:32:02 +000016742002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001675
Mark Glinesd84b39a2002-01-07 16:32:02 +00001676 * Added statfs() support to kernel, lib, examples, and perl!
1677
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016782001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001679
1680 * Better cross compilation support
1681
1682 * Ported to Compaq IPAQ
1683
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016842001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001685
Miklos Szeredife25def2001-12-20 15:38:05 +00001686 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001687 patch from Matt Ryan)
1688
Miklos Szeredife25def2001-12-20 15:38:05 +00001689 * Added flags to fusermount and to kernel interface to control
1690 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001691
Miklos Szeredife25def2001-12-20 15:38:05 +00001692 * Integrated fuse_set_operations() into fuse_new()
1693
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016942001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001695
1696 * Applied header protection + extern "C" patch by Roland
1697 Bauerschmidt
1698
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000016992001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001700
Miklos Szeredie5183742005-02-02 11:14:04 +00001701 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001702
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017032001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001704
1705 * Cleaned up way of mounting simple filesystems.
1706
1707 * fuse_main() helper function added
1708
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017092001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001710
Miklos Szeredife25def2001-12-20 15:38:05 +00001711 * Optimized read/write operations, so that minimal copying of data
1712 is done
1713
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017142001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001715
1716 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001717
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017182001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001719
1720 * Fixed vfsmount reference leak in fuse_follow_link
1721
1722 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1723 userspace is ignored
1724
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000017252001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001726
Miklos Szeredife25def2001-12-20 15:38:05 +00001727 * Started ChangeLog