|
1 <html> |
|
2 <head><title>ChangeLog</title></head> |
|
3 <body> |
|
4 <p>2000-09-30 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
5 <ul> |
|
6 |
|
7 <li>Released version 0.96.9 |
|
8 |
|
9 <li>python/commands.py (adduser): Fixed a typo that prevents users |
|
10 without a mailbox from being added. |
|
11 |
|
12 </ul> |
|
13 </p> |
|
14 <p>2000-09-15 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
15 <ul> |
|
16 |
|
17 <li>authenticate/authvlib.cc (check): Always set VUSER, even if |
|
18 virtname is blank. |
|
19 |
|
20 </ul> |
|
21 </p> |
|
22 <p>2000-09-14 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
23 <ul> |
|
24 |
|
25 <li>daemon/main.cc: Exit immediately if a SIGPIPE or SIGALRM is |
|
26 caught. |
|
27 |
|
28 </ul> |
|
29 </p> |
|
30 <p>2000-09-12 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
31 <ul> |
|
32 |
|
33 <li>pyadmin/vmailmgr_lib.py (Flag.html): Added this method to print |
|
34 out a HTML select list with the correct item selected. |
|
35 |
|
36 <li>pyadmin/vmailmgr_sessiond.py: New program set up to track |
|
37 session status in memory instead of on disk. |
|
38 |
|
39 <li>pyadmin/vmailmgr_pyadmin.py (cgi_main): Create a Context object |
|
40 for passing in to format_page. |
|
41 |
|
42 <li>pyadmin/vmailmgr_parser.py (Context): Defined this context |
|
43 object that wraps context data. This will be extended to stack |
|
44 contexts. When doing a __getitem__, if the key is not found in |
|
45 the context dictionary, that key is evaluated as an expression |
|
46 with the dictionary as local variables. |
|
47 (Foreach.do_end): Pass the formatted sections to |
|
48 stack.append_or_print instead of printing them directly. |
|
49 |
|
50 </ul> |
|
51 </p> |
|
52 <p>2000-09-11 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
53 <ul> |
|
54 |
|
55 <li>Removed all old Python support code, replace by the new |
|
56 "pyadmin" interface. |
|
57 |
|
58 </ul> |
|
59 </p> |
|
60 <p>2000-09-05 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
61 <ul> |
|
62 |
|
63 <li>daemon/dispatch.cc (dispatch_cmd): Don't add "-virtuser" to |
|
64 baseuser name if virtuser is empty. |
|
65 |
|
66 </ul> |
|
67 </p> |
|
68 <p>2000-09-04 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
69 <ul> |
|
70 |
|
71 <li>python/vmailmgr_cgi.py.in (Session): Added prototype for new |
|
72 class to manage session data. |
|
73 |
|
74 <li>daemon/check.cc (CMD): Simplified the logic, elimited the return |
|
75 value. Now returns either error or OK. |
|
76 |
|
77 </ul> |
|
78 </p> |
|
79 <p>2000-09-01 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
80 <ul> |
|
81 |
|
82 <li>doc/FAQ.sgml: Added section on long POP3 logins. |
|
83 |
|
84 </ul> |
|
85 </p> |
|
86 <p>2000-08-22 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
87 <ul> |
|
88 |
|
89 <li>commands/vdeliver.cc (deliver_partial): Fail permanently if: the |
|
90 open failed, EDQUOT is defined, and the error number is EDQUOT. |
|
91 |
|
92 </ul> |
|
93 </p> |
|
94 <p>2000-08-15 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
95 <ul> |
|
96 |
|
97 <li>daemon/deluser.cc (CMD): Use new form of vdomain::deluser. |
|
98 |
|
99 <li>lib/vpwtable/reader.cc (vpwtable_reader): Removed the call to |
|
100 end here, which produced a missing reference to |
|
101 vpwtable_reader::end. |
|
102 |
|
103 </ul> |
|
104 </p> |
|
105 <p>2000-08-13 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
106 <ul> |
|
107 |
|
108 <li>commands/*.cc: Moved all the POD man page documentation into the |
|
109 source files using a new CLI documentation generator. |
|
110 |
|
111 </ul> |
|
112 </p> |
|
113 <p>2000-08-11 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
114 <ul> |
|
115 |
|
116 <li>commands/vdeluser.cc: Added an option to prevent vdeluser from |
|
117 deleting a user with a mailbox. |
|
118 |
|
119 <li>lib/vdomain/deluser.cc (deluser): Added a flag to make deluser |
|
120 not delete users with a mailbox. |
|
121 |
|
122 <li>daemon/main.cc: Fixed up some of the cli_* values. |
|
123 |
|
124 <li>doc/FAQ.sgml: Added note regarding difference between vmailmgr |
|
125 and vpopmail. |
|
126 |
|
127 <li>lib/vpwtable/gdbm_read.cc (class gdbm_vpwtable_reader): Added |
|
128 this new subclass of vpwtable_reader. |
|
129 |
|
130 <li>lib/vpwtable/cdb_read.cc (class cdb_vpwtable_reader): Added this |
|
131 new subclass of vpwtable_reader. |
|
132 |
|
133 <li>lib/vpwtable/vpwtable.h (class vpwtable_reader): Removed the |
|
134 short-sighted conditional mess in this class with virtual methods. |
|
135 |
|
136 </ul> |
|
137 </p> |
|
138 <p>2000-08-10 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
139 <ul> |
|
140 |
|
141 <li>Released version 0.96.8 |
|
142 |
|
143 <li>authenticate/authvlib.cc (set_user): Call pwentry::export_env |
|
144 instead of doing it manually. |
|
145 |
|
146 <li>lib/misc/pwentry_export_env.cc (export_env): Added this routine |
|
147 to export USER and HOME for a real user. |
|
148 |
|
149 <li>commands/vcheckquota.cc (link_softquota_message): Fixed bug in |
|
150 multiple use of atoi. |
|
151 |
|
152 <li>doc/HOWTO.sgml: Added a note on vsetup. |
|
153 |
|
154 </ul> |
|
155 </p> |
|
156 <p>2000-08-04 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
157 <ul> |
|
158 |
|
159 <li>doc/FAQ.sgml: Added notes on location of qmail-autoresponder and |
|
160 the CVS repository. |
|
161 |
|
162 <li>daemon/autoresponse.cc (autoresponse_read): If the normal |
|
163 autoresponse file can't be read, try the disabled file. |
|
164 (autoresponse_status): Added status command. |
|
165 |
|
166 <li>commands/vcheckquota.cc (link_softquota_message): Added code to |
|
167 symlink in warning message if softquota fails. This will link the |
|
168 message in each time soft quota fails. |
|
169 |
|
170 </ul> |
|
171 </p> |
|
172 <p>2000-08-03 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
173 <ul> |
|
174 |
|
175 <li>commands/vdeliver.cc (cli_main): Make sure to rewind stdin |
|
176 before executing vdeliver-postdeliver. |
|
177 |
|
178 <li>daemon/lookup.cc: Rewritten to output the entire virtual user |
|
179 data instead of just the mailbox and aliases. |
|
180 |
|
181 <li>commands/vcheckquota.cc: Changed many instances of "int" to |
|
182 "unsigned". |
|
183 (check_quota): Always check incoming message size, and check max |
|
184 count even if no quotas apply. |
|
185 |
|
186 <li>lib/misc/exec.cc (execute_one): Fixed a bug where this would |
|
187 return the raw status value instead of WEXITSTATUS(status). |
|
188 |
|
189 </ul> |
|
190 </p> |
|
191 <p>2000-08-02 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
192 <ul> |
|
193 |
|
194 <li>daemon/autoresponse.cc (autoresponse_write): Applied bugfix that |
|
195 would allow disabled autoresponses to be written. |
|
196 |
|
197 </ul> |
|
198 </p> |
|
199 <p>2000-08-01 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
200 <ul> |
|
201 |
|
202 <li>commands/vcheckquota.cc (exit_msg): Fixed typo (used to say |
|
203 "vdeliver:"). |
|
204 (cli_main): Fixed another typo -- VUSER_MAILDIR is not set, plain |
|
205 MAILDIR is. |
|
206 |
|
207 <li>authenticate/checkvpw.cc (main): Removed call to execute |
|
208 checkvpw-postsetuid. |
|
209 |
|
210 <li>authenticate/authvlib.cc (set_user): Added a hook to execute the |
|
211 proper presetuid script. |
|
212 (authenticate): Added a hook to execute the proper postsetuid |
|
213 script. |
|
214 |
|
215 </ul> |
|
216 </p> |
|
217 <p>2000-07-31 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
218 <ul> |
|
219 |
|
220 <li>daemon/lookup.cc (lookup_and_validate): Set the "nodefault" flag |
|
221 in vdomain::lookup to true instead of false -- it's never correct |
|
222 to look up the default user in the daemon. |
|
223 |
|
224 </ul> |
|
225 </p> |
|
226 <p>2000-07-18 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
227 <ul> |
|
228 |
|
229 <li>commands/vcheckquota.cc: Added this new program, originally |
|
230 authored by Eugene Miretskiy, and subsequently modified. |
|
231 |
|
232 </ul> |
|
233 </p> |
|
234 <p>2000-07-17 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
235 <ul> |
|
236 |
|
237 <li>doc/HOWTO.sgml, doc/FAQ.sgml: Updated documentation. |
|
238 |
|
239 </ul> |
|
240 </p> |
|
241 <p>2000-07-05 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
242 <ul> |
|
243 |
|
244 <li>Released version 0.96.7. |
|
245 |
|
246 <li>lib/vpwtable/cdb_read.cc: Added CDB support for the vpwtable |
|
247 reader class. |
|
248 |
|
249 <li>daemon/listdomain.cc (CMD_FD): Adjusted to use the new vpwtable |
|
250 reader. |
|
251 |
|
252 <li>commands/listvdomain.cc (cli_main): Adjusted to use new vpwtable |
|
253 reader. |
|
254 |
|
255 <li>lib/vpwtable/gdbm_read.cc (vpwtable_reader): Added this new |
|
256 class to replace the stream reading support from the vpwtable |
|
257 class. |
|
258 |
|
259 </ul> |
|
260 </p> |
|
261 <p>2000-07-04 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
262 <ul> |
|
263 |
|
264 <li>lib/vpwtable/gdbm_getbyname.cc (getbyname): Lowercase the name |
|
265 before retrieving it. |
|
266 |
|
267 <li>commands/listvdomain.cc (cli_main): Exit with error if listing |
|
268 an individual user fails. |
|
269 |
|
270 <li>lib/vpwtable/gdbm_get.cc (start): Fixed missing gdbm_firstkey. |
|
271 |
|
272 <li>commands/vpasswd2db.cc: Added new utility to convert plain text |
|
273 password tables into whatever vpwtable format was configured. |
|
274 |
|
275 </ul> |
|
276 </p> |
|
277 <p>2000-06-25 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
278 <ul> |
|
279 |
|
280 <li>python/vmailmgr.py.in: Added deluser and chattr commands. |
|
281 |
|
282 </ul> |
|
283 </p> |
|
284 <p>2000-06-24 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
285 <ul> |
|
286 |
|
287 <li>doc/configuration.texi (socket-file): Reinstated this config |
|
288 section. |
|
289 |
|
290 <li>daemon/autoresponse.cc (autoresponse_delete): Added a new |
|
291 command to delete the autoresponse data. |
|
292 |
|
293 <li>lib/misc/maildir.cc (delete_directory): Renamed from |
|
294 delete_maildir. |
|
295 |
|
296 <li>daemon/autoresponse.cc (autoresponse_write): Create the |
|
297 autoresponse directory if it does not already exist. |
|
298 |
|
299 </ul> |
|
300 </p> |
|
301 <p>2000-06-19 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
302 <ul> |
|
303 |
|
304 <li>lib/vpwtable: Added GDBM support in the gdbm_*.cc files. |
|
305 |
|
306 <li>lib/vpwtable/cdb_vpwtable.cc: Made the ".cdb" string a constant. |
|
307 |
|
308 <li>lib/vpwtable: Renamed all the .cc files to "cdb_*.cc". |
|
309 |
|
310 </ul> |
|
311 </p> |
|
312 <p>2000-06-14 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
313 <ul> |
|
314 |
|
315 <li>doc/configuration.texi: Added notes on the autoresponse |
|
316 configuration items, removed the notes on max-fork and |
|
317 socket-file. |
|
318 |
|
319 </ul> |
|
320 </p> |
|
321 <p>2000-06-13 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
322 <ul> |
|
323 |
|
324 <li>daemon/main.cc (cli_main): Rewrote main to use the cli library. |
|
325 This removes extra command line parsing code and incidentally |
|
326 fixes a problem with random not being initialized. |
|
327 |
|
328 <li>daemon/log.cc (log): Revised handling of printing PIDs. |
|
329 |
|
330 <li>daemon/dispatch.cc: Removed "forkstat" command. |
|
331 |
|
332 <li>daemon/main.cc: Removed support code needed to create and accept |
|
333 connections on a UNIX domain socket, in favour of using the new |
|
334 ucspi-unix package. |
|
335 |
|
336 </ul> |
|
337 </p> |
|
338 <p>2000-06-01 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
339 <ul> |
|
340 |
|
341 <li>Released version 0.96.6 |
|
342 |
|
343 <li>commands/vdeliver.cc (cli_main): Fixed typo in order of |
|
344 operands in call to exit_msg. |
|
345 |
|
346 <li>lib/misc/map_table.cc (map_table): Lower case all keys to allow |
|
347 for case insensitive comparisons. |
|
348 |
|
349 <li>lib/misc/lookup_domain.cc (find_virtual): Fixed bug: domain |
|
350 names are not case sensitive. |
|
351 |
|
352 </ul> |
|
353 </p> |
|
354 <p>2000-05-31 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
355 <ul> |
|
356 |
|
357 <li>python/vmailmgr.py.in (VUser.from_binary): Fixed some bugs in |
|
358 the conversion of flags. |
|
359 |
|
360 </ul> |
|
361 </p> |
|
362 <p>2000-05-25 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
363 <ul> |
|
364 |
|
365 <li>python/vmailmgr_cgi.py.in (print_html): Added code to print out |
|
366 a HTML error if the requested file could not be printed. |
|
367 (wrap_print): Print out basename+"-success" on success, and |
|
368 provide a default error response if the error file does not |
|
369 exist. |
|
370 |
|
371 <li>daemon/daemon.h (CMD): Removed a bogus "const" from the |
|
372 declarations of the CMD and CMD_FD macros. |
|
373 |
|
374 <li>daemon/autoresponse.cc (CMD_FD): Added proper command logging to |
|
375 this command. |
|
376 (CMD_FD): Fixed type -- a virtual user's password is acceptable. |
|
377 |
|
378 <li>daemon/log.cc: Added a new LOG_MESSAGE constant. |
|
379 |
|
380 <li>doc/FAQ.sgml: Added a brief section on how to configure |
|
381 qmail+patches for use with vmailmgr. |
|
382 |
|
383 <li>doc/configuration.texi (qmail-root): Added this missing section. |
|
384 |
|
385 </ul> |
|
386 </p> |
|
387 <p>2000-05-24 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
388 <ul> |
|
389 |
|
390 <li>python/vmailmgr_cgi.py.in (cgi_main): Trap trying to run the |
|
391 program outside of a CGI environment. |
|
392 |
|
393 <li>python/vmailmgr.py.in (VUser): Added this class to represent the |
|
394 data associated with a virtual user. A special __getitem__ |
|
395 routine allows the data to be read as a dictionary. |
|
396 (Daemon): More code reorganization in this class. |
|
397 (listdomain): Added this command, which returns a dictionary of |
|
398 all the users in the domain. |
|
399 (adduser): Added this command to add a virtual user. |
|
400 (autoresponse): Added this command, which executes the daemon |
|
401 "autoresponse" command. |
|
402 |
|
403 <li>python/vmailmgr_cgi.py.in (wrap_print): Added this new routine, |
|
404 which wraps a call to a vmailmgr command in a try/except block, |
|
405 and prints an output file based on the results. |
|
406 |
|
407 <li>Added SGML documentation from Dan Kuykendall. |
|
408 |
|
409 </ul> |
|
410 </p> |
|
411 <p>2000-05-16 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
412 <ul> |
|
413 |
|
414 <li>python/vmailmgr_cgi.py.in: Moved all the CGI specific |
|
415 functionality into this new module. |
|
416 |
|
417 <li>python/vmailmgr.py.in: Removed the "Response" class and turned |
|
418 error responses into exceptions. The server socket is not closed |
|
419 at the end of a command to allow a listdomain command to read more |
|
420 data after the initial response. |
|
421 |
|
422 </ul> |
|
423 </p> |
|
424 <p>2000-05-09 Bruce Guenter <bruce@bruce-guenter.dyndns.org> |
|
425 <ul> |
|
426 |
|
427 <li>commands/vdeliver.cc (cli_main): Error exits from executing |
|
428 "vdeliver-predeliver" would unconditionally result in a temporary |
|
429 failure for qmail. Fixed to return the actual error number to |
|
430 qmail. |
|
431 |
|
432 </ul> |
|
433 </p> |
|
434 <p>2000-05-02 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
435 <ul> |
|
436 |
|
437 <li>cgi/vchforwards.cc (CGI_MAIN ): Fixed an internal glitch -- the |
|
438 new "do_enable" and "do_disable" internal variables were |
|
439 duplicated. |
|
440 |
|
441 <li>daemon/lookup.cc (lookup_and_validate): Modified to use the new |
|
442 set_defaults method. |
|
443 |
|
444 <li>commands/vchattr.cc: Make size limits refer to bytes. |
|
445 |
|
446 <li>doc/configuration.texi: Indicate that size limits are in units |
|
447 of bytes. |
|
448 |
|
449 <li>commands/vadduser.cc: Make size limits refer to bytes |
|
450 everywhere. |
|
451 |
|
452 <li>commands/vsetup.cc (setup_alias): Modified to use the new |
|
453 set_defaults method. |
|
454 |
|
455 <li>commands/vpasswd2cdb.cc (getpw): Removed set_defaults call, |
|
456 since from_record calls set_defaults after doing conversion from |
|
457 the old format data. |
|
458 |
|
459 <li>commands/vaddusers.cc (add_one): Modified to use the new |
|
460 set_defaults method. |
|
461 |
|
462 <li>lib/vpwentry/from_old.cc (from_old_record): Modified to use the |
|
463 new set_defaults method. |
|
464 |
|
465 <li>commands/vadduser.cc: Modified to use the new set_defaults |
|
466 method. |
|
467 |
|
468 <li>lib/vpwentry/defaults.cc (set_defaults): Add a flag to set the |
|
469 creation time to either now (true) or 0 (false -- for old |
|
470 records), as well as a flag to set the boolean flags. |
|
471 |
|
472 <li>lib/misc/strtou.c: Use UINT_MAX instead of (unsigned)-1. |
|
473 |
|
474 <li>lib/config/showvconfig.cc.in: Use UINT_MAX instead of |
|
475 (unsigned)-1. |
|
476 |
|
477 <li>lib/config/configrc.in: Use UINT_MAX instead of (unsigned)-1. |
|
478 |
|
479 <li>lib/misc/lookup_domain.cc (find_virtual): Use UINT_MAX instead |
|
480 of (unsigned)-1. |
|
481 |
|
482 <li>lib/vpwentry/defaults.cc (set_defaults): Use UINT_MAX instead of |
|
483 (unsigned)-1. |
|
484 |
|
485 <li>lib/misc/utoa.cc (utoa): Use UINT_MAX instead of (unsigned)-1. |
|
486 |
|
487 <li>lib/vpwentry/from_ver1.cc (from_ver1_record): Set the flags |
|
488 before returning. |
|
489 |
|
490 <li>lib/vpwentry/from_old.cc (from_old_record): Set the flags before |
|
491 returning. |
|
492 |
|
493 </ul> |
|
494 </p> |
|
495 <p>2000-04-19 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
496 <ul> |
|
497 |
|
498 <li>doc/vchattr.pod: Added note regarding personal information. |
|
499 |
|
500 <li>doc/vmailmgr-cgi.texi (Top): Added note regarding personal |
|
501 information. |
|
502 |
|
503 <li>commands/vchattr.cc: Allow changing the personal information. |
|
504 |
|
505 <li>lib/vdomain/chattr.cc (chattr): Added code to handle changing |
|
506 the personal information. |
|
507 |
|
508 </ul> |
|
509 </p> |
|
510 <p>2000-04-18 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
511 <ul> |
|
512 |
|
513 <li>doc/FAQ.texi (Does vmailmgr support IMAP?): Updated to describe |
|
514 current status of IMAP support. |
|
515 |
|
516 <li>daemon/dispatch.cc: Added autoresponse dispatch entry. |
|
517 |
|
518 <li>daemon/autoresponse.cc: Added autoresponse command from Mike Bell. |
|
519 |
|
520 </ul> |
|
521 </p> |
|
522 <p>2000-04-14 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
523 <ul> |
|
524 |
|
525 <li>Modified the spec file to put the Courier IMAP module into a |
|
526 seperate package. |
|
527 |
|
528 <li>Copied the necessary sources from Courier IMAP to build a |
|
529 minimal stand-alone libauthmod in order to build the |
|
530 authentication module without needing the Courier IMAP sources. |
|
531 |
|
532 </ul> |
|
533 </p> |
|
534 <p>2000-04-13 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
535 <ul> |
|
536 |
|
537 <li>Released version 0.96.5 |
|
538 |
|
539 <li>doc/vchattr.pod: Wrote a man page for the vchattr command. |
|
540 |
|
541 </ul> |
|
542 </p> |
|
543 <p>2000-04-12 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
544 <ul> |
|
545 |
|
546 <li>commands/vdeliver.cc (cli_main): Check if the account has |
|
547 expired before delivering. |
|
548 |
|
549 <li>authenticate/authvlib.cc (check): Check if the acount has |
|
550 expired and fail if so. |
|
551 |
|
552 <li>lib/vpwentry/export_env.cc (export_env): Set |
|
553 "VUSER_MAILBOX_ENABLED" to the new flag. |
|
554 |
|
555 <li>authenticate/authvlib.cc (check): If looking up the base user |
|
556 fails, and virtual_only is set, return instead of failing hard. |
|
557 |
|
558 <li>daemon/chattr.cc (CMD): Allow mailbox enabled flag to be changed |
|
559 by virtual users. |
|
560 |
|
561 <li>commands/listvdomain.cc (show_user): Print out "(disabled)" next |
|
562 to the mailbox directory if the "is_mailbox_enabled" flag is not |
|
563 set. |
|
564 |
|
565 <li>cgi/listvdomain.cc (show_user): Adapted to using |
|
566 vpwentry::from_record instead of vpwentry::from_ver1_record. |
|
567 |
|
568 <li>lib/vpwentry/vpwentry.cc: Set the flag defaults here on creation |
|
569 instead of in set_defaults. |
|
570 |
|
571 <li>lib/vdomain/chattr.cc (chattr): Modified to use the new vpwentry |
|
572 is_mailbox_enabled flag. |
|
573 |
|
574 <li>lib/vpwentry/from_ver1.cc (from_ver1_record): Made this a |
|
575 protected non-static method. |
|
576 |
|
577 <li>lib/vpwentry/from_ver2.cc (from_ver2_record): Made this a |
|
578 protected non-static method. |
|
579 |
|
580 <li>lib/vpwentry/from_old.cc (from_old_record): Made this a |
|
581 protected non-static method. |
|
582 |
|
583 <li>lib/vpwentry/from.cc (from_record): Made this a non-static method. |
|
584 |
|
585 <li>lib/vpwentry/decode.cc: Moved the common pieces from from_ver1 |
|
586 and from_ver2 into seperate routines and moved them here. |
|
587 |
|
588 <li>lib/vpwentry/from_ver2.cc (from_ver2_record): Added this routine |
|
589 to do conversions from the new binary record format. |
|
590 |
|
591 <li>lib/vpwentry/to.cc (to_record): Modified to create the new |
|
592 binary record format. |
|
593 |
|
594 <li>lib/vpwentry/from_uint.cc (from_uint): Moved this routine out of |
|
595 from_ver1.cc, as it's common to both ver1 and ver2 (and other) |
|
596 records. |
|
597 |
|
598 <li>lib/vdomain/chattr.cc: Returned the extraneous definition of |
|
599 strtou from here. |
|
600 |
|
601 <li>lib/config/read_uns.cc (read_uns): Coded to use our strtou. |
|
602 |
|
603 <li>lib/misc/strtou.c (strtou): Renamed the C++ source to a C |
|
604 source, and added a header file. Added a null-pointer and leading |
|
605 space check. |
|
606 |
|
607 <li>lib/vpwentry/vpwentry.h (struct vpwentry ): Removed the |
|
608 enable/disable routines and added a "is_mailbox_enabled" boolean |
|
609 flag. |
|
610 |
|
611 </ul> |
|
612 </p> |
|
613 <p>2000-04-11 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
614 <ul> |
|
615 |
|
616 <li>cgi/vadduser.cc (CGI_MAIN ): Added code to handle adding |
|
617 forwarding at the same time as the user. |
|
618 |
|
619 <li>lib/misc/lookup_baseuser.cc (lookup_baseuser): Modified to use |
|
620 mystring::left instead of a hacked-up constructor call. |
|
621 |
|
622 <li>cgi/vchforwards.cc (CGI_MAIN ): Added code here to handle |
|
623 enabling and disabling the mailbox. |
|
624 |
|
625 <li>commands/vchattr.cc: Added handling in this code for the new |
|
626 flag. |
|
627 |
|
628 <li>lib/vdomain/chattr.cc (chenabled): Added this function to enable |
|
629 or disable delivery to a virtual user. |
|
630 |
|
631 <li>lib/vpwentry/is_enabled.cc (is_enabled): Modified this routine |
|
632 to return false if no mailbox path is set. |
|
633 |
|
634 <li>commands/vdeliver.cc (cli_main): Handle the "enabled" flag here |
|
635 by not doing mailbox delivery if is_enabled returns false. |
|
636 |
|
637 <li>lib/vpwentry/is_enabled.cc (is_enabled): Created this routine to |
|
638 determine if the account has been disabled. |
|
639 |
|
640 <li>lib/vpwentry/disable.cc: Created routines here to enable and |
|
641 disable an account by removing and creating a "disabled" file in |
|
642 the virtual user's mailbox directory. |
|
643 |
|
644 <li>Released version 0.96.4 |
|
645 |
|
646 <li>lib/misc/exec.cc (presetenv): Changed this routine to allocate a |
|
647 new string (char*) that it never frees. This seems to fix the |
|
648 problems with garbage making its way into the environment. |
|
649 |
|
650 </ul> |
|
651 </p> |
|
652 <p>2000-04-10 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
653 <ul> |
|
654 |
|
655 <li>lib/vpwentry/export_env.cc (export_env): Moved the setenv |
|
656 routine that exported a vpwentry to this method of vpwentry. |
|
657 |
|
658 <li>lib/misc/exec.cc (presetenv): Renamed "setenv" to this, to |
|
659 prevent confusion with any built-in "setenv" functions. |
|
660 |
|
661 <li>authenticate/authvmailmgr.cc: Made the user name, pass phrase, |
|
662 and domain name into globals, to prevent their memory from being |
|
663 deallocated prematurely. |
|
664 |
|
665 </ul> |
|
666 </p> |
|
667 <p>2000-04-09 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
668 <ul> |
|
669 |
|
670 <li>doc/vmailmgr-cgi.texi: Adjusted this documentation to fit the |
|
671 new CGIs. |
|
672 |
|
673 <li>cgi/vaddalias.cc (CGI_MAIN ): Modified to handle a |
|
674 comma-seperated list of destinations. |
|
675 |
|
676 <li>cgi/vchforwards.cc: Renamed vchalias to this file, to match the |
|
677 command-line program's name change. |
|
678 (CGI_MAIN ): Modified to handle a comma-seperated list of destinations. |
|
679 |
|
680 </ul> |
|
681 </p> |
|
682 <p>2000-04-07 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
683 <ul> |
|
684 |
|
685 <li>Updates for new mystring and fdbuf libraries. |
|
686 |
|
687 <li>commands/vsetup.cc: Added a "quiet" flag. |
|
688 |
|
689 <li>commands/vpopbull.cc: Added a "quiet" flag. |
|
690 |
|
691 <li>commands/vpasswds.cc: Added a "quiet" flag. |
|
692 |
|
693 <li>commands/vpasswd2cdb.cc: Added a "quiet" flag. |
|
694 |
|
695 <li>commands/vpasswd.cc: Added a "quiet" flag. |
|
696 |
|
697 <li>commands/vdeluser.cc: Added a "quiet" flag. |
|
698 |
|
699 <li>commands/vaddusers.cc: Added a "quiet" flag. |
|
700 |
|
701 <li>commands/vdeliver.cc: Added a "quiet" flag. |
|
702 |
|
703 <li>commands/vchforwards.cc: Added a "quiet" flag. |
|
704 |
|
705 <li>commands/vchattr.cc: Added a "quiet" flag. |
|
706 |
|
707 <li>commands/listvdomain.cc: Added a "quiet" flag. |
|
708 |
|
709 <li>commands/vadduser.cc: Added a "quiet" flag. |
|
710 |
|
711 <li>authenticate/authvlib.cc (check): make the virtual / non-virtual |
|
712 decision here rather than in authenticate, in order to handle |
|
713 "baseuser-virtuser" type usernames. This fixes the Courier-IMAP |
|
714 auth module problems. |
|
715 |
|
716 </ul> |
|
717 </p> |
|
718 <p>2000-04-06 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
719 <ul> |
|
720 |
|
721 <li>doc/FAQ.texi (Upgrading from Previous Versions): Added this |
|
722 section to answer questions regarding what needs to be done to |
|
723 upgrade to the current version. |
|
724 |
|
725 </ul> |
|
726 </p> |
|
727 <p>2000-04-05 Bruce Guenter <bguenter@daedalus.bfsmedia.com> |
|
728 <ul> |
|
729 |
|
730 <li>Released version 0.96.3 |
|
731 |
|
732 </ul> |
|
733 </p> |
|
734 <p>2000-04-04 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
735 <ul> |
|
736 |
|
737 <li>doc/vmailmgr-cgi.texi (Top): Expanded the "vadduser" section to |
|
738 explain the new optional "userdir" field. |
|
739 |
|
740 <li>cgi/vadduser.cc (CGI_MAIN ): Modified to use the new adduser2 |
|
741 interface. |
|
742 |
|
743 <li>cgi/vaddalias.cc (CGI_MAIN ): Modified to use the new adduser2 |
|
744 interface. |
|
745 |
|
746 <li>daemon/dispatch.cc: Removed dispatch entries for adduser, |
|
747 addalias, and addaliasp. |
|
748 |
|
749 <li>daemon/adduser2.cc (CMD): Added this new command, which combines |
|
750 the functionality of adduser, addalias, and addaliasp. |
|
751 |
|
752 <li>daemon/addaliasp.cc (CMD): Modified to use build_forwards. |
|
753 |
|
754 <li>daemon/addalias.cc (CMD): Modified to use build_forwards. |
|
755 |
|
756 <li>daemon/adduser.cc (CMD): Only add non-empty forwarding addresses. |
|
757 (build_forwards): Moved the forward-list building code common to |
|
758 adduser, addalias, and addaliasp into this routine. |
|
759 |
|
760 <li>daemon/main.cc (handle_connection): Log command response before |
|
761 attempting to send data back to client. |
|
762 (abortreq): Log abort code before closing FD. |
|
763 (decode_data): Removed the test to check for empty parameters, |
|
764 since some of the modules expect this possibility. |
|
765 |
|
766 </ul> |
|
767 </p> |
|
768 <p>2000-04-03 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
769 <ul> |
|
770 |
|
771 <li>authenticate/vauthenticate.cc (getdata): Buffer doesn't need to |
|
772 be static. |
|
773 |
|
774 <li>authenticate/checkvpw.cc (getdata): buffer doesn't need to be |
|
775 static. |
|
776 |
|
777 <li>lib/vpw/vpwtable.h (class vpwtable): Moved the vpwtable class |
|
778 definition into this file. |
|
779 |
|
780 </ul> |
|
781 </p> |
|
782 <p>2000-04-01 Bruce Guenter <bruceg@daedalus.bfsmedia.com> |
|
783 <ul> |
|
784 |
|
785 <li>Released version 0.96.2 |
|
786 |
|
787 <li>daemon/state.cc: Since the daemon always forks, remove all of |
|
788 the uid/gid saved state, and never restore it. This class should |
|
789 be renamed, since it does not really "save" any significant state. |
|
790 |
|
791 <li>commands/vaddalias: Fixed quoting bug in this script. |
|
792 |
|
793 </ul> |
|
794 </p> |
|
795 <p>2000-03-21 Bruce Guenter <bruceg@daedalus.bfsmedia.com> |
|
796 <ul> |
|
797 |
|
798 <li>authenticate/vauthenticate.cc (main): Authenticate as virtual |
|
799 only, and print out the user data if authentication succeeds. |
|
800 |
|
801 <li>authenticate/authvlib.cc (authenticate): Fixed typo declaring |
|
802 "baseuser" twice, preventing authentication from working. |
|
803 |
|
804 </ul> |
|
805 </p> |
|
806 <p>2000-03-07 Bruce Guenter <bruceg@daedalus.bfsmedia.com> |
|
807 <ul> |
|
808 |
|
809 <li>authenticate/vauthenticate.cc: Added this simple module that |
|
810 accepts domain name, user name, and pass phrase on stdin, and |
|
811 exits successfully if they can be authenticated. |
|
812 |
|
813 </ul> |
|
814 </p> |
|
815 <p>2000-02-12 Bruce Guenter <bruceg@daedalus.bfsmedia.com> |
|
816 <ul> |
|
817 |
|
818 <li>commands/vaddalias: Made this mini-program into a shell script. |
|
819 |
|
820 <li>daemon/chattr.cc (CMD): Translate multiple values into a single |
|
821 NUL-delimited list. |
|
822 |
|
823 <li>commands/vsetup.cc (cli_main): Added error messages if execution |
|
824 of vsetup-pre or vsetup-post fails. |
|
825 |
|
826 <li>Removed old php3 support and placed Mike Bell's PHP3 code in. |
|
827 |
|
828 <li>Applied patches by Mike Bell to allow vsetup to run a command |
|
829 before and after executing. |
|
830 |
|
831 </ul> |
|
832 </p> |
|
833 <p>2000-02-03 Bruce Guenter <bruceg@daedalus.bfsmedia.com> |
|
834 <ul> |
|
835 |
|
836 <li>doc/FAQ.texi: Fixed typo reversing virtuser and baseuser. |
|
837 |
|
838 </ul> |
|
839 </p> |
|
840 <p>2000-01-12 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
841 <ul> |
|
842 |
|
843 <li>authenticate/authvmailmgr.cc: Completed initial coding of this |
|
844 module, still needs testing. |
|
845 |
|
846 <li>authenticate/checkvpw.cc (fail): Removed unused string "r". |
|
847 |
|
848 </ul> |
|
849 </p> |
|
850 <p>2000-01-05 Bruce Guenter <bguenter@bguenter.pointsnorth.com> |
|
851 <ul> |
|
852 |
|
853 <li>authenticate/authvmailmgr.cc: Started authentication module for |
|
854 Courier IMAP. |
|
855 |
|
856 <li>authenticate/authvlib.cc: Moved some of the functions out of |
|
857 checkvpw.cc and generalized them here. |
|
858 |
|
859 <li>authenticate: Moved checkvpw directory here. |
|
860 |
|
861 </ul> |
|
862 </p> |
|
863 <p>1999-10-12 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
864 <ul> |
|
865 |
|
866 <li>checkvpw/checkvpw.cc (authenticate): Changed logic here to |
|
867 assume a missing entry in both locals and virtualdomains is |
|
868 intended to be local. |
|
869 |
|
870 </ul> |
|
871 </p> |
|
872 <p>1999-10-08 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
873 <ul> |
|
874 |
|
875 <li>daemon/*.cc: Modified to use new validate_forward. |
|
876 |
|
877 <li>lib/misc/vdomain_chattr.cc (chdest): Modified to use new |
|
878 validate_forward. |
|
879 |
|
880 <li>lib/misc/vdomain_validate.cc (validate_forward): Renamed |
|
881 validate_redirect to this, and removed the handling for a |
|
882 comma-seperated list of addresses. |
|
883 |
|
884 <li>commands/vchforwards.cc (cli_main): Added code to validate the |
|
885 forwarding addresses. |
|
886 |
|
887 <li>commands/vadduser.cc (make_user): Validate the forwarding |
|
888 addresses before creating the user. |
|
889 |
|
890 </ul> |
|
891 </p> |
|
892 <p>1999-10-07 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
893 <ul> |
|
894 |
|
895 <li>daemon/chattr.cc (CMD): Changed call to strtol to strtoul. |
|
896 |
|
897 <li>lib/config/read_uns.cc (read_uns): Modified this routine to |
|
898 treat all negative numbers as -1, and changed the call from strtol |
|
899 to strtoul. |
|
900 |
|
901 </ul> |
|
902 </p> |
|
903 <p>1999-10-04 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
904 <ul> |
|
905 |
|
906 <li>doc/FAQ.texi: Updated the answers and added information about |
|
907 how mail gets delivered. |
|
908 |
|
909 <li>lib/misc/vdomain_add.cc: Removed both vdomain::addalias and |
|
910 vdomain::adduser. |
|
911 |
|
912 <li>commands/vsetup.cc (setup_alias): Removed the use of |
|
913 vdomain::addalias. |
|
914 |
|
915 <li>commands/vadduser.cc (add_alias): Removed the use of |
|
916 vdomain::addalias. |
|
917 |
|
918 <li>commands/vaddusers.cc (add_one): Removed the use of |
|
919 vdomain::adduser and vdomain::addalias. |
|
920 |
|
921 </ul> |
|
922 </p> |
|
923 <p>1999-10-03 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
924 <ul> |
|
925 |
|
926 <li>Released version 0.96.1 |
|
927 |
|
928 <li>doc/vmailmgr-cgi.texi: Updated listvdomain documentation. |
|
929 |
|
930 <li>cgi/listvdomain.cc (show_user): Merged show_mbox and show_alias |
|
931 into this one routine. |
|
932 (load_users): Fixed length of incoming code. |
|
933 (show_user): Changed formatting of aliases. |
|
934 |
|
935 </ul> |
|
936 </p> |
|
937 <p>1999-10-01 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
938 <ul> |
|
939 |
|
940 <li>cgi/listvdomain.cc: Recoded to use modified listdomain protocol |
|
941 interface. |
|
942 |
|
943 <li>lib/misc/vdomain_add.cc (addalias, adduser): Call set_defaults |
|
944 on new vpwentry. |
|
945 |
|
946 <li>lib/misc/vpwentry_from_old.cc (from_old_record): Call |
|
947 set_defaults on resulting vpwentry. |
|
948 |
|
949 <li>commands/vadduser.cc (make_user): Call set_defaults on new |
|
950 vpwentry. |
|
951 |
|
952 <li>daemon/lookup.cc (lookup_and_validate): Call set_defaults on new |
|
953 vpwentry. |
|
954 |
|
955 <li>lib/misc/vpwentry.cc: Moved vpwentry::set_defaults into its own |
|
956 module, and removed the call to set_defaults from the constructors. |
|
957 |
|
958 <li>lib/misc/vpwentry_from.cc: Made the from_old_record and |
|
959 from_ver1_record public, and moved them into their own modules. |
|
960 |
|
961 <li>daemon/listdomain.cc (CMD_FD): Changed the protocol to strip the |
|
962 count from the initial message, to output each entry as a seperate |
|
963 response (with length and all), and to include full vpwentry |
|
964 details in each entry rather than requiring seperate lookups. |
|
965 |
|
966 </ul> |
|
967 </p> |
|
968 <p>1999-09-30 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
969 <ul> |
|
970 |
|
971 <li>Released version 0.96 |
|
972 |
|
973 <li>checkvpw/checkvpw.cc (main): Removed extraneous ; causing bug. |
|
974 |
|
975 <li>lib/misc/exec.cc (execute): Skip over directories with identical |
|
976 parents, to prevent double execution. |
|
977 |
|
978 <li>checkvpw/checkvpw.cc (check): Fixed inverted "nodefault" flag to |
|
979 domain->lookup. |
|
980 |
|
981 <li>lib/misc/vpwentry_from.cc (from_record): Turned the if/else |
|
982 block into a switch statement. |
|
983 |
|
984 <li>commands/vadduser.cc (set_defaults): Turn off creation of a |
|
985 mailbox if the base command name is "vaddalias". |
|
986 Also, use argv0base instead of "vadduser" for the command name. |
|
987 |
|
988 <li>lib/misc/vpwentry_from.cc (from_ver1_record): Fixed bug in |
|
989 importing version 1 records. |
|
990 |
|
991 <li>commands/vdeliver.cc (dump): The input needs to be rewound here |
|
992 the second time through, so rewind it always. |
|
993 |
|
994 </ul> |
|
995 </p> |
|
996 <p>1999-09-29 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
997 <ul> |
|
998 |
|
999 <li>commands/listvdomain.cc (cli_main): Print out a banner before |
|
1000 the listing. |
|
1001 |
|
1002 </ul> |
|
1003 </p> |
|
1004 <p>1999-09-27 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1005 <ul> |
|
1006 |
|
1007 <li>doc/configuration.texi: Updated the configuration documentation |
|
1008 to match current implementation aspects. |
|
1009 |
|
1010 <li>lib/misc/exec.cc (execute): Changed behavior of execute to |
|
1011 execute the global before the local directories, and to abort on |
|
1012 any error, but translate 99 to 0 (no error). |
|
1013 |
|
1014 </ul> |
|
1015 </p> |
|
1016 <p>1999-09-23 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1017 <ul> |
|
1018 |
|
1019 <li>cgi/vaddalias.cc (CGI_MAIN ): Adjusted for changed parameter |
|
1020 ordering. |
|
1021 |
|
1022 <li>daemon/log.cc: Added several password-obscuring constants, |
|
1023 rather than repeating them in each command. |
|
1024 |
|
1025 <li>daemon/lookup.cc (CMD): Changed format of result. |
|
1026 |
|
1027 <li>daemon/check.cc (CMD): Changed format of result to seperate |
|
1028 parts with a NUL. |
|
1029 |
|
1030 <li>daemon/addalias.cc (CMD): Now takes multiple destinations. |
|
1031 |
|
1032 <li>daemon/addaliasp.cc (CMD): Changed order of parameters to allow |
|
1033 for multiple destination parameters. |
|
1034 |
|
1035 <li>daemon/log.cc (logcommand): Removed all varieties of this |
|
1036 function except the one that takes a single "command" argument. |
|
1037 |
|
1038 <li>daemon/adduser.cc (CMD): Added handling for a list of forwards. |
|
1039 |
|
1040 <li>daemon/dispatch.cc (dispatch_cmd): Changed handling of commands: |
|
1041 there is now a minimum and a maximum number of arguments, and the |
|
1042 "decode_virtual" is a manditory -- if set, the "baseuser-virtual" |
|
1043 format is not allowed. This means all the server commands now |
|
1044 require seperate domain name and virtual user name arguments (all |
|
1045 the CGIs do this anyways). |
|
1046 |
|
1047 <li>daemon/check.cc (CMD): Added handling for mailbox and multiple |
|
1048 forwards of virtual users. |
|
1049 |
|
1050 <li>daemon/dispatch.cc: Added check back into the list of commands. |
|
1051 |
|
1052 <li>cgi/vcommand.py (main): Adapted to new interface. |
|
1053 |
|
1054 <li>cgi/vmailmgr.py: Revised the interface to be somewhat more |
|
1055 object based, and tested minimally. |
|
1056 |
|
1057 </ul> |
|
1058 </p> |
|
1059 <p>1999-09-22 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1060 <ul> |
|
1061 |
|
1062 <li>cgi/listvdomain.cc (setup_format): Added handling for cell and |
|
1063 title prefix and suffix strings, as well as cell, paragraph, and |
|
1064 table alignment. |
|
1065 |
|
1066 </ul> |
|
1067 </p> |
|
1068 <p>1999-09-20 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1069 <ul> |
|
1070 |
|
1071 <li>cgi/vmailmgr.py: Split off most of the generic functionality |
|
1072 from vcommand.py into this module, completed base CGI |
|
1073 functionality. |
|
1074 |
|
1075 </ul> |
|
1076 </p> |
|
1077 <p>1999-09-19 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1078 <ul> |
|
1079 |
|
1080 <li>cgi/vcommand.py: Started this generic Python vmailmgr command |
|
1081 CGI. |
|
1082 |
|
1083 </ul> |
|
1084 </p> |
|
1085 <p>1999-09-16 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1086 <ul> |
|
1087 |
|
1088 <li>commands/vdeliver.cc (cli_main): Adapted to the new execution |
|
1089 framework. |
|
1090 |
|
1091 <li>checkvpw/checkvpw.cc (check): Adapted to the new execution |
|
1092 framework. |
|
1093 |
|
1094 <li>lib/misc/exec.cc (execute): Removed the old "exec" framework in |
|
1095 favour of this function, which traverses through the configuration |
|
1096 directories and tries to execute the named file. |
|
1097 |
|
1098 <li>doc/vadduser.pod: Updated this documentation. |
|
1099 |
|
1100 <li>commands/vadduser.cc: Added an option to not create a mailbox |
|
1101 for this user, allowing this program to be used in place of |
|
1102 vaddalias. |
|
1103 (add_user): Modified logic to optionally ask for a password. |
|
1104 |
|
1105 <li>commands/vconf2dir: Fixed quoting when creating the new config |
|
1106 files, and removed the "set -x" flag at the top. |
|
1107 |
|
1108 <li>commands/vchforwards.cc (cli_main): Adapted this program from |
|
1109 vchalias, and removed vchalias from the distribution. |
|
1110 |
|
1111 <li>commands/vchattr.cc: Wrote this command to change a virtual |
|
1112 user or users' attributes. |
|
1113 |
|
1114 </ul> |
|
1115 </p> |
|
1116 <p>1999-09-15 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1117 <ul> |
|
1118 |
|
1119 <li>checkvpw/checkvpw.cc: Login failures cause execution of |
|
1120 "config/checkvpw-loginfail", and other failures cause execution of |
|
1121 "config/checkvpw-error", both with an error message in |
|
1122 $CHECKVPW_ERROR. |
|
1123 |
|
1124 <li>commands/vdeliver.cc (deliver_partial): Rewrote loop so that |
|
1125 looping will always sleep. If the file creation failed, it would |
|
1126 previously loop immediately. |
|
1127 |
|
1128 </ul> |
|
1129 </p> |
|
1130 <p>1999-09-14 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1131 <ul> |
|
1132 |
|
1133 <li>doc/FAQ.texi: Replaced references to vmailmgr.conf with |
|
1134 vmailmgr/ |
|
1135 |
|
1136 </ul> |
|
1137 </p> |
|
1138 <p>1999-09-11 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1139 <ul> |
|
1140 |
|
1141 <li>doc/vpopbull.pod: Wrote a man page for vpopbull. |
|
1142 |
|
1143 </ul> |
|
1144 </p> |
|
1145 <p>1999-09-10 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1146 <ul> |
|
1147 |
|
1148 <li>lib/misc/vpwentry_auth.cc (authenticate): Wrote this new |
|
1149 routine, to replace the use of crypt_cmp when authenticating |
|
1150 virtual users. |
|
1151 |
|
1152 <li>lib/misc/pwentry_auth.cc (authenticate): Wrote this new routine, |
|
1153 to replace the use of crypt_cmp when authenticating users. |
|
1154 |
|
1155 </ul> |
|
1156 </p> |
|
1157 <p>1999-09-07 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1158 <ul> |
|
1159 |
|
1160 <li>commands/listvdomain.cc: Added options to list only users, only |
|
1161 aliases, or selected names listed on the command line. |
|
1162 |
|
1163 <li>lib/misc/vpwentry_from.cc (from_ver1_record): Fixed off-by-one |
|
1164 bug. |
|
1165 |
|
1166 <li>lib/misc/vpwentry_to.cc (to_record): Fixed problem in creating |
|
1167 records without any forwarding addresses. |
|
1168 |
|
1169 <li>commands/vadduser.cc: Commented out extra-data handling. |
|
1170 |
|
1171 <li>lib/misc/exec.cc (setenv): Commented out |
|
1172 |
|
1173 <li>lib/misc/vpwentry.h (struct vpwentry ): Commented out the extra |
|
1174 data string. |
|
1175 |
|
1176 <li>cgi/vchattr.cc (CGI_MAIN ): Wrote this simple modification to |
|
1177 vchalias, which can change any attribute. |
|
1178 |
|
1179 <li>daemon/chattr.cc (CMD): Convert the attr string to an integer |
|
1180 before running domain.chattr. |
|
1181 |
|
1182 <li>lib/misc/vdomain_chattr.cc (chattr): Added attribute handlers |
|
1183 for message size/count and account expiry. |
|
1184 |
|
1185 <li>lib/misc/vdomain.h (class vdomain): Changed attribute name |
|
1186 constants from strings to integers. |
|
1187 |
|
1188 </ul> |
|
1189 </p> |
|
1190 <p>1999-08-23 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1191 <ul> |
|
1192 |
|
1193 <li>doc/configuration.texi (Search Order): Corrected a typo: the |
|
1194 local directory is named ".vmailmgr", not "vmailmgr". |
|
1195 |
|
1196 </ul> |
|
1197 </p> |
|
1198 <p>1999-08-21 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1199 <ul> |
|
1200 |
|
1201 <li>commands/vadduser.cc: Added hard/soft quota options, and a |
|
1202 password option for vaddalias. |
|
1203 |
|
1204 <li>lib/misc/vpwentry.h (struct vpwentry ): Added hard/soft quota |
|
1205 values. |
|
1206 |
|
1207 </ul> |
|
1208 </p> |
|
1209 <p>1999-08-18 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1210 <ul> |
|
1211 |
|
1212 <li>commands/vpasswd.cc (cli_main): Modified to call |
|
1213 vdomain::chattr. |
|
1214 |
|
1215 <li>commands/vpasswds.cc (change_one): Modified to call |
|
1216 vdomain::chattr. |
|
1217 |
|
1218 <li>cgi/vchalias.cc (CGI_MAIN ): Use ATTR_DEST instead of a |
|
1219 hard-coded string. |
|
1220 |
|
1221 <li>cgi/vpasswd.cc (CGI_MAIN ): Use ATTR_PASS instead of a |
|
1222 hard-coded string. |
|
1223 |
|
1224 <li>daemon/chattr.cc (CMD): Modified to call vdomain::chattr. |
|
1225 |
|
1226 </ul> |
|
1227 </p> |
|
1228 <p>1999-08-16 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1229 <ul> |
|
1230 |
|
1231 <li>lib/misc/vdomain_chattr.cc (chattr): Created this new routine to |
|
1232 generalize attribute modification. |
|
1233 |
|
1234 </ul> |
|
1235 </p> |
|
1236 <p>1999-08-15 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1237 <ul> |
|
1238 |
|
1239 <li>lib/misc/exec.cc (exec_list): Takes a strlist parameter instead |
|
1240 of a string. |
|
1241 |
|
1242 <li>lib/misc/strlist.h (class strlist ): Removed the NUL constant. |
|
1243 |
|
1244 <li>lib/misc/vpwentry.h (struct vpwentry ): Removed the NUL constant |
|
1245 in favour of the new one in mystring. |
|
1246 |
|
1247 <li>lib/config/read_list.cc (read_list): Adapted to use |
|
1248 strlist::read instead of a custom list reading function. |
|
1249 |
|
1250 </ul> |
|
1251 </p> |
|
1252 <p>1999-08-14 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1253 <ul> |
|
1254 |
|
1255 <li>lib/misc/strlist.h (class keystrlist): Split off the |
|
1256 functionality to handle keyed strings ("key=value" format) into a |
|
1257 seperate class. |
|
1258 |
|
1259 <li>lib/misc/vpwentry.h (struct vpwentry ): Adapted to using strlist |
|
1260 functions. |
|
1261 |
|
1262 <li>lib/misc/strlist.h (class strlist ): Moved the string list |
|
1263 management into its own class. |
|
1264 |
|
1265 <li>commands/vquota.cc: Started writing this quota management |
|
1266 utility. |
|
1267 |
|
1268 <li>commands/vdeliver.cc (cli_main): Fixed invocation of exec* |
|
1269 functions. |
|
1270 |
|
1271 <li>commands/vadduser.cc: Added code to set the default values of |
|
1272 the new data items, and to set them when creating the user. |
|
1273 |
|
1274 <li>checkvpw/checkvpw.cc (main): Fixed invocation of exec* |
|
1275 functions. |
|
1276 |
|
1277 </ul> |
|
1278 </p> |
|
1279 <p>1999-08-13 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1280 <ul> |
|
1281 |
|
1282 <li>doc/configuration.texi: Did some minor re-organization, and |
|
1283 added a higher level note regarding environment variables and |
|
1284 return codes for executed programs. |
|
1285 |
|
1286 </ul> |
|
1287 </p> |
|
1288 <p>1999-08-12 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1289 <ul> |
|
1290 |
|
1291 <li>lib/misc/exec.cc (setenv): Set environment variables for quota, |
|
1292 message size, message count, creation time, expiry time, personal |
|
1293 data, and all the extra data. |
|
1294 (exec_list): Changed interface to all the exec_* routines: the |
|
1295 error message string is passed as a parameter, and the return |
|
1296 value is the error return code or zero. |
|
1297 |
|
1298 <li>lib/misc/vpwentry_from.cc (from_uint): Modified to accept "-*" |
|
1299 as the negative pattern. |
|
1300 |
|
1301 <li>lib/misc/utoa.cc (utoa): Moved this routine into its own module. |
|
1302 |
|
1303 </ul> |
|
1304 </p> |
|
1305 <p>1999-08-10 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1306 <ul> |
|
1307 |
|
1308 <li>cgi/vpasswd.cc (CGI_MAIN ): Modified to call "chattr". |
|
1309 |
|
1310 <li>cgi/vchalias.cc (CGI_MAIN ): Modified to call "chattr". |
|
1311 |
|
1312 <li>daemon/dispatch.cc: Removed entries for chpass, chalias, and |
|
1313 delalias. |
|
1314 |
|
1315 <li>daemon/chattr.cc (CMD): Merged the functions of chalias and |
|
1316 chpass into this new command. |
|
1317 |
|
1318 <li>lib/misc/vdomain.h (class vdomain): Removed delalias command. |
|
1319 |
|
1320 <li>lib/misc/vdomain_deluser.cc (deluser): Removed mailbox test to |
|
1321 see if the named entry was a "user". |
|
1322 |
|
1323 <li>commands/vdeliver.cc (inject): Handle failure properly here. |
|
1324 |
|
1325 </ul> |
|
1326 </p> |
|
1327 <p>1999-08-09 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1328 <ul> |
|
1329 |
|
1330 <li>commands/vdeliver.cc (deliver_partial): Rewrote the delivery |
|
1331 mechanism to do partial file delivery. |
|
1332 (write_envelope): Rewrote the envelope handling code to use |
|
1333 mystring_iter (big simplification). |
|
1334 |
|
1335 <li>commands/vconf2dir: Fixed non-portable increment statement. |
|
1336 |
|
1337 <li>commands/vadduser.cc: Added options for the extra virtual user |
|
1338 data, but not the code to handle the options. |
|
1339 |
|
1340 </ul> |
|
1341 </p> |
|
1342 <p>1999-08-08 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1343 <ul> |
|
1344 |
|
1345 <li>commands/vpasswd2cdb.cc (getpw): Call vpwentry::from_record, |
|
1346 since the original text file format is compatible with its import |
|
1347 routine. |
|
1348 |
|
1349 <li>lib/misc/vdomain_validate.cc (validate_redirect): Call exists |
|
1350 instead of lookup. |
|
1351 |
|
1352 <li>lib/misc/vdomain_lookup.cc (exists): Wrote this routine to test |
|
1353 if a name exists in a virtual domain. |
|
1354 |
|
1355 <li>lib/misc/vpwtable_exists.cc (exists): Added this routine to do a |
|
1356 simple check if a user exists, without doing any format |
|
1357 translations. |
|
1358 |
|
1359 <li>lib/misc/vpwentry.h (class vpwtable): Turned the "cdb" pointer |
|
1360 into a void pointer to allow for easier extension to non-CDB |
|
1361 formats. |
|
1362 |
|
1363 <li>lib/config/*: Added new default configuration items for the |
|
1364 quota and expiry items. |
|
1365 |
|
1366 <li>lib/misc/vdomain_*.cc: Adpoted to the new vpwentry conventions. |
|
1367 |
|
1368 <li>lib/misc/exec.cc (setenv): Always set MAILDIR to vpw->mailbox, |
|
1369 which will be empty for an alias user. |
|
1370 |
|
1371 <li>lib/misc/vpwentry.cc (set_defaults): Added this new routine to |
|
1372 set the defaults on a vpwentry from the current configuration. |
|
1373 |
|
1374 <li>lib/misc/vpwentry_from.cc (from_record): Moved this routine into |
|
1375 its own module, and added parsing for the new fields. |
|
1376 |
|
1377 <li>lib/misc/vpwentry_to.cc (to_record): Moved this routine into its |
|
1378 own module. |
|
1379 |
|
1380 <li>lib/misc/vpwentry.h (struct vpwentry ): Added new fixed fields |
|
1381 to the structure: personal, quota, msgsize, msgcount, ctime, and |
|
1382 expiry. |
|
1383 |
|
1384 </ul> |
|
1385 </p> |
|
1386 <p>1999-08-07 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1387 <ul> |
|
1388 |
|
1389 <li>lib/misc/vpwentry_getset.cc (get): Added this routine to get the |
|
1390 value of a data variable. |
|
1391 (set): Added this routine to add a variable to the data set, |
|
1392 replacing its value if it already exists. |
|
1393 |
|
1394 <li>lib/misc/vpwentry.cc (to_record): Rewrote this routine to output |
|
1395 the new "version 1" record format. |
|
1396 |
|
1397 <li>lib/misc/vpwentry.h (struct vpwentry ): Expanded this structure, |
|
1398 replacing the "dest" field with "mailbox" and "forwards" items, |
|
1399 and added a "datastr" field. |
|
1400 |
|
1401 <li>lib/misc/vpwentry.cc (from_old_record): Adapted this code from |
|
1402 the old vpwentry::from_record routine. |
|
1403 |
|
1404 <li>Released version 0.95 |
|
1405 |
|
1406 </ul> |
|
1407 </p> |
|
1408 <p>1999-08-06 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1409 <ul> |
|
1410 |
|
1411 <li>commands/vpopbull.cc (scan_bulletins): Modified the logic here |
|
1412 to not fail if one of the bulletin scans fails. |
|
1413 |
|
1414 <li>commands/vdeliver.cc (inject): Fixed missing argv[0] in call to |
|
1415 execl here. |
|
1416 |
|
1417 </ul> |
|
1418 </p> |
|
1419 <p>1999-08-05 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1420 <ul> |
|
1421 |
|
1422 <li>commands/vpopbull.cc: Moved this program into the commands |
|
1423 directory. |
|
1424 (scan_bulletins): Added specific information to error messages. |
|
1425 |
|
1426 <li>lib/misc/exec.cc (setenv): Moved the common code to set up the |
|
1427 environment for virtual users into a common routine here from |
|
1428 checkvpw.cc and vdeliver.cc. |
|
1429 |
|
1430 </ul> |
|
1431 </p> |
|
1432 <p>1999-08-04 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1433 <ul> |
|
1434 |
|
1435 <li>doc/configuration.texi: Added sections for the new execution |
|
1436 hooks. |
|
1437 |
|
1438 <li>checkvpw/checkvpw.cc (check): Fixed this to set the VUSER |
|
1439 environment variable immediately after looking up the base user. |
|
1440 |
|
1441 </ul> |
|
1442 </p> |
|
1443 <p>1999-08-03 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1444 <ul> |
|
1445 |
|
1446 <li>checkvpw/checkvpw.cc (main): Modified to execute the contents of |
|
1447 checkvpw-postexec. |
|
1448 |
|
1449 <li>lib/config/showvconfig.cc.in: Built this new program template to |
|
1450 show the config parameters. |
|
1451 |
|
1452 <li>commands/vdeliver.cc (cli_main): Make vdeliver execute a list of |
|
1453 commands before and after doing the delivery. Will set $MAILDIR |
|
1454 and $VUSER. |
|
1455 |
|
1456 <li>checkvpw/vpopbull.cc: Moved bulletins.cc into this file, built a |
|
1457 main routine, and added error logging. |
|
1458 |
|
1459 <li>lib/misc/exec.cc (exec_list): Created this routine to execute a |
|
1460 list of commands, returning the first error as a string. |
|
1461 (exec_one): Created this routine to shell and execute a single |
|
1462 command using "/bin/sh -c '<command>'". |
|
1463 |
|
1464 <li>checkvpw/checkvpw.cc: Added a hook to execute a list of programs |
|
1465 before and after running setuid. The "before" programs are read |
|
1466 from the global config to avoid security holes. $HOME and $USER |
|
1467 are set for both, and $MAILDIR and $VUSER are set for the "after" |
|
1468 programs. |
|
1469 |
|
1470 </ul> |
|
1471 </p> |
|
1472 <p>1999-08-02 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1473 <ul> |
|
1474 |
|
1475 <li>Released version 0.94 |
|
1476 |
|
1477 <li>daemon/dispatch.cc: Commented out the "stat" and "statall" |
|
1478 commands, that no longer do anything useful (the forking daemon |
|
1479 causes the statistics to be meaningless). Also removed the code |
|
1480 in "dispatch" to count invocations of a particular method. |
|
1481 |
|
1482 <li>daemon/lookup.cc (lookup_and_validate): Fixed a false negation |
|
1483 in the logic when checking for an existing virtual user. |
|
1484 |
|
1485 <li>lib/misc/maildir.cc (mkdirp): Fixed off-by-one bug in recursive |
|
1486 case. |
|
1487 |
|
1488 <li>commands/vdeliver.cc: Fixed bug caused by assigning from an int |
|
1489 to a bool through a pointer (since bools are only a single byte). |
|
1490 |
|
1491 <li>checkvpw/checkvpw.cc: Rewrote this code to do the password |
|
1492 checking directly without calling up to the daemon. |
|
1493 |
|
1494 <li>daemon: moved lookup_baseuser into lib/misc, removed the call to |
|
1495 setup a saved_state from it, and adjusted all the calls to |
|
1496 lookup_baseuser in the daemon to fit. |
|
1497 |
|
1498 </ul> |
|
1499 </p> |
|
1500 <p>1999-07-30 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1501 <ul> |
|
1502 |
|
1503 <li>commands/vdeliver.cc: Moved this program from clients into |
|
1504 commands, and made it work the the CLI library. |
|
1505 (cli_main): Does a call to domain.lookup now instead of a server |
|
1506 call. |
|
1507 (read_me): Rewrote to use config->qmail_root() instead of a |
|
1508 hard-coded /var/qmail. This is the last place (verified with |
|
1509 grep) that has a hard-coded /var/qmail. |
|
1510 |
|
1511 </ul> |
|
1512 </p> |
|
1513 <p>1999-07-29 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1514 <ul> |
|
1515 |
|
1516 <li>lib/config/config_read.cc (config_read): Fixed a typo: I had |
|
1517 typed '=' instead of '+' to create the full name. |
|
1518 |
|
1519 </ul> |
|
1520 </p> |
|
1521 <p>1999-07-27 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1522 <ul> |
|
1523 |
|
1524 <li>daemon/chpass.cc (CMD): Calls the vdomain::chpass routine |
|
1525 instead of doing it by hand through the vpwtable code. |
|
1526 |
|
1527 <li>commands/vpasswd2cdb.cc (cli_main): Removed an extraneous call |
|
1528 to end_getpw. |
|
1529 |
|
1530 <li>lib/misc/vpwentry.h (class vpwtable): Added this new |
|
1531 abstraction, a virtual password table, that contains all the |
|
1532 low-level table manipulation routines. All other code has been |
|
1533 adjusted to fit this model. |
|
1534 |
|
1535 </ul> |
|
1536 </p> |
|
1537 <p>1999-07-26 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1538 <ul> |
|
1539 |
|
1540 <li>lib/misc/lookup_domain.cc: Moved is_local and find_virtual into |
|
1541 this file from daemon/lookup.cc. |
|
1542 |
|
1543 <li>daemon/lookup.cc (CMD): Converted to using vdomain::lookup. |
|
1544 |
|
1545 <li>daemon/check.cc (CMD): Converted to using vdomain::lookup. |
|
1546 |
|
1547 <li>lib/misc/vdomain_lookup.cc (lookup): Moved the daemon function |
|
1548 lookup_virtuser into this method. |
|
1549 |
|
1550 <li>Inserted the latest cli library and adapted all the command line |
|
1551 programs to handle the changes. |
|
1552 |
|
1553 <li>Inserted the latest mystring class and adapted all the code to |
|
1554 handle it. |
|
1555 |
|
1556 <li>Rewrote the virtual user manipulation code from lib/misc/vuser*, |
|
1557 and moved it all into the vdomain class (was struct). Adjusted |
|
1558 all other references to use this new code. |
|
1559 |
|
1560 </ul> |
|
1561 </p> |
|
1562 <p>1999-07-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1563 <ul> |
|
1564 |
|
1565 <li>Released version 0.93 |
|
1566 |
|
1567 <li>daemon/adduser.cc (CMD): Prefix the user dir destination with |
|
1568 "./". |
|
1569 |
|
1570 <li>lib/misc/vuser_set.cc (vuser_set): Allow leading '/' in |
|
1571 destination string, in addition to leading '.' and '&'. |
|
1572 |
|
1573 </ul> |
|
1574 </p> |
|
1575 <p>1999-07-22 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1576 <ul> |
|
1577 |
|
1578 <li>commands/vsetup.cc (setup_passwd): Modified to use the new |
|
1579 string iterator class. |
|
1580 |
|
1581 <li>lib/misc/stringiter.h (class mystring_iter): Wrote this class to |
|
1582 provide an iterator over a newline (or NUL, even) seperated list |
|
1583 within a string. |
|
1584 |
|
1585 </ul> |
|
1586 </p> |
|
1587 <p>1999-07-20 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1588 <ul> |
|
1589 |
|
1590 <li>commands/vsetup.cc (setup_passwd): Changed the alias seperator |
|
1591 character from ',' to '\n'. |
|
1592 |
|
1593 <li>lib/config/read_list.cc (read_list): Wrote this routine to read |
|
1594 a config item containing a list of values. |
|
1595 |
|
1596 <li>lib/config/config_readlist.cc (config_readlist): Wrote this new |
|
1597 routine to read a list of values from a file, newline seperated. |
|
1598 |
|
1599 </ul> |
|
1600 </p> |
|
1601 <p>1999-07-19 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1602 <ul> |
|
1603 |
|
1604 <li>doc/configuration.texi: Wrote this new document describing the |
|
1605 new configuration structure, adapted from the now obsolete |
|
1606 vmailmgr.conf.sample. |
|
1607 |
|
1608 </ul> |
|
1609 </p> |
|
1610 <p>1999-07-18 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1611 <ul> |
|
1612 |
|
1613 <li>lib/config/read_*.cc: Moved the overhead for maintaining the |
|
1614 cache into these read functions instead of duplicating it in each |
|
1615 config variable function. |
|
1616 |
|
1617 <li>lib/config/build-config.sh: Create a cache for each config |
|
1618 variable in order to eliminate duplicate readings of a single |
|
1619 variable. |
|
1620 |
|
1621 <li>daemon/pwentry_table.cc (operator[]): Replaced the previous |
|
1622 implementation (a cache) with one that just calls getpwnam. This |
|
1623 avoids creating extra dynamic data in the form of many pwentry |
|
1624 structures. |
|
1625 |
|
1626 <li>daemon/lookup.cc (lookup_baseuser): Removed an extraneous |
|
1627 re-creation of the pwentry returned from the pwentry_table. |
|
1628 |
|
1629 <li>lib/config/read_*.cc: Removed the translation from '_' to '-' |
|
1630 for filenames from the code and moved it into the build-config.sh |
|
1631 script. This moves the constant conversion from run-time to |
|
1632 build-time. |
|
1633 |
|
1634 <li>lib/config/configrc.cc (configuration): Made the constructor |
|
1635 take a pointer instead of a reference, which was probably the |
|
1636 saner thing to do from the start. |
|
1637 |
|
1638 <li>lib/config/read_dir.cc (read_dir): Modified the logic here so |
|
1639 that the macros for creating the config reading routines can be |
|
1640 completely uniform. |
|
1641 |
|
1642 <li>daemon/state.cc (saved_state): Since the saved state is never |
|
1643 un-saved, don't try to establish what the previous state is with |
|
1644 getuid and getegid. |
|
1645 |
|
1646 <li>daemon/state.h: Turned the CHANGE_STATE macro into a no-op, |
|
1647 since the state is already saved when doing any lookup. |
|
1648 |
|
1649 <li>daemon/lookup.cc (lookup_baseuser): Set up the saved state |
|
1650 immediately upon successfully doing a base user lookup. |
|
1651 |
|
1652 <li>daemon/state.h (class saved_state): Removed the pwentry pointer |
|
1653 and made the domain a non-pointer as well. |
|
1654 |
|
1655 </ul> |
|
1656 </p> |
|
1657 <p>1999-07-17 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1658 <ul> |
|
1659 |
|
1660 <li>daemon/state.cc: Modified these routines to set up a pwentry |
|
1661 before setting up the vdomain, as well as properly restoring the |
|
1662 old config pointer. |
|
1663 |
|
1664 <li>commands/*.cc: Replaced all instances of "domain->" with |
|
1665 "domain.", since "domain" is no longer a pointer. |
|
1666 |
|
1667 <li>clients/vdeliver.cc (main): Modified to set up a pwentry before |
|
1668 setting up the vdomain. |
|
1669 |
|
1670 <li>clients/checkvpw.cc (set_user): Modified to set up a pwentry |
|
1671 before setting up the vdomain. |
|
1672 |
|
1673 <li>commands/vcommand.cc (go_home): Modified to create a global |
|
1674 pwentry named "user", and build the domain and config based on |
|
1675 that. |
|
1676 |
|
1677 <li>lib/misc/vdomain.cc (vdomain): Modified the constructors to take |
|
1678 a pwentry parameter to build the domain config from. |
|
1679 |
|
1680 <li>lib/misc/pwentry.cc: Moved this file here from daemon, added a |
|
1681 "config" structure entry, and added a default constructor. |
|
1682 (pwfile): Removed the pwfile_cache member, which was a kluge for |
|
1683 what I thought was a bug somewhere else. |
|
1684 |
|
1685 </ul> |
|
1686 </p> |
|
1687 <p>1999-07-15 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1688 <ul> |
|
1689 |
|
1690 <li>Forwarded-ported envelope delivery re-write from 0.92.2 for |
|
1691 clients/vdeliver.cc. |
|
1692 |
|
1693 </ul> |
|
1694 </p> |
|
1695 <p>1999-07-13 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1696 <ul> |
|
1697 |
|
1698 <li>daemon/lookup.cc: Converted is_local and find_virtual to use the |
|
1699 qmail_root config item. |
|
1700 |
|
1701 <li>Forwarded-ported logic fix from 0.92.1 for clients/vdeliver.cc. |
|
1702 |
|
1703 <li>clients/vdeliver.cc (inject): Use the new qmail_root config item |
|
1704 to locate the qmail-queue binary. |
|
1705 |
|
1706 </ul> |
|
1707 </p> |
|
1708 <p>1999-06-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1709 <ul> |
|
1710 |
|
1711 <li>daemon/hash_table.h: Fixed a typo in the hash table prime list |
|
1712 (the last numbers were truncated). |
|
1713 |
|
1714 </ul> |
|
1715 </p> |
|
1716 <p>1999-06-14 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1717 <ul> |
|
1718 |
|
1719 <li>doc/FAQ.texi: Added a "troubleshooting" section, to be filled in |
|
1720 as questions arrive. |
|
1721 |
|
1722 </ul> |
|
1723 </p> |
|
1724 <p>1999-06-07 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1725 <ul> |
|
1726 |
|
1727 <li>Modified all the sources to use the new configuration class |
|
1728 members. |
|
1729 |
|
1730 <li>commands/vcommand.cc (go_home): Initialize the password_file |
|
1731 global from config->password_file() here. |
|
1732 |
|
1733 <li>lib/config/configrc.cc: Totally re-wrote the configuration |
|
1734 system to use a subdirectory style config, with individual files |
|
1735 containing the configuration values on their first line. The |
|
1736 configuration modules are also built by a script, and broken down |
|
1737 into individual object modules to reduce the size of programs that |
|
1738 don't use all the options. |
|
1739 |
|
1740 </ul> |
|
1741 </p> |
|
1742 <p>1999-06-05 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1743 <ul> |
|
1744 |
|
1745 <li>daemon/*.cc: Moved the calls to CHANGE_STATE to immediately |
|
1746 after validating the user, to allow the config set up by the |
|
1747 saved_state to be used immediately. |
|
1748 |
|
1749 <li>clients/checkvpw.cc (set_user): Set up a vdomain here and set |
|
1750 the config to allow for locally-configured bulletin directories. |
|
1751 (main): Moved the call to set_user higher, to allow the config to |
|
1752 be used earlier to set the error maildir. |
|
1753 |
|
1754 <li>clients/vdeliver.cc (main): Set up a vdomain and set the config |
|
1755 to its config, to load a local configuration when doing |
|
1756 deliveries. |
|
1757 |
|
1758 <li>daemon/pwentry.cc: Removed the definitions for user_dir_rel and |
|
1759 user_dir_abs, since vdomain::userdir will do the job now (it seems |
|
1760 that user_dir_abs wasn't even used, too). |
|
1761 |
|
1762 <li>daemon/state.cc: Moved the constructor and desctuctor for |
|
1763 saved_state into this object, and added a call to push a new |
|
1764 configuration if state was changed successfully. |
|
1765 |
|
1766 <li>commands/vcommand.cc: Moved the go_home routine into here, and |
|
1767 added a global "domain" pointer that will point to the current |
|
1768 virtual domain. |
|
1769 (go_home): Push the domain config onto the config stack. Now all |
|
1770 the command programs will use a local configuration. This routine |
|
1771 will eventually be rewritten to handle multiple domains in the |
|
1772 same user. |
|
1773 |
|
1774 <li>commands/vadduser.cc: Converted to using a vdomain object. |
|
1775 |
|
1776 <li>Converted all instances of "config." to "config->" where |
|
1777 appropriate (the vdomain class has a non-pointer config member, so |
|
1778 it doesn't count). |
|
1779 |
|
1780 <li>lib/misc/server.cc: Rewrote call and connect to take as a |
|
1781 parameter the socket filename to use. server_call::call has a |
|
1782 default argument now of config->socket_file to prevent having to |
|
1783 change any code, but this might disappear, too. |
|
1784 |
|
1785 <li>lib/misc/configrc.cc: Turned the global 'config' item into a |
|
1786 pointer, to allow other code to essentially push down local |
|
1787 configurations onto it. Wrote config_push and config_pop to |
|
1788 assist with this. |
|
1789 |
|
1790 <li>commands/vaddusers.cc (add_one): Make the alias name lower case |
|
1791 before using it, call vuser_adduser with the maildir argument set. |
|
1792 |
|
1793 <li>lib/misc/vuser_add.cc (vuser_adduser): Modified this routine to |
|
1794 remove the call to userdir, forcing the maildir name to be created |
|
1795 at a higher level. |
|
1796 |
|
1797 </ul> |
|
1798 </p> |
|
1799 <p>1999-06-04 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1800 <ul> |
|
1801 |
|
1802 <li>lib/misc/configrc.cc (configuration): Eliminated the #defined |
|
1803 default constants, as they are used only once, and moved them |
|
1804 directly into the default configuration constructor. |
|
1805 |
|
1806 <li>lib/misc/configrc.h (class configuration ): Added a "parent" |
|
1807 member item that points to the object from which the defaults for |
|
1808 this configuration was set (set to NULL in the default object). |
|
1809 |
|
1810 <li>lib/misc/vdomain.cc: Created this construct to represent a |
|
1811 virtual domain. Copied the functionality from userdir.cc into |
|
1812 here (with the plan of removing userdir.cc in the future). This |
|
1813 will become the status-holder for multiple domains within a single |
|
1814 real user. |
|
1815 |
|
1816 <li>lib/misc/configrc.cc (configuration): Added a new constructor |
|
1817 that copies the values from a set of defaults and reads in a |
|
1818 config file to override those defaults. To be used for local |
|
1819 configuration handling. Relegated the default constructor to only |
|
1820 setting the default values, and added a new global const object |
|
1821 config_defaults to hold these. |
|
1822 |
|
1823 <li>commands/*: Added a call to go_home in every cli_main. |
|
1824 |
|
1825 <li>commands/go_home.cc (go_home): Wrote this routine to chdir to |
|
1826 the user's HOME directory. |
|
1827 |
|
1828 </ul> |
|
1829 </p> |
|
1830 <p>1999-06-03 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1831 <ul> |
|
1832 |
|
1833 <li>commands/listvdomain.cc (cli_main): I forgot to check the return |
|
1834 value of start_getpw here, leading to a core dump when the |
|
1835 password table can't be opened. Fixed. |
|
1836 |
|
1837 </ul> |
|
1838 </p> |
|
1839 <p>1999-06-01 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1840 <ul> |
|
1841 |
|
1842 <li>commands/vsetup.cc (setup_qmail_default): Changed the mode of |
|
1843 the created .qmail-default file to 0444 (minus umask) instead of |
|
1844 0666 to prevent qmail from complaining on systems where umask |
|
1845 defaults to 002 instead of 022, and to prevent inadvertent editing |
|
1846 of the .qmail-default file. |
|
1847 |
|
1848 </ul> |
|
1849 </p> |
|
1850 <p>1999-05-30 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1851 <ul> |
|
1852 |
|
1853 <li>Released version 0.92 |
|
1854 |
|
1855 </ul> |
|
1856 </p> |
|
1857 <p>1999-05-28 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1858 <ul> |
|
1859 |
|
1860 <li>clients/vdeliver.cc: Rewrote the alias delivery routines to send |
|
1861 the email to qmail-queue instead of qmail-inject, since |
|
1862 qmail-inject will attempt to reformat the message. |
|
1863 |
|
1864 </ul> |
|
1865 </p> |
|
1866 <p>1999-05-27 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1867 <ul> |
|
1868 |
|
1869 <li>daemon/check.cc (CMD): Added a check to ensure that checking the |
|
1870 password for an alias fails. |
|
1871 |
|
1872 <li>doc/*: Changed references from qcc.sk.ca to em.ca. |
|
1873 |
|
1874 </ul> |
|
1875 </p> |
|
1876 <p>1999-05-26 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1877 <ul> |
|
1878 |
|
1879 <li>daemon/addaliasp.cc (CMD): Added this new command to add an |
|
1880 alias with a password. |
|
1881 |
|
1882 <li>doc/vmailmgr-cgi.texi: Updated the documentation for vaddalias. |
|
1883 Changed all instances of "necessary" to "required". |
|
1884 |
|
1885 <li>cgi/vaddalias.cc (CGI_MAIN ): Now allows for an optional new |
|
1886 password field pair, and calls addaliasp if they are not empty. |
|
1887 |
|
1888 <li>lib/misc/server.cc (server_call): Added a new server_call for 5 |
|
1889 parameters. |
|
1890 |
|
1891 <li>daemon/log.cc (logcommand): Added a new logcommand routine to |
|
1892 handle 5 parameters. |
|
1893 |
|
1894 <li>daemon/dispatch.cc: Modified the dispatch entry for addalias. |
|
1895 |
|
1896 <li>daemon/chpass.cc (CMD): Removed the custom password checking |
|
1897 since it is now merged into lookup_and_validate. |
|
1898 |
|
1899 <li>daemon/chalias.cc (CMD): Call lookup_and_validate with the |
|
1900 "userpass" flag set to true to allow owners of virtual aliases set |
|
1901 up with a password to change their alias. |
|
1902 |
|
1903 <li>daemon/lookup.cc (lookup_and_validate): Modified to optionally |
|
1904 do comparisons against the virtual user's password if the |
|
1905 comparison against the administrator's password fails. Removed |
|
1906 the allowance for empty passwords. Made all the password |
|
1907 mis-match messages the same. The admin password check is done |
|
1908 before the virtual user check to avoid giving away information |
|
1909 about virtual users. |
|
1910 |
|
1911 <li>commands/vaddalias.cc (cli_main): Set passwords on aliases by |
|
1912 passing in a '-p' or '--password' flag. |
|
1913 |
|
1914 <li>lib/misc/vuser_add.cc (vuser_addalias): Modified to allow |
|
1915 passwords on aliases. |
|
1916 |
|
1917 </ul> |
|
1918 </p> |
|
1919 <p>1999-05-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1920 <ul> |
|
1921 |
|
1922 <li>Released version 0.91 |
|
1923 |
|
1924 </ul> |
|
1925 </p> |
|
1926 <p>1999-05-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1927 <ul> |
|
1928 |
|
1929 <li>daemon/chalias.cc (CMD): Bug fix: was passing "false" for |
|
1930 "mustexist" to lookup_and_validate, when it should have been |
|
1931 "true". |
|
1932 |
|
1933 <li>commands/vdelalias.cc, commands/vdeluser.cc, |
|
1934 commands/vaddusers.cc, commands/vaddalias.cc, |
|
1935 commands/vpasswds.cc, commands/vchalias.cc: Added a mechanism to |
|
1936 count and report the number of errors encountered. |
|
1937 |
|
1938 <li>doc/vmailmgr-cgi.texi: Added a chapter for the chalias command. |
|
1939 Also added sections for vdelalias and vdeluser, as well as sorting |
|
1940 the sections into alphabetical order. |
|
1941 |
|
1942 <li>cgi/vchalias.cc: Wrote the CGI program to call the chalias |
|
1943 command. |
|
1944 |
|
1945 <li>doc/vchalias.pod: Wrote the documentation page for the vchalias |
|
1946 command. |
|
1947 |
|
1948 </ul> |
|
1949 </p> |
|
1950 <p>1999-05-15 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1951 <ul> |
|
1952 |
|
1953 <li>lib/misc/configrc.cc (DEFAULT_DEFAULT_USERNAME): Changed the |
|
1954 default default username from '*' to '+', to avoid shell |
|
1955 screwups. Updated documentation. |
|
1956 |
|
1957 </ul> |
|
1958 </p> |
|
1959 <p>1999-05-04 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1960 <ul> |
|
1961 |
|
1962 <li>doc/checkvpw.pod: Fixed filename glitch -- replaced all |
|
1963 instances of virtualhosts with virtualdomains. |
|
1964 |
|
1965 </ul> |
|
1966 </p> |
|
1967 <p>1999-05-01 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
1968 <ul> |
|
1969 |
|
1970 <li>lib/misc/vpwentry_putpw.cc (putpw): Changed logic of "onlyadd" |
|
1971 parameter. If set, will fail if the name already existed. If not |
|
1972 set, will fail if the name did not already exist. |
|
1973 |
|
1974 <li>daemon/dispatch.cc: Added a dispatch entry for chalias. |
|
1975 |
|
1976 <li>daemon/chalias.cc (CMD): Created this server command to change |
|
1977 an existing alias to a new destination, using the new vuser_set. |
|
1978 |
|
1979 <li>daemon/adduser.cc (CMD): Changed to use vuser_set. |
|
1980 |
|
1981 <li>daemon/addalias.cc (CMD): Changed to use vuser_set. |
|
1982 |
|
1983 <li>lib/misc/vuser_add.cc: Changed to use vuser_set. |
|
1984 |
|
1985 <li>commands/vadduser.cc (add_user): Changed to use vuser_set. |
|
1986 |
|
1987 <li>lib/misc/vuser_set.cc (vuser_set): Renamed vuser_add to |
|
1988 vuser_set, and moved it into this file. vuser_set can be used to |
|
1989 change existing entries as well as to add new entries. |
|
1990 |
|
1991 <li>commands/vrehash.cc (lock_dir): Set permissions on created CDB |
|
1992 file to 0600. |
|
1993 |
|
1994 <li>commands/vpasswd2cdb.cc (cli_main): Set permissions on created |
|
1995 CDB file to 0600. |
|
1996 |
|
1997 <li>lib/misc/vpwentry_putpw.cc (putpw): Set permissions on created |
|
1998 CDB file to 0600. |
|
1999 |
|
2000 <li>lib/misc/vpwentry_delpw.cc (delpw): Set permissions on created |
|
2001 CDB file to 0600. |
|
2002 |
|
2003 <li>clients/vdeliver.cc: Changed all I/O to use fdbuf primitives. |
|
2004 (deliver): Changed permissions on created file to 0666 to 0600 |
|
2005 (mail should be private). |
|
2006 |
|
2007 </ul> |
|
2008 </p> |
|
2009 <p>1999-04-29 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2010 <ul> |
|
2011 |
|
2012 <li>Released version 0.90.2 |
|
2013 |
|
2014 </ul> |
|
2015 </p> |
|
2016 <p>1999-04-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2017 <ul> |
|
2018 |
|
2019 <li>lib/misc/userdir.cc (userdir): Use the multiple-argument |
|
2020 mystring constructor to make pasting the slices together more |
|
2021 efficient. |
|
2022 |
|
2023 <li>daemon/main.cc: Added include of <stdio.h> to pull in perror |
|
2024 properly. |
|
2025 |
|
2026 </ul> |
|
2027 </p> |
|
2028 <p>1999-04-08 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2029 <ul> |
|
2030 |
|
2031 <li>Released version 0.90.1 |
|
2032 |
|
2033 </ul> |
|
2034 </p> |
|
2035 <p>1999-04-07 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2036 <ul> |
|
2037 |
|
2038 <li>lib/misc/vpwentry_putpw.cc: Removed include of errnos.h |
|
2039 |
|
2040 <li>lib/misc/md5-crypt.c: Added definitions for MIN and MAX if they |
|
2041 aren't defined. |
|
2042 |
|
2043 </ul> |
|
2044 </p> |
|
2045 <p>1999-04-05 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2046 <ul> |
|
2047 |
|
2048 <li>doc/vmailmgr.conf.sample: Removed the entry for |
|
2049 cdb-password-file, as that variable is not used. |
|
2050 |
|
2051 </ul> |
|
2052 </p> |
|
2053 <p>1999-04-04 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2054 <ul> |
|
2055 |
|
2056 <li>Released version 0.90 |
|
2057 |
|
2058 <li>doc/FAQ.texi: Noted that the C++ libraries are no longer |
|
2059 needed. |
|
2060 |
|
2061 <li>clients/bulletins.cc (stat_maildir): Fixed two bugs: timestamp |
|
2062 file was named "maildir/cur/.timestamp" instead of just |
|
2063 "maildir/.timestamp"; timestamp file was opened for writing |
|
2064 without a mode, causing the resulting file to have an |
|
2065 indeterminate mode. |
|
2066 |
|
2067 <li>doc/FAQ.texi: Added an answer regarding IMAP support. |
|
2068 |
|
2069 </ul> |
|
2070 </p> |
|
2071 <p>1999-04-03 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2072 <ul> |
|
2073 |
|
2074 <li>daemon/main.cc (handle_connection): Only print out the "Accepted |
|
2075 connection" message if the verbose flag is set. |
|
2076 |
|
2077 </ul> |
|
2078 </p> |
|
2079 <p>1999-04-01 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2080 <ul> |
|
2081 |
|
2082 <li>lib/misc/md5-crypt.c (md5_crypt_r): This routine depended on the |
|
2083 result of "strncpy" pointing to the end of the destination |
|
2084 string. This is non-standard behavior. Fixed such that the "cp" |
|
2085 pointer tracks its position manually. |
|
2086 |
|
2087 <li>cgi/listvdomain.cc: Converted to fdbuf. |
|
2088 |
|
2089 <li>daemon/main.cc (usage): Converted to fdbuf. |
|
2090 |
|
2091 <li>daemon/log.cc: Converted to fdbuf. |
|
2092 |
|
2093 <li>daemon/map_table.cc (map_table): Converted to fdbuf. |
|
2094 |
|
2095 <li>daemon/list_table.cc (list_table): Converted to fdbuf. |
|
2096 |
|
2097 <li>commands/*: Converted from iostream to fdbuf. |
|
2098 |
|
2099 <li>lib/cli/main.cc: Use the new "operator<<" methods of fdobuf. |
|
2100 |
|
2101 <li>lib/misc/validate.cc (validate_redirect): Converted from using |
|
2102 ostrstream to mystring for growing error messages. |
|
2103 |
|
2104 <li>lib/misc/configrc.cc (read_config): Use the new "operator<<" |
|
2105 methods of fdobuf for writing messages. |
|
2106 |
|
2107 <li>lib/misc/passwdfn.cc: Converted to using fdbuf objects. |
|
2108 |
|
2109 </ul> |
|
2110 </p> |
|
2111 <p>1999-03-31 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2112 <ul> |
|
2113 |
|
2114 <li>lib/misc/pwcrypt.cc: Adapted these routines to using the GNU MD5 |
|
2115 library and the md5_crypt routine. |
|
2116 (crypt_cmp): Revised the algorithm here to use the old MD5 routine |
|
2117 only for old passcodes, md5_crypt for hashes starting with "$1$", |
|
2118 and crypt otherwise. This should be compatible with all |
|
2119 implementations. |
|
2120 |
|
2121 <li>lib/misc/configrc.cc (read_config): Modified to use fdibuf |
|
2122 instead of ifstream. |
|
2123 (cmp): Fixed logic to properly parse "STR *= *STR" instead of |
|
2124 "STR *(=+ *)+STR". |
|
2125 |
|
2126 <li>Changed the copying policy to GPL. |
|
2127 |
|
2128 </ul> |
|
2129 </p> |
|
2130 <p>1999-03-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2131 <ul> |
|
2132 |
|
2133 <li>Released version 0.89.1 |
|
2134 |
|
2135 <li>configure.in: Add a --enable-md5 flag to set USE_MD5. |
|
2136 |
|
2137 <li>lib/misc/pwcrypt.cc: Imported implementation of crypt_cmp and |
|
2138 pwcrypt from 0.87, using USE_MD5 as a selector. |
|
2139 |
|
2140 </ul> |
|
2141 </p> |
|
2142 <p>1999-03-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2143 <ul> |
|
2144 |
|
2145 <li>Released version 0.89 |
|
2146 |
|
2147 <li>daemon/main.cc (handle_connection): Move the exit(0) out of the |
|
2148 if block so that the child always exits. |
|
2149 |
|
2150 <li>daemon/fork.cc (do_fork): Bump up the fork counters in the child |
|
2151 as well as the parent so that the accounting commands work |
|
2152 properly. |
|
2153 |
|
2154 <li>clients/bulletins.cc (stat_maildir): Fixed type: open the |
|
2155 timestamp file for output, not the maildir. |
|
2156 |
|
2157 </ul> |
|
2158 </p> |
|
2159 <p>1999-03-20 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2160 <ul> |
|
2161 |
|
2162 <li>clients/bulletins.cc (stat_maildir): The timestamp on the "cur" |
|
2163 directory is unreliable. Create a zero-length ".timestamp" file |
|
2164 and use its modification mode for last-login information. |
|
2165 |
|
2166 </ul> |
|
2167 </p> |
|
2168 <p>1999-03-18 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2169 <ul> |
|
2170 |
|
2171 <li>daemon/listdomain.cc (CMD): Fixed a non-incrementing loop |
|
2172 counter. |
|
2173 |
|
2174 <li>daemon/fork.cc (handle_children): Now checks for both pid == -1 |
|
2175 and pid == 0 to terminate the wait loop. |
|
2176 |
|
2177 <li>lib/misc/vpwentry_putpw.cc (putpw): If the input file does not |
|
2178 exist, skip the loop and add the record to a new output file. |
|
2179 |
|
2180 <li>lib/cdb++/cdb_reader.cc (cdb_reader): Set the failed flag to the |
|
2181 result of opening the file. |
|
2182 |
|
2183 <li>lib/misc/vpwentry_putpw.cc (putpw): Fixed inverted boolean bug. |
|
2184 |
|
2185 <li>daemon/lookup.cc (lookup_baseuser): Fixed bug: the pwentry |
|
2186 pointer returned by operator[] on the pwentry_table gets deleted |
|
2187 when the pwentry_table goes out of scope (and all kinds of weird |
|
2188 things happen to the data). |
|
2189 |
|
2190 <li>daemon/pwentry.cc (pwfile): Cache the value of pwfile for future |
|
2191 calls. |
|
2192 |
|
2193 <li>daemon/lookup.cc (lookup_baseuser): Use "right" instead of the |
|
2194 silly pointer increment logic to get the virtual name substring. |
|
2195 |
|
2196 </ul> |
|
2197 </p> |
|
2198 <p>1999-03-17 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2199 <ul> |
|
2200 |
|
2201 <li>daemon/dispatch.cc (dispatch_cmd): Remove all fork handling from |
|
2202 this routine. |
|
2203 |
|
2204 <li>daemon/main.cc (handle_connection): Call do_fork immediately |
|
2205 after accepting the connection. |
|
2206 |
|
2207 </ul> |
|
2208 </p> |
|
2209 <p>1999-03-16 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2210 <ul> |
|
2211 |
|
2212 <li>commands/vsetup.cc (setup_qmail_default): Set the initial value |
|
2213 of .qmail-default to "|@BINDIR@/vdeliver". |
|
2214 |
|
2215 <li>commands/vrehash.cc: Rewrote to use CDB functions. |
|
2216 |
|
2217 <li>daemon/listdomain.cc (CMD): Send output to 'fd' instead of |
|
2218 hard-coded file descriptor 2. |
|
2219 |
|
2220 <li>daemon/dispatch.cc (dispatch_cmd): Pass the file descriptor to |
|
2221 the dispatched function. |
|
2222 |
|
2223 <li>daemon/main.cc (handle_connection): Modified logic to better |
|
2224 suit the always-fork mentality. |
|
2225 |
|
2226 <li>daemon/dispatch.cc (dispatch_cmd): Changed logic to always |
|
2227 fork. |
|
2228 |
|
2229 <li>At this point, all cache support in vmailmgrd has been removed, |
|
2230 and all virtual password table functions will read CDBs. |
|
2231 |
|
2232 <li>daemon/lookup.cc: Converted the functions here to using the |
|
2233 tables instead of the caches. |
|
2234 |
|
2235 <li>daemon/pwentry_table.cc (pwentry_table): Converted the |
|
2236 implementation of pwentry_reader into this class. |
|
2237 |
|
2238 <li>daemon/hash_table.h (class hash_table): Fixed a long-standing |
|
2239 const method issue. |
|
2240 |
|
2241 <li>daemon/list_table.cc (list_table): Converted the implementation |
|
2242 of list_reader into this class. |
|
2243 |
|
2244 <li>daemon/map_table.cc (map_table): Converted the implementation of |
|
2245 map_reader into this class. |
|
2246 |
|
2247 <li>daemon/listdomain.cc (CMD): Removed the use of the vpwentry |
|
2248 cache table. |
|
2249 |
|
2250 <li>lib/misc/vpwentry_get.cc (rewind_getpw): Wrote this routine to |
|
2251 rewind an open cdb table witout re-opening it. |
|
2252 (getpw): Converted to using autodelete. |
|
2253 |
|
2254 <li>daemon/chpass.cc (CMD): Removed the use of the vpwentry cache |
|
2255 table. |
|
2256 |
|
2257 <li>daemon/lookup.cc (lookup_virtuser): Removed the use of the |
|
2258 vpwentry cache table. |
|
2259 |
|
2260 <li>daemon/pwentry.h (struct pwentry): Removed the vpwtable entry. |
|
2261 |
|
2262 </ul> |
|
2263 </p> |
|
2264 <p>1999-03-15 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2265 <ul> |
|
2266 |
|
2267 <li>lib/misc/vpwentry_*.cc: Append ".cdb" to the filename for the |
|
2268 CDB file name. |
|
2269 |
|
2270 <li>lib/misc/configrc.cc: Removed the cdb_password_file entry. |
|
2271 |
|
2272 </ul> |
|
2273 </p> |
|
2274 <p>1999-03-13 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2275 <ul> |
|
2276 |
|
2277 <li>lib/misc/vpwentry_putpw.cc (putpw): Converted to using CDB |
|
2278 functions. |
|
2279 |
|
2280 <li>commands/passwd2cdb.cc (cli_main): Converted to use to_record. |
|
2281 |
|
2282 <li>lib/misc/vpwentry.cc (to_record): Wrote this one-liner to build |
|
2283 a CDB record from the entry. |
|
2284 |
|
2285 <li>lib/misc/vpwentry_delpw.cc (delpw): Converted to using CDB |
|
2286 functions. |
|
2287 |
|
2288 <li>lib/misc/vpwentry_get.cc (start_getpw): Rewrote to use |
|
2289 vpwentry::from_record. |
|
2290 |
|
2291 <li>lib/misc/vpwentry_getpw.cc (getpw_byname): Rewrote to use |
|
2292 vpwentry::from_record. |
|
2293 |
|
2294 <li>lib/misc/vpwentry.cc (from_record): Wrote this routine to build |
|
2295 a vpwentry from a CDB record. |
|
2296 |
|
2297 </ul> |
|
2298 </p> |
|
2299 <p>1999-03-12 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2300 <ul> |
|
2301 |
|
2302 <li>lib/misc/vpwentry_getpw.cc (getpw_byname): Converted to using |
|
2303 CDB functions. |
|
2304 |
|
2305 <li>lib/misc/vpwentry_get.cc: Converted to using CDB functions. |
|
2306 |
|
2307 <li>lib/misc/configrc.cc: Added support for configuring the CDB |
|
2308 password table name. |
|
2309 |
|
2310 <li>commands/passwd2cdb.cc: Wrote this program to convert a standard |
|
2311 virtual password table into a CDB table. The initial record |
|
2312 format is identical to the old to reduce library conversion |
|
2313 issues. |
|
2314 |
|
2315 <li>lib/misc/vpwentry_get.cc (start_getpw): This routine now returns |
|
2316 bool to indicate if the table was opened successfully. |
|
2317 |
|
2318 <li>Major reorganization of the libraries and header files. All the |
|
2319 libraries are in subdirectories under "lib", and the headers under |
|
2320 "include" (with a pile of symlinks). |
|
2321 |
|
2322 </ul> |
|
2323 </p> |
|
2324 <p>1999-03-11 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2325 <ul> |
|
2326 |
|
2327 <li>Released version 0.88 |
|
2328 |
|
2329 <li>configure.in: Check for libinet and libsocket. |
|
2330 |
|
2331 </ul> |
|
2332 </p> |
|
2333 <p>1999-03-10 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2334 <ul> |
|
2335 |
|
2336 <li>doc/vmailmgr-cgi.texi (Top): Removed warning about passwords |
|
2337 being limited to eight characters. |
|
2338 |
|
2339 <li>commands/vpasswds.cc (change_one): Removed warning about |
|
2340 passwords being truncated to eight characters. |
|
2341 |
|
2342 <li>lib/passwdfn.cc (getpasswd_interactive): Removed warning about |
|
2343 passwords being truncated to eight characters. |
|
2344 (getpasswd_stdin): Removed another eight character warning. |
|
2345 |
|
2346 </ul> |
|
2347 </p> |
|
2348 <p>1999-03-07 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2349 <ul> |
|
2350 |
|
2351 <li>lib/pwcrypt.cc: Add a passcode type digit to the MD5 hashes on |
|
2352 output, and check for this digit on comparison to determine what |
|
2353 type of hashing to use. |
|
2354 |
|
2355 </ul> |
|
2356 </p> |
|
2357 <p>1999-03-04 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2358 <ul> |
|
2359 |
|
2360 <li>daemon/check.cc (CMD): Tidied up result string creation code. |
|
2361 |
|
2362 <li>lib/vpwentry_getpw.cc (getpw_byname): Copied logic from getpw. |
|
2363 |
|
2364 <li>lib/vpwentry_get.cc (getpw): Fixed minor logic flaws. |
|
2365 |
|
2366 <li>lib-dbi/passcode.cc: Added a stub for MD5 authentication. |
|
2367 |
|
2368 <li>daemon/chpass.cc (CMD): Use renamed pwcrypt. |
|
2369 |
|
2370 <li>daemon/adduser.cc (CMD): Use renamed pwcrypt. |
|
2371 |
|
2372 <li>commands/vadduser.cc (add_user): Use renamed pwcrypt. |
|
2373 |
|
2374 <li>lib/vuser_add.cc (vuser_adduser): Use renamed pwcrypt. |
|
2375 |
|
2376 <li>lib/vuser_chpass.cc (vuser_chpass): Use renamed pwcrypt. |
|
2377 |
|
2378 <li>lib/pwcrypt.cc (crypt_cmp): Modified to automatically handle MD5 |
|
2379 hashed passcodes. |
|
2380 Renamed encrypt to pwcrypt, which calls encrypt_md5 to produce MD5 |
|
2381 hashed passcodes. |
|
2382 |
|
2383 <li>Completed conversion of source packaging from custom makefiles |
|
2384 to automake. |
|
2385 |
|
2386 </ul> |
|
2387 </p> |
|
2388 <p>1999-02-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2389 <ul> |
|
2390 |
|
2391 <li>Released version 0.87 |
|
2392 |
|
2393 <li>Removed my kludged handling for building shared libraries. This |
|
2394 greatly simplifies the process of moving to both automake and |
|
2395 libtool. The executables are somewhat larger, but still come in |
|
2396 under about 25K each (on i386 Linux). |
|
2397 |
|
2398 <li>clients/bulletins.cc (scan_bulletins): Skip scanning the local |
|
2399 bulletin directory if the user is non-virtual. |
|
2400 |
|
2401 <li>clients/checkvpw.cc (struct user_data): Added a non_virtual flag |
|
2402 to this data, indicating that the user is not a virtual user. |
|
2403 (main): Pass the non_virtual flag into scan_bulletins. |
|
2404 |
|
2405 <li>lib/ac-wait.h: Moved the #include ladder that is required to use |
|
2406 wait(2) functions here. |
|
2407 |
|
2408 <li>lib/ac-dirent.h: Moved the #include ladder that is required to |
|
2409 use dirent functions here. |
|
2410 |
|
2411 <li>lib/ac-time.h: Moved the #include ladder that is required to use |
|
2412 time functions here, and rewrote all the files that include either |
|
2413 <time.h> or <sys/time.h> to instead include "ac-time.h" |
|
2414 |
|
2415 <li>commands/vpasswds.cc (cli_main): Removed call to srandom. |
|
2416 |
|
2417 <li>commands/vpasswd.cc (cli_main): Removed call to srandom. |
|
2418 |
|
2419 <li>commands/vaddusers.cc (cli_main): Removed call to srandom. |
|
2420 |
|
2421 <li>commands/vadduser.cc (cli_main): Removed call to srandom. |
|
2422 |
|
2423 <li>lib-cli/main.cc (main): Call srandom here to give all the CLI |
|
2424 programs a properly initialized random function automatically. |
|
2425 |
|
2426 </ul> |
|
2427 </p> |
|
2428 <p>1999-02-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2429 <ul> |
|
2430 |
|
2431 <li>daemon/main.cc: All signal handlers call signal to re-enable |
|
2432 signal handling on systems that reset signals. |
|
2433 |
|
2434 <li>daemon/fork.cc (handle_children): Re-assert the SIGCHLD signal |
|
2435 handler after a signal is received, since some systems will reset |
|
2436 the behavior of signals after they've been received. |
|
2437 |
|
2438 </ul> |
|
2439 </p> |
|
2440 <p>1999-02-22 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2441 <ul> |
|
2442 |
|
2443 <li>lib-cgi/cgi-base.cc (main): Eliminated the timezone setup since |
|
2444 it is totally unnecessary. |
|
2445 |
|
2446 </ul> |
|
2447 </p> |
|
2448 <p>1999-02-09 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2449 <ul> |
|
2450 |
|
2451 <li>lib-dbi/user.h: Moved the password validation method out of the |
|
2452 ruser/vuser classes into struct passcode. This class may |
|
2453 eventually be split into multiple classes, one per passcode type. |
|
2454 |
|
2455 </ul> |
|
2456 </p> |
|
2457 <p>1999-02-06 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2458 <ul> |
|
2459 |
|
2460 <li>Released version 0.86 |
|
2461 |
|
2462 <li>clients/bulletins.cc: Changed logic in all routines to not fail |
|
2463 if an error occurrs. |
|
2464 (link_file): Fixed several logic flaws. |
|
2465 |
|
2466 </ul> |
|
2467 </p> |
|
2468 <p>1999-01-30 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2469 <ul> |
|
2470 |
|
2471 <li>clients/bulletins.cc: Completed prototype code. |
|
2472 |
|
2473 </ul> |
|
2474 </p> |
|
2475 <p>1999-01-28 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2476 <ul> |
|
2477 |
|
2478 <li>clients/bulletins.cc (scan_bulletins): Roughed-in bulletin |
|
2479 scanning support. |
|
2480 |
|
2481 <li>clients/checkvpw.cc (main): Added call to scan bulletins. |
|
2482 |
|
2483 <li>lib/configrc.h (class configuration ): Added variables to be |
|
2484 used to set up bulletin directories. |
|
2485 |
|
2486 </ul> |
|
2487 </p> |
|
2488 <p>1999-01-26 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2489 <ul> |
|
2490 |
|
2491 <li>commands/vadduser.cc: Modified to accept a "directory" argument |
|
2492 of where to put the user's mailbox. |
|
2493 |
|
2494 </ul> |
|
2495 </p> |
|
2496 <p>1999-01-12 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2497 <ul> |
|
2498 |
|
2499 <li>Rewrote various sources to take advantage of new mystring |
|
2500 library constructor functions. |
|
2501 |
|
2502 <li>Inserted revised mystring library. |
|
2503 |
|
2504 </ul> |
|
2505 </p> |
|
2506 <p>1999-01-09 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2507 <ul> |
|
2508 |
|
2509 <li>Released version 0.85 |
|
2510 |
|
2511 <li>daemon/vpwentry_cache.cc (dirname): Fixed stupid bug -- used |
|
2512 "right" instead of "left" to get the directory part of the |
|
2513 filename. This bug was introduced by the following change. |
|
2514 |
|
2515 <li>All files: reworked code to remove cases where an automatic |
|
2516 conversion from type mystring to "const char*' was expected. |
|
2517 Instead, all the code uses the c_str() function in mystring. |
|
2518 |
|
2519 <li>Added a note in the FAQ regarding the default username. |
|
2520 |
|
2521 <li>lib-cli/main.cc: Rewrote the CLI library to remove dependance on |
|
2522 the GNU libiberty getopts. |
|
2523 |
|
2524 </ul> |
|
2525 </p> |
|
2526 <p>1998-12-29 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2527 <ul> |
|
2528 |
|
2529 <li>clients/vdeliver.cc (main): Changed the default for adding the |
|
2530 leading "From " line to false. |
|
2531 |
|
2532 <li>Released version 0.84 |
|
2533 |
|
2534 </ul> |
|
2535 </p> |
|
2536 <p>1998-12-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2537 <ul> |
|
2538 |
|
2539 <li>lib/response_read.cc (read): Removed the __GNUG__ cruft here |
|
2540 that was only really necessary to optimize on old "mystring" use |
|
2541 (and probably only added nearly useless complexity even then). |
|
2542 |
|
2543 <li>lib/userdir.cc (userdir): Added a work-around for the apparent |
|
2544 egcs inlining bug to fix those core dumps when running vadduser |
|
2545 and friends. Using egcs -finline-functions causes them to core |
|
2546 dump, without inlining everything works OK. |
|
2547 |
|
2548 </ul> |
|
2549 </p> |
|
2550 <p>1998-12-09 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2551 <ul> |
|
2552 |
|
2553 <li>commands/vadduser.cc (cli_main): Fixed off-by-one error |
|
2554 introduced by the use of lib-cli. |
|
2555 |
|
2556 </ul> |
|
2557 </p> |
|
2558 <p>1998-12-08 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2559 <ul> |
|
2560 |
|
2561 <li>configure.in: Added a check to determine if the C++ compiler is |
|
2562 buggy and abort if so. |
|
2563 |
|
2564 </ul> |
|
2565 </p> |
|
2566 <p>1998-12-03 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2567 <ul> |
|
2568 |
|
2569 <li>configure.in: Modified the tests for -fno-exceptions and |
|
2570 -fno-rtti to actually run the C++ compiler and check its result. |
|
2571 |
|
2572 </ul> |
|
2573 </p> |
|
2574 <p>1998-12-02 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2575 <ul> |
|
2576 |
|
2577 <li>commands/*.cc: Refitted all the command programs to use lib-cli. |
|
2578 |
|
2579 </ul> |
|
2580 </p> |
|
2581 <p>1998-11-29 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2582 <ul> |
|
2583 |
|
2584 <li>commands/vaddalias.cc: Refitted to use lib-cli. |
|
2585 |
|
2586 <li>lib-cli/main.cc: Wrote a top-level command-line interface |
|
2587 helper, which handles automatic help-screen generation, short and |
|
2588 long argument parsing, and will eventually handle switching |
|
2589 between "standard" command use and server-call usages. |
|
2590 |
|
2591 </ul> |
|
2592 </p> |
|
2593 <p>1998-11-28 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2594 <ul> |
|
2595 |
|
2596 <li>commands/listvdomain.cc: Wrote this program to list the contents |
|
2597 of a virtual domain. |
|
2598 |
|
2599 <li>configure.in: Added a somewhat poor hack to handle support for |
|
2600 static vs shared libraries. |
|
2601 |
|
2602 <li>lib/vpwentry_get.cc: added start_getpw, end_getpw, and getpw |
|
2603 routines. |
|
2604 |
|
2605 </ul> |
|
2606 </p> |
|
2607 <p>1998-11-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2608 <ul> |
|
2609 |
|
2610 <li>daemon/main.cc: Fixed handling of aborted and timed out |
|
2611 requests. A timed out request will result in two error messages, |
|
2612 one from the alarm, and one from the failed read. |
|
2613 |
|
2614 </ul> |
|
2615 </p> |
|
2616 <p>1998-11-07 Bruce Guenter <bguenter@hal.qcc.sk.ca> |
|
2617 <ul> |
|
2618 |
|
2619 <li>Released version 0.83 |
|
2620 |
|
2621 <li>doc/vmailmgr-cgi.texi: Added a section to describe the use of |
|
2622 the listvdomain CGI. |
|
2623 |
|
2624 <li>cgi/listvdomain.cc (show_dest): Split original show_user into |
|
2625 show_dest which calls show_mbox or show_alias. |
|
2626 (show_mbox): Modified output to show mailbox destination. |
|
2627 (CGI_MAIN ): Accepts form inputs mboxlink and aliaslink, which are |
|
2628 links inserted on each mailbox or alias name, with '%' replaced by |
|
2629 the mailbox or alias name. |
|
2630 |
|
2631 </ul> |
|
2632 </p> |
|
2633 <p>1998-10-29 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2634 <ul> |
|
2635 |
|
2636 <li>daemon/main.cc (handle_connection): It appears that accept may |
|
2637 return with an error if a signal occurred while the accept was |
|
2638 being processed. So, loop around accept until a valid fd is |
|
2639 returned. |
|
2640 |
|
2641 </ul> |
|
2642 </p> |
|
2643 <p>1998-10-12 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2644 <ul> |
|
2645 |
|
2646 <li>lib/cgi-*: Moved these files into lib-cgi. |
|
2647 |
|
2648 </ul> |
|
2649 </p> |
|
2650 <p>1998-10-01 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2651 <ul> |
|
2652 |
|
2653 <li>*/*.cc, */*.h: Changed all remaining instances of "const |
|
2654 mystring&" to "mystring". |
|
2655 |
|
2656 </ul> |
|
2657 </p> |
|
2658 <p>1998-09-29 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2659 <ul> |
|
2660 |
|
2661 <li>lib/server.cc, lib/response*.cc: Changed all instances of "const |
|
2662 mystring&" to "mystring". |
|
2663 |
|
2664 <li>cgi/listvdomain.cc (CGI_MAIN ): Forgot to output a content type |
|
2665 before the HTML content. Fixed. |
|
2666 (show_domain): The user list is now sorted on output. |
|
2667 |
|
2668 <li>lib/cgi-args.cc: Changed all instances of "const mystring&" to |
|
2669 "mystring". |
|
2670 |
|
2671 <li>lib/cgi-base.cc: Exported content_type function. |
|
2672 Changed all instances of "const mystring&" to "mystring". |
|
2673 |
|
2674 </ul> |
|
2675 </p> |
|
2676 <p>1998-09-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2677 <ul> |
|
2678 |
|
2679 <li>Released version 0.82 |
|
2680 |
|
2681 </ul> |
|
2682 </p> |
|
2683 <p>1998-09-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2684 <ul> |
|
2685 |
|
2686 <li>daemon/main.cc (exit_fn): Check the count of active forked |
|
2687 processes and sleep until they are all no longer active. |
|
2688 |
|
2689 <li>daemon/daemon.h: Moved parts of this file into command.h and |
|
2690 log.h. |
|
2691 |
|
2692 <li>daemon/*.cc: Replaced all instances of "cout" that produce log |
|
2693 messages with "log()" or "log(msg)". |
|
2694 |
|
2695 <li>daemon/log.cc (log): Added new routine that prefixes log lines |
|
2696 with "[pid] " if the log is being output from a child process. |
|
2697 |
|
2698 <li>cgi/listvdomain.cc (show_domain): Fixed loop logic to properly |
|
2699 truncate the buffer when repeating. Set up the output to display |
|
2700 a table instead of a list. |
|
2701 (show_user): Added this routine to output a single user, doing a |
|
2702 lookup to determine if the name is a mailbox or alias. |
|
2703 |
|
2704 <li>daemon/dispatch.cc: Changed all the entries that would modify a |
|
2705 user to be "forked" methods. |
|
2706 |
|
2707 </ul> |
|
2708 </p> |
|
2709 <p>1998-09-23 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2710 <ul> |
|
2711 |
|
2712 <li>daemon/listdomain.cc (CMD): write_buf returns true on success, |
|
2713 not false. Fixed. |
|
2714 |
|
2715 <li>lib/response_message.cc (message): Fixed a minor bug: the "msg" |
|
2716 portion of the response was treated as a NUL-terminated C string |
|
2717 instead of as binary data, causing potential truncation when used |
|
2718 with the listdomain facility. |
|
2719 |
|
2720 </ul> |
|
2721 </p> |
|
2722 <p>1998-09-21 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2723 <ul> |
|
2724 |
|
2725 <li>clients/checkvpw.cc (authenticate): Modified to handle extra |
|
2726 maildir value in string, eliminating an extra lookup. |
|
2727 |
|
2728 <li>daemon/check.cc (CMD): Modified return string to include a |
|
2729 maildir for virtual users. |
|
2730 |
|
2731 <li>daemon/fork.cc: Removed all the code that dealt with process |
|
2732 slots to fix a race condition: the forked process could exit |
|
2733 before the parent registers it as a child, causing the active |
|
2734 process counts to become incorrect and eventually prevent any |
|
2735 further forks. |
|
2736 |
|
2737 </ul> |
|
2738 </p> |
|
2739 <p>1998-09-20 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2740 <ul> |
|
2741 |
|
2742 <li>daemon/main.cc (handle_connection): Modified to use new fork |
|
2743 logic. |
|
2744 (usage): Added -v/-V option to usage message. |
|
2745 |
|
2746 <li>daemon/dispatch.cc (dispatch_cmd): Fixed logic of "did_fork" |
|
2747 flag to become two flags: needs_write and needs_exit. |
|
2748 |
|
2749 <li>daemon/main.cc (main): Removed use of atexit(exit_fn) to |
|
2750 automatically remove the socket file, since it must not be removed |
|
2751 when exiting from a forked routine. |
|
2752 |
|
2753 <li>daemon/dispatch.cc (dispatch_cmd): dup2 returns -1, not |
|
2754 non-zero, on error. Fixed. |
|
2755 |
|
2756 <li>doc/vmailmgr.pod: Added the full list of programs that are part |
|
2757 of this package to a "SEE ALSO" list. |
|
2758 |
|
2759 </ul> |
|
2760 </p> |
|
2761 <p>1998-09-12 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2762 <ul> |
|
2763 |
|
2764 <li>clients/checkvpw.cc (main): Fixed design flaw in the "missing |
|
2765 maildir" design caused by setting the MAILDIR environment variable |
|
2766 before checking for the existance of the maildir. |
|
2767 (find_maildir): Changed search logic -- if no matching string is |
|
2768 found, indicate that the last argument is the "maildir" argument. |
|
2769 (main): Removed several redundant checks that were a result of the |
|
2770 above change. |
|
2771 |
|
2772 </ul> |
|
2773 </p> |
|
2774 <p>1998-09-09 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2775 <ul> |
|
2776 |
|
2777 <li>lib/response_read.cc (read_response): Fixed the missing "break" |
|
2778 in the switch statement. |
|
2779 |
|
2780 </ul> |
|
2781 </p> |
|
2782 <p>1998-09-08 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2783 <ul> |
|
2784 |
|
2785 <li>daemon/main.cc (handle_intr): Ignore PIPE signals while exiting, |
|
2786 as there is a potential for an infinite loop to occur if stdout is |
|
2787 a pipe that closes before this program exits. |
|
2788 |
|
2789 </ul> |
|
2790 </p> |
|
2791 <p>1998-09-05 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2792 <ul> |
|
2793 |
|
2794 <li>lib/response_read.cc (receive_string): Moved this routine here |
|
2795 from lib/server.cc. |
|
2796 (read): Moved the former implementation of response::response(int) |
|
2797 into a static read_response routine, and renamed it response::read. |
|
2798 |
|
2799 <li>lib/server.cc: Fixed several compile bugs. |
|
2800 |
|
2801 <li>cgi/listvdomain.cc: Fixed compile bugs, still not tested. |
|
2802 |
|
2803 </ul> |
|
2804 </p> |
|
2805 <p>1998-08-21 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2806 <ul> |
|
2807 |
|
2808 <li>cgi/listvdomain.cc (CGI_MAIN ): Completed the preliminary |
|
2809 implementation of this CGI. |
|
2810 |
|
2811 <li>lib/server.cc (call): Modified to use the new response |
|
2812 constructor to read the response from the client. |
|
2813 |
|
2814 <li>lib/response.h (struct response): Added a constructor to read |
|
2815 the data from a file descriptor. |
|
2816 |
|
2817 </ul> |
|
2818 </p> |
|
2819 <p>1998-08-13 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2820 <ul> |
|
2821 |
|
2822 <li>daemon/lookup.cc (lookup_and_validate): Fixed the behavior when |
|
2823 the password table contains a "default" user, the requested user |
|
2824 does not exist, and the "mustexist" flag is set. |
|
2825 |
|
2826 </ul> |
|
2827 </p> |
|
2828 <p>1998-07-31 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2829 <ul> |
|
2830 |
|
2831 <li>cgi/listvdomain.cc: Started this CGI program to list the users |
|
2832 in a virtualdomain, using the new "listdomain" server function. |
|
2833 |
|
2834 <li>lib/server.h (class server_call): Added a routine 'socket' to |
|
2835 return the open socket. |
|
2836 |
|
2837 <li>lib/server.cc (call): Modified to record the file descriptor for |
|
2838 the connection and to close it when the server_call is destructed. |
|
2839 |
|
2840 </ul> |
|
2841 </p> |
|
2842 <p>1998-07-26 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2843 <ul> |
|
2844 |
|
2845 <li>daemon/dispatch.cc (dispatch_cmd): In the case of a forked |
|
2846 dispatch, move the output to fd #2 (usually stderr), to give it a |
|
2847 constant location. |
|
2848 |
|
2849 <li>lib/response.h (struct response): Added the 'maxsize' constant |
|
2850 representing the maximum size of any one transmitted message. |
|
2851 |
|
2852 <li>daemon/listdomain.cc (CMD(listdomain)): Completed implementation |
|
2853 of this command. |
|
2854 |
|
2855 <li>daemon/lookup.cc: Moved the functions is_local and find_virtual |
|
2856 into this file from dispatch.cc. |
|
2857 |
|
2858 </ul> |
|
2859 </p> |
|
2860 <p>1998-07-21 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2861 <ul> |
|
2862 |
|
2863 <li>daemon/listdomain.cc (CMD(listdomain)): Started building this |
|
2864 routine to list the users in a virtual domain. |
|
2865 |
|
2866 </ul> |
|
2867 </p> |
|
2868 <p>1998-07-20 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2869 <ul> |
|
2870 |
|
2871 <li>daemon/main.cc (parse_options): Added support for a "verbose" |
|
2872 flag. |
|
2873 |
|
2874 <li>daemon/fork.cc (do_fork): Wrote this new routine to fork a new |
|
2875 process and record its pid in a table (if slots are available in |
|
2876 the table). |
|
2877 (handle_children): Wrote this new routine to handle any children |
|
2878 that were forked and have exited. |
|
2879 |
|
2880 <li>daemon/main.cc (handle_connection): Added support for commands |
|
2881 that cause forked connections. |
|
2882 |
|
2883 <li>lib/configrc.h (class configuration ): Added new configuration |
|
2884 variable "max_fork" -- the maximum number of forked processes to |
|
2885 handle. |
|
2886 |
|
2887 <li>daemon/main.cc (handle_connection): Modified this routine to |
|
2888 simply close the socket fd and continue if the previous operation |
|
2889 forked (the other "half" of the fork will handle the output). |
|
2890 |
|
2891 <li>daemon/dispatch.cc (struct dispatch ): Added a field to this |
|
2892 structure to indicate that the operation needs to fork. |
|
2893 |
|
2894 </ul> |
|
2895 </p> |
|
2896 <p>1998-07-09 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2897 <ul> |
|
2898 |
|
2899 <li>Released version 0.80 |
|
2900 |
|
2901 <li>clients/checkvpw.cc (getdata): Fixed a longstanding error in |
|
2902 setting the password/stamp fields. Fortunately, this error had no |
|
2903 impact at all on the data we use, but would have been immediately |
|
2904 visible if we were to try to use the timestamp. |
|
2905 |
|
2906 <li>daemon/lookup.cc (lookup_virtuser): Added code to look up a |
|
2907 default user if the lookup of a named user fails. |
|
2908 |
|
2909 <li>lib/configrc.h (class configuration ): Added a new configuration |
|
2910 variable "default_username". |
|
2911 |
|
2912 <li>clients/vdeliver.cc (build_command): Fixed a bug that would |
|
2913 cause an infinite loop when delivering to multiple destinations. |
|
2914 (build_command): Moved the appending of the hostname from enqueue |
|
2915 into here, to allow it to be added on each recipient. |
|
2916 |
|
2917 </ul> |
|
2918 </p> |
|
2919 <p>1998-06-17 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2920 <ul> |
|
2921 |
|
2922 <li>doc/vrehash.pod: Started man page for vrehash. |
|
2923 |
|
2924 <li>commands/vrehash.cc: Wrote this program to move all users |
|
2925 directories around into the proper hashed directory (see the man |
|
2926 page). |
|
2927 |
|
2928 <li>commands/vpasswds.cc (change_one): Fixed incorrect status |
|
2929 message (was "vpasswd:" should be "vpasswds:"). |
|
2930 |
|
2931 </ul> |
|
2932 </p> |
|
2933 <p>1998-06-15 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2934 <ul> |
|
2935 |
|
2936 <li>lib/maildir.cc (make_maildir): Modified this routine to make all |
|
2937 the directories leading up to the named directory. |
|
2938 |
|
2939 <li>lib/configrc.h (class configuration ): Added the fields |
|
2940 user_dir_bits and user_dir_slices to support userdir. |
|
2941 |
|
2942 <li>lib/vuser_add.cc (vuser_add): Modified an error message to make |
|
2943 it more informative. |
|
2944 |
|
2945 <li>daemon/pwentry.cc (user_dir_abs): Modified to use userdir. |
|
2946 (user_dir_rel): Modified to use userdir. |
|
2947 |
|
2948 <li>lib/vuser_add.cc (vuser_adduser): Modified to use userdir. |
|
2949 |
|
2950 <li>lib/userdir.cc (userdir): Wrote this routine, which produces a |
|
2951 relative user directory name, including a hashed-out path and |
|
2952 subdirectories, from a username. |
|
2953 |
|
2954 </ul> |
|
2955 </p> |
|
2956 <p>1998-06-12 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2957 <ul> |
|
2958 |
|
2959 <li>clients/checkvpw.cc (main): Added a test to check if the user's |
|
2960 maildir exists and, if not, set the maildir to the configured |
|
2961 "error_maildir" string. |
|
2962 |
|
2963 <li>daemon/main.cc (handle_intr): Fixed shutdown logic to handle |
|
2964 both cases: interrupted while handing a connection, or while |
|
2965 waiting for a connection. |
|
2966 |
|
2967 <li>lib/configrc.h (class configuration ): Added new configuration |
|
2968 variable "error_maildir", which is a read-only maildir that |
|
2969 contains an error mail message. |
|
2970 |
|
2971 </ul> |
|
2972 </p> |
|
2973 <p>1998-06-11 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2974 <ul> |
|
2975 |
|
2976 <li>lib/configrc.cc (configuration): Commented out the code to read |
|
2977 a local configuration file. |
|
2978 |
|
2979 <li>lib/configrc.h: Moved the DEFAULT_* definitions out of here and |
|
2980 into configrc.cc again. |
|
2981 |
|
2982 <li>Backed out all the vdomain and configuration patches, in order |
|
2983 to fix all the confusion I had been generating. |
|
2984 |
|
2985 <li>daemon/main.cc (main): Changed the "interrupt" logic to exit |
|
2986 after the current request instead of potentially exiting during |
|
2987 the request (and leaving files in a indeterminate state). |
|
2988 |
|
2989 </ul> |
|
2990 </p> |
|
2991 <p>1998-06-09 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
2992 <ul> |
|
2993 |
|
2994 <li>daemon/vdomain.h (struct vdomain): Added a "config" item to this |
|
2995 class. |
|
2996 |
|
2997 </ul> |
|
2998 </p> |
|
2999 <p>1998-06-07 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3000 <ul> |
|
3001 |
|
3002 <li>daemon/state.h (class saved_state): Added code to effectively |
|
3003 push/pop a local configuration when entering a saved_state. |
|
3004 |
|
3005 <li>*/*.cc: Changed the use of the "config" variable to account for |
|
3006 it being a pointer. |
|
3007 |
|
3008 <li>commands/*.cc: Added the line "config = local_config();" to the |
|
3009 main routine before anything else is executed. |
|
3010 |
|
3011 <li>lib/configrc.cc (local_config): Added this routine to create a |
|
3012 local configuration based on the given home directory. |
|
3013 |
|
3014 <li>lib/configrc.h: Moved the DEFAULT_* definitions out of here and |
|
3015 into configrc.cc (the only place they are referenced). |
|
3016 Modified the constructors to support "stacking" of configurations. |
|
3017 Made the global "config" variable into a pointer to allow it to |
|
3018 change. |
|
3019 |
|
3020 <li>daemon/vdomain.h (struct vdomain): Wrote this new structure to |
|
3021 encapsulate a virtual domain. These domains are stored in a hash |
|
3022 table "vdomains", indexed by base directory. |
|
3023 |
|
3024 <li>daemon/chpass.cc, daemon/lookup.cc: Adjusted to use the new |
|
3025 vdomains global. |
|
3026 |
|
3027 <li>daemon/pwentry.h (struct pwentry): Removed the vpwentry_cache |
|
3028 from this structure. This will eliminate the expensive lookups at |
|
3029 startup (the file "passwd" is looked up for each real user) and a |
|
3030 significant amount of memory overhead. |
|
3031 |
|
3032 </ul> |
|
3033 </p> |
|
3034 <p>1998-06-05 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3035 <ul> |
|
3036 |
|
3037 <li>Released version 0.79 |
|
3038 |
|
3039 </ul> |
|
3040 </p> |
|
3041 <p>1998-06-01 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3042 <ul> |
|
3043 |
|
3044 <li>lib/passwdfn.cc: Got rid of __GLIBC__ ifdef for crypt.h |
|
3045 |
|
3046 <li>lib/pwcrypt.cc: Got rid of __GLIBC__ ifdef for crypt.h |
|
3047 |
|
3048 </ul> |
|
3049 </p> |
|
3050 <p>1998-05-31 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3051 <ul> |
|
3052 |
|
3053 <li>lib/configrc.h: Removed the comment regarding DO_SHADOW. |
|
3054 |
|
3055 <li>daemon/pwentry_cache.cc: Modified the reader to make only a |
|
3056 single pass through the password and shadow password files. |
|
3057 |
|
3058 <li>lib/configrc.h: Renamed lib/config.h to this to avoid name |
|
3059 conflicts with the autoconf/configure-generated config.h. |
|
3060 |
|
3061 <li>various: Fixups mandated by the use of autoconf. |
|
3062 |
|
3063 </ul> |
|
3064 </p> |
|
3065 <p>1998-05-29 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3066 <ul> |
|
3067 |
|
3068 <li>daemon/dispatch.cc: Made the "echo" daemon command conditionally |
|
3069 compiled if TEST_DAEMON is defined. |
|
3070 |
|
3071 <li>daemon/vpwentry_cache.cc: Added code to log when the virtual |
|
3072 password caches are loaded/reloaded. |
|
3073 |
|
3074 <li>daemon/pwentry_cache.cc: Added code to log when the password |
|
3075 cache is loaded/reloaded. |
|
3076 |
|
3077 <li>commands/vsetup.cc (setup_passwd): Modified to use the new |
|
3078 postmaster config variables. |
|
3079 |
|
3080 <li>lib/config.cc (read_config): Changed the "postmaster" |
|
3081 configuration variable into "postmaster_email" and added |
|
3082 "postmaster_aliases". |
|
3083 |
|
3084 </ul> |
|
3085 </p> |
|
3086 <p>1998-05-27 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3087 <ul> |
|
3088 |
|
3089 <li>Released version 0.78 |
|
3090 |
|
3091 <li>lib/vpwentry_putpw.cc (putpw): Fixed logic to deal with an |
|
3092 existant but non-readable original password file. |
|
3093 |
|
3094 <li>lib/vuser_add.cc (vuser_add): Changed the order of creating the |
|
3095 maildir and adding the user to the passwd file. This allows the |
|
3096 maildir to be erased if adding the user fails, since the newly |
|
3097 created maildir is guaranteed to be empty. |
|
3098 |
|
3099 <li>lib/maildir.cc (make_maildir): Modified the code to remove any |
|
3100 newly-created directories if creation of any directory fails. |
|
3101 |
|
3102 <li>lib/passwdfn.cc (getpasswd_stdin): Changed use of "gets" to |
|
3103 "cin.get". |
|
3104 |
|
3105 </ul> |
|
3106 </p> |
|
3107 <p>1998-05-26 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3108 <ul> |
|
3109 |
|
3110 <li>commands/vpasswd.cc (main): Changed the "fprintf" to use |
|
3111 IOStreams. |
|
3112 |
|
3113 <li>lib/passwdfn.cc (getpasswd_*): Print a warning if the password |
|
3114 is longer than 8 characters. |
|
3115 |
|
3116 <li>commands/vpasswds.cc: Wrote this new program to change the |
|
3117 passwords of a list of users. The input for this list is taken |
|
3118 from standard input and is of the form "name password". Anything |
|
3119 following the password is ignored. |
|
3120 |
|
3121 <li>lib/config.cc: Added a new configuration item: postmaster. |
|
3122 |
|
3123 <li>commands/vadduser.cc (main): Removed the call to setup. |
|
3124 |
|
3125 <li>commands/vaddusers.cc (main): Removed the call to setup. |
|
3126 |
|
3127 <li>commands/vsetup.cc: Wrote this program to set up a new virtual |
|
3128 domain with the proper ".qmail-default" file and a users |
|
3129 directory, along with some useful system aliases. |
|
3130 |
|
3131 <li>daemon/vpwentry_cache.cc (write): Use "rename" system call. |
|
3132 |
|
3133 <li>lib/vpwentry_putpw.cc (putpw): Use "rename" sytem call. |
|
3134 |
|
3135 <li>lib/vpwentry_delpw.cc (delpw): Use "rename" system call instead |
|
3136 of "unlink/link/unlink" combination to guarantee atomicity of the |
|
3137 operation. |
|
3138 |
|
3139 <li>commands/_setup.cc (setup): Moved this routine out of |
|
3140 vadduser.cc so that it could be shared with vaddusers.cc. It |
|
3141 should probably go into the shared library under a different |
|
3142 name. |
|
3143 |
|
3144 <li>commands/vaddusers.cc: Wrote this new program that adds a list |
|
3145 of users. The input for this list is taken from standard input |
|
3146 and is of the form "name password [alias ...]". |
|
3147 |
|
3148 <li>lib/vpwentry_putpw.cc (putpw): Fixed a bug in the logic that |
|
3149 prevented the temporary password file from being renamed to a |
|
3150 non-existant original file. |
|
3151 |
|
3152 </ul> |
|
3153 </p> |
|
3154 <p>1998-05-25 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3155 <ul> |
|
3156 |
|
3157 <li>Released version 0.77 |
|
3158 |
|
3159 <li>lib/vpwentry_putpw.cc (putpw): Fixed bug that would cause a |
|
3160 failed addition to leave behind a temporary file as well as merged |
|
3161 the case if the file does not already exist. |
|
3162 |
|
3163 </ul> |
|
3164 </p> |
|
3165 <p>1998-05-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3166 <ul> |
|
3167 |
|
3168 <li>daemon/pwentry_cache.cc: Fixed this code to deal with shadow |
|
3169 passwords. Thanks to Andrew Gillespie for the initial patch to |
|
3170 show the problems. The new code properly deals with caching both |
|
3171 the contents of /etc/shadow and /etc/passwd, as well as handling |
|
3172 the case where shadow passwords don't exist. |
|
3173 |
|
3174 </ul> |
|
3175 </p> |
|
3176 <p>1998-05-22 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3177 <ul> |
|
3178 |
|
3179 <li>Released version 0.76 |
|
3180 |
|
3181 <li>daemon/file_cache.h (write_file): Call force_valid to avoid |
|
3182 having to re-read the cached table immediately after having |
|
3183 written its contents. Do this _before_ unlocking the directory to |
|
3184 avoid a race condition. |
|
3185 |
|
3186 <li>daemon/file_cache.cc (force_valid): Added this routine to force |
|
3187 the cache state to indicate that the file is valid (if the file is |
|
3188 present). |
|
3189 |
|
3190 </ul> |
|
3191 </p> |
|
3192 <p>1998-05-15 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3193 <ul> |
|
3194 |
|
3195 <li>daemon/dispatch.cc (find_virtual): Fixed bug preventing use of |
|
3196 wildcards in virtualdomains. |
|
3197 |
|
3198 </ul> |
|
3199 </p> |
|
3200 <p>1998-05-13 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3201 <ul> |
|
3202 |
|
3203 <li>daemon/vpwentry_cache.cc (write): Set the new file mode to 0600. |
|
3204 |
|
3205 <li>lib/vpwentry_putpw.cc (putpw): Set the new file mode to 0600, |
|
3206 not 0700 (no execute bit). |
|
3207 |
|
3208 </ul> |
|
3209 </p> |
|
3210 <p>1998-05-12 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3211 <ul> |
|
3212 |
|
3213 <li>daemon/vpwentry_cache.cc (operator): Modified code to delete |
|
3214 entries that fail insertion into the table (ie duplicates). |
|
3215 |
|
3216 <li>daemon/chpass.cc (CMD): Removed the calls to begin/end_modify. |
|
3217 |
|
3218 <li>daemon/file_cache.h (file_cache_writer::write_file): Removed the |
|
3219 begin/end_modify routines and bundled them into this routine. |
|
3220 |
|
3221 </ul> |
|
3222 </p> |
|
3223 <p>1998-05-11 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3224 <ul> |
|
3225 |
|
3226 <li>daemon/vpwentry_cache.cc (unlock): Fixed bug in unlocking the |
|
3227 directory. |
|
3228 |
|
3229 <li>daemon/chpass.cc (CMD): Modified to use the file cache to modify |
|
3230 the password table instead of the vuser_chpass routine. |
|
3231 |
|
3232 </ul> |
|
3233 </p> |
|
3234 <p>1998-05-08 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3235 <ul> |
|
3236 |
|
3237 <li>Released version 0.75 |
|
3238 |
|
3239 <li>daemon/main.cc (TIMEOUT): Changed the connection timeout to one |
|
3240 second, as values larger than that are useful only for debugging |
|
3241 the connection handling code. |
|
3242 |
|
3243 <li>lib/vpwentry_putpw.cc (putpw): Modified to use '\n' instead of |
|
3244 the endl operator to mark line ends. |
|
3245 |
|
3246 <li>lib/vpwentry_delpw.cc (delpw): Modified to use '\n' instead of |
|
3247 the endl operator to mark line ends (allows the output stream to |
|
3248 properly buffer writes). |
|
3249 |
|
3250 </ul> |
|
3251 </p> |
|
3252 <p>1998-05-07 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3253 <ul> |
|
3254 |
|
3255 <li>clients/checkvpw.cc, clients/vdeliver.cc: Moved these to files |
|
3256 from "commands" to the "clients" subdirectory |
|
3257 |
|
3258 <li>daemon/pwentry_cache.cc (operator): Convert the user names to |
|
3259 lowercase before inserting. |
|
3260 |
|
3261 <li>daemon/vpwentry_cache.cc (operator): Fixed bug: make the |
|
3262 virtual users' names lowercase before inserting into the table. |
|
3263 |
|
3264 <li>daemon/check.cc (CMD): Fixed bug: initialize virtpw pointer. |
|
3265 |
|
3266 <li>daemon/lookup.cc (lookup_maildir): Removed obsolete routine. |
|
3267 (CMD): Fixed bug: must initialize the pointers that previously |
|
3268 used autodelete. |
|
3269 |
|
3270 <li>daemon/vpwentry_cache.cc (operator): Fixed a bug that caused the |
|
3271 password and destination strings to be both stored in the password |
|
3272 field. |
|
3273 |
|
3274 <li>daemon/file_cache.cc (validate_cache): Check both the last |
|
3275 modification time on the file and the inode number to determine if |
|
3276 the file has changed. |
|
3277 |
|
3278 <li>daemon/*.cc: Changed all variables of type "autodelete<vpwentry>" |
|
3279 back to type "vpwentry*". |
|
3280 |
|
3281 <li>daemon/pwentry.cc: Removed the "getpw_byname" routine, now |
|
3282 obsoleted by the pwentry_cache. |
|
3283 |
|
3284 <li>daemon/lookup.cc (lookup_virtuser): Modified to handle the new |
|
3285 vpwtable cache in the pwentry. |
|
3286 |
|
3287 <li>daemon/pwentry.cc (pwentry): Initialize the vpwtable on |
|
3288 creation. |
|
3289 |
|
3290 <li>daemon/pwentry.h (struct pwentry): Added a vpwentry_cache to |
|
3291 this object. |
|
3292 |
|
3293 <li>daemon/vpwentry_cache.cc (write): Changed the end-of-line marker |
|
3294 from endl to "\n", as endl will cause the buffer to be flushed. |
|
3295 |
|
3296 <li>daemon/main.cc (read_data): Removed support for protocol one |
|
3297 requests (which allows me to remove one more read syscall from the |
|
3298 fast path, shrinking it down to a total of two reads). |
|
3299 |
|
3300 </ul> |
|
3301 </p> |
|
3302 <p>1998-05-06 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3303 <ul> |
|
3304 |
|
3305 <li>daemon/main.cc (read_data): Modified to read messages using |
|
3306 either protocol one or two. |
|
3307 |
|
3308 <li>lib/server.cc (build_msg): Modified to build messages using |
|
3309 protocol 2. |
|
3310 |
|
3311 <li>daemon/qmail.*: Removed these obsolete source files. |
|
3312 |
|
3313 <li>daemon/dispatch.cc (find_virtual): Wrote this routine that |
|
3314 mimics the old behavior of find_virtual from qmail.cc to find a |
|
3315 mapping from a virtual domain name to a prefix, using a map_cache |
|
3316 on control/virtualdomains. |
|
3317 |
|
3318 <li>daemon/file_cache.h (class file_cache): Modified the behavior to |
|
3319 automatically load the cache on construction, instead of waiting. |
|
3320 |
|
3321 <li>daemon/map_cache.h: Wrote the classes for map_cache, a generic |
|
3322 qmail-style map-file cache (the key and value pair is separated by |
|
3323 a colon, one per line). |
|
3324 |
|
3325 <li>daemon/list_cache.h: Renamed locals_cache to list_cache, as a |
|
3326 generic list-file cache class. |
|
3327 |
|
3328 <li>daemon/dispatch.cc (is_local): Fixed to check the cached result. |
|
3329 |
|
3330 <li>daemon/file_cache.cc: Moved the actual code for file_cache_base |
|
3331 here. |
|
3332 |
|
3333 <li>daemon/file_cache.h (class file_cache_base): Created this class |
|
3334 to contain the common code in the file_cache template. |
|
3335 |
|
3336 <li>daemon/lookup.cc (lookup_baseuser): fixed the lookup to only |
|
3337 read the cached "pwentries" object once per invocation, and to |
|
3338 check the result. |
|
3339 |
|
3340 <li>daemon/qmail.cc (is_local): Removed this routine, as its |
|
3341 functionality can be duplicated with a locals cache. |
|
3342 |
|
3343 <li>daemon/locals_cache.cc: Wrote this object to cache the "locals" |
|
3344 table used by qmail to determine what domains are "local". |
|
3345 |
|
3346 <li>daemon/qmail.cc: Moved this object here from lib. |
|
3347 |
|
3348 <li>daemon/*.cc: Changed all variables of type "autodelete<pwentry>" |
|
3349 back to type "pwentry*", as the lookup functions that would set |
|
3350 these variables now return non-deletable references. |
|
3351 |
|
3352 <li>daemon/lookup.cc: Modified the various lookup routines that look |
|
3353 up base users to use the pwentries cache. |
|
3354 |
|
3355 <li>daemon/file_cache.h: |
|
3356 <li>daemon/hash_table.h: |
|
3357 <li>daemon/crc32.h: |
|
3358 <li>daemon/crc32.cc: |
|
3359 <li>daemon/crc_hash.h: |
|
3360 <li>daemon/pwentry_cache.cc: |
|
3361 <li>daemon/pwentry_cache.h: |
|
3362 <li>daemon/vpwentry_cache.cc: |
|
3363 <li>daemon/vpwentry_cache.h: Merged from temporary development |
|
3364 tree. Current functionality consists of a generic hash table, |
|
3365 mapping from mystring keys to generic objects; a file cache that |
|
3366 will automatically reload a cached object only when necessary; and |
|
3367 specific code for building caches of the base user password table |
|
3368 (pwentry_cache) and virtual password tables (vpwentry_cache). |
|
3369 |
|
3370 <li>lib/vpwentry_putpw.cc (putpw): Now opens the temporary file with |
|
3371 "noreplace" to avoid races, and mode 0700. |
|
3372 |
|
3373 <li>lib/vpwentry_delpw.cc (delpw): Now opens the temporary file with |
|
3374 "noreplace" to avoid races, and mode 0700. |
|
3375 |
|
3376 </ul> |
|
3377 </p> |
|
3378 <p>1998-05-04 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3379 <ul> |
|
3380 |
|
3381 <li>daemon/pwentry.*: Moved these files here from lib, as no other |
|
3382 module uses them. |
|
3383 |
|
3384 <li>lib/pwentry.cc (getpw_byname): Moved this function here from |
|
3385 pwentry_getpw.cc. |
|
3386 |
|
3387 <li>lib/vpwentry_delpw.cc: Renamed this file from pwentry_delpw.cc |
|
3388 |
|
3389 <li>lib/vpwentry_putpw.cc: Renamed this file from pwentry_putpw.cc |
|
3390 |
|
3391 <li>lib/vpwentry_getpw.cc: Added the getpw_byname function from |
|
3392 pwentry_getpw.cc. |
|
3393 |
|
3394 <li>lib/pwentry_getpw.cc: Removed the vpwentry function. |
|
3395 |
|
3396 </ul> |
|
3397 </p> |
|
3398 <p>1998-05-03 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3399 <ul> |
|
3400 |
|
3401 <li>lib/vuser.h: Only include "vpwentry.h", not "pwentry.h" |
|
3402 |
|
3403 <li>lib/vpwentry.cc: Moved the vpwentry constructors and destructors |
|
3404 here. |
|
3405 |
|
3406 <li>lib/pwentry.cc: Removed the vpwentry portions. |
|
3407 |
|
3408 <li>lib/pwentry.h: Removed the portions that only deal with |
|
3409 vpwentry's. |
|
3410 |
|
3411 <li>lib/vpwentry.h: Split the portions of pwentry.h that only deal |
|
3412 with vpwentry's into this file. |
|
3413 |
|
3414 <li>spec: Forgot to add a call to "ldconfig" in %post. |
|
3415 |
|
3416 </ul> |
|
3417 </p> |
|
3418 <p>1998-04-24 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3419 <ul> |
|
3420 |
|
3421 <li>Released version 0.74. |
|
3422 |
|
3423 </ul> |
|
3424 </p> |
|
3425 <p>1998-04-23 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3426 <ul> |
|
3427 |
|
3428 <li>daemon/chpass.cc (CMD): modified to use save_state. |
|
3429 |
|
3430 <li>daemon/deluser.cc (CMD): modified to use save_state. |
|
3431 |
|
3432 <li>daemon/delalias.cc (CMD): modified to use save_state. |
|
3433 |
|
3434 <li>daemon/addalias.cc (CMD): modified to use save_state and |
|
3435 lookup_and_validate. |
|
3436 |
|
3437 <li>daemon/adduser.cc (CMD): Modified to use save_state. |
|
3438 |
|
3439 <li>daemon/state.h (class saved_state): Created this class from |
|
3440 saved_uidgid -- it also does a chdir to the user's home |
|
3441 directory. By doing so, it allows the use of relative paths as if |
|
3442 operating as the given user. |
|
3443 |
|
3444 <li>daemon/lookup.cc (lookup_and_validate): Modified to optionally |
|
3445 create a new vpwentry if the named virtual shouldn't and doesn't |
|
3446 exist yet. |
|
3447 |
|
3448 <li>daemon/adduser.cc (CMD): Modified to use lookup_and_validate and |
|
3449 pwentry::user_dir_rel. |
|
3450 |
|
3451 <li>lib/pwentry.cc (user_dir_rel, user_dir_abs): Created these two |
|
3452 routines that return the relative (to home) and absolute directory |
|
3453 name of a new virtual user's directory according to the configured |
|
3454 user_dir parameter. |
|
3455 |
|
3456 <li>commands/checkvpw.cc: Added function declarations missing on |
|
3457 Solaris. |
|
3458 |
|
3459 <li>commands/vdeliver.cc: Added function declarations missing on |
|
3460 Solaris. |
|
3461 |
|
3462 <li>lib/cgi-base.cc: Added function declarations missing on Solaris. |
|
3463 |
|
3464 <li>commands/vpasswd.cc: Added function declarations missing on |
|
3465 Solaris. |
|
3466 |
|
3467 <li>commands/vadduser.cc: Added function declarations missing on |
|
3468 Solaris. |
|
3469 |
|
3470 <li>lib/pwcrypt.cc: Added function declarations missing on Solaris. |
|
3471 |
|
3472 <li>daemon/dispatch.cc (dispatch_cmd): Add the domain name to the |
|
3473 error message for an invalid domain name, as the request won't |
|
3474 have been printed by the time this happens. |
|
3475 |
|
3476 </ul> |
|
3477 </p> |
|
3478 <p>1998-04-21 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3479 <ul> |
|
3480 |
|
3481 <li>commands/vadduser.cc (add_alias): Fixed bug: this routine |
|
3482 previously looked up the user name instead of the alias when |
|
3483 checking for the existance of the alias. |
|
3484 |
|
3485 <li>lib/validate.cc (validate_field): Fixed bug: find_first returns |
|
3486 -1 if nothing is found, not zero. |
|
3487 |
|
3488 <li>commands/vadduser.cc (add_alias): No longer necessary to add the |
|
3489 '&' prefix. |
|
3490 |
|
3491 <li>commands/vaddalias.cc (main): No longer neccessary to add the |
|
3492 '&' prefix. |
|
3493 |
|
3494 <li>lib/vuser_add.cc (vuser_addalias): Automatically prepend a '&' |
|
3495 to the destination. |
|
3496 |
|
3497 <li>daemon/addalias.cc (CMD(addalias)): Call validate_redirect |
|
3498 before adding the alias. |
|
3499 |
|
3500 </ul> |
|
3501 </p> |
|
3502 <p>1998-04-17 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3503 <ul> |
|
3504 |
|
3505 <li>commands/vaddalias.cc (main): Removed the destination validation |
|
3506 code from this program and made it call validate_redirect. |
|
3507 |
|
3508 <li>lib/validate.cc (validate_redirect): Created this routine to |
|
3509 validate a redirect destination. |
|
3510 |
|
3511 </ul> |
|
3512 </p> |
|
3513 <p>1998-04-16 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3514 <ul> |
|
3515 |
|
3516 <li>lib/validate.cc (validate_username): Revised this to disallow |
|
3517 '/' in user names. |
|
3518 |
|
3519 <li>vmailmgr.conf.sample: Added notes regarding which component(s) |
|
3520 uses each of the listed settings. |
|
3521 |
|
3522 <li>lib/config.h: Removed the macro definitions that just served as |
|
3523 aliases for parts of the configuration class. |
|
3524 |
|
3525 </ul> |
|
3526 </p> |
|
3527 <p>1998-04-14 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3528 <ul> |
|
3529 |
|
3530 <li>daemon/lookup.cc: Removed the 'userlookup' routine. |
|
3531 |
|
3532 <li>lib/maildir.cc (make_maildir): Moved this routine here from |
|
3533 vuser_add. |
|
3534 (delete_maildir): Moved this routine here from vuser_deluser, |
|
3535 renamed from deltree. |
|
3536 |
|
3537 </ul> |
|
3538 </p> |
|
3539 <p>1998-04-13 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3540 <ul> |
|
3541 |
|
3542 <li>lib/vuser_add.cc (vuser_add): Use validate routines instead of |
|
3543 hard-coded checks. |
|
3544 (vuser_adduser): Renamed the simple vuser_add to vuser_adduser to |
|
3545 avoid confusion between the two vuser_add routines. |
|
3546 |
|
3547 <li>lib/validate.cc (validate_username): Wrote this routine to |
|
3548 ensure that a username is valid; returns true if so. |
|
3549 |
|
3550 <li>daemon/delalias.cc (CMD(delalias)): Switched from userlookup to |
|
3551 lookup_and_validate. |
|
3552 |
|
3553 <li>daemon/addalias.cc (CMD(addalias)): Switched from userlookup to |
|
3554 lookup_{baseuser,virtuser}. Removed check for invalid alias name |
|
3555 (already done by vuser_addalias). |
|
3556 |
|
3557 <li>daemon/deluser.cc (CMD(deluser)): Switched from userlookup to |
|
3558 lookup_and_validate. |
|
3559 |
|
3560 <li>daemon/adduser.cc (CMD(adduser)): Switched from userlookup to |
|
3561 lookup_{baseuser,virtuser}. Removed check for invalid user name |
|
3562 (already done by vuser_add). Removed duplicated code from |
|
3563 vuser_adduser. |
|
3564 |
|
3565 <li>daemon/check.cc (CMD(check)): Switched from userlookup to |
|
3566 lookup_{baseuser,virtuser}. |
|
3567 |
|
3568 <li>daemon/chpass.cc (CMD(chpass)): Switched from userlookup to |
|
3569 lookup_and_validate. |
|
3570 |
|
3571 <li>daemon/lookup.cc (lookup_and_validate): Wrote this routine, |
|
3572 which looks up base and virtual users and validates them, |
|
3573 replacing several lines of common code in many of the interfaces. |
|
3574 |
|
3575 <li>commands/checkvpw.cc (main): Use the separators configuration |
|
3576 item instead of just '@'. |
|
3577 |
|
3578 <li>lib/config.cc (read_config): Added a new configuration option, |
|
3579 "separators", which lists valid separators between the user name |
|
3580 and virtual domain name when logging in via checkvpw. Defaults to |
|
3581 "@:" |
|
3582 |
|
3583 <li>lib/mystring.cc (find_first): Added this routine, finds the |
|
3584 first character that matches any one in a set. |
|
3585 |
|
3586 <li>daemon/lookup.cc (userlookup): Split this function into its two |
|
3587 parts, lookup_baseuser and lookup_virtuser. |
|
3588 |
|
3589 </ul> |
|
3590 </p> |
|
3591 <p>1998-04-11 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3592 <ul> |
|
3593 |
|
3594 <li>commands/vaddalias.cc (main): Modified this code to handle (and |
|
3595 check) multiple recipients. |
|
3596 |
|
3597 <li>commands/vdeliver.cc (enqueue): Split this routine into three |
|
3598 parts, and added the functionality to deal with multiple |
|
3599 recipients in a destination address (separated by commas). |
|
3600 |
|
3601 </ul> |
|
3602 </p> |
|
3603 <p>1998-04-08 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3604 <ul> |
|
3605 |
|
3606 <li>commands/vdeliver.cc (enqueue): Changed the calls to setenv to |
|
3607 equivalent calls to putenv, as some system's don't have setenv. |
|
3608 |
|
3609 <li>commands/checkvpw.cc (set_environ): Changed the calls to setenv |
|
3610 to equivalent calls to putenv, as some system's don't have setenv. |
|
3611 |
|
3612 </ul> |
|
3613 </p> |
|
3614 <p>1998-04-05 Bruce Guenter <bguenter@hal.qcc.sk.ca> |
|
3615 <ul> |
|
3616 |
|
3617 <li>Released version 0.73 |
|
3618 |
|
3619 <li>commands/vdeliver.cc (main): Fixed bug with handling of ??LINE |
|
3620 environment variables (local variables had erroneously overridden |
|
3621 previously global variables). |
|
3622 |
|
3623 <li>vmailmgr-cgi.texi: Filled in the details for the form fields of |
|
3624 vpasswd. |
|
3625 |
|
3626 <li>cgi/*.cc: Remove the "CGI_INPUT" lines for "vdomain" and |
|
3627 "password", as they are defined by the top-level CGI constructor. |
|
3628 |
|
3629 <li>lib/cgi-base.cc (CGI): Add "vdomain" and "password" to the list |
|
3630 of fields that are automatically retrieved for all the CGIs, as |
|
3631 all CGIs will operate on a virtual domain, and all require a |
|
3632 password. |
|
3633 |
|
3634 </ul> |
|
3635 </p> |
|
3636 <p>1998-04-02 Bruce Guenter <bguenter@hal.qcc.sk.ca> |
|
3637 <ul> |
|
3638 |
|
3639 <li>vmailmgr-cgi.texi: Started writing documentation on how to |
|
3640 configure the CGI programs. |
|
3641 |
|
3642 </ul> |
|
3643 </p> |
|
3644 <p>1998-04-01 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3645 <ul> |
|
3646 |
|
3647 <li>HOWTO.texi: Started writing instructions on how to do certain |
|
3648 tasks with vmailmgr. |
|
3649 |
|
3650 </ul> |
|
3651 </p> |
|
3652 <p>1998-03-31 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3653 <ul> |
|
3654 |
|
3655 <li>lib/config.cc (read_config): Rewrote this routine to only go |
|
3656 through the file once (instead of once per variable), and to print |
|
3657 out errors on invalid lines. |
|
3658 |
|
3659 </ul> |
|
3660 </p> |
|
3661 <p>1998-03-29 Bruce Guenter <bguenter@hal.qcc.sk.ca> |
|
3662 <ul> |
|
3663 |
|
3664 <li>various: Use pwentry::pwfile and pwentry::user_dir in place of |
|
3665 computing their values repeatedly. |
|
3666 |
|
3667 <li>lib/pwentry.cc (pwentry::pwfile): Wrote this routine, returns |
|
3668 the password file name for the given base user. |
|
3669 (pwentry::user_dir): Returns the user directory for the given base |
|
3670 user. |
|
3671 |
|
3672 <li>lib/config.cc (post_process): Wrote this routine to "tidy up" |
|
3673 some of the configuration strings, such as directories that should |
|
3674 always have a trailing slash ('/'). |
|
3675 |
|
3676 <li>lib/config.h: Change all the defined configuration macros |
|
3677 (except for DO_SHADOW) to their configuration variables. |
|
3678 |
|
3679 <li>various: Treat the configuration defines as variables instead of |
|
3680 as constant strings. |
|
3681 |
|
3682 <li>lib/config.cc (configuration): Initialize all the strings to |
|
3683 default values. |
|
3684 |
|
3685 </ul> |
|
3686 </p> |
|
3687 <p>1998-03-28 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3688 <ul> |
|
3689 |
|
3690 <li>lib/config.cc: Started this module, which can read a |
|
3691 configuration file for default values at runtime. The default |
|
3692 configuration initialization will read both a global configuration |
|
3693 file and a local one. |
|
3694 |
|
3695 </ul> |
|
3696 </p> |
|
3697 <p>1998-03-26 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3698 <ul> |
|
3699 |
|
3700 <li>Released version 0.72 |
|
3701 |
|
3702 <li>commands/vdeliver.cc (main): Fixed the bug that caused empty |
|
3703 environment variables (valid) to be treated as non-existant |
|
3704 environment variables. This caused bounces to vdeliver to double |
|
3705 bounce. |
|
3706 |
|
3707 <li>Released version 0.71 |
|
3708 |
|
3709 </ul> |
|
3710 </p> |
|
3711 <p>1998-03-22 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3712 <ul> |
|
3713 |
|
3714 <li>cgi/*.cc: Use "msg", not "message()" from the response as the |
|
3715 error response message. |
|
3716 |
|
3717 <li>lib/cgi-args.cc (get_parts): Strings weren't being terminated |
|
3718 properly before being set. Fixed. |
|
3719 |
|
3720 </ul> |
|
3721 </p> |
|
3722 <p>1998-03-20 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3723 <ul> |
|
3724 |
|
3725 <li>daemon/dispatch.cc: Added entries for deluser, delalias, and |
|
3726 addalias. |
|
3727 |
|
3728 <li>daemon/delalias.cc (CMD(delalias)): Wrote this routine to delete |
|
3729 an alias. |
|
3730 |
|
3731 <li>daemon/addalias.cc (CMD(addalias)): Wrote this routine to add an |
|
3732 alias. |
|
3733 |
|
3734 <li>cgi: Merged in all the code and libraries for CGI programs into |
|
3735 the standard build. At this point, there is a basic framework |
|
3736 that all CGI programs will use, which includes a mechanism that |
|
3737 automatically pulls the inputs from a POST form, and a base class |
|
3738 that is executed on startup. The CGI module defines the routine |
|
3739 CGI_MAIN, which is executed by the program startup code. The CGI |
|
3740 module should call either error() or success() at the end of its |
|
3741 execution, which will handle printing out an appropriate message. |
|
3742 All of the v* programs (vpasswd, vadduser, vdeluser, vaddalias, |
|
3743 and vdelalias) have a CGI equivalent. |
|
3744 |
|
3745 <li>daemon/deluser.cc (CMD(deluser)): Wrote this routine to delete a |
|
3746 user. |
|
3747 |
|
3748 </ul> |
|
3749 </p> |
|
3750 <p>1998-03-19 Bruce Guenter <bguenter@mikhail.qcc.sk.ca> |
|
3751 <ul> |
|
3752 |
|
3753 <li>lib/server.cc: include un.h |
|
3754 |
|
3755 <li>daemon/main.cc: include un.h |
|
3756 |
|
3757 <li>lib/un.h: Wrote this header to define SUN_LEN and to include |
|
3758 necessary things for doing sockets. |
|
3759 |
|
3760 <li>daemon/main.cc (make_socket): Split the code to create a socket |
|
3761 into this routine; fixed the permissions bug that caused the |
|
3762 socket to be created without other-write permission when launched |
|
3763 with a non-zero umask. |
|
3764 |
|
3765 <li>Released version 0.70 |
|
3766 |
|
3767 </ul> |
|
3768 </p> |