|
0
|
1 |
1998-01-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
2 |
|
|
|
3 |
* commands/vdeliver.cc (main): Added support for optionally adding
|
|
|
4 |
the From, Delivered-To:, and Return-Path: line to the start of the
|
|
|
5 |
output mail, either to a file or to qmail-inject (which omits the
|
|
|
6 |
From line).
|
|
|
7 |
|
|
|
8 |
1998-01-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
9 |
|
|
|
10 |
* commands/checkvpw.cc (authenticate): Revised the logic to only
|
|
|
11 |
validate the password if an 'ok' code is returned (was previously
|
|
|
12 |
the default case), and to indicate bad data otherwise.
|
|
|
13 |
|
|
|
14 |
* commands/testclient.cc (main): Added a case for the new econn
|
|
|
15 |
return code.
|
|
|
16 |
|
|
|
17 |
* daemon/lookup.cc (CMD(lookup)): Wrote this routine to lookup a
|
|
|
18 |
virtual user's delivery instructions. Returns one of: &address,
|
|
|
19 |
&address@hostname, /full/path/to/maildir, or ./maildir
|
|
|
20 |
|
|
|
21 |
* daemon/dispatch.cc (CMD(stat)): Added a new field to the
|
|
|
22 |
dispatch table, count, which is used to count the number of times
|
|
|
23 |
that function has been invoked. The new function, stat, can be
|
|
|
24 |
used to return this count on a per-function basis.
|
|
|
25 |
|
|
|
26 |
* commands/vdeliver.cc (main): If the call caused a connection
|
|
|
27 |
error, defer the message (return 111).
|
|
|
28 |
|
|
|
29 |
* lib/server.cc (call): Return 'econn' when either building the
|
|
|
30 |
connection, sending, or receiving data fails.
|
|
|
31 |
|
|
|
32 |
* lib/server.h (struct server_response): Added another error code
|
|
|
33 |
'econn', used to denote an error with the connection itself.
|
|
|
34 |
|
|
|
35 |
* lib/mystring.h (class mystring): Changed the 'nil' constant to
|
|
|
36 |
'const char*' type from 'mystring' type. This avoids the need for
|
|
|
37 |
a special protected constructor just for this object, and more
|
|
|
38 |
accurately reflects its purpose as a placeholder buffer for empty
|
|
|
39 |
strings.
|
|
|
40 |
(operator!=): Revised this operation to test if the string to
|
|
|
41 |
which this is being compared is a NULL pointer.
|
|
|
42 |
|
|
|
43 |
* commands/vdeliver.cc: Wrote this program to be inserted in a
|
|
|
44 |
.qmail-default file, to serve as the delivery agent for all the
|
|
|
45 |
addresses.
|
|
|
46 |
|
|
|
47 |
* lib/mystring.cc (dup): Wrote dup/5 routine for combining 5
|
|
|
48 |
strings.
|
|
|
49 |
|
|
|
50 |
1998-01-22 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
51 |
|
|
|
52 |
* daemon/main.cc (main): Fixed bug in socket bind call to use
|
|
|
53 |
correct length value computed by SUN_LEN macro. Still need to
|
|
|
54 |
actually allocate the memory for the sockaddr_un with malloc
|
|
|
55 |
instead of relying on the buffer for sun_path being long enough.
|
|
|
56 |
|
|
|
57 |
* lib/server.cc (connect): Fixed bug in socket connect call to use
|
|
|
58 |
correct length value computed by SUN_LEN macro.
|
|
|
59 |
|
|
|
60 |
* Released version 0.69pre1 pre-release.
|
|
|
61 |
|
|
|
62 |
* commands/checkvpw.cc: Moved the definitions of the FAIL_* macros
|
|
|
63 |
into this file from lib/debug.h
|
|
|
64 |
|
|
|
65 |
* daemon/check.cc (check): Fixed several logic bugs.
|
|
|
66 |
|
|
|
67 |
* src/checkvpw.cc (main): Rewrote this program to use the 'check'
|
|
|
68 |
feature of the daemon.
|
|
|
69 |
|
|
|
70 |
* daemon/main.cc (handle_connection): Print out a message when the
|
|
|
71 |
request completes as well as when it is started.
|
|
|
72 |
|
|
|
73 |
* daemon/chpass.cc: Fixed some one-off bugs in the command-line
|
|
|
74 |
handling.
|
|
|
75 |
|
|
|
76 |
* src/vpasswd.cc (main): Rewrote this program to be a simple
|
|
|
77 |
server call stub to the 'chpass' feature.
|
|
|
78 |
|
|
|
79 |
* checkvpw.texi: Started reorganizing this document for the
|
|
|
80 |
inclusion of documentation on the daemon program.
|
|
|
81 |
|
|
|
82 |
* lib/server.h (class server_call): Removed the 'msg' class -- it
|
|
|
83 |
was causing all sorts of headaches from memory deallocation, and
|
|
|
84 |
was originally implemented as a premature optimization.
|
|
|
85 |
|
|
|
86 |
1998-01-21 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
87 |
|
|
|
88 |
* lib/debug.h: Added trace, traceptr, and tracestr functions, to
|
|
|
89 |
trace the flow of class methods.
|
|
|
90 |
|
|
|
91 |
* lib/mystring.cc: Introduced the "nil" string -- a constant
|
|
|
92 |
statically allocated empty string. Duplicating an empty string or
|
|
|
93 |
a null pointer duplicates the pointer to this nil string, instead
|
|
|
94 |
of allocating more memory. Freeing the nil string is not allowed.
|
|
|
95 |
|
|
|
96 |
1998-01-18 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
97 |
|
|
|
98 |
* Started rewriting the protocol used to communicate between the
|
|
|
99 |
client and server to be more efficient. See doc/protocol.txt for
|
|
|
100 |
a very sketchy protocol definition.
|
|
|
101 |
|
|
|
102 |
* daemon/check.cc (check): Wrote this routine to do password
|
|
|
103 |
checking, copied mostly from src/checkvpw.cc.
|
|
|
104 |
|
|
|
105 |
* src/testclient.cc: Wrote this program to serve as a test client
|
|
|
106 |
to the server, to test all the data paths through the client
|
|
|
107 |
library and the server functions without depending on the
|
|
|
108 |
implementation of the other programs.
|
|
|
109 |
|
|
|
110 |
* lib/server.h (class server_call): Wrote the classes in this file
|
|
|
111 |
and lib/server.cc to encapsulate a call to the server and its
|
|
|
112 |
response.
|
|
|
113 |
|
|
|
114 |
1998-01-14 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
115 |
|
|
|
116 |
* Started work on the checkvpw daemon -- a user-space server that
|
|
|
117 |
handles all the real functionality of all the other programs via a
|
|
|
118 |
UNIX domain socket. It currently handles checking passwords (for
|
|
|
119 |
checkvpw) and changing passwords (for vpasswd).
|
|
|
120 |
|
|
|
121 |
* lib/mystring.cc (operator+): wrote a new copy of this that takes
|
|
|
122 |
a 'const char*' second parameter.
|
|
|
123 |
(*): Rewrote several of the routines that return a new mystring to
|
|
|
124 |
use the 'named return value' extension of gcc (if being compiled
|
|
|
125 |
under gcc).
|
|
|
126 |
|
|
|
127 |
1998-01-13 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
128 |
|
|
|
129 |
* lib/mystring: Added or modified several routines that take
|
|
|
130 |
"const char*" instead of "const mystring&" as parameters, to
|
|
|
131 |
prevent the unnecessary spurious creation of temporary
|
|
|
132 |
mystring's.
|
|
|
133 |
|
|
|
134 |
1998-01-11 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
135 |
|
|
|
136 |
* lib/passwdfn.cc (fsetpasswd): This new routine encrypts the
|
|
|
137 |
given password and sets it in the named password file.
|
|
|
138 |
|
|
|
139 |
* src/vpasswd.cc (main): Require that the new password is not the
|
|
|
140 |
same as the newly entered password.
|
|
|
141 |
(main): Use the newly written 'fssetpasswd' routine.
|
|
|
142 |
|
|
|
143 |
* lib/mystring.cc (append): Wrote this method to support string
|
|
|
144 |
concatenation using "+" and "+=" operators.
|
|
|
145 |
|
|
|
146 |
* lib/cgi-base.h (class CGI): Started this class to provide helper
|
|
|
147 |
functions for CGI applications.
|
|
|
148 |
|
|
|
149 |
1998-01-10 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
150 |
|
|
|
151 |
* lib/cgi-base.cc (main): Wrote this main routine of all CGI
|
|
|
152 |
programs; calls cgi_main with the CGI arguments as a parameter.
|
|
|
153 |
(main): Print an error message and don't call cgi_main if there
|
|
|
154 |
was an error fetching the CGI arguments.
|
|
|
155 |
|
|
|
156 |
* lib/cgi-base.h (class CGIArgs ): Wrote this class to encapsulate
|
|
|
157 |
the list of arguments or input items on a CGI form.
|
|
|
158 |
|
|
|
159 |
* lib/mystring.h (class mystring): Wrote a default constructor.
|
|
|
160 |
Wrote operator!, returns true if the string is empty.
|
|
|
161 |
|
|
|
162 |
* Reorganized the directory structure: generic library files are
|
|
|
163 |
in "lib", program sources are in "src", and CGI sources are in
|
|
|
164 |
"CGI".
|
|
|
165 |
|
|
|
166 |
* src/*.h: Prepended "CHECKVPW__" to the file identifier macro in
|
|
|
167 |
most of the header files
|
|
|
168 |
|
|
|
169 |
1998-01-06 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
170 |
|
|
|
171 |
* vpasswd.cc (main): Changed occurences of "passwd" to use the
|
|
|
172 |
PASSWORD_FILE define.
|
|
|
173 |
|
|
|
174 |
1998-01-05 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
175 |
|
|
|
176 |
* spec (Requires): checkvpw does not really "require" qmail, it's
|
|
|
177 |
just the only thing that currently uses it, so I removed this
|
|
|
178 |
requirement.
|
|
|
179 |
|
|
|
180 |
* released version 0.65-1
|
|
|
181 |
|
|
|
182 |
* Makefile: makefile included in the distributed sources does not
|
|
|
183 |
contain the sections specific to building the distribution.
|
|
|
184 |
|
|
|
185 |
* qmail.cc (find_virtual): fixed bug in search logic
|
|
|
186 |
|
|
|
187 |
1998-01-03 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
188 |
|
|
|
189 |
* mystring.cc (operator=): written
|
|
|
190 |
|
|
|
191 |
* checkvpw.texi (checkvpw): updated the documentation to reflect
|
|
|
192 |
the changes listed below.
|
|
|
193 |
|
|
|
194 |
* qmail.cc (find_virtual): modified the logic searching for a
|
|
|
195 |
virtual domain to match that of qmail -- wildcards in the
|
|
|
196 |
virtualdomains file are not automatic, but are represented by a
|
|
|
197 |
leading '.' in the host name. The new search is also
|
|
|
198 |
non-recursive and only reads the virtualdomains file once.
|
|
|
199 |
|
|
|
200 |
1998-01-02 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
201 |
|
|
|
202 |
* checkvpw.cc (main): If the user name contains a '@' symbol,
|
|
|
203 |
treat the string following the '@' as the host name, and the
|
|
|
204 |
string preceding the '@' as the username within that host's
|
|
|
205 |
virtual domain.
|
|
|
206 |
|
|
|
207 |
* mystring.h (class mystring): modified the subst, lower, and
|
|
|
208 |
upper methods to return a new (modified) mystring instead of
|
|
|
209 |
modifying the current string.
|
|
|
210 |
(class mystring): wrote the 'left', 'right', and 'sub' methods,
|
|
|
211 |
which return portions of the string.
|
|
|
212 |
(class mystring): wrote the 'find' method, finds a single
|
|
|
213 |
character in the string
|
|
|
214 |
|
|
|
215 |
* Makefile: patched for glibc to automatically add the separate
|
|
|
216 |
"crypt" library to the link stage if it is detected in its
|
|
|
217 |
"normal" location (/usr/lib/libcrypt.*)
|
|
|
218 |
|
|
|
219 |
1997-12-26 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
220 |
|
|
|
221 |
* mystring.cc: recoded "dup" functions to handle NULL pointers as
|
|
|
222 |
empty strings
|
|
|
223 |
|
|
|
224 |
1997-12-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
225 |
|
|
|
226 |
* checkvpw.cc (main): Changed both the normal and the virtual
|
|
|
227 |
authentication case to call the same authentication routine. This
|
|
|
228 |
allows a user to enter "userid-virtualuser" as a pop-3 username
|
|
|
229 |
that will access user "virtualuser" in the mail domain that
|
|
|
230 |
"userid" controls.
|
|
|
231 |
|
|
|
232 |
Thu Nov 27 22:07:42 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
233 |
|
|
|
234 |
* qmail.cc (find_virtual): moved into qmail.cc from checkvpw.cc
|
|
|
235 |
|
|
|
236 |
Wed Nov 26 11:52:24 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
237 |
|
|
|
238 |
* released version 0.64-1
|
|
|
239 |
|
|
|
240 |
* vdeluser.cc (main): convert user names to lower case
|
|
|
241 |
|
|
|
242 |
* vdelalias.cc: removed routine dot_qmail_name (duplicates qmail.cc)
|
|
|
243 |
|
|
|
244 |
* vpasswd.cc (main): convert the user name to lower case
|
|
|
245 |
|
|
|
246 |
* vadduser.cc (set_password): convert the user name to lower case
|
|
|
247 |
(main): various conversions to ensure usernames are all lower case
|
|
|
248 |
|
|
|
249 |
* qmail.cc (dot_qmail_name): make the .qmail file name lowercase
|
|
|
250 |
|
|
|
251 |
* checkvpw.cc (struct auth_data): convert the name to lower case
|
|
|
252 |
on input
|
|
|
253 |
|
|
|
254 |
* mystring.cc (tolower,toupper): written, convert strings to all
|
|
|
255 |
upper or lower case
|
|
|
256 |
|
|
|
257 |
Thu Nov 20 13:56:55 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
258 |
|
|
|
259 |
* released version 0.63-1
|
|
|
260 |
|
|
|
261 |
* vdeluser.cc (dot_qmail_rm): removed the code to strip trailing
|
|
|
262 |
whitespace -- the trailing \n is already in the search string
|
|
|
263 |
(dot_qmail_rm): provide more information on what files are being
|
|
|
264 |
removed
|
|
|
265 |
(main): fixed a bug that would cause mail directory for only the
|
|
|
266 |
first user named to be removed
|
|
|
267 |
|
|
|
268 |
Tue Nov 18 12:32:47 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
269 |
|
|
|
270 |
* released version 0.62-1
|
|
|
271 |
|
|
|
272 |
* vdeluser.cc (dot_qmail_rm): added code to strip trailing
|
|
|
273 |
whitespace from the string returned by fgets
|
|
|
274 |
|
|
|
275 |
* passwdfn.cc (getpasswd_stdin): added code to strip trailing
|
|
|
276 |
whitespace from the string returned by fgets
|
|
|
277 |
|
|
|
278 |
* checkvpw.cc (auth_virtual): fixed a whole series of one-off bugs
|
|
|
279 |
that would cause authorization to fail in certain cases
|
|
|
280 |
(find_virtual_recurse): added code to strip trailing whitespace
|
|
|
281 |
from virtual prefixes
|
|
|
282 |
|
|
|
283 |
Thu Nov 13 11:17:02 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
284 |
|
|
|
285 |
* vadduser.cc (check_names): now checks for the existance of
|
|
|
286 |
.qmail files
|
|
|
287 |
|
|
|
288 |
* released version 0.61-1
|
|
|
289 |
|
|
|
290 |
* passwdfn.cc (getpasswd): split getpasswd() into two more
|
|
|
291 |
functions, getpasswd_stdin() and getpasswd_interactive(), to avoid
|
|
|
292 |
using the default mystring constructor
|
|
|
293 |
|
|
|
294 |
* mystring.h (class mystring): removed default constructor -- it
|
|
|
295 |
appears to have been causing segmentation faults
|
|
|
296 |
|
|
|
297 |
Wed Nov 12 09:20:04 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
298 |
|
|
|
299 |
* passwdfn.cc (getpasswd): fixed length of fgets from 8 to 9
|
|
|
300 |
|
|
|
301 |
* released version 0.60-1
|
|
|
302 |
|
|
|
303 |
* Updated the documentation to reflect the change in password
|
|
|
304 |
handling.
|
|
|
305 |
|
|
|
306 |
* mystring.h (class mystring): added a default constructor
|
|
|
307 |
|
|
|
308 |
* vpasswd.cc (main): changed to use getpasswd
|
|
|
309 |
|
|
|
310 |
* vadduser.cc (set_password): changed to use getpasswd
|
|
|
311 |
|
|
|
312 |
* passwdfn.cc (getpasswd): written, gets a password from the
|
|
|
313 |
user. If stdin is a tty, then it uses the prompts and getpass()
|
|
|
314 |
function, otherwise it just reads the password with no prompts.
|
|
|
315 |
|
|
|
316 |
* released version 0.59-1
|
|
|
317 |
|
|
|
318 |
* vpasswd.cc (main): bugfix: manually duplicate all the fields of
|
|
|
319 |
pw into newpw, using strdup on strings. This avoids future calls
|
|
|
320 |
to getpwent overwriting the existing data (the strings in the pw
|
|
|
321 |
structure are pointers to static data).
|
|
|
322 |
|
|
|
323 |
Mon Sep 22 13:47:16 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
324 |
|
|
|
325 |
* released version 0.58-1
|
|
|
326 |
|
|
|
327 |
* qmail.cc: this file will include some QMail specific functions
|
|
|
328 |
(dot_qmail_name): moved into qmail.cc from vaddalias and vadduser
|
|
|
329 |
|
|
|
330 |
* vadduser.cc (main): make sure all names are valid
|
|
|
331 |
|
|
|
332 |
* vaddalias.cc (main): make sure the aliases are valid before
|
|
|
333 |
creating them
|
|
|
334 |
|
|
|
335 |
Fri Sep 19 12:01:04 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
336 |
|
|
|
337 |
* released version 0.57-1
|
|
|
338 |
|
|
|
339 |
* checkvpw.texi: updated documentation for vaddalias and vdelalias
|
|
|
340 |
|
|
|
341 |
* vdelalias.cc: wrote vdelalias to delete aliases
|
|
|
342 |
|
|
|
343 |
* vaddalias.cc: wrote vaddalias to add a new alias to an existing
|
|
|
344 |
user
|
|
|
345 |
|
|
|
346 |
* stat_fns.h (is_file): added
|
|
|
347 |
|
|
|
348 |
Thu Sep 18 09:05:46 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
349 |
|
|
|
350 |
* tweaked root-level Makefile to clean up after building a
|
|
|
351 |
distribution
|
|
|
352 |
|
|
|
353 |
* released version 0.56-1
|
|
|
354 |
|
|
|
355 |
* stat_fns.h: written -- has some simple file testing routines
|
|
|
356 |
|
|
|
357 |
* mystring: added a 'length' member to the class to allow for
|
|
|
358 |
faster length calculations
|
|
|
359 |
|
|
|
360 |
* checkvpw.texi: updated the documentation for vdeluser
|
|
|
361 |
|
|
|
362 |
* spec: added vdeluser to list of programs
|
|
|
363 |
|
|
|
364 |
* vdeluser.cc: re-write vdeluser perl script as C++ to avoid any
|
|
|
365 |
dependancies on perl
|
|
|
366 |
|
|
|
367 |
* passwdfn.cc (fdelpwnam): wrote function to delete an entry
|
|
|
368 |
|
|
|
369 |
* checkvpw.cc (auth_virtual): use definition instead of "passwd"
|
|
|
370 |
|
|
|
371 |
* config.h: added definition for the temporary password file
|
|
|
372 |
|
|
|
373 |
* vadduser.cc (main): moved setting the password back up before
|
|
|
374 |
creating any of the rest of the account -- if a user mis-types a
|
|
|
375 |
password, none of the rest of the account will be created
|
|
|
376 |
accidentally.
|
|
|
377 |
|
|
|
378 |
Wed Sep 17 10:02:58 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
379 |
|
|
|
380 |
* vdeluser: wrote (as a perl script) to delete mail users
|
|
|
381 |
|
|
|
382 |
* released version 0.55-1
|
|
|
383 |
|
|
|
384 |
* checkvpw.texi: updated the documentation
|
|
|
385 |
|
|
|
386 |
* released version 0.54-2
|
|
|
387 |
|
|
|
388 |
* spec: added a %attr tag for the documentation files.
|
|
|
389 |
|
|
|
390 |
Tue Sep 16 10:50:16 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
391 |
|
|
|
392 |
* released version 0.54-1
|
|
|
393 |
|
|
|
394 |
* checkvpw.cc (auth_virtual): make the maildir string point to a
|
|
|
395 |
subdirectory in USER_DIR
|
|
|
396 |
|
|
|
397 |
* vadduser.cc: user mail directories are now stored in USER_DIR
|
|
|
398 |
|
|
|
399 |
* config.h: created for global defines
|
|
|
400 |
|
|
|
401 |
* mystring.cc (subst): substitute all instances of the <from>
|
|
|
402 |
character with the <to> character (new)
|
|
|
403 |
|
|
|
404 |
* vadduser.cc (main): create symlinks to the master .qmail-<user>
|
|
|
405 |
file instead of creating multiple files for aliases
|
|
|
406 |
|
|
|
407 |
* released version 0.53-1
|
|
|
408 |
|
|
|
409 |
* passwdfn.cc (fsetpwnam): fixed a bug that prevented more than
|
|
|
410 |
one entry from being added to a password file
|
|
|
411 |
|
|
|
412 |
* vadduser.cc (main): changed the default UID and GID to add to
|
|
|
413 |
the password file to the current UID and GID
|
|
|
414 |
|
|
|
415 |
Mon Sep 15 16:55:09 1997 Bruce Guenter <bguenter@mikhail.qcc.sk.ca>
|
|
|
416 |
|
|
|
417 |
* released version 0.52-2
|
|
|
418 |
|
|
|
419 |
* modified file structure to move sources and documentation into
|
|
|
420 |
separate directories
|
|
|
421 |
|
|
|
422 |
* released version 0.52-1
|
|
|
423 |
|
|
|
424 |
* Changed program name to checkvpw. I never did like the long
|
|
|
425 |
name...
|
|
|
426 |
|
|
|
427 |
* Added GNU COPYING file to package.
|
|
|
428 |
|
|
|
429 |
* vadduser.cc (make_dot_qmail): checks for the .qmail-<ext> file
|
|
|
430 |
before creating one
|
|
|
431 |
(main): checks for the user in the password file before adding one
|
|
|
432 |
|
|
|
433 |
* passwdfn.cc (fsetpwnam): modified to create the file if it
|
|
|
434 |
doesn't exist
|
|
|
435 |
|
|
|
436 |
* released version 0.51-2
|
|
|
437 |
|
|
|
438 |
* added ChangeLog and TODO to spec file
|
|
|
439 |
|
|
|
440 |
* vpasswd.cc (main): vpasswd no longer requires that the
|
|
|
441 |
administrator types in the old password to change to a new one
|
|
|
442 |
|