Initial commit to Gerrit
[profile/ivi/quota.git] / Changelog
1 Changes in quota-tools from 3.17 to 4.00-pre1
2 * don't try to set inode flags when getting them failed (Michalski Wojciech)
3 * added liblber to the list of libraries needed for LDAP support (Michael Meskes)
4 * Rewritten configuration script to create config.h (Jan Kara)
5 * Use /proc/mounts for mountpoint scanning (Jan Kara)
6 * Removed use of reserved identifiers (Jan Kara)
7 * Improved manpage of quota_nld (Eddie Eyles)
8 * Fixed long option handling of quota_nld (Jan Kara)
9 * Fixed error reporting when rpc format specified on command line (Jan Kara)
10 * Convert quota limits using rq_bsize from RPC request (Jan Kara)
11 * Added noreturn attribute to die to avoid false warnings (Jan Kara)
12 * 64-bit quota support, rewritten some code to allow clean integration (Jan Kara)
13 * Improved header of quota an repquota output when -s option is used (Jan Kara)
14 * Fixed mountpoint scanning when NFS mountpoint is specified on command line (Jan Kara)
15 * Updated manpage of quotactl(2) (Jan Kara)
16
17 Changes in quota-tools from 3.16 to 3.17
18 * Updated quotactl(2) manpage to mention possible ERANGE error (Jan Kara)
19 * Fix hostname checking of rpc.rquotad. It could allow access even though hostname was in /etc/hosts.deny (Jan Kara)
20 * do not allow setting of user's grace time when softlimit is not exceeded (Jan Kara)
21 * fix reference to rpc manpage (anonymous reporter)
22 * add EXT4 (not only EXT4DEV) to the list of supported filesystems (Mingming Cao)
23 * fix setting of more than 31-bit block and inode limits (Gui Xiaohua)
24 * fixed bug in error reporting when quota reading fails (Jan Kara)
25 * added support for quota formats with hidden quota files (Jan Kara)
26 * remove IMMUTABLE flag from quota file in quotacheck (Jan Kara)
27 * fix bug in warnquota which could result in bogus hostname and domainname (anonymous reporter)
28 * implemented writing of messages that user got below hard/soft limits to quota_nld (Jan Kara)
29 * use PKG_CHECK_MODULES to check for DBUS (Ladislav Michnovic)
30 * Implement setting of charset for emails sent by warnquota (Michael Meskes)
31 * Added quota_nld to the list of installed programs (Jan Kara)
32 * some typos fixes (Matthew Boyle)
33 * fixed possible segfault when unpriviledged user run edquota (Matthew Boyle)
34 * fixed format strings to use "%llu" and "%lld" instead of "%Lu" and "%Ld" (Ladislav Michnovic)
35 * removed ssl, resolv, lber from the list of LDAP libraries since we don't need them directly (Jan Kara)
36 * added limits.h include to quota_nld (Jan Kara)
37 * fixed repquota to work with limits over 4 TB (Jan Kara, Michael Meier)
38
39 Changes in quota-tools from 3.15 to 3.16
40 * added information message about journaled quota to quotacheck (Jan Kara, Alex Tomas)
41 * added pointers to quota_nld and warnquota to some manpages (Jan Kara)
42 * ported quota_nld to libnl-1.1 (Jan Kara)
43 * let setquota batch mode accept comments and blank lines, add -c option (Jacky Bruno, Jan Kara)
44 * print more verbose list of compile options when --version specified (Jan Kara)
45 * quotaon(8) should work only on local filesystems (Ladislav Michnovic)
46 * made possible to use quota rpc in mixed NFSv3 and NFSv4 environments (Jan Kara) 
47 * fixed compilation with openLDAP library versions 2.1 and 2.2 (Jan Kara)
48 * always define allow_severity and deny_severity for older versions of libwrap (Martin Jacobs)
49 * cleaned up host_access() handling (Jan Kara)
50 * configure script now correctly reports checking of libwrap (Jan Kara)
51 * added MPFS to the list of supported filesystems (Dave Boone)
52 * all binaries are now stripped during installation (Jan Kara)
53 * updated Polish translations (Jakub Bogusz)
54 * fixed typo in a quotaon message (Jakub Bogusz)
55 * fixed warnquota to check URI only if LDAP enabled (Michael Meskes)
56
57 Changes in quota-tools from 3.14 to 3.15
58 * added a wrapper script around setquota which also updates LDAP (Stefan Adams)
59 * implemented quota netlink daemon to listen to kernel netlink messages and send them
60   to DBUS and / or write them to the console (Jan Kara)
61 * modified configure scripts and warnquota to check for new LDAP library and allow use of URI (Jan Kara)
62 * fix LDAP scripts to set VISUAL instead of EDITOR (Michael Meskes)
63 * added ext4 filesystem to the list of supported filesystems (Jan Kara)
64 * pot.o is now compiled with CFLAGS (Ladislav Michnovic)
65 * use -fPIE for compilation when available (Jan Kara, Ladislav Michnovic)
66 * fixed some more problems XFS quotaon (Kouta Ooizumi, Jan Kara)
67 * fixed two mistakes in quotaon(8) manpage (Utako Kusaka)
68 * added option -A to quota(1) to report all NFS mountpoints (Jan Kara)
69 * fixed XFS handling to work with loopback mounted devices (Jan Kara)
70 * fixed mountpoints scanning to make XFS -x delete command work (Jan Kara)
71 * fixes of signed vs unsigned int issues (Jan Kara)
72 * fixed a format string bug in reporting of raw grace times in repquota (Jan Kara)
73 * added repquota(8) and quota(1) option for better parsable output (Jan Kara)
74 * fixed error handling in edquota(8) when creating tmp file (Jan Kara)
75
76 Changes in quota-tools from 3.13 to 3.14
77 * updated Polish translations (Jakub Bogusz)
78 * print user/group names in error messages when cannot get quota information (Michal Marek, Jan Kara)
79 * added option --always-resolve to force resolving even names with digits only (Jan Kara)
80 * minor language corrections in manpages (Jan Kara)
81 * implemented long options parsing for all quota tools (Jan Kara)
82 * quota(1) has -f option to specify filesystem list (Jan Kara)
83 * corrected some informal language in messages (Jan Kara)
84 * we cannot even stat NFS mounts in local mode as server may be unreachable (Jan Kara)
85 * fixed error messages in getprivs() (Jan Kara, Brian Morris)
86 * made UID/GID prints unsigned (Matthew Kent)
87 * fixed very verbose printing for quotacheck (Jan Kara)
88 * fixed off-by-one bug in mount options parsing (Jan Kara)
89 * implemented nicer message formatting for warnquota(8) (Jan Kara)
90 * quota(1) has -w option to supress line wrapping for long device names (Jan Kara)
91 * quota(1) prints grace time even if hard limit is reached (Jan Kara)
92 * fixed journaled quota format detection in quotacheck (Jan Kara)
93
94 Changes in quota-tools from 3.12 to 3.13
95 * fixed mistakes in several error messages, improved error reporting functions
96   (Dmitry V. Levin)
97 * volume label and UUID support for reiserfs (Jan Kara)
98 * support for LABEL= and UUID= on a command line (Jan Kara)
99 * parse NFSD export table to find pseudofilesystem root for NFSv4 (Jan Kara)
100 * handle better when quota file should become empty (Niu YaWei)
101 * minor manpage and help-text fixes (Jan Kara)
102 * fixed quotacheck(8) to check each block only once (Jan Kara)
103 * fixed quotacheck(8) messages about corrupted blocks (Jan Kara)
104 * fixed quotacheck(8) to rename quota files after turning quotas off (Jan Kara)
105 * added sanity check to quota reporting (Jan Kara)
106 * fixed check for illegal references in quotacheck(8) (Jan Kara)
107 * added NFSv4 to the list of supported fs types (Jan Kara)
108 * updating of progress is now less frequent - should speedup quotacheck -v a bit (Jan Kara)
109 * added printing of directories to quotacheck(8) (Jan Kara, Jan Engelhardt)
110 * added dynamic mountpoint array allocation (Jan Kara)
111 * made quotacheck(8) more friendly to journaled quota (Jan Kara)
112 * changed configure to detect whether nls is needed (Tomasz Kloczko, Jan Kara)
113 * added JFS into a set of supported filesystems (David Kleikamp)
114 * added French translation (Jerome Schell)
115 * fixed quota tools to set of grace time only after exceeding soft limit, not
116   at reaching (Jan Kara)
117 * fixed exit codes of setquota(8) and edquota(8) (Jan Kara)
118 * updated Polish translations (Jakub Bogusz)
119 * fixed "bashism" is Makefile (Michael Meskes)
120
121 Changes in quota-tools from 3.11 to 3.12
122 * fixed bug in quotaon(8) reporting (Paul Szabo)
123 * added manpages for xqmstats & quotastats (Max Vozeler)
124 * fixed a few memleaks (Jan Kara)
125 * fixed bug when root had no usage and limits (Jan Kara)
126 * added a few perl wrappers for LDAP (Stefan Adams)
127 * added note about availability of -r option to manpages (Jan Kara)
128 * maximal number of groups is now got via sysconf (Nathan Scott)
129 * added batch mode to the setquota(8) (Jan Kara)
130 * added reference to setquota(8) to manpages of other tools (Jan Kara)
131 * fixed bug in --port option of rquotad (Max Kalika)
132 * updated quota documentation (Jan Kara)
133 * disabling nls via configure (Jan Kara)
134 * fixed warning when gettext not used (Peter Breitenlohner)
135 * fixed typo in rquotad.8 (Peter Breitenlohner)
136 * fixed compiler warning in quotacheck.c (Peter Breitenlohner)
137 * added config option for putting some important binaries to /sbin regardless
138   $(prefix) (Jan Kara)
139 * added config option to warnquota(8) for CCing admin only specified amount of
140   time before grace time runs out (Jan Kara)
141
142 Changes in quota-tools from 3.10 to 3.11
143 * quota-tools should again use old RPC protocol when needed (Jan Kara)
144 * add FIOQSIZE for x84_64 architecture (Jan Kara)
145 * quotacheck(8) does not count quota files to usage (Jan Kara)
146 * tools now honor journalled quota mount options (Jan Kara)
147 * manpage of repquota(8) stated falsely that repquota works over RPC (Jan Kara)
148 * added -T flag to quot(8) to avoid truncation of names (Andre Nathan)
149 * added -q flag to quot(8) to avoid sorting of names (Andre Nathan)
150 * added #include <paths.h> in quotasys.c to avoid compile problems on some systems (Jan Kara)
151 * changed detection of filesystem to be able to parse comma separated list (Jan Kara)
152 * fixed bug in quotacheck(8) which counted wrongly files larger than 2GB (Posta Zoltan)
153 * fixed compile problem with quotacheck and new kernels (Michael Meskes, Jan Kara)
154 * fixed typo in quotacheck manpage (Noel Koethe)
155 * warnquota(8) can get mail addresses via LDAP (James Bourne)
156 * warnquota(8) can avoid sending e-mail when user is over quota on mail partition (James Bourne)
157 * fixed bug in quotacheck(8) which counted directories twice sometimes (Jan Kara)
158 * edquota(8) now allows parameters in VISUAL/EDITOR env. params (Jan Kara)
159 * reverted changes in detection of kernel from 3.10 - interface obsoleted in 2.6 kernel (Jan Kara)
160
161 Changes in quota-tools from 3.09 to 3.10
162 * alternative port can be specified to rpc.rquotad by -p option (Jan Kara)
163 * Fixed processing of device-backed loop mounts (Jari Ruusu)
164 * Fixed fake error messages from rpc.rquotad (Jan Kara)
165 * quota(1) now does not print info for NFS filesystems without quotas (Jan Kara)
166 * XFS roothack option disabled by default (Nathan Scott)
167 * added option to warnquota(8) to supress details of report (Marco van Wieringen)
168 * fixed problems with multiple lines values in warnquota(8) (F. Depke)
169 * changed detection of kernel interface so that it works even without /proc (Jan Kara, Johan Ekenberg)
170 * updated Polish messages (Jakub Bogusz)
171 * updated quotactl(2) manpage (Jan Kara)
172 * fixed bug in -f option of edquota(8) (Jan Kara)
173 * fixed formatting bug in warnquota(8) (Jan Kara)
174 * added option -s (choice of more appropriate units) to warnquota(8) (Jan Kara)
175
176 Changes in quota-tools from 3.08 to 3.09
177 * minor update of quota(1) manpage (Jan Kara)
178 * quotacheck(8) now remembers only hardlinked files and not all inodes with
179   n_link > 1 (Jan Kara, Jan Kasprzak)
180 * quotacheck(8) doesn't store structures for all users in old quota format  (Jan Kasprzak)
181 * fixed minor bug in documentation (Jan Kara, Lucas Brasilino)
182 * repquota(8) handles multiple entries in /etc/passwd better (Jan Kara)
183 * made tools not to touch mountpoints mounted without quota options (Jan Kara)
184 * added option for ignoring autofs mountpoints to quota(1), quot(8), repquota(8) and rpc.rquotad(8) (Jan Kara, Paul Szabo)
185 * updated xqmstats (Nathan Scott)
186
187 Changes in quota-tools from 3.07 to 3.08
188 * Fixed infinite loop in quotacheck under RH7.1 (?)
189 * Made quota tools aware of /etc/services (H. J. Lu)
190 * Updated edquota(8) and setquota(8) to allow setting of individual grace time (Jan Kara)
191 * Fixed bug in convertquota(8) when quota was turned on during converting (Jan Kara)
192 * Add support for XFS filesystems without root special casing (Christoph Hellwig)
193 * XFS documentation updates (Nathan Scott)
194
195 Changes in quota-tools from 3.06 to 3.07
196 * Added creation of bin and sbin dir during make install; removed hardcoded 
197   /sbin directory for some utilities. (Jan Kara)
198 * Add support for 32 bit uid's and gid's when using EXT2_DIRECT. (Michael Meskes)
199 * updated manpage of rpc.rquotad (Jan Kara)
200 * setquota is disabled by default in rpc.rquotad (Jan Kara)
201 * setquota using RPC is disabled by default in configure (Jan Kara)
202 * rised maximal number of mountpoint to 256 (Jan Kara)
203 * small fix in configure (Nathan Scott)
204 * small fix in quotacheck(8) docs (Jan Kara)
205 * fixed quotacheck(8) to continue when old quota files were not found (Jan Kara)
206 * quota(1) now doesn't report failure to connect to rpc.rquotad server when -Q specified (Jan Kara)
207 * add quota(1) option -l (report only local filesystems) (Jan Kara)
208 * warnquota(8) now also mails specified member of the group about violation of the group quotas
209   when -g option is specified (Jan Kara)
210 * added options by which user can specify whether repquota(8) should translate names in
211   big chunks by scanning all users or individually. Added automagic detection using nsswitch.conf
212   which behaviour should lead to faster translating. (Jan Kara)
213
214 Changes in quota-tools from 3.05 to 3.06
215 * fixed caching of libwrap configure result (Jan Kara)
216 * fixed copying of quotafile name from mtab (?)
217 * warnquota.conf is now installed in config dir (Jan Kara)
218 * updated format detection to reflect changes in kernel interface in 2.5.18 (Jan Kara)
219 * fixed scanning of non-mountpoint directories (Jan Kara)
220 * fixed detection of XFS format (Jan Kara)
221 * fixed printing of 'over softlimit sign' in quota(1) (Jan Kara)
222
223 Changes in quota-tools from 3.04 to 3.05
224 * quota tools should honour 'noquota' mount option (Jan Kara)
225 * fixes in manpages (Arkadiusz Miskiewicz)
226 * fixed detection of libwrap in configure (Arkadiusz Miskiewicz)
227 * added forgotten ROOTDIR to path to gettext catalogs (Arkadiusz Miskiewicz)
228 * quotacheck uses newest format supported by kernel when creating new quota files (Jan Kara)
229 * fixed bug in IO initialization when -F xfs was given (Jan Kara)
230 * added support for quota 6.5.1 (Jan Kara)
231 * quotaon(8) now can get format parameter (Jan Kara)
232 * fixed bad return value of quota(1) (Jan Kara)
233 * fixed bug in quota format format detection (Jan Kara)
234
235 Changes in quota-tools from 3.03 to 3.04
236 * added -D_FILE_OFFSET_BITS=64 to Makefile - fixes problems with large files with some libcs (Michael Meskes)
237 * added -p (print state) to quotaon (Vladimir Linek, Jan Kara)
238 * made quotaon(8) write better error messages (Jan Kara)
239 * make install now creates man directories (Jan Kara)
240 * added -q <quotatab> and -c <configfile> options to warnquota(8) (Jan Kara)
241 * added some notes about quotatab to warnquota manpage (Jan Kara) 
242 * fixed bug in options parsing of warnquota(8) (Michael Meskes)
243 * ignore automount mountpoints (Philippe Troin)
244 * fixed minor bug in printing grace times (Jan Kara)
245 * fixed quotaon(8) behaviour when it sees newer kernel then it's able to handle (Jan Kara)
246 * minor formatting change in quotactl(2) manpage (Nathan Scott)
247 * init_io() is now more paranoid about quota turned on in kernel (Jan Kara)
248
249 Changes in quota-tools from 3.02 to 3.03
250
251 * added -f <filesystem> option (perform operation only for given filesystem) for edquota (Jan Kara)
252 * quotacheck now skips quota file scanning when file not found (Jan Kara)
253 * repquota shouldn't show grace times when softlimit is not exceeded (Jan Kara)
254 * removed bogus error message in mountpoint scanning (Jan Kara)
255 * fixed mountpoint scanning initialization (solved rpc.rquotad SEGFAULT) (Jan Kara)
256 * rpc.rquotad now doesn't need mountpoint for quota operations (Jan Kara)
257 * fixed compilation on sparc (Michael Meskes, Jan Kara)
258
259 Changes in quota-tools from 3.01 to 3.02
260
261 * added -n option (don't resolve names) to repquota (Jan Kara)
262 * quota tools now correctly handle zero grace times in old format (Jan Kara)
263 * edquota, setquota commit just grace times and flags - fixed possible races
264   when used on live filesystem (Jan Kara)
265 * another fix to quotastats (Jan Kara)
266 * added check to format detection for bad endianity (Jan Kara)
267 * implemented conversion of files with bad endianity (Jan Kara)
268 * fixes in warnquota, warnquota now allows line splitting by '\', text of mail
269   can be specified in config file (Jan Kara)
270
271 Changes in quota-tools from 3.01-final to 3.01
272
273 * quotastats should now work better on old kernels (Jan Kara)
274 * quotacheck is more strict in checking it's arguments (Jan Kara)
275 * edquota and setquota should be now save to run for working user
276   (number of used blocks and inodes could be wrong in previous versions)
277   (Jan Kara)
278
279 Changes in quota-tools from 3.01-pre9 to 3.01-final
280
281 * quotacheck is using ext2_ino_t if defined (Jani Jaakkola, Jan Kara)
282 * rpc.rquotad now closes stdin, stdout unless run on foreground (Jani Jaakkola)
283 * setquota can be disabled in rpc.rquotad by commandline option (Jani Jaakkola)
284 * quota-tools should now work well also on RH 7.1 (Anders Blomdell, Jan Kara)
285 * quotacheck makes backup files only when told by option (Preston Brown)
286 * quotacheck now uses vfsv0 format when no quotafile is found (Jan Kara)
287 * fixed mountpoint scanning bug when bad mountpoint was specified (Jan Kara)
288 * fixed bug when device was specified instead of mountpoint (Preston Brown)
289 * fixed bug when scanning mountpoint NFS mounted filesystem (Jan Kara)
290 * repquota now resolves more names at once which makes it
291   a lot faster (Jan Kara)
292
293
294 Changes in quota-tools from 3.01-pre8 to 3.01-pre9
295
296 * Improved host access handling (Jan Kara)
297 * Improved RPC error reporting (Jan Kara)
298 * Fixed bug in quotaon when run of kernel with XFS (Jan Kara)
299 * Implemented new mtab scanning with fallback to fstab when mtab not 
300   found (Jan Kara)
301 * Improved speed of repquota for old quota format (Jan Kara)
302 * New Makefile style (Jan Kara)
303 * Fixed bug in configure in detecting of e2fslib (Jan Kara)
304 * Implemented automatic choice of units in quota(1) and repquota(8) (Jan Kara)
305
306
307 Changes in quota-tools from 3.01-pre7 to 3.01-pre8
308
309 * Fixed typo in option in convertquota. (Jan Kara)
310 * Grace times are updated when quota limits are set. (Jan Kara)
311 * Fixed possible segfault in rpc.rquotad when no filesystems with quota
312   were found. (Jan Kara)
313
314
315 Changes in quota-tools from 3.01-pre6 to 3.01-pre7
316
317 * Fixed a bug in quotacheck (SEGFAULT on -aR) (Jan Kara)
318 * Fixed bug in rquota (grace times) (Jan Kara)
319
320
321 Changes in quota-tools from 3.01-pre5 to 3.01-pre6
322
323 * Fixed bug in quotacheck for new quota format (it created corrupted quota
324   files). (Jan Kara)
325 * Fixed bug in version reporting for quot. (Jan Kara)
326 * repquota now has -t option - when specified it will be truncating names so
327   output will be nicer (Jan Kara)
328
329
330 Changes in quota-tools from 3.01-pre2 to 3.01-pre5
331
332 * Fixed endian bug in the ext2 mount by LABEL or by UUID handling code, and
333   added XFS support to this code also.  (Nathan Scott)
334
335 * Fix bug in handling of multiple mount points sharing the same device.
336   (Jan Kara)
337
338 * Fix warnquota output for devices with long names.  (Jan Kara)
339
340 * Updated man pages.  (Jan Kara, Nathan Scott)
341
342 * Added a port of the BSD quot(8) utility, with XFS support.  (Nathan Scott)
343
344 * Added xqmstats(8) utility for reporting activity statistics for the XFS
345   Quota Manager - XQM.  (Nathan Scott)
346
347 * Fix up numerous compiler warnings and all the minor problems that revealed -
348   package now compiled with -Wall by default.  (Jan Kara, Nathan Scott)
349
350 * Rewrote the error output handler (now uses errstr function) which also
351   displays the correct programname of the program issueing the error.
352
353 * Additional configure option BSD_BEHAVIOUR for more the old BSD behaviour
354   as wanted by some people.
355
356 * EOF -> -1, sprintf -> snprintf fixes
357
358 * Don't turn quotas on on NFS
359
360 * Fixed quota format detection, related bugs in quotaon
361
362 * IO code now allows readonly access, doesn't open quotafile when not needed
363
364 * Fixed bug in old quotaformat initialization
365
366 * quota(1) now exits with nonzero exitcode when over quota
367
368 * Manpage cleanup
369
370
371 Changes in quota-tools from 2.00 to 3.01-pre2
372
373 * This is a complete rewrite of the quota package, most importantly adding
374   support for the new Linux quota format and also support for XFS quota.
375
376 * The internal data structures and algorithms were redesigned and rewritten by
377   Jan Kara (jack@ucw.cz) so that different versions and different types of
378   quota can be used with these tools.
379
380 * Support for XFS quota has been added by Nathan Scott (nathans@sgi.com).
381   
382 * Add options like RPC, ALT_FORMAT, RPC_SETQUOTA, EXT2_DIRECT to configure.
383   (Jan Kara)
384
385 * Fix atoi() -> strtol() and detect mistakes in numeric input.  (Jan Kara)
386
387 * Add '-V' option to all tools to display the version.  (Jan Kara)
388
389 * Reworked time conversion routines.  (Jan Kara)
390
391 * setquota - added -t parameter and allow variable number of filesystems to
392   be specified.  (Jan Kara)
393
394
395 Changes in quota-tools from 1.70 to 2.00
396
397 * Added patches from Steven Walker <smw8923@cmsu2.cmsu.edu> for supporting
398   rpc_setquota call and tcp-wrappers check in rquotad.
399
400 * Splited quota manipulation from setquota, edquota, quota etc. to quotaops.c
401   so things are coded only once. Also added support for remote quota editing
402   and setting using rquota extensions.
403
404 * Fixed problems with parsing of /etc/fstab in hasquota.c (incorrectly
405   assumed that it was the only option followed by an '='). Patch by
406   Simon Huggins <huggie@earth.li>.
407
408 * Extracted quota-io into quotaio.c so we only need to update repquota.c and
409   quotaio.c when we change the way quotas are stored in the quotafile for bigger
410   uids and gids.
411
412 * Added prototype user copying to setquota ala edquota -p only this
413   time only for a specific filesystem.
414
415 * Fixed quota tools for quotas bigger then 4 Gb.
416   Patch by Stephen C. Tweedie <sct@redhat.com>
417
418 * Changed rpc.rquotad to scan all device entries in /dev to support also devfs
419   systems and systems with special hardware RAID controllers.
420
421 * Added autoconf support to the quota-utils.
422   Patches by Andreas Gruenbacher <a.gruenbacher@bestbits.at>
423
424 * Added extra filesystem types to mntent to reflect the current linux filesystems
425
426 * Rewrote hasquota.c to check for the MNTOPT_QUOTA option.
427   (Request from Phil Stracchino <alaric@babcom.com>)
428
429 * Removed searching of /dev dir from rquota_server. Only lookup mounted filesystems.
430   (Patch by Roman Kagan <Roman.Kagan@itep.ru>)
431
432 * Added gettext NLS support all credits go to the guys named in the
433   README.gettext.
434
435 * Added the redhat patches to the standard tree.
436         * blocksize patch
437         * fhs patch
438         * hjl patch
439         * label patch
440         * SPARC patch
441
442 * Changed Q_SETQUOTA to Q_SETQLIM in quotaops.c for the putprivs function. This fixed
443   a problem where we restore bogos usage info by edquota etc. when a user resets its
444   quota usage while running for example edquota. We should only change the limits
445   because thats the only things we can change using these kind of tools.
446   (Bug report by Dr. Michael Meskes <michael@fam-meskes.de> from the Debian bug-archive)
447
448 * Added numeric option to quota and setquota to allow to set quota for users/groups not
449   in the localy known through name-services.
450   (Modified the patches send by Oscar Martín <oscar@cdrtcampos.es>)
451
452 Changes in quota-tools from 1.65 to 1.70
453
454 * Fixed problems when turning off one type of quota taking offline the
455   other type too.
456
457 * Fixed bugs as reported on bugtraq for negative ids and problems
458   with usernames with only digits.
459
460 * Added setquota (to se quotas from the commandline) as send to me by
461   Martin Bene <mb@sime.com>
462
463 Changes in quota-tools from 1.60 to 1.65
464
465 * Created new diffs again for the newer kernel (2.1.[78]x).
466
467 * Added sample program that copies quota-settings from one user
468   to an other.
469
470 * Added /etc/quotatab support as developed by Jon Lewis
471  <jlewis@inorganic5.fdt.net>
472
473 * Added some changes to /usr/src/linux/fs/nfsd/vfs.c to support quotas
474   for the kernel-nfsd too. (Most other filesystems are gone and the ones
475   remaining either don't need quotas or are not used by big groups of users.)
476
477 Changes in quota-tools from 1.55 to 1.60
478
479 * Added new option to kernel root_squash which means when that option is
480   set the kernel system treats root as any normal user and he cannot
481   write to any file anymore without obeing the quota limits.
482
483 * Added support for root_squash to quotaon and quotaoff using the new
484   rsquash option in mntent. In the run also rewrote the hasquota function.
485
486 * Added patches to Makefile.std which should make it more FSSTND compliant.
487
488 * Added extra check to rpc.rquotad to check the special device type when
489   scanning the /dev dir for the right device.
490
491 Changes in quota-tools from 1.52 to 1.55
492
493 * Added all patches and enhancements I collected the last few months.
494   (As always some have undergone some rewriting and are only a special
495    option. But they are in)
496
497 * Changed check on ruid in edquota to an access-check on the quota-files.
498   If you have write permissions on the quota-files as a group its probably
499   ok to allow you to change the quotas. If not the system operator should
500   take apropriate actions. Install edquota SUID-root if you want people
501   who are able to write to your quotafiles to change quotas. If you don't
502   install it SUID root it will only update the files which can give strange
503   problems with the kernel overwriting your updates.
504
505 * Added the EPS-file of the sheets from Remy Card which he used at the
506   Berlin Linux seminar. And because they describe everything in detail
507   its a nice enhancement to the current HTML docs.
508
509 Changes in quota-tools from 1.50 to 1.52
510
511 * Hopefully fixed some problems with makefiles and the like.
512
513 * Did some rewrite on the mountlist handling, removed limit on number of
514   superblocks by allocating them within the mountlist.
515   (This code is not available within the standard kernel. Until I find the
516    time and feel like it I will put all my new enhancements in my very own
517    (just a bit different) kernel sourcetree back into the mainstream kernels.)
518
519 Changes in quota-tools from 1.34 to 1.50
520
521 * Wrote some new docs, right into html use Mosaic, Netscape or lynx or
522   whatever HTML-browser to see whats in. Also did the manual-pages,
523   its just a quick hack hope this helps people using quota.
524
525 * Added DIRECT EXT2 access to quotacheck which should make scanning ext2
526   disks quite some faster. On the other hand you now need the ext2fs
527   libs to compile the quotacheck program. (Enhancement by Edvard Tuinder)
528
529 * Added dquot_operations to include/linux/fs.h
530
531 * Changed include/linux/quota.h according to new standard.
532
533 * Changed fs/dquot.c according to new standard.
534
535 * Added support to quotaon-systemcall for initializing the superblock
536   with a pointer to the dquot operations.
537
538 * Remove fs/fileio.c and include/linux/fileio.h including all references to it.
539
540 * Added support to the different filesystems to call the new dquot_alloc and
541   dquot_free functions on block/inode allocation or freeing. (currently ext2)
542
543 * People can add support to any filesystem if they want, for now I have been
544   lazy and only implemented it for ext2-fs. Which by the way is probably
545   the most difficult of all the filesystems. If one feels up to it you can
546   try adding it to your favorit filesystem. I will accept patches, and
547   include them with or without changes.
548
549 * Added some patches for dynamic allocation of quotafilenames in hasquota.
550   (patches by Remy Card)
551
552 * Rewrote quota_transfer again, as a never ending story...
553
554 * A new run off cleanups have been taking place, removed the QF_OPENING and
555   QF_CLOSING flags because we don't need them anymore. The new code uses dquot
556   pointers. If we initialize the dquot pointer after we have setup everything
557   we don't have do be afraid that we get dqget calls while we don't want them.
558
559 * Fixed some bugs with not dropping dquot pointers which lead to memory leaks
560   in the long run because dquots kept being hold because the kernel thought
561   it was still being used.
562
563 * Added some stats to the code which can be viewed with quotastats. Not real
564   interesting at the user level but quite handy debugging the quota system.
565
566 Changes in quota-tooles from 1.33 to 1.34
567
568 * Changed hasquota.c to not insert a slash when the mnt->mnt_dir already ends
569   with a slash. So something like //quota.user shouldn't happen anymore.
570
571 * Cleaned up fs/fileio.c, removed some unneeded dummy_inodes in unlink and
572   rmdir vfs functions. Now rely on incrementing i_count when deleting a 
573   dir or file and release it when I iput the inode. Should work because when
574   a executable is running when it gets deleted this also happens. Also
575   renamed and cleanup the rest of the funtions. vfs_rename function should
576   now also work for a hardlinked file.
577
578 * Changed vfs_chown functions to reset SUID and SGID on a chown because the
579   new kernel wants that.
580
581 * Changed locking on I/O to use semaphores instead off the mnt_flags
582   used before. The old stuff could lock quota easily probably because
583   the operation wasn't atomic. This should now be fixed.
584
585 * Fixed check_bdq to only give back a available blocks when the current
586   number of blocks are below the hardlimit. There was a bugfix for this
587   one so I applied that.
588
589 * Changed has_quota funtion to use a static buffer instead of mallocing
590   one everytime it needs one. Hope this helps with the reported memory
591   leak on the rquotad.
592
593 * Fixed some little bugs in dquot.c with the setting of the QF_OPENING
594   flag and not resseting it on failure of opening the quotafile.
595
596 * Added changes needed because the VFS-layer changed to use iattr structs
597   for the notify_change function.
598
599 * Fixed quota_transfer to work again with the new iattr structs, hopefully
600   it works ok now. It was brought to my attension that it wasn't working
601   the way it should in the old version. So I first checked out the fix that
602   I received, but that didn't solve the problem either so I fixed it myself.
603
604 * Combined the new writeaccess stuff with the stuff I already had. Also
605   cleaned up vfs layer some more because of the use of the new
606   vfs_getwriteaccess and vfs_putwriteaccess functions. This also involved
607   the quotaon function that should now return a propper errno on failure and
608   not the standard EIO that it was in earlier versions.
609
610 Changes in quota-tools from 1.32 to 1.33
611
612 * Ported the stuff back to the normal kernel to make a diff-file quite easy. 
613
614 * Fixed some typos that could trigger a kernel panic because the locking gets
615   killed when a quota is exeeded.
616
617 * Fixed the stuff to work with the the new-tty-drivers.
618
619 * This patches aren't that well tested on the machines I use because I use a
620   complete different kernel over here. But thats why this is called BETA
621   software. The bigfiles in this package are copies of the files used in my
622   kernel so some thing are tested more then others.
623
624 * Fixed quotacheck not to memset the whole quota when there are no blocks
625   allocated by this user.
626
627 Changes in quota-tools from 1.31 to 1.32
628
629 * Fixed diff-files, the are now made as unified diffs.
630
631 * Checked the specifications for the rquota service, I was correct we only need
632   to respond to udp connections. 
633
634 Changes in quota-tools from 1.3 to 1.31
635
636 * Changed quotacheck program to stuff directories it encounters on a 
637   directory stack and check them later on. This way there is at any
638   time one directory opened for reading. In the old situation it could
639   happen that more then one directory were open at the same time and
640   with nasty directory structures this could give to much open directories
641   at ones, leading to an error by the O.S.
642
643 * Added some hooks for debugging the memory usage by the program, and make
644   the stdout used for the -v flag non-buffered for more speed.
645
646 * Added variabele to mountstruct for flags, now we can mask when we are 
647   opening or closeing a quotafile, when we are we may not give out
648   pointers with the dq_get function, otherwise we run into problems
649   later on.
650
651 * Ok updated fs/*.c missed patch to fs/inode.c that solves a race condition.
652
653 * Added vfs_rename function that takes care of renaming files on top of already
654   existing files.  We were missing those ones, thanks to David Black for
655   reporting this. If there are still problems I will hear so and try to fix them
656   as soon as I can.
657
658 Changes in quota-tools from 1.2 to 1.3
659
660 * We only reply to rpc_quota_request made to the udp port of the
661   rquotad, I just removed support for the TCP service, I don't
662   think it's needed to have the TCP service for just exchanging
663   about 40 bytes of data. Too much overhead setting up a TCP connection.
664
665 * Changed vfs_write function within fileio.h to be a bit smarter. If
666   the fileposition + number of bytes to be written is less then the
667   current size of the file we should even bother checking it. And if
668   the number of wanted_blocks equals to 0 why even bother checking
669   the quota no changes are made anyway.
670
671 * Rewrote the quota stuff to be much more flexible, we now use pointers
672   that are located within the inode for fast lookup. This is a bit more
673   to setup but is much faster when used over and over again. Its based 
674   on the setup used for inode caching and is mostly rewritten code with
675   some extensions that were needed for the dquot structs. And of course
676   a lot extra because dquot aren't exactly inodes.
677
678 * Ok file is called dquot.c again because it specific to diskquotas. If
679   we ever get process quota, we have to move the system-call interface to
680   the kernel dir.
681
682 * splitted fileio header into fileio.c and fileio.h. Fileio.c contains 
683   the code for all the functions, fileio.h contains the prototypes for
684   the functions when quota is enabled and defines to the the default 
685   inode operations if it is disabled.
686
687 * Moved device management code to the file fs/super.c and made it a
688   bit more general. The stuff now can also be used for other purposes.
689   For now it contains the devicename, the directory the filesystem is
690   mounted on, a pointer to the superblock and the quota expire times 
691   and filepointers, this can be extended in the future and this can be 
692   used for other purposes then only quota. Its in super.c because it
693   is related to mounting a filesystem. The rootfilesystem is a special
694   case for which I don't have a nice solution right now.
695
696 * Cleaned up the file file_table.c and renamed it to file.c, otherwise 
697   we should call inode.c inode_table.c etc. More is static now, the
698   file_table isn't accesable anymore from everywhere, and the functions
699   that need the info within file.c should be located within that file.
700   A good example is the function used by the vhangup code, it now calls
701   a routine within file.c and so we don't have export any data anymore.
702
703 * changed decrement quota to reset the DQ_INODES and DQ_BLKS flag on
704   a decrement of a quota. It seems that we should bark again when one
705   goes over his quota after he removed something, ok should work this
706   way.
707
708 * changed set_dqblk to set the grace period when a new usage is set
709   and one exceeds his softlimit by that operation. Better then just
710   setting the graceperiod when he allocates any more inodes or blocks.
711   Only can give surprises when logging in but who cares they can ask
712   the sysadmin to give them a hand with cleaning there dirs. 
713
714 * quotaoff is very simple now just reset all the pointers that point
715   to a dquot and trash the cache for all dquots that are related to
716   the device being turned of. This way the next time you put it on the
717   stuff get read again from disk and not from the cache.
718
719 * changed most of the file structs to be a filepointer and request it
720   with get_empty_filp. This way we allocate it from the file_table which
721   is more the way it should be, Ok I know the dummy_inodes isn't that
722   nice either, but for that we don't have an other choice. Also it makes
723   live much easier this way. See the core dump stuff.
724
725 * used some more constants for setting up the file pointers, this should
726   make it easier to read. So ok Edvard ?
727
728 * rewrote most functions such as quota_alloc, quota_remove and quota_transfer
729   to use a for loop which counts from 0 to the number of quotas -1. This way
730   it should be easy to extend the quota stuff to maintain even more types of
731   quota. (At the moment I can think of one more, what about quotas for a
732   processgroups) :-)
733
734 * rewrote quota_transfer, its still the most complicated function of the
735   three manipulate functions, but it looks much cleaner then the one we
736   had.
737
738 * changed the system-call interface again this should be the last time, 
739   hope to have it made more intelligent now, most of the calls are quite
740   the same, so just set flags and call one functions. Saves some functions.
741
742 * And more cleanups to the vfs-layer. Did a kind of indent on all the sources
743   in the fs-dir by hand. All references to file pointers are now done by a
744   variable that is called filp. This is done to be a bit more consistent all
745   through the code. Before is was called file, filp, f etc.
746
747 * As of the indent I changed all tabs to be 3 spaces this makes it a bit
748   larger but much better to read.
749
750 * Someone reported that there are problems with fstab when you use something
751   like usrquota=/usr/adm/quota.user,grpquota=/usr/adm/quota.grp. I don't know
752   if the problems is also in the new libs, if so I have a replacement here for
753   the entire mntent stuff. I wrote this way back and it work ok so if you
754   have problems mail me and I will send you the sources. For now I didn't
755   include it yet in the standard mainline distribution.
756
757 * Ok added hooks to the fork code forgot that, ok this has cost me some
758   searching. We must doe an vfs_open_filp when a process forks and the
759   filepointers are copied or incremented.
760
761 Changes in quota-tools from 1.1 to 1.2
762
763 * Changed repquota.c to display at max 8 chars of username.
764
765 * Changed rquota_svc.c and rquota_server.c to handle both version 1 
766   and 2 requests. Now we should be able to communicate with sun systems.
767   SUN systems send out version 1 request which we can handle now.
768
769 * Changed quota.c to first send out a version 2 rquota request and if
770   that fails to try it with a version 1 request. Now we should be able to
771   query a rquotad on a sun-server exporting a NFS disk.
772
773 * Changed kernel diffs, now use a header file fileio.h with vfs functions
774   for writing, truncating, creating files/nodes. This cleaned up the
775   kernel diffs quite a bit. (Should have done this way back, but it is
776   done now)
777
778 * Fixed some small bugs with handling graceperiods again. Changed the code
779   in the systemcall interface all bugs should be gone now there.
780
781 * Wrote a new program warnquota. No manpage yet but it has no flags so
782   that's simple. You can run this from your crontab just like you run
783   quotacheck every night from cron. This program mails a message to all
784   users that violated the quota system.
785
786 * Changed fileio.h with unlinking and rmdir to make a copy of the inode.
787   Hope this fixes some problems we have seen with xiafs. It isn't to bad
788   either should have been this way from the beginning. A pointer to a
789   inode that is removed is a bit to tricky a copy in local memory is much
790   saver.
791
792 * Changed fs/quota.c to not check if the quotafile is on the same device
793   as the device for which it contains info. Found that in a document but
794   it's silly and so it's removed now. Who cares where you put it as long
795   the kernel can find it and it is the right format.
796   (Now something like usrquota="/var/adm/quota_src.user" should work :-))
797
798 * Changed edquota behaviour with -p flag. It now copies the current
799   usage to the new situation.
800
801 Changes in quota-tools from 1.0 to 1.1
802
803 * Moved check to test on quota on a certain filesystem to seperate file
804   hasquota.c
805
806 * Changed hasquota.c to use quotafile given in fstab file instead
807   of the default name of a quotafile. We now can define ourself where
808   to put our quotafile. Something like "usrquota=/usr/adm/quotasrc.user"
809
810 * Changed graceperiod counting was doing it the wrong way around. Now we
811   add the expiretime to the current time and that is the grace-period a user
812   has before we see a softlimit as a hardlimit.
813
814 * Changed allocation when not enough blocks can be allocated from ones quota.
815   Now you get as many blocks as you can affort yourself and not as in the 
816   earlier version, nothing. This was a bit of a bitch to tackle but it seems
817   to work ok now for regular files and core-files.
818
819 * Changed the quota.h file to include a prototype for a new function
820   blocks_to_isize that calculates the maximum isize for a file when allocating
821   less blocks than requested. Also included macro's for min() and max().
822
823 * Added rquotad program for own convinience, this was build from scratch with
824   only the rquota.x file. It seems to work quite nice between LINUX machines
825   don't have the resources to test it with other then LINUX machines.
826   We probably need a new version number for this type of rquota.
827   Something like rquota version 2 or something like that.
828
829 * Changed quota program to use a rpc-call to the rquotad on one of you
830   disk server machines. See #ifdef RPC in quota.c. Use small timeout because
831   I don't wanna wait to long when a machine is down. Increase it when you have
832   problems with slow hosts.
833
834 * Rewrite of quotacheck program. This one is much faster, about 60%. Thanks
835   to Edvard for this big improvement.
836
837 * Changed namei.c to iput the inode of a dir when doing a remove of a dir.
838   I never had problems with it but it seems that ext2 doesn't care to much when
839   you unlink a dir while you have the inode still open. Fixed it and it works
840   now ok also on xiafs which had problems with it, and of course the fragment
841   should have give this error because you have to iput the dir before you remove
842   it.
843
844 * Changed source of quotacheck to create new quotafile with at least the
845   gracetimes. Now there should never be a problem when turning on quota with
846   the quotactl systemcall after one has run quotacheck to create the correct
847   quotafiles.
848   
849 * Changed code of quota.c to read MOUNTED(mtab) instead of FSTAB(fstab) when
850   showing quotainfo.