2 |
- |
1 |
still work to be done!
|
|
|
2 |
but the worst maintainability problems are fixed.
|
|
|
3 |
|
|
|
4 |
work still to be done (not exhaustive):
|
|
|
5 |
use dial(2) routines instead of manual diddling
|
|
|
6 |
use factotum and auth_* routines
|
|
|
7 |
|
|
|
8 |
fixed bugs
|
|
|
9 |
systemic bugs like overflow at both ends in
|
|
|
10 |
n = read(n, buf, sizeof buf);
|
|
|
11 |
buf[n] = 0;
|
|
|
12 |
fixed unchecked malloc calls
|
|
|
13 |
replaced many magic numbers with named constants
|
|
|
14 |
see magic.out for remainder
|
|
|
15 |
duplicated code broken out into functions
|
|
|
16 |
see dup.* for remaining offenders
|
|
|
17 |
use readio & writeio throughout
|
|
|
18 |
big functions broken up
|
|
|
19 |
see long.funcs for remaining offenders
|
|
|
20 |
converted to plan 9 style
|
|
|
21 |
*File -> Q* per all other file servers
|
|
|
22 |
very long lines wrapped for finite-width devices
|
|
|
23 |
use syslog in daemons
|
|
|
24 |
added /net/ssh/*/tcp containing number of the underlying tcp connection
|
|
|
25 |
originally for sshswitch, see _coexistence-is-futile
|
|
|
26 |
edited manual page for clarity and brevity, split in two
|
|
|
27 |
worked out problems with normal usage cases, fixed or documented them
|