aboutsummaryrefslogtreecommitdiff
path: root/TODO
blob: 07fb5559678c6337a2e4431625539da1eef0fb41 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# -*- text -*-

Make a tasks file that people can pick jobs off of.

take a look at am_compat.h and fix everything there...

fix all $Id bla bla bla $ on every file.
add my own copyright 1997 etc.

NOT NEEDED: convert DEBUG symbol to ENABLE_DEBUG
NOT NEEDED: convert DEBUG_MEM symbol to ENABLE_DEBUG_MEM

Use these two somewhere:
AC_DEFINE(AM_UTILS_NAME_PACKAGE, "am-utils")
AC_DEFINE(AM_UTILS_VERSION, "6.0a1)

check all "dnl XXX: in configure.in

check for: INLINE, Const->const, P_void, VOIDP

rename DEBUG_MTAB to DEBUG_MNTTAB
rename UPDATE_MTAB to MOUNT_TABLE_ON_FILE
rename HAS_NIS_MAPS to HAVE_MAP_NIS
rename HAS_TFS to HAVE_FS_TFS
rename SIG_HNDL_TYP to RETSIGTYPE

remove HOST_EXEC #define from everywhere.  add to am_ops.c a static flag
initialized_vops, which if not true, should set the host_ops vector field to
0 or host_umounted.  This way let the feature be turned on if -h option to
amd is given.

nuke all code that is ifdef'd SUNOS4_COMPAT

rename NEED_MNTOPT_PARSER to HAVE_HASMNTOPT and cleanup the code. also take
the supplied code in amd/mount_fs.c and include it as the library function
libamd/hasmntopt.c

TLI code needs to be fixed.

a way to include a site-specific configuration file IFF it exists from
directory local/<${target}.h>

replace #include WAIT with nothing (HAVE_SYS_WAIT_H?)

replace SYS5_SIGNALS with HAVE_SYS_WAIT_H (which is on only if it sys/wait.h
exists and is using the newer "int" for type, not "union wait".  The macro
AC_HEADER_SYS_WAIT turns on HAVE_SYS_WAIT_H iff wait*() functions are
posix.1 compliant.  Make sure you don't remove SYS5_SIGNALS ifdef's that are
not related to wait*() syscalls.

add username, hostname, and date at which time amd was compiled.

No more need for MOUNT_HELPER_SOURCE.

any code which is included by NEED_UMOUNT_FS, should be on iff
MOUNT_TABLE_ON_FILE is on.

replace NFS_FH_FIELD with references fo ".fh" in calls to
NFS_FH_DREF(src, dst) macro

For *EVERY* M4 Macro with case/esac, check that the $host_os case entries
are correct.

I'm not using amd's regexp code.  Instead, use generic system code.  If the
system has posix style regexp functions, then change amd/map.c to use
correct new prototype.

use HAVE_SVC_GETREQSET instead of RPC_4.

replace all "jsp" in *.[hc] $Id: TODO,v 1.1.1.1 1998/11/05 02:04:19 ezk Exp $ with ezk.

use MNTTAB_FILE_NAME instead of MOUNTED

use MOUNT_TABLE_ON_FILE instead of READ_MTAB_FROM_FILE

no more HAS_EMPTY_AUTOMOUNTS, which was used if a df(1) divide by zero bug
was invoked.  Instead, change nfs_statfs() code to always return non-zero
values.  Then nuke HAS_EMPTY_AUTOMOUNTS.

REGEXP: use whatever regular expressionlibrary you have on the system,
including regexp.h if available, and using regcomp/regexec.  Amd was written
with BSD regexps in mind, not Sys V, so if I use any of those, I have to
watch for correct usage.  Otherwise, I can include the older include/re.h
and amd/re.c.  Replace HAS_REGEXP with HAVE_REGEXEC.

The regex code in amd/mapc.c has changed a lot.  It probably has bugs.  Must
test and debug it!!!

# string name of filesystem in /etc/mnttab file
Use MNTTAB_TYPE_FOO instead of MTAB_TYPE_FOO.
# string name of mount option in /etc/mnttab file
Use MNTTAB_OPT_FOO instead of MNTOPT_FOO.
# string (or integer?) name of filesystem type in mount(2) syscall
Use MOUNT_TYPE_FOO instead of MNTTYPE_FOO or MOUNT_FOO.
# hex/number of FS mount option in nfs_args passed to mount(2) syscall
Use MNT2_NFS_OPT_FOO instead NFSMNT_FOO.
# hex/number of generic FS mount option directly  passed to mount(2) syscall
Use MNT2_GEN_OPT_FOO instead of MS_FOO or M_FOO.


update AMD_COMPAT to 6.0 in include/am_utils.h

convert all mem* functions b* functions (memset to bzero, etc.) or vice
verse.

put my name/copyright on every src file

change all struct mnttab/mntent to "mntent_t"

cleanup lib/resvport.c (TLI vs. Sockets).  TLI code is #defin'ed
HAVE_T_OPEN.
[
setting MTAB_LOCK_FILE (mtab_svr4.c) should be an amd run-time configuration
option.

change all UMOUNT_FS macros to umount_fs() fxn calls.

remove getnetbyaddr() from lib/getnetbyaddr.c and then link w/ -lsocket

take care of various (hlfsd et al) scripts in Makefile.am files.

rename HOSTNAMESZ to MAXHOSTNAMELEN

turn on all the NEW_TOPLVL_READDIR code (for "ls" to work in an amd point)

change all NEW_DEFAULTS to ENABLE_DEFAULT_SELECTOTS (which is now on by
default)

remove refereces to mnt_freq and mnt_passno in mntent_t since it's not in
use any more.

remove all the (lint?) comments /*ARGSUSED */

change HAS_FOOFS to HAVE_AM_FS_FOO (for example HAS_NFSX -> HAVE_AM_FS_FOO),
but change HAS_UNION_FS to HAVE_AM_FS_UNION.

some code uses #ifdef M_NEWTYPE to tell if mount(2)'s type field is "char *"
or int.  Use MTYPE_TYPE declaration instead (not ifdef macro!)

change DEBUG_MTAB to DEBUG_MNTTAB

deal with the changes in values of $os, $arch, and $osver!

replace SYS5_SIGNALS with REINSTATE_SIGNAL_HANDLER

figure out how to auto-conf HAS_HESIOD_RELOAD (amd/info_hesiod.c).  For now
I've used the macro HAVE_HS_ZONE_TRANSFER.




******************************************************************************
PERL SCRIPT TO FIX OLD AMD MAPS:
- fix '=' to ':='
- fix sos5 -> solaris2, etc.

******************************************************************************
USE AS IS:

- SVC_IN_ARG_TYPE (change from SVC_IN_ARGS_TYPE, with an 'S')
- NFS_FH_TYPE
- MTYPE_TYPE
- MOUNT_TYPE_* NO!!!

******************************************************************************
NEW FEATURES:

- autofs
- cachefs
- dbm/gdbm/db file maps
- add amd option -O (override) to override $os, $osver, $arch, $karch, etc.

******************************************************************************
DONE:

HAS_TFS is gone and all of it's code too.
major code cleanup, removed if 0 code and if notdef