blob: 4bc79dc958968ad7612a843ad737a69eb36b3105 [file] [log] [blame]
Miklos Szeredicc1b97c2005-08-05 10:35:26 +000012005-08-05 Miklos Szeredi <miklos@szeredi.hu>
2
3 * fusermount: don't allow empty mountpoint argument, which defeats
4 automatic umounting in fuse_main(). Bugreport by Václav Jůza
5
Miklos Szeredif6e0ec62005-08-03 09:11:06 +000062005-08-03 Miklos Szeredi <miklos@szeredi.hu>
7
8 * fix warnings in fuse.h and fuse_lowlevel.h if -Wshadow compiler
9 option is used (Paul Alfille).
10
Miklos Szeredi6c0209a2005-08-02 13:31:28 +0000112005-08-02 Miklos Szeredi <miklos@szeredi.hu>
12
13 * highlevel-lib: added mount options "attr_timeout" and
14 "entry_timeout". These options control the length of time file
15 attributes and entries (names) are cached. Both default to 1.0
16 second.
Miklos Szeredif6e0ec62005-08-03 09:11:06 +000017
18 * kernel: correctly handle zero timeout for attributes and entries
19
Miklos Szeredi56a61f02005-08-01 10:42:25 +0000202005-08-01 Miklos Szeredi <miklos@szeredi.hu>
21
22 * Added missing symbols to versionscript (Joshua J. Berry)
23
Miklos Szeredicac54702005-08-01 10:44:45 +000024 * Do not limit number of file locks being waited upon
25
Miklos Szeredie77cc072005-08-01 11:58:51 +000026 * kernel: implement two flags, open can set: 'direct_io' and
27 'keep_cache'. These correspond exactly to mount options
28 'direct_io' and 'kernel_cache', but allow a per-open setting.
29
30 * Move 'direct_io' and 'kernel_cache' mount option handling to
31 userspace. For both mount options, if the option is given, then
32 the respective open flag is set, otherwise the open flag is left
33 unmodified (so the filesystem can set it).
Miklos Szeredi7b28eae2005-08-01 12:48:30 +000034
35 * Add ACCESS operation. This is called from the access() system
36 call if 'default_permissions' mount option is not given
Miklos Szeredi009b8782005-08-01 13:36:53 +000037
38 * Perform ACCESS operation in case of open(), if the file wasn't
39 newly created
Miklos Szeredi31066bb2005-08-01 14:49:31 +000040
41 * lib (highlevel): make open method optional
Miklos Szeredif6e0ec62005-08-03 09:11:06 +000042
Miklos Szeredi2aaf24a2005-07-28 11:59:41 +0000432005-07-28 Miklos Szeredi <miklos@szeredi.hu>
44
45 * kernel: invalidate attributes for read/readdir/readlink
46 operations
47
48 * kernel: detect newer UML kernels
49
Miklos Szeredibfb99462005-07-26 11:07:55 +0000502005-07-26 Miklos Szeredi <miklos@szeredi.hu>
51
52 * Make the installation path of fuse.ko and mount.fuse
53 configurable through INSTALL_MOD_PATH and MOUNT_FUSE_PATH
54 environment variables. Requirement and help from Csaba Henk.
55
Miklos Szeredi8d4d1b82005-07-22 11:58:47 +0000562005-07-22 Miklos Szeredi <miklos@szeredi.hu>
57
58 * Fix bug, that causes filesystem requests to hang when unique
59 request counter becomes negative. This happens after
60 2,147,483,648 operations, so most people won't care. Thanks to
61 Franco Broi for the report and testing.
62
Miklos Szeredie3b83092005-07-22 17:24:30 +000063 * Added file locking methods to kernel and low-level API.
64
Miklos Szeredi9b813af2005-07-21 07:59:37 +0000652005-07-21 Miklos Szeredi <miklos@szeredi.hu>
66
67 * Don't change mtime/ctime/atime to local time on read/write.
68 Bug reported by Ben Grimm
69
70 * Install fuse_common.h and fuse_lowlevel.h. Report by Christian
71 Magnusson
72
73 * fusermount: use getopt_long() for option parsing. It allows the
74 use of '--' to stop argument scanning, so fusermount can now
75 operate on directories whose names begin with a '-'. Patch by
76 Adam Connell
77
Miklos Szeredibd10a7b2005-07-15 09:59:59 +0000782005-07-15 Miklos Szeredi <miklos@szeredi.hu>
79
80 * fusermount: add '-v', '--version' and '--help' options
81
82 * add inode based API
83
Miklos Szeredi2482fdb2005-07-12 13:23:53 +0000842005-07-12 Miklos Szeredi <miklos@szeredi.hu>
85
86 * lib: don't block signals in worker threads. Problem noticed by
87 Usarin Heininga
88
Miklos Szeredic902a852005-07-07 12:35:37 +0000892005-07-07 Miklos Szeredi <miklos@szeredi.hu>
90
91 * lib: don't allow both 'allow_other' and 'allow_root' options to
92 be given
93
Miklos Szeredi437d8112005-07-06 09:14:20 +0000942005-07-06 Miklos Szeredi <miklos@szeredi.hu>
95
96 * fusermount: check if mountpoint is empty (only '.' and '..' for
97 directories, and size = 0 for regular files). If "nonempty"
98 option is given, omit this check. This is useful, so users don't
99 accidentally hide data (e.g. from backup programs). Thanks to
100 Frank van Maarseveen for pointing this out.
101
102 * kernel: check if mandatory mount options ('fd', 'rootmode',
103 'user_id', 'group_id') are all given
104
Miklos Szeredi340d21f2005-07-06 10:07:52 +0000105 * lib: simplify 'readdir_ino' handling
106
Miklos Szeredie331c4b2005-07-06 13:34:02 +0000107 * lib: add mount options 'umask=M', 'uid=N', 'gid=N'
108
Miklos Szeredibb9f5172005-07-03 18:03:11 +00001092005-07-03 Miklos Szeredi <miklos@szeredi.hu>
110
111 * kernel: clean up 'direct_io' code
112
Miklos Szeredie1bcece2005-06-28 10:37:06 +00001132005-06-28 Miklos Szeredi <miklos@szeredi.hu>
114
115 * Add 'mount.fuse' written by Petr Klima
116
Miklos Szeredi866826d2005-06-28 12:22:57 +0000117 * '/dev/fuse' is created by 'make install' if does not yet exist
118
Miklos Szeredi129ef8f2005-06-20 13:48:42 +00001192005-06-20 Miklos Szeredi <miklos@szeredi.hu>
120
121 * Fix UCLIBC compile error. Patch by Christian Magnusson
122
Miklos Szerediec12fad2005-06-08 10:26:34 +00001232005-06-08 Miklos Szeredi <miklos@szeredi.hu>
124
125 * Enable the auto-loading of the module via access to the
126 corresponding device file. Patch by Takashi Iwai.
127
Miklos Szeredidaa690e2005-06-08 10:41:36 +0000128 * Allow mounting a regular file (over a regular file) for
129 unprivleged users.
130
Miklos Szeredi7495abf2005-06-08 11:01:17 +0000131 * Do not create temporary device file. Require "/dev/fuse" to
132 exist, and be readable/writable by the mounting user.
133
Miklos Szeredi46960ce2005-06-02 09:05:00 +00001342005-06-02 Miklos Szeredi <miklos@szeredi.hu>
135
Miklos Szeredi56478552005-06-02 10:29:00 +0000136 * Released 2.3.0
137
1382005-06-02 Miklos Szeredi <miklos@szeredi.hu>
139
Miklos Szeredi46960ce2005-06-02 09:05:00 +0000140 * Fix serious information leak: if the filesystem returns a short
141 byte count to a read request, and there are non-zero number of
142 pages which are not filled at all, these pages will not be zeroed.
143 Hence the user can read out previous memory contents. Found by
144 Sven Tantau.
145
Miklos Szeredi33be22d2005-05-27 09:12:43 +00001462005-05-27 Miklos Szeredi <miklos@szeredi.hu>
147
148 * Add "readdir_ino" mount option, which tries to fill in the d_ino
149 field in struct dirent. This mount option is ignored if "use_ino"
150 is used. It helps some programs (e.g. 'pwd' used over NFS from a
151 non-Linux OS). Patch by David Shaw.
152
Miklos Szeredif94e0102005-05-12 14:56:34 +00001532005-05-12 Miklos Szeredi <miklos@szeredi.hu>
154
Miklos Szeredieb009c42005-05-12 15:01:17 +0000155 * Released 2.3-rc1
156
1572005-05-12 Miklos Szeredi <miklos@szeredi.hu>
158
Miklos Szeredif94e0102005-05-12 14:56:34 +0000159 * File save in krusader and other editors doesn't work with sshfs,
160 because open() is interrupted by a periodic signal, and open()
161 restarts forever, without any progress. This could just be fixed
162 in open(), but the problem is more generic: if signals are
163 received more often than the filesystem can get the request to
164 userspace, it will never finish. This is probably only a
165 theoretical problem, nevertheless I'm removing the possibility to
166 interrupt requests with anything other than SIGKILL, even before
167 being sent to userspace. Bugreport by Eduard Czimbalmos.
168
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +00001692005-05-09 Miklos Szeredi <miklos@szeredi.hu>
170
Miklos Szeredic2a33ee2005-05-09 13:29:17 +0000171 * libfuse: add "tree_lock" rwlock, that is locked for write in
172 rename, unlink and rmdir, and locked for read in all other
173 operations. This should fix the rename/release race reported by
174 Valient Gough and others. The solution is very coarse, a finer
175 grained locking scheme could be implemented, but it would be much
176 more complex. Let's see whether this is good enough.
177
1782005-05-09 Miklos Szeredi <miklos@szeredi.hu>
179
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000180 * Released 2.3-pre7
181
Miklos Szeredi38009022005-05-08 19:47:22 +00001822005-05-08 Miklos Szeredi <miklos@szeredi.hu>
183
184 * Better fix for out of order FORGET messages. Now the
185 LOOKUP/FORGET messages are balanced exactly (one FORGET can
186 balance many lookups), so the order no longer matters. This
Miklos Szeredi0b9a06e2005-05-09 09:05:49 +0000187 changes the kernel ABI slightly, but the library remains backward
Miklos Szeredi38009022005-05-08 19:47:22 +0000188 compatible.
189
Miklos Szeredid0cf1fb2005-05-06 10:10:38 +00001902005-05-06 Miklos Szeredi <miklos@szeredi.hu>
191
192 * Fix abort for out of order FORGET messages. Again. Spotted by
193 Franco Broi again. Sorry :)
194
Miklos Szeredi9372ffd2005-04-29 08:03:24 +00001952005-04-29 Miklos Szeredi <miklos@szeredi.hu>
196
Miklos Szeredicb6413a2005-04-29 08:16:20 +0000197 * Released 2.3-pre6
198
1992005-04-29 Miklos Szeredi <miklos@szeredi.hu>
200
Miklos Szeredi9372ffd2005-04-29 08:03:24 +0000201 * Make fusermount work with fuse kernel modules not yet supporting
202 the "group_id" option (added for the purpose of stricter
203 permission checking).
204
Miklos Szeredi9c1b68d2005-04-28 09:55:09 +00002052005-04-28 Miklos Szeredi <miklos@szeredi.hu>
206
207 * Check for hard-linked directories in lookup. This could cause
208 problems in the VFS, which assumes that such objects never exist.
209
210 * Make checking of permission for other users more strict. Now
211 the same privilege is required for the mount owner as for ptrace
212 on the process performing the filesystem operation.
Miklos Szeredi21019c92005-05-09 11:22:41 +0000213
Miklos Szeredi3efcb562005-04-23 13:34:29 +00002142005-04-23 Miklos Szeredi <miklos@szeredi.hu>
215
216 * Released 2.3-pre5
217
Miklos Szeredid001bf92005-04-22 07:54:11 +00002182005-04-22 Miklos Szeredi <miklos@szeredi.hu>
219
220 * Add -msoft-float to kernel module compile flags for 2.4.X. This
221 is needed on certain architectures. Report from Chris Kirby
222
223 * Fix buggy behavior of open(..., O_CREAT|O_EXCL) if interrupted.
224 Reported by David Shaw
225
Miklos Szeredi0111f9d2005-04-22 12:04:55 +0000226 * Remove "allow_root" option from kernel module, and implement
227 it's functionality in the library
228
229 * Fix Oops caused by premature release of fuse_conn. Clean up
230 related code, to be more readable
231
Miklos Szeredif9137452005-04-23 10:59:44 +0000232 * Sendfile should not use page cache if "direct_io" mount option
233 is given
234
Miklos Szeredib7640d22005-04-08 15:15:28 +00002352005-04-08 Miklos Szeredi <miklos@szeredi.hu>
236
237 * Fix Oops in case of nfs export. Spotted by David Shaw
238
Miklos Szeredi89814a12005-04-08 16:39:09 +0000239 * Fix another Oops in case of write over nfs with direct_io turned
240 on. Again spotted by David Shaw
241
Miklos Szerediab974562005-04-07 15:40:21 +00002422005-04-07 Miklos Szeredi <miklos@szeredi.hu>
243
Miklos Szeredi432d6182005-04-07 15:56:13 +0000244 * Released 2.3-pre4
245
2462005-04-07 Miklos Szeredi <miklos@szeredi.hu>
247
Miklos Szerediab974562005-04-07 15:40:21 +0000248 * lib: finalized new readdir() interface, which now supersedes the
249 getdir() method.
250
Miklos Szeredi30e093a2005-04-03 17:44:54 +00002512005-04-03 Miklos Szeredi <miklos@szeredi.hu>
252
253 * Released 2.3-pre3
254
2552005-04-03 Miklos Szeredi <miklos@szeredi.hu>
256
257 * Implement backward compatibility with version 5 kernel ABI
258
Miklos Szeredi18fce982005-04-01 21:07:35 +00002592005-04-01 Miklos Szeredi <miklos@szeredi.hu>
260
261 * Released 2.3-pre2
262
2632005-04-01 Miklos Szeredi <miklos@szeredi.hu>
264
265 * kernel: fix dirent offset handling
266
267 * lib: add readdir and releasedir methods
268
269 * lib: use fh field of fuse_file_info in opendir, readdir,
270 releasedir and fsyncdir methods
271
272 * lib: check kernel API version and bail out of it's old. This
273 will be properly fixed in the next release
274
2752005-03-31 Miklos Szeredi <miklos@szeredi.hu>
276
277 * Released 2.3-pre1
278
Miklos Szeredieab72ef2005-03-31 19:59:12 +00002792005-03-31 Miklos Szeredi <miklos@szeredi.hu>
280
281 * kernel API: add padding to structures, so 64bit and 32bit
282 compiler will return the same size
283
284 * kernel API: add offset field to fuse_dirent. This will allow
285 more sophisticated readdir interface for userspace
286
287 * kernel API: change major number to 6
288
289 * kernel: fix warnings on 64bit archs
290
291 * kernel: in case of API version mismatch, return ECONNREFUSED
292
Miklos Szeredi407e6a72005-03-25 12:19:43 +00002932005-03-24 Miklos Szeredi <miklos@szeredi.hu>
294
295 * kernel: trivial cleanups
296
Miklos Szeredi4283ee72005-03-21 12:09:04 +00002972005-03-21 Miklos Szeredi <miklos@szeredi.hu>
298
299 * Add fsyncdir() operation
300
Miklos Szeredid17da462005-03-21 11:47:04 +00003012005-03-19 Miklos Szeredi <miklos@szeredi.hu>
302
303 * kernel: add locking to background list (fixes previous fix)
304
3052005-03-18 Miklos Szeredi <miklos@szeredi.hu>
306
307 * kernel: fix bug which could cause leave busy inodes after
308 unmount, and Oops.
309
3102005-03-08 Miklos Szeredi <miklos@szeredi.hu>
311
312 * examples: add -lpthread to link flags to work around valgrind
313 quirk
314
315 * lib: don't exit threads, so cancelation doesn't cause segfault
316
Miklos Szeredi31fa41c2005-03-04 17:28:51 +00003172005-03-04 Miklos Szeredi <miklos@szeredi.hu>
318
319 * kernel: fix nasty bug which could cause an Oops under certain
320 situations. Found by Magnus Johansson
321
Miklos Szeredif43f0632005-02-28 11:46:56 +00003222005-02-28 Miklos Szeredi <miklos@szeredi.hu>
323
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000324 * libfuse: added opendir() method. This can be used in case
Miklos Szeredif43f0632005-02-28 11:46:56 +0000325 permission checking in getdir() is too late. Thanks to Usarin
326 Heininga for pointing out this deficiency
327
Miklos Szeredi159bd7e2005-02-28 17:32:16 +0000328 * libfuse: added init() and destroy() methods to fuse_operations
329
Miklos Szeredif43f0632005-02-28 11:46:56 +0000330 * kernel: llseek() method for files and directories made explicit
331
332 * kernel: fixed inode leak in NFS export in case of nodeid
333 wrapping
334
Miklos Szeredied3c97c2005-02-15 17:04:50 +00003352005-02-15 Miklos Szeredi <miklos@szeredi.hu>
336
337 * libfuse: clean up some unitialized memory found with valgrind
338
Miklos Szeredi47c52982005-02-23 09:27:38 +0000339 * Add -lpthread to Libs in fuse.pc. Valgrind seems to need an
340 explicitly linked libpthread for applications
341
Miklos Szeredia7169412005-02-10 07:35:05 +00003422005-02-10 Miklos Szeredi <miklos@szeredi.hu>
343
344 * fusermount: set umask, otherwise /etc/mtab will have
345 unpredictable permission. Spotted by Jindrich Kolorenc
346
347 * fusermount: set owner and group of /etc/mtab to original values
348 on unmount
Miklos Szeredi830ef702005-02-10 19:39:34 +0000349
350 * libfuse: add 'use_ino' option to help. Patch by Valient Gough
Miklos Szeredi21019c92005-05-09 11:22:41 +0000351
Miklos Szeredib92d9782005-02-07 16:10:49 +00003522005-02-07 Miklos Szeredi <miklos@szeredi.hu>
353
354 * Cleaned up directory reading (temporary file is not used)
355
Miklos Szerediff30a6c2005-02-02 10:53:59 +00003562005-02-02 Miklos Szeredi <miklos@szeredi.hu>
357
Miklos Szeredi7ed2e5d2005-02-02 13:31:14 +0000358 * Released 2.2
359
3602005-02-02 Miklos Szeredi <miklos@szeredi.hu>
361
Miklos Szerediff30a6c2005-02-02 10:53:59 +0000362 * Fix possible race when operation is interrupted
363
Miklos Szeredi7a983952005-01-28 09:58:19 +00003642005-01-28 Miklos Szeredi <miklos@szeredi.hu>
365
Miklos Szeredie5183742005-02-02 11:14:04 +0000366 * Fix compilation on 2.6.7
Miklos Szeredi7a983952005-01-28 09:58:19 +0000367
Miklos Szeredied6b5dd2005-01-26 17:07:59 +00003682005-01-26 Miklos Szeredi <miklos@szeredi.hu>
369
Miklos Szeredid48d5f72005-01-26 20:43:41 +0000370 * Released 2.2-pre6
371
3722005-01-26 Miklos Szeredi <miklos@szeredi.hu>
373
Miklos Szeredied6b5dd2005-01-26 17:07:59 +0000374 * Fix bug in link() operation which caused the wrong path to be
375 passed as the first argument. Found by Anton Altaparmakov
376
Miklos Szeredi01fd89c2005-01-21 11:18:35 +00003772005-01-21 Miklos Szeredi <miklos@szeredi.hu>
378
379 * LIB: fix double reply in readdir operation
380
Miklos Szeredi773d4ae2005-01-21 16:09:08 +0000381 * fusermount: fix uid checking bug. Patch by Adam Connell
382
Miklos Szeredi1e1cddf2005-02-02 10:15:36 +0000383 * KERNEL: fix compile on various RedHat patched 2.4 kernels.
Miklos Szeredi57762852005-01-21 16:46:58 +0000384 Patch by Keshava Gowda
385
Miklos Szeredi64074142005-01-20 08:48:11 +00003862005-01-20 Miklos Szeredi <miklos@szeredi.hu>
387
Miklos Szeredi092b50b2005-01-20 18:05:07 +0000388 * KERNEL: provide correct llseek semantics for fuse device (fixes
389 a bug on Progeny 2.4.20 kernel). Reported by Valient Gough
390
3912005-01-20 Miklos Szeredi <miklos@szeredi.hu>
392
Miklos Szeredi64074142005-01-20 08:48:11 +0000393 * Released 2.2-pre5 (matches kernel 2.6.11-rc1-mm2)
394
Miklos Szeredi1adb2272005-01-18 21:19:58 +00003952005-01-18 Miklos Szeredi <miklos@szeredi.hu>
396
397 * KERNEL ABI: remove GETDIR operation, and add OPENDIR, READDIR
398 and RELEASEDIR. This ends the ugly hack of passing a file
399 descriptor to the kernel, and actually makes the code simpler.
400
Miklos Szeredi7db35c02005-01-17 09:46:28 +00004012005-01-17 Miklos Szeredi <miklos@szeredi.hu>
402
Miklos Szeredic2e960e2005-01-17 13:05:21 +0000403 * Released 2.2-pre4
404
4052005-01-17 Miklos Szeredi <miklos@szeredi.hu>
406
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000407 * fusermount: remove capability setting, which was the cause of
408 problems for some users. It seems that FS related capabilities
Miklos Szeredie5183742005-02-02 11:14:04 +0000409 are removed by setfsuid(), so this isn't even needed.
Miklos Szeredi7db35c02005-01-17 09:46:28 +0000410
Miklos Szeredidbe0f652005-01-15 14:32:56 +00004112005-01-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000412
Miklos Szeredidbe0f652005-01-15 14:32:56 +0000413 * fix compilation on 2.4 kernels (reported by Valient Gough)
414
415 * fix failure to unmount bug (found by David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000416
Miklos Szeredi5ef2a9b2005-01-15 09:42:01 +0000417 * fusermount: improve parsing of /etc/fuse.conf
418
4192005-01-13 Miklos Szeredi <miklos@szeredi.hu>
420
Miklos Szeredi9ed69ba2005-01-13 12:11:49 +0000421 * Remove 'mount_max' and 'user_allow_other' module options. These
422 are now checked by fusermount, and can be set in /etc/fuse.conf
423
424 * KERNEL: change check for fsid == 0 to capable(CAP_DAC_OVERRIDE)
425
Miklos Szeredi81394522005-01-11 14:24:18 +00004262005-01-11 Miklos Szeredi <miklos@szeredi.hu>
427
428 * KERNEL: fix possible inode allocation problem, where
429 sizeof(struct inode) is not aligned (found by Mike Waychison)
430
431 * KERNEL: use new follow_link/put_link methods
432
433 * KERNEL: cosmetic fixes
434
Miklos Szeredic6ee9fd2005-01-10 09:53:04 +00004352005-01-10 Miklos Szeredi <miklos@szeredi.hu>
436
437 * Released 2.2-pre3
438
4392005-01-10 Miklos Szeredi <miklos@szeredi.hu>
440
441 * Add missing code that was accidently left out
442
Miklos Szeredi8c7da232005-01-09 12:27:41 +00004432005-01-09 Miklos Szeredi <miklos@szeredi.hu>
444
Miklos Szeredi8d775f72005-01-09 20:22:53 +0000445 * Released 2.2-pre2
446
4472005-01-09 Miklos Szeredi <miklos@szeredi.hu>
448
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +0000449 * Change "uid" mount option to "user_id" to avoid confusion with a
450 mount option "uid" commonly used by many filesystems
451
4522005-01-09 Miklos Szeredi <miklos@szeredi.hu>
453
Miklos Szeredi8c7da232005-01-09 12:27:41 +0000454 * Released 2.2-pre1
455
4562005-01-09 Miklos Szeredi <miklos@szeredi.hu>
457
458 * If FUSE is configured in the kernel, don't build it by default
459
Miklos Szeredi2a927272005-01-07 11:14:15 +00004602005-01-07 Miklos Szeredi <miklos@szeredi.hu>
461
462 * Compile fix by Christian Magnusson
463
Miklos Szeredib6220192005-01-05 16:19:10 +00004642005-01-05 Miklos Szeredi <miklos@szeredi.hu>
465
466 * Fix compilation for 2.6.{0-5} kernels
467
Miklos Szeredi0f62d722005-01-04 12:45:54 +00004682005-01-04 Miklos Szeredi <miklos@szeredi.hu>
469
470 * KERNEL: if request is interrupted, still keep reference to used
471 inode(s) and file, so that FORGET and RELEASE are not sent until
472 userspace finishes the request.
473
Miklos Szeredi3f0005f2005-01-04 19:24:31 +0000474 * remove /{sys,proc}/fs/fuse/version, and instead add an INIT
475 request with the same information, which is more flexible,
476 simpler, works on embedded systems.
477
Miklos Szeredi0f62d722005-01-04 12:45:54 +00004782004-12-16 Miklos Szeredi <miklos@szeredi.hu>
479
480 * KERNEL ABI: update interface to make it independent of type
481 sizes. This will help on 64 bit architectures which can run
482 legacy 32 bit applications.
483
484 * KERNEL ABI: add "len" field to request headers. This will allow
485 sending/receiving requests in multiple chunks.
486
487 * KERNEL: handle file type change more intelligently
488
489 * LIB: "-o debug" option should disable backgrounding (fix by
490 Fabien Reygrobellet)
491
Miklos Szeredi0fcfa032004-12-13 15:22:28 +00004922004-12-13 Miklos Szeredi <miklos@szeredi.hu>
493
494 * KERNEL: invalidate dentry/attributes if interrupted request
495 could leave filesystem in an unknown state.
496
Miklos Szeredie56818b2004-12-12 11:45:24 +00004972004-12-12 Miklos Szeredi <miklos@szeredi.hu>
498
499 * KERNEL: lots of cleanups related to avoiding possible deadlocks.
500 These will cause some regressions, but stability is considered
501 more important. If any of these features turns out to be
502 important, it can be readded with the deadlock problems addressed.
Miklos Szeredie5183742005-02-02 11:14:04 +0000503
Miklos Szeredie56818b2004-12-12 11:45:24 +0000504 * Make all requests interruptible (only with SIGKILL currently).
505 This can be used to break any deadlock produced by the userspace
506 filesystem accessing it's own exported files. The RELEASE request
507 is special, because if it's interrupted before sending it to
508 userspace it is still sent, but the reply is not awaited.
509
510 * If request is interrupted before being sent to userspace, and if
511 it hasn't yet got any side effects, it is always restarted,
512 regardless of the SA_RESTART flag. This makes these interruptions
513 transparent to the process.
514
515 * Remove shared-writable mmap support, which was prone to an
516 out-of-memory deadlock situation
517
518 * Remove INVALIDATE userspace initiated request
519
520 * Make readpages() synchronous. Asynchronous requests are
521 deadlock prone, since they cannot be interrupted.
522
523 * Add readv/writev support to fuse device operations
524
525 * Remove some printks, which userspace FS can use for a DoS
526 against syslog
527
528 * Remove 'large_read' mount option from 2.6 in kernel, check it in
529 fusermount instead
530
531 * LIB: improve compatibility with a fuse.h header installed in
532 ${prefix}/include which in turn includes the real header.
533
534 * LIB: improve compatibility by defining fuse_main() (which is now
535 not used), so old configure scripts find it.
536
Miklos Szeredi0adcc6f2004-12-10 11:55:25 +00005372004-12-10 Miklos Szeredi <miklos@szeredi.hu>
538
539 * When mounting on a subdirectory of / don't duplicate slashes at
540 the beggining of path (spotted by David Shaw)
541
Miklos Szeredi80a0c3c2004-12-09 17:30:59 +00005422004-12-09 Miklos Szeredi <miklos@szeredi.hu>
543
544 * Fix bug causing garbage in mount options (spotted by David Shaw)
545
Miklos Szeredid59bb9d2004-12-07 10:04:24 +00005462004-12-07 Miklos Szeredi <miklos@szeredi.hu>
547
548 * Add 'writepage' flag to 'fuse_file_info'.
549
550 * More comments in fuse.h
551
Miklos Szeredif458b8c2004-12-07 16:46:42 +0000552 * Get rid of double underscores
553
Miklos Szeredi799993c2004-12-04 21:20:05 +00005542004-12-04 Miklos Szeredi <miklos@szeredi.hu>
555
556 * Add -D_FILE_OFFSET_BITS=64 to cflags provided by pkg-config
557
558 * helper.c: add -ho option, which only displays the options not
559 the usage header. This can be used by filesystems which have
560 their own options.
561
Miklos Szeredi0b6a0ad2004-12-04 00:40:50 +00005622004-12-03 Miklos Szeredi <miklos@szeredi.hu>
563
564 * Add source compatibility to 2.1 and 1.1 APIs. To select betwen
565 versions simply define FUSE_USE_VERSION to 22, 21 or 11 before
566 including the fuse header
567
568 * Add binary compatibility to 2.1 version of library with symbol
569 versioning
570
Miklos Szeredi3c7d41b2005-01-09 20:05:27 +00005712004-12-03 Miklos Szeredi <miklos@szeredi.hu>
572
573 * Released 2.1
574
Miklos Szeredi039322d2004-12-01 18:39:12 +00005752004-12-01 Miklos Szeredi <miklos@szeredi.hu>
576
577 * kernel: clean up writing functions
578
579 * kernel: no allocation on write in direct_io mode
580
Miklos Szeredib9b94cd2004-12-01 18:56:39 +0000581 * move linux/fuse.h to fuse_kernel.h
582
Miklos Szeredi83a07442004-11-30 18:25:20 +00005832004-11-30 Miklos Szeredi <miklos@szeredi.hu>
584
585 * kernel: clean up reading functions
586
Miklos Szeredi2defe5e2004-11-29 16:53:44 +00005872004-11-29 Miklos Szeredi <miklos@szeredi.hu>
588
589 * kernel: make readpage() uninterruptible
590
Miklos Szeredi96dfad72004-11-30 00:00:02 +0000591 * kernel: check readonly filesystem flag in fuse_permission
592
593 * lib: don't die if version file not found and new style device
594 exists
595
596 * lib: add '-r' option, which is short for '-o ro'
597
598 * fusermount: simplify device opening
599
Miklos Szeredi2defe5e2004-11-29 16:53:44 +0000600 * kernel: when direct_io is turend on, copy data directly to
601 destination without itermediate buffer. More efficient and safer,
602 since no allocation is done.
603
604 * fusermount: fix warning if fuse module is not loaded
Miklos Szeredi162bcbb2004-11-29 23:43:44 +0000605
606 * kernel: use /dev/fuse on 2.4 too
Miklos Szeredie5183742005-02-02 11:14:04 +0000607
Miklos Szeredifb28c5e2004-11-26 12:15:06 +00006082004-11-26 Miklos Szeredi <miklos@szeredi.hu>
609
610 * libfuse API change: open, read, write, flush, fsync and release
611 are passed a 'struct fuse_file_info' pointer containing the open
612 flags (open and release), and the file handle. Verion changed to
613 3.0.
614
Miklos Szeredia25d4c22004-11-23 22:32:16 +00006152004-11-23 Miklos Szeredi <miklos@szeredi.hu>
616
617 * More cleanups in the kernel
618
619 * The 10,229 charater device number has been assigned for FUSE
620
621 * Version file checking fix (reported by Christian Magnusson)
622
623 * fusermount: opening the fuse device now doesn't need /sys.
624
625 * Optimize reading by controlling the maximum readahead based on
626 the 'max_read' mount option
627
628 * fixes for UCLIBC (Christian Magnusson)
629
Miklos Szeredi13ed4822004-11-20 11:12:21 +00006302004-11-19 Miklos Szeredi <miklos@szeredi.hu>
631
632 * Cleaned up kernel in preparation for merge into mainline:
633
634 * Use /sys/fs/fuse/version instead of /proc/fs/fuse/version
635
636 * Use real device (/dev/fuse) instead of /proc/fs/fuse/dev
637
638 * __user annotations for sparse
639
640 * allocate individual pages instead of kmalloc in fuse_readdir,
641 fuse_read and fuse_write.
642
643 * Fix NFS export in case "use_ino" mount option is given
644
Miklos Szeredif3845c42004-11-20 11:18:34 +0000645 * Make libfuse and fusermount compatible with future versions
646
647 * fusermount: properly add mount options to /etc/mtab
648
6492004-11-15 Miklos Szeredi <miklos@szeredi.hu>
650
651 * fusermount: do not resolve last component of mountpoint on if it
652 is '.' or '..'. This new path resolvation is now done on mount as
653 well as unmount. This enables relative paths to work on unmount.
654
655 * fusermount: parse common mount options like "ro", "rw", etc...
656
657 * Allow module params to be changed through sysfs
658
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +00006592004-11-14 Miklos Szeredi <miklos@szeredi.hu>
660
661 * Released 2.1-pre1
662
6632004-11-14 Miklos Szeredi <miklos@szeredi.hu>
664
665 * Fix bug in fuse_readpages() causing Oops in certain situations.
666 Bug found by Vincenzo Ciancia.
667
668 * Fix compilation with kernels versions > 2.6.9.
669
Miklos Szeredi3a6ea062004-11-11 10:33:58 +00006702004-11-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000671
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000672 * Check kernel interface version in fusermount to prevent
673 strangeness in case of mismatch.
Miklos Szeredi51ec1032004-11-10 11:52:26 +0000674
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000675 * No need to allocate fuse_conn until actual mount happens
676
677 * Fix potential race between umount and fuse_invalidate
678
679 * Check superblock of proc file in addition to inode number
680
Miklos Szeredi08ddb8e2004-11-14 09:19:51 +0000681 * Fix race between request_send_noreply() and fuse_dev_release()
Miklos Szeredi3d60e762004-11-11 14:44:04 +0000682
Miklos Szeredi51ec1032004-11-10 11:52:26 +00006832004-11-10 Miklos Szeredi <miklos@szeredi.hu>
684
685 * Separate configure for the kernel directory
686
Miklos Szeredi3a6ea062004-11-11 10:33:58 +0000687 * Don't allow write to return more than 'count'
688
689 * Extend kernel interface for future use
690
Miklos Szeredi51ec1032004-11-10 11:52:26 +00006912004-11-09 Miklos Szeredi <miklos@szeredi.hu>
692
693 * Fix 'makeconf.sh' to use autoreconf if available
694
Miklos Szeredi8fb48fe2004-11-08 14:48:52 +00006952004-11-08 Miklos Szeredi <miklos@szeredi.hu>
696
Miklos Szeredid507c732004-11-08 17:32:25 +0000697 * Add ino argument to 'fuse_dirfil_t'. NOTE: This breaks source
698 compatibility with earlier versions. To compile earier versions
699 just add '-DFUSE_DIRFIL_COMPAT' compile flag or fix the source.
700 Do not use the "use_ino" mount flag with filesystems compiled with
701 FUSE_DIRFIL_COMPAT.
Miklos Szeredidb1c3652004-11-08 21:11:53 +0000702
703 * Add pkg-config support. To compile a FUSE based filesystem you
704 can do "gcc -Wall `pkg-config --cflags --libs fuse` myfs.c -o myfs"
705 or similar. Note, that the PKG_CONFIG_PATH environment variable
706 usually needs to be set to "/usr/local/lib/pkgconfig".
707
708 * fuse.h is now installed in ${prefix}/include/fuse/
Miklos Szeredie5183742005-02-02 11:14:04 +0000709
Miklos Szeredia13d9002004-11-02 17:32:03 +00007102004-11-02 Miklos Szeredi <miklos@szeredi.hu>
711
712 * Added "use_ino" mount option. This enables the filesystems to
713 set the st_ino field on files
714
Miklos Szeredib1ab8b52004-11-01 10:57:41 +00007152004-11-01 Miklos Szeredi <miklos@szeredi.hu>
716
717 * Fix compile problems with ancient (<=2.4.18) kernels (reported
718 by Jeremy Smith)
719
Miklos Szeredi874e3c12004-11-01 23:15:20 +0000720 * Add "allow_root" mount option. Patch by Yaroslav Rastrigin
721
722 * Clear the 'exited' flag when mail loop is finished
723
Miklos Szeredie989f0d2004-10-28 20:24:58 +00007242004-10-28 Miklos Szeredi <miklos@szeredi.hu>
725
726 * Make xattr functions work under 2.6 (bug found by Vincenzo
727 Ciancia)
728
Miklos Szeredi95a2bfc2004-10-26 21:32:13 +00007292004-10-26 Miklos Szeredi <miklos@szeredi.hu>
730
731 * Reset request in fuse_flush() (bugreport by David Shaw)
732
Miklos Szeredi5dc8a802004-10-21 09:35:10 +00007332004-10-21 Miklos Szeredi <miklos@szeredi.hu>
734
Miklos Szeredi0e70aa72004-10-21 16:24:29 +0000735 * fuse_main() now does not exit on error, rather it returns an
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000736 error code
737
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000738 * Exported __fuse_setup() and __fuse_teardown() functions, which
Miklos Szeredi5dc8a802004-10-21 09:35:10 +0000739 make it easier to implement a custom event loop.
740
Miklos Szeredifb97a1b2004-10-21 09:59:13 +0000741 * Use daemon() call to background the filesystem after mounting.
742 This function closes the standard input, output and error and
743 changes the current working directory to "/".
744
Miklos Szeredi127d49b2004-10-14 13:33:39 +00007452004-10-14 Miklos Szeredi <miklos@szeredi.hu>
746
747 * Released 1.9
748
Miklos Szeredid45baf42004-10-10 07:56:12 +00007492004-10-09 Miklos Szeredi <miklos@szeredi.hu>
750
751 * Don't allow fuse_flush() to be interrupted (bug found by David
752 Shaw)
753
Miklos Szeredi1f18db52004-09-27 06:54:49 +00007542004-09-27 Miklos Szeredi <miklos@szeredi.hu>
755
756 * Add PID to fuse_context. Patch by Steven James
757
Miklos Szeredi1eea0322004-09-27 18:50:11 +0000758 * Change file handle type to 'unsigned long' in kernel interface
759
Miklos Szeredid169f312004-09-22 08:48:26 +00007602004-09-22 Miklos Szeredi <miklos@szeredi.hu>
761
762 * A slight API change: fuse_get_context() doesn't need the "fuse"
763 pointer, but the returned context contains it instead. The
764 fuse_get() function is not needed anymore, so it's removed.
Miklos Szeredi21d587e2004-09-22 16:47:40 +0000765
766 * Fix mounting and umounting FUSE filesystem under another FUSE
767 filesystem by non-root (bug spotted by Valient Gough)
Miklos Szeredie5183742005-02-02 11:14:04 +0000768
Miklos Szeredic2309912004-09-21 13:40:38 +00007692004-09-21 Miklos Szeredi <miklos@szeredi.hu>
770
771 * Fix deadlock in case of memory allocation failure. Patch by
772 Christian Magnusson
Miklos Szeredie5183742005-02-02 11:14:04 +0000773
Miklos Szeredib2cf9562004-09-16 08:42:40 +00007742004-09-16 Miklos Szeredi <miklos@szeredi.hu>
775
776 * Check memory allocation failures in libfuse
Miklos Szeredie5183742005-02-02 11:14:04 +0000777
Miklos Szeredi65afea12004-09-14 07:13:45 +00007782004-09-14 Miklos Szeredi <miklos@szeredi.hu>
779
780 * Check temporary file creation failure in do_getdir(). Bug
781 spotted by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000782
Miklos Szeredi1bf53ee2004-09-13 11:47:59 +00007832004-09-13 Miklos Szeredi <miklos@szeredi.hu>
784
785 * Allow "large_read" option for 2.6 kernels but warn of deprecation
Miklos Szeredi09045c32004-09-13 12:00:49 +0000786
787 * Make requests non-interruptible so race with FORGET is avoided.
788 This is only a temporary solution
Miklos Szeredi442d9652004-09-13 14:56:57 +0000789
790 * Support compiling FUSE kernel module on 2.4.x UML kernels
Miklos Szeredie5183742005-02-02 11:14:04 +0000791
Miklos Szeredi8b2d3332004-09-09 08:44:01 +00007922004-09-09 Miklos Szeredi <miklos@szeredi.hu>
793
794 * Fix bug in case two FORGETs for the same node are executed in
795 the wrong order. Bug spotted and endured for months by Franco
796 Broi, and logfile for solution provided by Terje Oseberg
797
Miklos Szeredi12085102004-09-02 18:13:57 +00007982004-09-01 Miklos Szeredi <miklos@szeredi.hu>
799
800 * Add -D_REENTRANT to the compile flags
801
802 * Add documentation of fuse internals by Terje Oseberg
Miklos Szeredie5183742005-02-02 11:14:04 +0000803
Miklos Szeredi22ea3dc2004-08-16 13:29:11 +00008042004-08-16 Miklos Szeredi <miklos@szeredi.hu>
805
806 * Change release method to be non-interruptible. Fixes bug
807 causing missing release() call when program which has opened files
808 is killed (reported by Franco Broi and David Shaw)
Miklos Szeredie5183742005-02-02 11:14:04 +0000809
Miklos Szeredi891b8742004-07-29 09:27:49 +00008102004-07-29 Miklos Szeredi <miklos@szeredi.hu>
811
812 * Add fuse_invalidate() to library API
813
Miklos Szeredi94ed76a2004-07-26 19:38:45 +00008142004-07-26 Miklos Szeredi <miklos@szeredi.hu>
815
816 * Check permissions in setattr if 'default_permissions' flag is
817 set. Bug spotted by Damjan Lango
818
Miklos Szeredid66d3942004-07-24 13:47:44 +00008192004-07-24 Miklos Szeredi <miklos@szeredi.hu>
820
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000821 * 'large_read' mount option removed for 2.6 kernels, since the
822 default (dynamic read size) is better
823
824 * Extend kernel API with file handles. A file handle is returned
825 by open, and passed to read, write, flush, fsync and release.
826 This is currently only used for debug output in the library.
Miklos Szeredie5183742005-02-02 11:14:04 +0000827
Miklos Szeredi209f5d02004-07-24 19:56:16 +0000828 * Security changes:
829
830 * Change the current directory to the mountpoint before checking
831 the permissions and mount filesystem on "."
832
833 * By default don't modprobe the fuse module for non-root. The old
834 behavior can be restored with the '--enable-auto-modprobe' flag of
835 ./configure
836
837 * By default don't allow shared writable mappings for non-root.
838 The old behavior can be restored with the 'user_mmap=1' module
839 parameter
Miklos Szeredid66d3942004-07-24 13:47:44 +0000840
Miklos Szeredibd7661b2004-07-23 17:16:29 +00008412004-07-23 Miklos Szeredi <miklos@szeredi.hu>
842
843 * Clean up mount option passing to fusermount and to fuse_new()
844 BEWARE: this changes the userspace API slightly, and the command
845 line usage of programs using fuse_main()
Miklos Szeredie5183742005-02-02 11:14:04 +0000846
Miklos Szeredi58865372004-07-20 14:22:26 +00008472004-07-20 Miklos Szeredi <miklos@szeredi.hu>
848
849 * Optimize reading under 2.6 kernels by issuing multiple page
850 asynchronous read requests
Miklos Szeredie5183742005-02-02 11:14:04 +0000851
Miklos Szeredi84ba0f42004-07-18 11:32:59 +00008522004-07-18 Miklos Szeredi <miklos@szeredi.hu>
853
854 * Only use redirty_page_for_writepage() for kernels >= 2.6.6
Miklos Szeredie5183742005-02-02 11:14:04 +0000855
Miklos Szeredi069c9502004-07-16 16:17:02 +00008562004-07-16 Miklos Szeredi <miklos@szeredi.hu>
857
858 * Separate directory entry and inode attribute validity timer
859
860 * New write semaphore to stop page writeback during truncate
861
862 * Fsync now waits for all writes to complete before sending the
863 request
864
865 * Optimization: if a page is completely written by
866 fuse_commit_write(), clear the dirty flag and set the uptodate
867 flag for that page
868
Miklos Szeredie7d5d7d2004-07-16 18:27:50 +0000869 * Some memory cleanup at exit
870
Miklos Szeredi2529ca22004-07-13 15:36:52 +00008712004-07-13 Miklos Szeredi <miklos@szeredi.hu>
872
873 * Add FUSE_HARD_REMOVE flag, and '-i' option to fuse main, which
Miklos Szerediad83d072004-07-13 20:23:03 +0000874 disable the "hide if open" behavior of unlink/rename.
875
876 * If temporary buffer allocation fails in raw read, fall back to a
877 smaller buffer
Miklos Szeredie5183742005-02-02 11:14:04 +0000878
Miklos Szeredi73798f92004-07-12 15:55:11 +00008792004-07-12 Miklos Szeredi <miklos@szeredi.hu>
880
881 * Fix bug in do_open() in libfuse: open count was incremented
882 after the reply is sent so it could race with unlink/forget and
883 cause an abort.
Miklos Szeredie5183742005-02-02 11:14:04 +0000884
Miklos Szeredi015fe702004-07-12 11:52:24 +00008852004-07-08 Miklos Szeredi <miklos@szeredi.hu>
886
887 * When performing create or remove operation, refresh the parent's
888 attributes on next revalidate, as i_nlink (and maybe size/time)
889 could be inacurate.
890
891 * Use redirty_page_for_writepage() in fuse_writepage() for skipped
892 pages (2.6 only)
893
894 * Set set_page_dirty address space operation (2.6 only)
895
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00008962004-07-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi25385bb2004-07-06 22:27:36 +0000897
898 * Minor fix in read: print debug info even if read size is zero
899
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009002004-07-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi58615e02004-07-04 21:21:08 +0000901
902 * Fix race between truncate and writepage (fsx-linux now runs
903 without error)
904
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009052004-07-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000906
907 * Fix kernel hang on mkfifo under 2.4 kernels (spotted and patch
908 by Mattias Wadman)
909
910 * Added option for direct read/write (-r)
911
912 * Fix revalidate time setting for newly created inodes
913
Miklos Szerediacb4d362004-07-02 16:20:45 +0000914 * Remove uid==0 check for '-x' option in fusermount (kernel checks
915 this)
916
917 * fuse_main() only installs handlers for signals (out of INT, HUP,
918 TERM, PIPE), for which no handler has yet been installed
919
920 * Add module option 'user_allow_other' which if set to non-zero
921 will allow non root user to specify the 'allow_other' mount option
922 ('-x' option of fusermount)
923
Miklos Szeredi014d7d22004-07-02 21:22:37 +0000924 * Fix deadlock between page writeback completion and truncate
925 (bug found by Valient Gough with the fsx-linux utility)
926
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009272004-07-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediad051c32004-07-02 09:22:50 +0000928
929 * Change passing fuse include dir to 2.6 kernel make system more
Miklos Szerediacb4d362004-07-02 16:20:45 +0000930 robust (fixes compile problems seen on SuSE 9.1 with updated 2.6
931 kernel)
Miklos Szerediad051c32004-07-02 09:22:50 +0000932
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009332004-06-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi556d03d2004-06-30 11:13:41 +0000934
935 * Acquire inode->i_sem before open and release methods to prevent
936 concurrent rename or unlink operations.
937
Miklos Szeredi65cf7c72004-06-30 11:34:56 +0000938 * Make __fuse_read_cmd() read only one command. This allows
939 multiplexing the fuse file descriptor with other event sources
940 using select() or poll() (patch by Jeff Harris)
941
942 * Export 'exited' flag with __fuse_exited() (patch by Jeff Harris)
943
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009442004-06-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi71e9f862004-06-28 16:52:16 +0000945
946 * Fix file offset wrap around at 4G when doing large reads
947
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009482004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000949
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000950 * Fix memory leak in open (Valient Gough)
951
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009522004-06-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a31cca2004-06-26 21:11:25 +0000953
Miklos Szeredi1ea9c962004-06-24 21:00:00 +0000954 * Add "close after delete" support to libfuse (patch by Valient
955 Gough)
956
957 * Cancel all worker threads before exit in multithreaded mode
958
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009592004-06-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie79dc7e2004-06-23 05:57:30 +0000960
961 * Fix locking bugs
Miklos Szeredib3210582004-06-23 13:54:33 +0000962
963 * Don't send reply to RELEASE
Miklos Szeredicb264512004-06-23 18:52:50 +0000964
965 * Work with newer libtool (1.5a)
966
967 * Check for st_atim member of struct stat
Miklos Szeredie5183742005-02-02 11:14:04 +0000968
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009692004-06-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid3dd2d52004-06-22 18:46:02 +0000970
971 * No request allocation needed on inode and file release
Miklos Szeredie5183742005-02-02 11:14:04 +0000972
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009732004-06-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2778f6c2004-06-21 09:45:30 +0000974
975 * Fix possible inode leak in userspace in case of unfinished
976 lookup/mknod/mkdir/symlink/link operation.
Miklos Szeredie5183742005-02-02 11:14:04 +0000977
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009782004-06-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredied62d862004-06-20 08:57:39 +0000979
980 * Fix some races and cleanups in fuse_read_super()
Miklos Szeredie5183742005-02-02 11:14:04 +0000981
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009822004-06-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7eafcce2004-06-19 22:42:38 +0000983
984 * Requests are allocated at open time
Miklos Szeredie5183742005-02-02 11:14:04 +0000985
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +00009862004-06-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi203afbf2004-06-03 13:21:08 +0000987
988 * Build shared library as well as static (using libtool)
989
990 * Change FUSE_MINOR_VERSION from 1 to 0. I know it's illegal but
991 there has not been a release with the previous minor number, and I
992 hope nobody is using it for anything.
Miklos Szerediff875352004-06-03 13:52:40 +0000993
994 * Change fuse_main(), so that default behavior is to go into
995 background if mount is successful. '-f' and '-d' options disable
996 backgrounding. This fixes the "Why does my FUSE daemon hang?"
997 newbie complaint.
Miklos Szeredi63b8c1c2004-06-03 14:45:04 +0000998
999 * Cache ENOSYS (function not implemented) errors on *xattr, flush
1000 and fsync
Miklos Szeredi152f29e2004-06-03 17:52:32 +00001001
1002 * Don't call getdir method from open() only from first readdir().
1003 Open is sometimes just used to store the current directory
1004 (e.g. find)
Miklos Szeredie5183742005-02-02 11:14:04 +00001005
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010062004-05-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie2e4ac22004-05-18 08:45:28 +00001007
1008 * Added flush() call
Miklos Szeredie5183742005-02-02 11:14:04 +00001009
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010102004-05-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi689f5632004-05-04 08:49:16 +00001011
1012 * Extended attributes support for 2.4 (patch by Cody Pisto)
Miklos Szeredie5183742005-02-02 11:14:04 +00001013
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010142004-04-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid30a0f22004-04-20 08:25:43 +00001015
1016 * Fixed parser with modversions (Mattias Wadman)
Miklos Szeredie5183742005-02-02 11:14:04 +00001017
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010182004-04-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8ec48ec2004-04-19 10:24:41 +00001019
1020 * Added mount option parser to 2.4 build
Miklos Szeredie5183742005-02-02 11:14:04 +00001021
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010222004-04-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi87f30a92004-04-13 10:49:54 +00001023
1024 * Replaced binary mount data with text options
1025
1026 * Show FUSE specific mount options in /proc/mounts
1027
1028 * Check in fuse.h whether _FILE_OFFSET_BITS is set to 64
1029
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010302004-04-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic26c14d2004-04-09 17:48:32 +00001031
1032 * Check some limits so userspace won't get too big requests
1033
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010342004-04-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2ac5e2a2004-04-05 11:24:24 +00001035
1036 * Kill compile warning
1037
1038 * Upgraded user-mount patch for 2.6.5
1039
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010402004-04-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi851948c2004-04-02 14:58:22 +00001041
1042 * Add detection of user-mode-linux to configure
1043
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010442004-03-31 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi03cebae2004-03-31 10:19:18 +00001045
1046 * fixed zero size case for getxattr and listxattr
1047
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010482004-03-30 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi98667e22004-03-30 07:24:29 +00001049
1050 * new fusermount flag '-z': lazy unmount, default is not lazy
1051
Miklos Szeredi3ed84232004-03-30 15:17:26 +00001052 * Extended attributes operations added (getxattr, setxattr,
1053 listxattr, removexattr)
1054
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010552004-03-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi77f39942004-03-25 11:17:52 +00001056
1057 * If filesystem doesn't define a statfs operation, then an
1058 all-zero default statfs is returned instead of ENOSYS
1059
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010602004-03-24 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4df9cf22004-03-24 09:19:27 +00001061
1062 * Add FS_BINARY_MOUNTDATA filesystem flag for kernels > 2.6.4
1063
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010642004-03-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001065
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001066 * Fix for uClinux (Christian Magnusson)
1067
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010682004-03-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi8af63ae2004-03-09 10:54:17 +00001069
Miklos Szeredi18c1e4d2004-03-02 16:18:30 +00001070 * fuse_main() adds "-n progname" to the fusermount command line
Miklos Szeredie5183742005-02-02 11:14:04 +00001071
Miklos Szeredi254d5ed2004-03-02 11:11:24 +00001072 * More kernel interface changes:
1073
1074 * Lookup/getattr return cache timeout values
1075
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010762004-02-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie970f302004-02-25 08:39:42 +00001077
1078 * Clean up option parsing in fuse_main()
1079
Miklos Szeredi33c319c2004-02-25 09:19:29 +00001080 * Added fuse_get() function which returns the fuse object created
1081 by fuse_main()
1082
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010832004-02-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib5958612004-02-20 14:10:49 +00001084
Miklos Szeredic40748a2004-02-20 16:38:45 +00001085 * removed old way of mounting (fusermount mountpoint program)
1086
Miklos Szeredib5958612004-02-20 14:10:49 +00001087 * more kernel interface changes:
1088
1089 * added nanosecond precision to file times
1090
Miklos Szeredic40748a2004-02-20 16:38:45 +00001091 * removed interface version from mount data
1092
1093 * added /proc/fs/fuse/version which contains MAJOR.MINOR
1094
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000010952004-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi18e75e42004-02-19 14:23:27 +00001096
1097 * statfs library API changed to match other methods. Since this
1098 is not backward compatible FUSE_MAJOR_VERSION is changed to 2
1099
Miklos Szeredi76f65782004-02-19 16:55:40 +00001100 * kernel interface changes follow:
1101
1102 * statfs changed to 64 bits, added 'bavail' field
1103
1104 * add generation number to lookup result
1105
1106 * optimized mknod/mkdir/symlink/link (no separate lookup is
1107 needed)
1108
1109 * rdev size increased to 32 bits for mknod
1110
1111 * kernel interface version changed to 3.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001112
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011132004-02-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa39e902004-02-18 13:29:36 +00001114
1115 * user-mount upgraded for 2.6.3 kernel
Miklos Szeredie5183742005-02-02 11:14:04 +00001116
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011172004-02-17 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi69cc79a2004-02-17 08:57:29 +00001118
1119 * Added user-mount.2.6.2-rc3.patch
1120
1121 * Add FS_SAFE flag to fuse filesystem
1122
1123 * fusermount should allow (un)mounting for non-root even if not
1124 suid-root
Miklos Szeredie5183742005-02-02 11:14:04 +00001125
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011262004-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4c7f7622004-02-12 13:41:30 +00001127
1128 * Remove MS_PERMISSION mount flag (that means something else now)
Miklos Szeredie5183742005-02-02 11:14:04 +00001129
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011302004-02-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi9a2b08d2004-02-10 09:36:07 +00001131
1132 * Added check for i_size_read/write functions to configure.in
1133 (patch by Valient Gough)
1134
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011352004-02-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi377b2ea2004-02-06 09:48:51 +00001136
1137 * Fixed writing >= 2G files
Miklos Szeredif58cc612004-02-06 13:52:00 +00001138
1139 * Check file size on open (with generic_file_open())
Miklos Szeredid1199f82004-02-06 15:29:22 +00001140
1141 * Readpage calls flush_dcache_page() after storing data
1142
1143 * Use i_size_read/write for accessing inode->i_size
Miklos Szeredi89b86af2004-02-06 17:02:08 +00001144
1145 * Make loopback mount of a fuse file work
Miklos Szeredie5183742005-02-02 11:14:04 +00001146
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011472004-02-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi88124792004-02-04 11:06:17 +00001148
1149 * Released 1.1
Miklos Szeredie5183742005-02-02 11:14:04 +00001150
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011512004-01-29 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi72f6a932004-01-29 11:29:18 +00001152
1153 * Properly check if the inode exists in fuse_invalidate
Miklos Szeredie5183742005-02-02 11:14:04 +00001154
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011552004-01-27 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediedf26632004-01-27 14:54:47 +00001156
1157 * Added -q option for fusermount
1158
1159 * fuse_unmount() now uses -q option of fusermount, so no error is
1160 printed if the cause of the program exit is that the filesystem
1161 has already been unmounted
1162
Miklos Szeredif4f8b892004-01-27 17:04:59 +00001163 * Fix i_nlink correctness after rmdir/unlink
1164
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011652004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001166
Miklos Szeredib1158392004-01-26 14:43:12 +00001167 * Released 1.1-pre2
1168
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011692004-01-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredib1158392004-01-26 14:43:12 +00001170
Miklos Szeredi307242f2004-01-26 11:28:44 +00001171 * Fix typo (thanks Marcos Dione)
Miklos Szeredib1158392004-01-26 14:43:12 +00001172
1173 * Compile fixes for 2.4 kernels
Miklos Szeredie5183742005-02-02 11:14:04 +00001174
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011752004-01-23 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001176
1177 * Fix CONFIG_MODVERSIONS compile on 2.6
Miklos Szeredie5183742005-02-02 11:14:04 +00001178
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011792004-01-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi307242f2004-01-26 11:28:44 +00001180
1181 * Write all pending data before a RELEASE operation
1182
1183 * Suppress 'Bad file descriptor' warning on exit
1184
1185 * Replaced fusermount option '-d xxx' with '-n xxx' so it doesn't
Miklos Szeredib1158392004-01-26 14:43:12 +00001186 get confused with '-d' of fuse_main() (sorry about this change)
Miklos Szeredi307242f2004-01-26 11:28:44 +00001187
Miklos Szeredib1158392004-01-26 14:43:12 +00001188 * New fusermount option '-l' which enables big reads. Big reads
1189 are now disabled by default.
Miklos Szeredi307242f2004-01-26 11:28:44 +00001190
1191 * fuse_main() can accept fusermount arguments after a '--'
1192
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011932004-01-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie815c032004-01-19 18:20:49 +00001194
1195 * Support for exporting filesystem over NFS (see README.NFS)
1196
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000011972004-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7c35cf92004-01-14 16:56:49 +00001198
1199 * Support non-blocking writepage on 2.6. This makes FUSE behave
1200 much more nicely in low-memory situations
1201
1202 * Fix 32-bit dev handling in getattr and mknod for 2.6 kernels.
1203 (Note: the mknod method does not yet use 32bit device number)
Miklos Szeredie5183742005-02-02 11:14:04 +00001204
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012052004-01-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie8663f32004-01-13 15:33:12 +00001206
1207 * Code cleanups
1208
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012092004-01-07 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b7abe32004-01-07 16:49:12 +00001210
1211 * Released 1.1-pre1
1212
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012132004-01-06 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif85ab242004-01-07 12:16:45 +00001214
1215 * Integrated 2.6 kernel support patch by Michael Grigoriev
1216
1217 * Improvements and cleanups for 2.6 kernels
1218
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012192004-01-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001220
Miklos Szeredie5183742005-02-02 11:14:04 +00001221 * Added -d option to fusermount
Miklos Szeredi7ffb8cf2004-01-05 15:07:12 +00001222
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012232003-12-15 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi2f3d9402003-12-15 12:11:33 +00001224
1225 * Added major+minor version to library API, and minor version to
1226 kernel API
1227
David McNab7a19caf2003-12-13 02:05:46 +000012282003-12-13 David McNab <david@rebirthing.co.nz>
1229
1230 * Implemented fsync support in examples/example.py
1231
1232 * Implemented 'fsync' and 'statfs' methods in python
1233 interface
1234
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012352003-12-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001236
Miklos Szeredie5183742005-02-02 11:14:04 +00001237 * Make it compile on 2.4.19.
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001238
Miklos Szeredi5e43f2c2003-12-12 14:06:41 +00001239 * Add fsync operation (write file failed on xemacs & vi)
Miklos Szeredie4cf7332003-12-12 11:53:31 +00001240
David McNab8bf62632003-12-11 22:49:22 +000012412003-12-12 David McNab <david@rebirthing.co.nz>
1242
1243 * Added distutils support to the python module, as per standard
1244 python development practice
1245
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012462003-12-11 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001247
1248 * Add file locking for mount/unmount (based on patch by Valient
1249 Gough)
1250
12512003-12-11 David McNab <david@rebirthing.co.nz>
1252
1253 * Python filesystem - was broken with python2.3, now fixed:
1254 - changed PyTuple_* calls to PySequence_*, because os.lstat
1255 is no longer returning a pure tuple
1256 - changed PyInt_Check() calls to also call PyLong_Check,
1257 to cover for cases (eg os.lstat) where longs are returned
1258 - Added support for file 'release' handling, which IMO is
1259 essential since this signals to a FS that writes to a file
1260 are complete (and therefore the file can now be disposed of
1261 meaningfully at the python filesystem's discretion)
1262 - Added '__init__' handler to base Fuse class, which allows
1263 your Python class to know the mountpoint and mount args,
1264 as attributes myfs.mountpoint, myfs.optlist, myfs.optdict
Miklos Szeredie5183742005-02-02 11:14:04 +00001265
Miklos Szeredi874d95d2003-12-11 14:27:57 +00001266 * General:
1267 - added 'mount.fuse' script (in util/ dir), which is meant to be
1268 symlinked from /sbin, and which allows FUSE filesystems to
1269 be mounted with the 'mount' command, and listed in fstab;
1270 also, mount arguments get passed to your filesystem
1271
1272
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012732003-11-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif27ec7d2003-11-04 13:46:32 +00001274
1275 * Fix kernel version detection (again). Bugreport by Peter Levart
1276
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012772003-11-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi36ca5562003-11-03 19:32:14 +00001278
1279 * Applied read combining patch by Michael Grigoriev (tested by
1280 Valient Gough and Vincent Wagelaar)
1281
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012822003-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif08ace02003-10-22 11:11:57 +00001283
1284 * Mtab handling fix in fusermount by "Valient Gough" (SF patch
1285 #766443)
Miklos Szeredie5183742005-02-02 11:14:04 +00001286
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012872003-10-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0e535082003-10-13 10:08:06 +00001288
1289 * Error code fixes in kernel module
Miklos Szeredie5183742005-02-02 11:14:04 +00001290
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012912003-10-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi27af48b2003-10-04 17:31:38 +00001292
1293 * kernel version detection fix
1294
1295 * fusermount now uses "lazy" umount option
1296
1297 * fusermount can use modprobe with module-init-tools
1298
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000012992003-09-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredida4e4862003-09-08 11:14:11 +00001300
1301 * Integrated caching patch by Michael Grigoriev
1302
Miklos Szeredida4e4862003-09-08 11:14:11 +00001303 * Added "Filesystems" file with descriptions of projects using
1304 FUSE
1305
Miklos Szeredi02ceb112003-09-08 13:52:25 +00001306 * Added patch by Michael Grigoriev to allow compliation of FUSE
1307 kernel module for 2.6 kernels
1308
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013092003-06-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi84838472003-06-02 06:12:27 +00001310
1311 * And another spec-file fix by Achim Settelmeier
1312
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013132003-05-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi21c282b2003-05-26 07:12:57 +00001314
1315 * Spec-file fix by Achim Settelmeier
1316
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013172003-03-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001318
Miklos Szerediac361172004-11-02 19:14:14 +00001319 * Fix umount oops (found by Samuli Kärkkäinen)
Miklos Szeredi79b461a2003-03-10 09:35:34 +00001320
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013212003-03-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi941ae4c2003-03-05 08:29:58 +00001322
1323 * Merge of fuse_redhat.spec and fuse.spec by Achim Settelmeier
1324
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013252003-03-04 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredia9b2f262003-03-04 09:37:20 +00001326
1327 * Updated fuse.spec file (Achim Settelmeier)
1328
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013292003-02-19 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic0226bb2003-02-19 16:05:06 +00001330
1331 * Version 1.0 released
1332
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013332003-02-12 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredifa84e0d2003-02-13 09:53:33 +00001334
1335 * SuSE compilation fix by Juan-Mariano de Goyeneche
1336
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013372002-12-10 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredic8ba2372002-12-10 12:26:00 +00001338
1339 * The release() VFS call is now exported to the FUSE interface
1340
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013412002-12-05 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi0f48a262002-12-05 14:23:01 +00001342
1343 * 64 bit file offset fixes in the fuse kernel module
1344
1345 * Added function 'fuse_exit()' which can be used to exit the main
1346 loop
1347
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013482002-12-03 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5f054812002-12-03 18:45:21 +00001349
1350 * Added _FILE_OFFSET_BITS=64 define to fuse.h. Note, that this is
1351 an incompatible interface change.
1352
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013532002-10-28 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi6bf8b682002-10-28 08:49:39 +00001354
1355 * Portablility fix (bug reported by C. Chris Erway)
1356
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013572002-10-25 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredid6e9f882002-10-25 11:40:14 +00001358
1359 * Use Mark Glines' fd passing method for default operation instead
1360 of old reexec
1361
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013622002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi60c23522002-10-24 09:19:43 +00001363
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001364 * fix "Stale NFS file handle" bug caused by changes in 2.4.19
1365
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013662002-10-22 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi5e5d61f2002-10-24 11:50:33 +00001367
Miklos Szeredi60c23522002-10-24 09:19:43 +00001368 * fix incompatiblity with Red Hat kernels, with help from Nathan
1369 Thompson-Amato.
1370
Mark Glines65ba2192002-04-18 14:41:48 +000013712002-04-18 Mark Glines <mark@glines.org>
1372
1373 * added an alternative to fuse_mount(), called
1374 fuse_mount_ioslave(), which does not need to reexec the
1375 FUSE program.
1376 * added a small helper util needed by fuse_mount_ioslave().
1377
Mark Glines220635a2002-03-17 07:01:14 +000013782002-03-16 Mark Glines <mark@glines.org>
1379
1380 * use struct fuse_statfs everywhere possible to avoid problems
1381 with the headerfiles changing struct statfs member sizes
1382
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013832002-03-01 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi081f3c22002-03-01 07:47:35 +00001384
1385 * Another RPM spec file for RedHat >= 7 by Ian Pilcher
1386
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013872002-01-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredif782fc42002-01-14 08:48:46 +00001388
1389 * RPM support by Achim Settelmeier
1390
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013912002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001392
Miklos Szerediddc862a2002-01-09 13:46:10 +00001393 * Version 0.95 released
Miklos Szeredie5183742005-02-02 11:14:04 +00001394
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000013952002-01-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szerediddc862a2002-01-09 13:46:10 +00001396
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001397 * Revaidate all path components not just the last, this means a
1398 very small performance penalty for being more up-to-date.
1399
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014002002-01-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi4b2bef42002-01-09 12:23:27 +00001401
1402 * Update and fix python interface
1403
Mark Glinesd84b39a2002-01-07 16:32:02 +000014042002-01-07 Mark Glines <mark@glines.org>
Miklos Szeredie5183742005-02-02 11:14:04 +00001405
Mark Glinesd84b39a2002-01-07 16:32:02 +00001406 * Added statfs() support to kernel, lib, examples, and perl!
1407
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014082001-12-26 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi46a46dc2002-01-08 09:55:14 +00001409
1410 * Better cross compilation support
1411
1412 * Ported to Compaq IPAQ
1413
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014142001-12-20 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001415
Miklos Szeredife25def2001-12-20 15:38:05 +00001416 * Added function fuse_get_context() to library API (inspired by
Miklos Szeredie5183742005-02-02 11:14:04 +00001417 patch from Matt Ryan)
1418
Miklos Szeredife25def2001-12-20 15:38:05 +00001419 * Added flags to fusermount and to kernel interface to control
1420 permission checking
Miklos Szeredi8cffdb92001-11-09 14:49:18 +00001421
Miklos Szeredife25def2001-12-20 15:38:05 +00001422 * Integrated fuse_set_operations() into fuse_new()
1423
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014242001-12-08 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001425
1426 * Applied header protection + extern "C" patch by Roland
1427 Bauerschmidt
1428
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014292001-12-02 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001430
Miklos Szeredie5183742005-02-02 11:14:04 +00001431 * Added perl bindings by Mark Glines
Miklos Szeredife25def2001-12-20 15:38:05 +00001432
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014332001-11-21 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001434
1435 * Cleaned up way of mounting simple filesystems.
1436
1437 * fuse_main() helper function added
1438
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014392001-11-18 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredie5183742005-02-02 11:14:04 +00001440
Miklos Szeredife25def2001-12-20 15:38:05 +00001441 * Optimized read/write operations, so that minimal copying of data
1442 is done
1443
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014442001-11-14 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredife25def2001-12-20 15:38:05 +00001445
1446 * Python bindings by Jeff Epler added
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001447
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014482001-11-13 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001449
1450 * Fixed vfsmount reference leak in fuse_follow_link
1451
1452 * FS blocksize is set to PAGE_CACHE_SIZE, blksize attribute from
1453 userspace is ignored
1454
Miklos Szeredi2e6b6f22004-07-07 19:19:53 +000014552001-11-09 Miklos Szeredi <miklos@szeredi.hu>
Miklos Szeredi838c14f2001-11-14 08:16:20 +00001456
Miklos Szeredife25def2001-12-20 15:38:05 +00001457 * Started ChangeLog