ChangeLog revision 303975
12006-05-11 Erez Zadok <ezk@cs.sunysb.edu> 2 3 ******************************************************************* 4 *** Released am-utils-6.1.5 *** 5 ******************************************************************* 6 72006-05-10 Erez Zadok <ezk@cs.sunysb.edu> 8 9 * Minor new ports: i386-unknown-freebsd6.1 (RELEASE) 10 powerpc-apple-darwin8.6.0, and i386-unknown-openbsd3.9. 11 12 * libamu/mount_fs.c (compute_nfs_attrcache_flags): fix signedness 13 problems on IRIX-6.5. 14 15 * conf/autofs/autofs_solaris_v1.c (xdr_umntrequest): fix 16 signedness problems on IRIX-6.5. 17 182006-05-01 Erez Zadok <ezk@cs.sunysb.edu> 19 20 * configure.in: check if libc already includes dbm functionality 21 (as in FreeBSD 6), then don't bother to check specific libraries 22 such as libdbm, gdbm, etc. 23 242006-04-21 Erez Zadok <ezk@cs.sunysb.edu> 25 26 * configure.in: detect G/DBM support via gdbm_compat library 27 (Debian 3.1). 28 29 * minor new port: powerpc-apple-darwin8.5.0 30 312006-04-20 Erez Zadok <ezk@cs.sunysb.edu> 32 33 * scripts/amd.conf-sample, scripts/amd.conf.5, doc/am-utils.texi, 34 NEWS: document new nfs_allow_any_interface parameter. 35 36 * include/am_compat.h (INADDR_LOOPBACK): define INADDR_LOOPBACK if 37 not defined, since some systems don't have it. 38 392006-04-20 Nick Williams <Nick.Williams@morganstanley.com> 40 41 * libamu/wire.c (is_interface_local): new boolena function to 42 determine if address represents any of the local interfaces. 43 (getwire): more properly check if address equals INADDR_LOOPBACK, 44 not if IFF_LOOPBACK is not (the latter isn't as correct). 45 46 * include/am_utils.h: extern for new is_interface_local() function. 47 48 * conf/transp/transp_{sockets,tli}.c: don't define INADDR_LOOPBACK 49 here but in am_compat.h 50 51 * amd/nfs_prot_svc.c (nfs_program_2): if 52 nfs_allow_any_interface=yes, then allow NFS packets from any local 53 interface (not just 127.0.0.1). 54 55 * amd/conf.c (gopt_nfs_allow_any_interface): implement the new 56 amd.conf parameter nfs_allow_any_interface. 57 58 * amd/amd.h (CFM_NFS_ANY_INTERFACE): define new global flag when 59 al interfaces are acceptable for local NFS packets. 60 612006-04-18 Christos Zoulas <christos@zoulas.com> 62 63 * amd/opts.c: Add support for optionally specifying the hostname 64 to match against the netgroup in the netgrp and netgrpd selectors. 65 662006-04-16 Erez Zadok <ezk@cs.sunysb.edu> 67 68 * libamu/mtab.c (hasmntval): fix inverted meaning of error from 69 hasmntvalerr(). 70 712006-04-14 Erez Zadok <ezk@cs.sunysb.edu> 72 73 * libamu/mount_fs.c (compute_nfs_attrcache_flags): use new 74 hasmntvalerr() function to set attribute cache values only if they 75 were set (regardless whether they were set to zero or a non-zero 76 value). Before, we were unable to distinguish between an error to 77 parse an option, and a user who actually wanted to set an 78 attribute-cache value to 0. This now fixes an important 79 performance bug that Amd was turning off the attribute caches even 80 for regular (non-automounter) NFS mounts. 81 82 * libamu/mtab.c (hasmntvalerr): new function to set the value of 83 an option into an integer, but ONLY if that options was set and 84 parsed correctly. This function returns 1 on error, 0 on success 85 (instead of always setting the option value to 0). 86 (hasmntval): wrapper function around hasmntvalerr, which maintains 87 backwards compatibility (always sets option value to 0, even on 88 error to parse the option). 89 90 * amd/nfs_subr.c (fh_to_mp3): use long int printf format for 91 fhh_pid. 92 932006-04-05 Christos Zoulas <christos@zoulas.com> 94 95 * amd/amfs_generic.c (amfs_lookup_mntfs): fix use-after-free bug 96 (Coverity). 97 982006-03-27 Erez Zadok <ezk@cs.sunysb.edu> 99 100 * doc/am-utils.texi, scripts/{amd.conf.5,amd.conf-sample}: 101 document new nfs_retransmit_counter_toplvl and 102 nfs_retry_interval_toplvl global amd.conf parameters. 103 104 * amd/conf.c (gopt_nfs_retransmit_counter_toplvl, 105 (gopt_nfs_retry_interval_toplvl): parse amd.conf 106 nfs_retransmit_counter_toplvl and nfs_retry_interval_toplvl global 107 parameters. 108 109 * amd/amfs_toplvl.c (amfs_toplvl_mount): support setting toplvl 110 timeo/retrans parameters for Amd's toplvl mounts, separately from 111 all other UDP or NFS mounts. 112 113 * amd/amd.h: define a new timeo/retrans parameter for toplvl 114 mounts. 115 1162006-03-22 Erez Zadok <ezk@cs.sunysb.edu> 117 118 * minor new port: i386-pc-linux-suse10.1 (beta 8). 119 1202006-03-21 Christos Zoulas <christos@zoulas.com> 121 122 * amd/am_ops.c (merge_opts): Remove useless check found by 123 Coverity; xmalloc never returns NULL. 124 1252006-03-21 Erez Zadok <ezk@cs.sunysb.edu> 126 127 * minor new ports: i386-pc-linux-fc5. 128 129 * amd/info_ldap.c: as of Linux Fedora Core 5 (which comes with 130 openldap-2.3.9), the ldap.h headers deprecate several functions 131 used in this file, such as ldap_unbind. You get compile errors 132 about missing extern definitions. Those externs are still in 133 <ldap.h>, but surrounded by an ifdef LDAP_DEPRECATED. I am 134 turning on that ifdef at the top of info_ldap.c, under the 135 assumption that the functions may be deprecated, but they still 136 work for this (older?) version of the LDAP API. It gets am-utils 137 to compile, but it is not clear if it will work perfectly. 138 139 * libamu/xdr_func.c (xdr_am_mountres3_ok), amq/amq_xdr.c 140 (xdr_amq_mount_tree, xdr_amq_mount_tree_p, 141 xdr_amq_mount_info_list, xdr_amq_mount_tree_list), amq/amq.c 142 (show_mti), amd/amq_subr.c (xdr_amq_setopt, xdr_amq_mount_subtree, 143 xdr_amq_mount_tree, xdr_amq_mount_tree_list, xdr_amq_mount_tree), 144 libamu/xdr_func.c (xdr_am_mountres3_ok): use casing magic to stop 145 GCC-4.1 from complaining about "dereferencing type-punned pointer 146 will break strict-aliasing rules" here (but not elsewhere). 147 1482006-03-20 Christos Zoulas <christos@zoulas.com> 149 150 * libamu/wire.c: avoid potential dereferencing of a NULL pointer 151 (Coverity). 152 153 * hlfsd/homedir.c (delay): remove unnecessary check for NULL 154 pointer (Coverity). 155 156 * fsinfo/fsi_analyze.c (analyze_dkmounts, analyze_mounts, 157 analyze_mounts): avoid potential dereferencing of a NULL pointer 158 (Coverity). 159 160 * conf/transp/transp_sockets.c (create_amq_service): avoid 161 potential dereferencing of a NULL pointer (Coverity). 162 163 * amd/sched.c (sigchld): properly check for the end of the waiting 164 process list (Coverity). 165 166 * amd/mapc.c (mapc_create): initialize 'modify' to zero (Coverity). 167 168 * amd/autil.c (amfs_mkcacheref, am_unmounted): avoid potential 169 dereferencing of a NULL pointer (Coverity). 170 171 * amd/amfs_generic.c (amfs_lookup_mntfs): free def_opts before 172 reusing it (memory leak bug detected by Coverity). 173 (amfs_bgmount): avoid potential dereferencing of a NULL pointer 174 (Coverity). 175 176 * amd/am_ops.c (merge_opts): no need to check if newstr is NULL 177 (bug detected by Coverity). 178 1792006-03-08 Ion Badulescu <ionut@moisil.badula.org> 180 181 * amd/nfs_subr.c (mp_to_fh): fixed old-style filehandles--the pid 182 comparison was failing. 183 1842006-03-08 Erez Zadok <ezk@cs.sunysb.edu> 185 186 * configure.in: properly test for either <gdbm/ndbm.h> or 187 <gdbm-ndbm.h> (unfortunately, Autoconf will map both names to the 188 same $ac_cv_* variable name). Some systems support one header or 189 another. Patch inspired by work Debian did. 190 1912006-02-10 Erez Zadok <ezk@cs.sunysb.edu> 192 193 ******************************************************************* 194 *** Released am-utils-6.1.4 *** 195 ******************************************************************* 196 1972006-01-04 Erez Zadok <ezk@cs.sunysb.edu> 198 199 * doc/am-utils.texi (auto_attrcache Parameter): revise discussion 200 to mention pros and cons of turning on/off this parameter, 201 including impact on Amd's performance, and ways to improve 202 performance while minimizing the window of vulnerability in which 203 kernel may return the wrong (cached) attributes. 204 2052006-01-02 Erez Zadok <ezk@cs.sunysb.edu> 206 207 * updated copyright year to 2006 on all files. 208 2092005-12-20 Erez Zadok <ezk@cs.sunysb.edu> 210 211 * include/am_utils.h, conf/transp/transp_tli.c (amu_svc_register, 212 register_autofs_service): use a consistent prototype for the 213 dispatch function of the autofs service de/registration functions. 214 2152005-12-03 Erez Zadok <ezk@cs.sunysb.edu> 216 217 * minor new ports: i386-unknown-netbsdelf2.1, 218 i386-unknown-netbsdelf3.0 (RELEASE), and i386-unknown-openbsd3.8. 219 2202005-12-02 Erez Zadok <ezk@cs.sunysb.edu> 221 222 * m4/macros/check_field.m4: remove double inclusion of msdosfs 223 headers, which are included in mount_header1.h (netbsd 2.1 doesn't 224 protect <msdosfs/msdosfsmount.h> which causes compile errors). 225 2262005-11-08 Erez Zadok <ezk@cs.sunysb.edu> 227 228 * minor new port: i386-unknown-freebsd6.0 (RELEASE) 229 2302005-10-26 Erez Zadok <ezk@cs.sunysb.edu> 231 232 * amd/amq_subr.c (amqproc_pawd_1_svc): repeatedly resolve path in 233 Amd, not in pawd (to avoid repeated network RPCs). 234 235 * amq/pawd.c (transform_dir): move repeated path resolution into Amd. 236 2372005-10-25 Erez Zadok <ezk@cs.sunysb.edu> 238 239 * amq/pawd.c (transform_dir): resolve path repeatedly until 240 finished. Bug fix from Jonathan Chen <jon+amd-at-spock.org>. 241 Added safety check to prevent infinite loops. 242 2432005-10-19 Erez Zadok <ezk@cs.sunysb.edu> 244 245 * doc/am-utils.texi (opts Option): document new pcfs options 246 longname, nowin95, shortname, user=N, group=N, mask=N, and 247 dirmask=N. 248 249 * amd/ops_pcfs.c (mount_pcfs): process new pcfs options longname, 250 nowin95, shortname, user=N, group=N, mask=N, and dirmask=N. 251 252 * include/am_compat.h: provide compatibility mnttab string names, 253 if needed, for pcfs mount options longname, nowin95, shortname, 254 user=N, group=N, mask=N, and dirmask=N. 255 256 * include/am_utils.h: extern for hasmntstr(). 257 258 * libamu/mtab.c (hasmntstr): new function to return the string 259 value following a mount option, up to the next comma-delimited 260 options. 261 262 * configure.in: check for mnttab and pcfs options longname, 263 nowin95, and shortname. 264 265 * Makefile.am (EXTRA_DIST_M4): distribute new macro 266 check_mnt2_pcfs_opt.m4. 267 268 * m4/macros/check_mnt2_pcfs_opt.m4: new macro to check for pcfs 269 mnttab and mount options. 270 2712005-10-18 Erez Zadok <ezk@cs.sunysb.edu> 272 273 * libamu/mount_fs.c (print_nfs_args): print nfs_args->addr 274 correctly, depending if it's a pointer or not. 275 276 * conf/sa_dref/sa_dref_*.h: for each NFS_SA_DREF macro, also 277 #define NFS_ARGS_T_ADDR_IS_POINTER if nfs_args->addr is a pointer 278 or an embedded structure, so we can tell how to print it. 279 280 * libamu/mount_fs.c (print_nfs_args): print nfs_args->addrlen 281 field, if it exists. 282 283 * configure.in: check for nfs_args->addrlen field. 284 285 * wire-test/wire-test.c (main), libamu/mount_fs.c 286 (print_nfs_args), fixmount/fixmount.c (inetresport, 287 clnt_create_timeout), amq/pawd.c (transform_dir), amq/amq.c 288 (main), amd/srvr_nfs.c (find_nfs_srvr), amd/autil.c 289 (amfs_mount): document that as per POSIX, we don't need to set the 290 sa_len/sin_len fields in struct sockaddr/sockaddr_in. The field 291 is used only internally in the kernel. See 292 www.awprofessional.com/articles/article.asp?p=169505&seqNum=2&rl=1 293 294 * fixmount/fixmount.c (inetresport): initialize sockaddr_in 295 structure before filling in some fields. 296 2972005-10-11 Erez Zadok <ezk@cs.sunysb.edu> 298 299 * doc/am-utils.texi (nfs_vers, nfs_proto parameters): clarify and 300 correct mistaken description of nfs_proto. 301 3022005-10-10 Erez Zadok <ezk@cs.sunysb.edu> 303 304 ******************************************************************* 305 *** Released am-utils-6.1.3 *** 306 ******************************************************************* 307 3082005-10-07 Erez Zadok <ezk@cs.sunysb.edu> 309 310 * m4/macros/check_mnttab_type.m4: move the test for MOUNT_* to the 311 very end, after the test using getvfsbyname(). 312 313 * m4/macros/expand_run_string.m4: if the string value returned is 314 empty, consider it invalid. 315 316 * m4/macros/check_varargs_macros.m4: rewrite macro so it'll 317 try and compile the varargs test, not just cpp it. Some systems 318 pass the old cpp test, but not when you actually try to compile 319 the code (Tru64's cc). 320 321 * conf/autofs/autofs_solaris_v1.h: redefine 322 autofs_strdup_space_hack as a macro to str3cat(NULL,(s)," ",""). 323 This works everywhere and we avoid linking problems, inline 324 functions, etc. 325 326 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): remove 327 autofs_strdup_space_hack() function altogether. 328 329 * m4/macros/os_cflags.m4: remove hack that hardcodes pte_t=u_int. 330 331 * configure.in: test for <sys/immu.h> header. 332 Test for pte_t, but only on IRIX6 systems. 333 334 * Makefile.am (EXTRA_DIST_M4): distribute new type_pte_t.m4 file. 335 336 * m4/macros/type_pte_t.m4: new test for existence of pte_t 337 typedef, needed on some IRIX-6.5/gcc systems. 338 339 * m4/macros/header_templates.m4: add missing templates for 340 HAVE_EXTERN_GETDTABLESIZE, HAVE_EXTERN_GETWD, and 341 HAVE_EXTERN_UALARM. 342 343 * amd/info_exec.c (exec_map_open): break assignment from inside 344 conditional, to work around an IRIX-6.5 cc bug. 345 346 * fsinfo/fsi_util.c (set_ether_if), amd/map.c (unmount_mp), 347 libamu/xutil.c (expand_error), libamu/strutil.c (xsnprintf): avoid 348 comparison between signed and unsigned integers. 349 350 * conf/autofs/autofs_solaris_v1.h, conf/autofs/autofs_solaris_v1.c 351 (autofs_strdup_space_hack): move "space_hack" function from static 352 inline in header, into the only source file that needs it. This 353 is cleaner and also prevents linking problem with some compilers 354 that won't apply CPP macros inside static inline functions (for 355 the strl* functions). 356 357 * amq/pawd.c (find_mt, find_mlp): remove obsolete, inefficient 358 code. 359 (transform_dir): call the new, efficient amqproc_pawd_1() routine. 360 361 * amq/amq_clnt.c (amqproc_pawd_1): AMQPROC_PAWD wrapper routine. 362 363 * amq/amq.h (amqproc_pawd_1): extern for amq's AMQPROC_PAWD 364 wrapper routine. 365 366 * amd/amq_svc.c (amq_program_1): dispatch point for 367 amqproc_pawd_1_svc. 368 369 * amd/amq_subr.c (amqproc_pawd_1_svc): moved pawd's path-matching 370 functionality into Amd, where it can be done a lot more 371 efficiently. We don't have to construct and ship a whole export 372 tree from Amd to pawd. We just get a variable-length 373 xdr_wrapstring for the user's path, iterate over the entire export 374 list inside Amd, and return only a matched string if found 375 (otherwise we return "" to indicate that there was no match, and 376 let pawd printf the same string it sent over). 377 378 * amd/amd.h: extern for amqproc_pawd_1_svc, amd's service routine 379 the AMQPROC_PAWD RPC. 380 3812005-10-06 Erez Zadok <ezk@cs.sunysb.edu> 382 383 * ltmain.sh, m4/macros/libtool.m4: update to libtool-1.5.20. 384 Fixes Tru64 bugs when using ksh. 385 386 * amd/amfs_toplvl.c (amfs_toplvl_mount): break complex ifdef macro 387 into two sections, to workaround a C99 varargs-macro bug in 388 gcc-3.2.2 (RH9). 389 390 * libamu/wire.c (print_wires): convert argument-less xsnprintf to 391 xstrlcpy. 392 393 * include/am_utils.h: use new HAVE_C99_VARARGS_MACROS or 394 HAVE_GCC_VARARGS_MACROS to pass file name and line number to 395 xsnprintf/xvsnprintf. 396 397 * libamu/strutil.c (xsnprintf, xvsnprintf): if debugging is on, 398 then also print the source file name and line number that called 399 xsnprintf/xvsnprintf with a buffer that wasn't large enough (most 400 likely an am-utils bug). 401 402 * Makefile.am (EXTRA_DIST_M4): distribute new 403 check_varargs_macros.m4 file. 404 405 * configure.in: execute new AMU_VARARGS_MACROS test. 406 407 * m4/macros/check_varargs_macros.m4: new test to check what style 408 of variable-length argument macros, if any, does the 409 compiler/pre-processor supports. 410 411 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req) 412 conf/autofs/autofs_solaris_v1.c (autofs_mount_1_req), amd/opts.c, 413 amd/nfs_subr.c (nfsproc_lookup_2_svc), amd/nfs_start.c 414 (mount_automounter), amd/get_args.c (get_args), amd/amfs_toplvl.c, 415 amd/amfs_auto.c (amfs_auto_mount), amd/amd.h, amd/amd.c (main): 416 use sizeof() instead of fixed SIZEOF_* macros. 417 418 * libamu/strutil.c (xstrlcat, xstrlcpy), include/am_utils.h 419 (DEBUG): if debugging is on, then also print the source file name 420 and line number that called xstrl* with a buffer that wasn't large 421 enough (most likely an am-utils bug) 422 423 * include/am_compat.h (INADDR_NONE): define in a common location, 424 if OS doesn't have it, use 0xffffffffU which should work with any 425 ANSI compiler. 426 427 * fixmount/fixmount.c, libamu/wire.c: remove local definition of 428 INADDR_NONE. 429 430 * amd/amfs_toplvl.c (amfs_toplvl_mount), amd/amfs_auto.c 431 (amfs_auto_mount): use common SIZEOF_OPTS in definition and call 432 to autofs_get_opts. 433 434 * amd/amd.h (SIZEOF_OPTS): moved #define to common header. 435 4362005-10-06 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 437 438 * amd/opts.c (expand_op): Need to check BUFSPACE for env for 439 vlen+1. Likewise for cp and strlen(cp)+1. 440 441 * amd/amfs_toplvl.c (amfs_toplvl_mount) [HAVE_FS_AUTOFS]: Pass new 442 size argument to autofs_get_opts. 443 4442005-10-05 Erez Zadok <ezk@cs.sunysb.edu> 445 446 * amq/pawd.c (transform_dir): was using UDP only. Now will also 447 try TCP if UDP failed. Destroy client after use to avoid leftover 448 TCP sockets in the kernel. 449 450 * libamu/hasmntopt.c (amu_hasmntopt): increase size of MNTMAXSTR 451 from 128 to to 256, because some users have really long option 452 strings. Suggestion from jon+amd-at-spock.org. 453 454 * amd/opts.c (expand_op): should check BUFSPACE for vlen+1, not 455 just vlen. Bug discovered when started using xstrlcpy(). 456 457 * ALL: convert from using strcat to the safer xstrlcat, and from 458 strcpy to safer xstrlcpy. 459 4602005-10-04 Erez Zadok <ezk@cs.sunysb.edu> 461 462 * hlfsd/hlfsd.h: remove old fatalerror() and ERRM macros. 463 464 * hlfsd/hlfsd.c (fatalerror): new function instead of macro. 465 Easier to use xstrlcat in this new function. 466 467 * amd/amd.h, include/am_utils.h, amd/amd.c: moved 'hostd' extern 468 from am_utils.h to amd.h, and define its size as a macro that 469 could be passed to xstrl*(). 470 471 * ALL: convert from using sprintf to the safer xsnprintf. 472 473 * mk-amd-map/Makefile.am (LDADD): link with libamu to get 474 xsnprintf(). 475 476 * amd/amd.h, amd/amd.c, include/am_utils.h: moved pid_fsname 477 extern from am_utils.h to amd.h, and define its size as a macro 478 that could be passed to xsnprintf(). 479 4802005-10-02 Erez Zadok <ezk@cs.sunysb.edu> 481 482 * include/am_utils.h: extern for xvsnprintf(). 483 484 * amd/autil.c: move strsplit() to libamu/strutil.c. 485 486 * libamu/Makefile.am: use strutil.c, not util.c. 487 488 * libamu/strutil.c: rename from util.c to explain better purpose 489 of file. Move xvsnprintf and xsnprintf from xutil.c to this 490 file. Sync up with 6.2 version of file. 491 492 * libamu/xutil.c: explain purpose of file. Move mkdirs/rmdirs 493 code from old util.c. 494 4952005-10-01 Erez Zadok <ezk@cs.sunysb.edu> 496 497 * m4/macros/header_templates.m4: templates for FFS. 498 499 * m4/macros/check_mnttab_type.m4: on BSD44 systems, check for file 500 system mount table name via the MOUNT_* mount(2) macros (because 501 BSD44 keeps the mount table in the kernel). 502 503 * configure.in: synchronise order of searching for mnttab entries 504 and mount names. The new order is "ext3 ext2 ffs ufs 4.2 4.3 4.4 505 efs xfs jfs ultrix" (which would prefer ffs on BSD44 instead of 506 ufs, and ext3 instead of ext2 on Linux). 507 508 * include/am_defs.h: include <sys/statvfs.h> if it exists. 509 510 * conf/nfs_prot/nfs_prot_netbsd1_4.h: NetBSD 3 has both statfs() 511 and statvfs(), but the latter is preferred, so #define to use 512 statvfs. 513 514 * configure.in: check for statfs(), statvfs(), and 515 <sys/statvfs.h>. 516 517 * config.guess.long: strip trailing '.' on "netbsdelf3.0." 518 (Beta). Workaround for bug in config.guess. 519 520 * config.{guess,sub}: update to latest versions. 521 5222005-09-30 Christos Zoulas <christos@zoulas.com> 523 524 * fsinfo/fsi_util.c (set_ether_if): use INADDR_NONE instead of 525 hard-coded value of -1. 526 527 * include/amq_defs.h (AMQ_STRLEN): increase default size from 2KB 528 to 16KB. We can afford it these days. 529 530 * libamu/strcasecmp.c (strcasecmp): use unsigned chars in 531 tolower() to avoid sign/size promotion bugs. 532 533 * libamu/xutil.c (switch_to_logfile): don't output to LOG_CONS by 534 default (it's unfriendly). If user really wants to, they can set 535 it in /etc/syslog.conf. 536 5372005-09-29 Erez Zadok <ezk@cs.sunysb.edu> 538 539 * amq/pawd.c (find_mt): if the auto mount type is used, pawd could 540 go into an infinite loop since the mt_directory and mt_mountpoint 541 fields are the same for auto mounts. Solution: ignore type auto 542 mounts, similar to toplvl. Bug fix from Jonathan Chen 543 <jon+amd@spock.org>. 544 545 * README.attrcache: document test-attrcache script. 546 547 * scripts/Makefile.am (noinst_SCRIPTS): build test-attrcache 548 script. 549 550 * configure.in: build scripts/test-attrcache script and chmod it 551 so it can be executed in place. 552 553 * scripts/test-attrcache.in: script to test the NFS attribute 554 cache using Amd. 555 5562005-09-26 Erez Zadok <ezk@cs.sunysb.edu> 557 558 * libamu/xutil.c (unregister_amq): repair broken meaning of D_AMQ, 559 which was reversed in am-utils-6.2. Bug fix from Steve Plite 560 <splite-amutils at sigint.cs.purdue.edu>. 561 562 * hlfsd/stubs.c (nfsproc_getattr_2_svc, nfsproc_lookup_2_svc, 563 nfsproc_readlink_2_svc, nfsproc_readdir_2_svc), hlfsd/hlfsd.c 564 (hlfsd_init): use new clocktime() function. 565 5662005-09-18 Erez Zadok <ezk@cs.sunysb.edu> 567 568 ******************************************************************* 569 *** Released am-utils-6.1.2.1 *** 570 ******************************************************************* 571 572 * README.attrcache: Update status of freebsd and openbsd. 573 Document netbsd's patchs to support noac. 574 575 * libamu/mount_fs.c (compute_nfs_attrcache_flags): cleanup the 576 code that sets the ac{reg,dir}{min,max} fields so it also sets the 577 appropriate nfs_args->flags such as MNT2_NFS_OPT_ACREGMIN. 578 579 * configure.in: check for nfs_args fields acregmax and acdirmax. 580 581 ******************************************************************* 582 *** Released am-utils-6.1.2 *** 583 ******************************************************************* 584 585 * README.attrcache: new file documenting in detail OS bugs 586 relating to attribute caching, which can affect Amd's reliability 587 under heavy load. 588 589 * doc/Makefile.am: install README.attrcache file as attrache.txt 590 file on am-utils Web site. 591 592 * Makefile.am (EXTRA_DIST): include README.attrcache in distro. 593 594 * BUGS, NEWS, doc/am-utils.texi (auto_attrcache Parameter), 595 scripts/amd.conf.5, scripts/amd.conf-sample: document attribute 596 cache bugs on some OSs. 597 5982005-09-17 Erez Zadok <ezk@cs.sunysb.edu> 599 600 * libamu/xutil.c (clocktime): newly implemented routine. Uses 601 gettimeofday() each time to return a high-resolution clock time, 602 and does not "cache" the last time. Returns time in seconds, just 603 like the old implementation. If passed a non-null argument, will 604 fill it in with the current time in seconds+microseconds. 605 606 * libamu/xutil.c: remove actual declaration of clock_valid, and 607 another never-used declaration for xclock_valid. 608 609 * include/am_utils.h: remove defunct definition of clocktime() 610 macro and clock_valid variable. Add extern for new definition. 611 612 * libamu/mount_fs.c (mount_fs), hlfsd/homedir.c (homedir, 613 hlfsd_diskspace, hlfsd_getpwent, plt_reset, table_add), 614 hlfsd/hlfsd.c (main, hlfsd_init, reload, cleanup), 615 conf/mtab/mtab_mach3.c (open_locked_mtab), conf/mtab/mtab_file.c 616 (open_locked_mtab), amd/nfs_start.c (do_select, run_rpc), 617 amd/autil.c (host_normalize): remove defunct clock_valid. 618 619 * amd/nfs_subr.c (nfsproc_getattr_2_svc): Print microseconds for 620 node's mtime. 621 (fh_to_mp3): use new clocktime() to update mtime and get a better 622 time resolution. 623 624 * amd/mapc.c (mapc_reload_map): change prototype from returning 625 void to returning an int. If reloading was needed and succeeded, 626 return 1; else return 0. 627 (mapc_sync): update mtime of parent node if needed. This is a 628 CRITICAL FIX, to ensure that the kernel flushes its DNLC/dcache 629 when we run "amq -f" manually or when a map is reloaded. 630 631 * amd/map.c (new_ttl): update am_ttl and na_atime in one shot. 632 (init_map): use new clocktime(). 633 (unmount_mp): if the OS doesn't support a "symttl" option, then 634 update the mtime of the parent node using the clocktime(); but if 635 the time hasn't gotten changed because of rapid Amd accesses on 636 systems that don't have a micro-second NFS-client resolution, then 637 increment mtime by one arbitrarily (this could, on some systems 638 and under pathological cases, result in mtime's that are in the 639 future). 640 641 * amd/autil.c (forcibly_timeout_mp): MAJOR BUG FIX: force mtime 642 update of parent dir, to prevent DNLC/dcache from caching the old 643 entry, which could result in ESTALE errors, bad symlinks, and 644 more. 645 (am_mounted): record mount time, and update am_stats at the same 646 time, using the double-action redone clocktime() routine. 647 (am_mounted): update parent's mtime from that of the child. 648 (am_unmounted): when unmounting an entry, update mtime of parent 649 node. 650 651 * amd/amfs_generic.c (amfs_bgmount): now that clocktime() doesn't 652 remember it's last non-zero value, save it in a temporary variable 653 to avoid a TOCTOU problem (between an "if" and a "dlog"). 654 655 * libamu/xutil.c (show_time_host_and_name), 656 conf/autofs/autofs_linux.c (autofs_mounted, autofs_timeout_mp), 657 amd/srvr_nfs.c (nfs_keepalive_callback, nfs_keepalive_timeout) 658 (find_nfs_srvr), amd/rpc_fwd.c (fwd_alloc), amd/nfs_subr.c 659 (nfsproc_getattr_2_svc), amd/nfs_start.c (do_select, run_rpc), 660 amd/mapc.c (root_init), amd/map.c(map_flush_srvr, timeout_mp), 661 amd/info_ndbm.c (ndbm_init), amd/info_ldap.c (amu_ldap_rebind), 662 amd/info_file.c (file_open), amd/info_exec.c (fgets_timed, 663 exec_search), amd/clock.c (timeout, softclock), amd/autil.c 664 (forcibly_timeout_mp), amd/amfs_generic.c (amfs_retry, 665 amfs_bgmount, amfs_generic_mount_child), amd/amd.c (main): pass 666 NULL to clocktime(). 667 6682005-09-07 Erez Zadok <ezk@cs.sunysb.edu> 669 670 * minor new port: powerpc-apple-darwin8.2.0. 671 672 * m4/macros/type_auth_create_gidlist.m4: Old macosx used "gid_t" 673 but all newer ones (10.4+) use int. 674 675 * m4/macros/type_recvfrom_fromlen.m4: Old macosx used "int" for 676 6th arg of recvfrom(), but all newer ones (10.4+) use socklen_t. 677 678 * minor new port: i386-pc-linux-deb3.1. 679 6802005-09-02 Erez Zadok <ezk@cs.sunysb.edu> 681 682 * conf/mount/mount_linux.c: If autoconf didn't find any disk-based 683 file system on this system (probably because /proc isn't mounted), 684 then provide some default definition for this file to compile. 685 6862005-08-27 Erez Zadok <ezk@cs.sunysb.edu> 687 688 * Makefile.am (DISTCLEANFILES): also remove amu_autofs_prot.h, 689 config.cache.old, and dbgcf.h on "make distclean". 690 (CLEANFILES): remove dbgcf on plain "make clean". 691 692 * amd/Makefile.am (DISTCLEANFILES): also remove ops_autofs.c on 693 "make distclean". 694 6952005-08-24 Erez Zadok <ezk@cs.sunysb.edu> 696 697 * configure.in: wrap all LDAP and HESIOD tests in test whether 698 --with-OPT was used. 699 7002005-08-16 Erez Zadok <ezk@cs.sunysb.edu> 701 702 * configure.in: sinclude([vers.m4]) version number file. 703 704 * vers.m4: new file to separate version number out of 705 configure.in, useful for nightly snapshot script to generate 706 nightly version string. 707 708 * Makefile.am (EXTRA_DIST_M4): include vers.m4 in distro. 709 7102005-08-11 Erez Zadok <ezk@cs.sunysb.edu> 711 712 * configure.in: keep AC_INIT on same line, for nightly snapshot 713 build script. 714 7152005-08-06 Erez Zadok <ezk@cs.sunysb.edu> 716 717 * scripts/amd.conf.5: selectors_in_defaults is a common parameter, 718 not just [global]. Use consistent capitalization of Amd/Amq. 719 720 * scripts/amd.conf-sample: properly list all of the parameters 721 which are common to both the [global] and the per-map sections. 722 723 * doc/am-utils.texi (Common Parameters): selectors_in_defaults is 724 a common parameter, not just [global]. 725 726 * scripts/amd.conf-sample (sun_map_syntax): example of new flag. 727 728 * cvs-server.txt: update instructions after branching 6.1-stable. 729 7302005-08-02 Erez Zadok <ezk@cs.sunysb.edu> 731 732 ******************************************************************* 733 *** Released am-utils-6.1.1 *** 734 ******************************************************************* 735 736 * libamu/xutil.c (xsnprintf): "unsafe" alternative to vsnprintf is 737 vsprintf, not sprintf. 738 739 * conf/umount/umount_osf.c (umount_fs): refer to proper formal 740 parameter name. 741 (umount2_fs): pass second arg to umount(). 742 743 * ALL: remove CVS ID and put actual file name in source. 744 745 * conf/autofs/*.[hc]: proper copyright headers. 746 747 * whitespace reformatting. Remove remaining '%W%' SCCS IDs. 748 749 * amd/mntfs.c (free_mntfs): don't discard the last reference to an 750 mntfs that had been mounted already. It won't have the 751 MFF_RESTARTED flag on, as it gets turned off after the entry is 752 mounted, but it will have the MFF_RSTKEEP flag on. 753 754 * amd/autil.c (mf_mounted), amd/restart.c (restart_fake_mntfs): 755 show the mntfs's flags. 756 7572005-08-01 Erez Zadok <ezk@cs.sunysb.edu> 758 759 * conf/mtab/mtab_linux.c: removed unused code. Cleanup. 760 (handler): removed this bad signal handler. 761 (lock_mtab): Redhat's original code set a signal handler called 762 "handler()" for all non-ALRM signals. The handler called 763 unlock_mntlist(), plog'ed the signal name, and then exit(1)! 764 Never, ever, exit() from inside a utility function. This messed 765 up Amd's careful signal-handling code, and caused Amd to abort 766 uncleanly only any other "innocent" signal 767 (even simple SIGUSR1), leaving behind a hung Amd mnt point. That 768 code should have at least restored the signal handlers' states 769 upon a successful mtab unlocking. Anyway, that handler was 770 unnecessary, because will call unlock_mntlist() properly anyway on 771 exit. 772 773 * conf/mtab/mtab_{file,isc3,mach3,linux}.c (unlock_mntlist): dlog 774 message that we're inside the unlock_mntlist function. 775 776 * amd/amd.c (main): use new setup_sighandler() for Amd's four main 777 signals (INT, TERM, HUP, and CHLD). 778 (main) Add SIGINT and SIGTERM to masked_sigs, used in 779 nfs_start.c:do_select() for setjmp/longjmp code; the MASK was set 780 to all four signals if !HAVE_SIGACTION, but only to HUP+CHLD if we 781 HAVE_SIGACTION. So this change makes Amd behave consistently. 782 783 * include/am_utils.h: extern for new setup_sighandler(). 784 785 * libamu/xutil.c (setup_sighandler): new utility function to setup 786 a single signal-handler regardless of what method is supported by 787 this OS. 788 (going_down): call unlock_mntlist() when exiting, to ensure that 789 Amd will remove any leftover mtab lock files, if any. 790 791 * amd/restart.c (restart_automounter_nodes): cleanup function. 792 793 * minor new port: i386-pc-linuxoldld-deb3.1. 794 795 * configure.in: include <sys/types.h> before <linux/socket.h> to 796 get the definition of size_t on Debian-3.1r0a. 797 7982005-07-29 Erez Zadok <ezk@cs.sunysb.edu> 799 800 * amd/srvr_nfs.c (find_nfs_srvr): don't blindly copy the hostent 801 IP address. First check if it differs from the existing one of 802 the fserver, and copy only if it changed. If it did change, flush 803 the fhandle cache to avoid a stale fhandle being reused. This 804 allows Amd to detect IP address changes even for an fserver that 805 lost one or more NFS pings, but not enough to be declared totally 806 down. We handle the "totally down" fserver case in 807 check_fs_addr_change(). 808 809 * amd/ops_nfs.c (nfs_umount), amd/sched.c (sched_task), 810 amd/nfs_subr.c (nfs_quick_reply): code clarity. 811 812 * conf/mount/mount_linux.c (linux_nfs_error): dlog mappings of 813 errnos to NFS errors. 814 815 * conf/umount/umount_linux.c (umount2_fs): cleanup code. Trying 816 stat() seems doomed to hang at times, so don't try stat at all, 817 because umount2() appears to be clever enough to never hang. 818 8192005-07-25 Erez Zadok <ezk@cs.sunysb.edu> 820 821 * amd/amd.h (FSF_FORCE_UNMOUNT): new flag used to indicate that a 822 particular fserver may need forced/lazy unmounts when it's mntfs's 823 are unmounted. 824 825 * amd/ops_nfs.c (nfs_umount): a simple unmount returned EBUSY, and 826 the user specified forced_unmounts=yes in amd.conf, and this 827 fserver was flagged with FSF_FORCE_UNMOUNT, and the OS supports 828 forced/lazy unmounts, then try forced/lazy unmounts. This should 829 allow a hung mount point to be removed. 830 831 * amd/srvr_nfs.c (find_nfs_srvr): move away IP-address change 832 detection code to its own function. 833 (check_fs_addr_change): new function to detect if the IP address 834 of a downed host has changed, and do various cleanups and fixups 835 to try and recover as best from that situation (e.g., flushing 836 various caches). Also set the FSF_FORCE_UNMOUNT flag for the 837 fserver in question. 838 (flush_srvr_nfs_cache): pass fserver as argument, so we can 839 selectively flush the NFS cache for a single fserver (or all of 840 them, if you pass NULL). 841 842 * libamu/xutil.c (switch_to_logfile): truncate a regular-file log 843 file if user passed non-zero "truncate_log" flag. 844 845 * include/am_utils.h: switch_to_logfile() now takes a 3rd arg. 846 847 * amd/get_args.c (get_args): pass "truncate_log" flag as per 848 amd.conf global settings. 849 850 * amd/conf.c (gopt_truncate_log): store global value of 851 truncate_log flag. 852 853 * amd/amq_subr.c (amqproc_setopt_1_svc), hlfsd/hlfsd.c (main, 854 reload): don't truncate log file when calling switch_to_logfile(). 855 856 * amd/amd.h (CFM_TRUNCATE_LOG): new flag. Fix comment typo. 857 858 * NEWS, doc/am-utils.texi (truncate_log Parameter), 859 scripts/amd.conf.5, scripts/amd.conf-sample (log_file): document 860 new truncate_log amd.conf parameter. 861 862 * amd/conf.c (gopt_forced_unmounts): check Linux kernel version 863 and alert if your version may be too old for MNT_FORCE to work 864 (before 2.4.0) or for MNT_DETACH to work (before 2.6.0). 865 Otherwise it may be impossible to pin down the exact kernel 866 version in which we should enable this feature. 867 868 * conf/umount/umount_linux.c (umount2_fs): if MNT_FORCE returned 869 EBUSY, then don't try to stat(2) before MNT_DETACH because it 870 could hang. 871 8722005-07-21 Erez Zadok <ezk@cs.sunysb.edu> 873 874 * conf/umount/umount_linux.c (umount_fs): cleanup this function, 875 breaking long "if" statements using "goto out". 876 877 * conf/umount/umount_{aix,bsd44,osf,default,linux}.c (umount_fs): 878 call new utility function umount2_fs() as needed (EBUSY, EIO, or 879 ESTALE). 880 881 * conf/umount/umount_{aix,bsd44,osf,default,linux}.c (umount2_fs): 882 define a new utility function to invoke forcible/lazy unmounts 883 without touching any mtab files. This separate utility function 884 is useful because it can be called from elsewhere. 885 886 * amd/amfs_toplvl.c (amfs_toplvl_init): new function, called 887 before Amd mounts toplvl mounts, which gives us a hook for cleanup 888 of a previously dead Amd. In our case, if the user asked for 889 forced_unmounts, and the OS supports it, then we try forced/lazy 890 unmounts on any previous toplvl mounts. This is useful if a 891 previous Amd died and left behind toplvl mount points (this Amd 892 will clean them up!). WARNING: Don't use forced/lazy unmounts if 893 you have another valid Amd running, because this code WILL force 894 those valid toplvl mount points to be detached as well! 895 896 * amd/amfs_toplvl.c (amfs_toplvl_umount): don't unconditionally 897 try forced/lazy unmounts because it will prevent a normal Amd from 898 terminating and cleaning up properly (self-deadlocking: detached 899 mounts hang the parent Amd on a stat). Since we already do 900 unmounts in the background, then try a safer policy: after trying 901 the normal unmounts a few times (5 sec), escalate and try forced 902 unmounts a few times (5 more seconds), and if even that failed, 903 then try the ultimate -- detached unmounts (which always succeed). 904 This allows Amd to first try and shutdown cleanly, and gradually 905 try more forcible ways to shutdown. On Linux, this procedure will 906 cleanly shutdown Amd even if there are processes with their CWD on 907 Amd's mount points (which normally result in EBUSY). 908 9092005-07-20 Erez Zadok <ezk@cs.sunysb.edu> 910 911 * Makefile.am (EXTRA_DIST_CONF): add new umount_aix.c to distro. 912 913 * conf/umount/umount_aix.c: easier if AIX has its own unmount 914 helper file. 915 916 * m4/macros/check_umount_style.m4: AIX needs its own unmount style 917 file. 918 919 * doc/am-utils.texi (forced_unmounts Parameter): @xref -> @pxref. 920 9212005-07-19 Erez Zadok <ezk@cs.sunysb.edu> 922 923 * conf/nfs_prot/nfs_prot_aix5_2.h: define compatible 924 forced-unmount flag. 925 926 * conf/umount/umount_default.c (umount_fs): if regular umount got 927 EBUSY, EIO, or ESTALE, then try forced unmount, if supported. Try 928 umount2 (Solaris) or uvmount (AIX). 929 930 * conf/umount/umount_{bsd44,osf}.c (umount_fs): if default 931 umount() failed with EIO or ESTALE, also try forced unmount. 932 9332005-07-18 Erez Zadok <ezk@cs.sunysb.edu> 934 935 * amd/autil.c (amfs_mount), amd/amfs_toplvl.c 936 (amfs_toplvl_umount): enable forced/lazy unmounts only if user 937 asked for it (and dlog it). 938 939 * scripts/amd.conf.5: document new force_unmount global parameter. 940 941 * doc/am-utils.texi (forced_unmounts Parameter): document new 942 global parameter. 943 944 * amd/conf.c (gopt_forced_unmounts): process forced_unmounts 945 option (default "no"). Exit with an error if user specified the 946 option as "yes" but configure couldn't find support for either the 947 MNT_FORCE or MNT_DETACH flags. 948 949 * scripts/amd.conf-sample (forced_unmounts): example usage of new 950 option. 951 952 * amd/amd.h (CFM_FORCED_UNMOUNTS): new flag for forced_unmounts 953 option. 954 955 * m4/macros/header_templates.m4: templates for _DETACH and _FORCE. 956 957 * configure.in: check for generic u/mount options "detach" and 958 "force". 959 960 * include/am_utils.h (UMOUNT_FS, umount_fs): new prototypes. 961 Define AMU_UMOUNT flags for force, detach, and autofs. 962 963 * amd/amfs_toplvl.c (amfs_toplvl_umount): pass _FORCE and _DETACH 964 unmount flags unconditionally. Pass them to UMOUNT_FS(). 965 966 * conf/nfs_prot/nfs_prot_linux.h: define MNT_FORCE and MNT_DETACH 967 if needed, because some Linux systems don't define them 968 (presumably because it would be too dangerous to expose these 969 flags to users). 970 971 * amd/autil.c (amfs_mount): if mount(2) failed with ESTALE or EIO, 972 then assume that we're in trouble, possibly because a previous 973 mount is hung. So, first try to force a lazy unmount of the old 974 mount. If the forced unmount worked, then try again to mount the 975 desired file system. If the forced unmount failed, then don't 976 retry: just return an error. 977 978 * amd/amfs_generic.c (amfs_generic_umount), amd/amfs_host.c 979 (amfs_host_umount), amd/ops_cachefs.c (cachefs_umount), 980 amd/ops_cdfs.c (cdfs_umount), amd/ops_efs.c (efs_umount), 981 amd/ops_lofs.c (lofs_umount), amd/ops_nfs.c (nfs_umount), 982 amd/ops_pcfs.c (pcfs_umount), amd/ops_ufs.c (ufs_umount), 983 amd/ops_xfs.c (xfs_umount), conf/umount/umount_bsd44.c 984 (umount_fs), conf/umount/umount_default.c (umount_fs), 985 conf/umount/umount_linux.c (umount_fs), conf/umount/umount_osf.c 986 (umount_fs): compute and use unmount specific flags. 987 9882005-07-16 Erez Zadok <ezk@cs.sunysb.edu> 989 990 * configure.in: better help for users, if nfs_args can't be found. 991 9922005-07-15 Erez Zadok <ezk@cs.sunysb.edu> 993 994 * BUGS: more details on AIX's need to install bos.net.nfs.adt 995 before configuring am-utils (else configure cannot find struct 996 nfs_args on AIX). 997 9982005-07-10 Erez Zadok <ezk@cs.sunysb.edu> 999 1000 * amd/srvr_nfs.c (find_nfs_srvr): flush NFS handle cache if the IP 1001 address of a down server had changed. 1002 1003 * amd/info_union.c (union_reload): use safer xsnprintf() routine. 1004 1005 * amd/srvr_nfs.c (find_nfs_srvr): check to see if the IP address 1006 of a named but down fserver changed (i.e., the previous IP address 1007 is no longer responding). If so, then reset the fserver to the 1008 new IP address, and set the fserver's flags such that the function 1009 will fall through to doing the usual NFS version/proto checks and 1010 pinging. (This should fix one case of bug #308.) 1011 1012 * conf/umount/umount_linux.c (umount_fs): warn if plain umount() 1013 failed, before we try to ignore any errors or try optional 1014 umount2(), possibly with forced/lazy unmount. 1015 (umount_fs): dlog when unmount succeeded. 1016 10172005-07-08 Erez Zadok <ezk@cs.sunysb.edu> 1018 1019 * conf/mount/mount_linux.c: add a couple more NFSv2 error codes 1020 that are compatible with NFSv3. 1021 10222005-07-07 Erez Zadok <ezk@cs.sunysb.edu> 1023 1024 * m4/macros/header_templates.m4: extern template for strlcat(). 1025 1026 * amd/get_args.c (get_version_string): use safer strlcat (or 1027 replacement strlcat). Use new wrapper xsnprintf() function, which 1028 will use the safer vsnprintf() if available, else default to plain 1029 sprintf. 1030 1031 * configure.in: check for existence of strlcat() and its extern, 1032 replacing with libamu/strlcat.c as needed. 1033 1034 * libamu/Makefile.am (EXTRA_DIST): add strlcat.c to distro. 1035 1036 * include/am_defs.h: optional strlcat() extern. 1037 1038 * include/am_utils.h: extern for new xvsnprintf(). 1039 1040 * configure.in: overdue new major libtool shlib version. 1041 Check for snprintf function and extern. 1042 10432005-07-06 Erez Zadok <ezk@cs.sunysb.edu> 1044 1045 * conf/nfs_prot/nfs_prot_aix4_3.h: cleanup struct 1046 aix4_nfs_args_bis. 1047 1048 * Makefile.am (EXTRA_DIST_CONF): include mount_aix3.c in 1049 distribution. 1050 1051 * conf/mount/mount_aix.c: mount style for aix 5.x and newer. 1052 1053 * conf/mount/mount_aix3.c: mount styles for aix 3.x/4.x. 1054 1055 * m4/macros/check_mount_style.m4: split mount styles for 1056 aix3.x/4.x and the newer (and better) aix 5.x code. 1057 10582005-07-05 Erez Zadok <ezk@cs.sunysb.edu> 1059 1060 * amq/pawd.c (getawd): avoid buffer overflow. Bug fix from Graeme 1061 Wilford <G.Wilford@surrey.ac.uk>. 1062 10632005-06-30 Erez Zadok <ezk@cs.sunysb.edu> 1064 1065 * amd/map.c (get_next_exported_ap): Avoid running off the end of 1066 the exported_ap[] array. Patch from jon+amd-at-spock.org. Fixed 1067 bug #301. 1068 10692005-06-25 Erez Zadok <ezk@cs.sunysb.edu> 1070 1071 * Makefile.am (EXTRA_DIST_CONF): distribute new mtab_linux.c. 1072 1073 * conf/mtab/mtab_linux.c (rewrite_mtab): variable declarations 1074 must come before C code. 1075 1076 * conf/mtab/mtab_linux.c: Linux-specific mount table hanlding 1077 that's safe (uses locks, handles symlinks to /proc/mounts, etc.). 1078 Patch from Red Hat, which they adapted from mtab_file.c. Minor 1079 fixes to this file. 1080 1081 * m4/macros/check_mnttab_style.m4: Use Linux-specific mount table 1082 handling. 1083 10842005-06-24 Erez Zadok <ezk@cs.sunysb.edu> 1085 1086 * conf/mount/mount_aix.c (mount_aix3): minor cleanup of filehandle 1087 copying code. 1088 10892005-06-23 Erez Zadok <ezk@cs.sunysb.edu> 1090 1091 * conf/nfs_prot/nfs_prot_hpux.h: add extern for h_errno, which may 1092 be missing from older hpux10 systems. 1093 1094 * configure.in: update bug-reporting address to list 1095 https://bugzilla.am-utils.org/ as well as the mailing list. 1096 1097 * Makefile.am (EXTRA_DIST_M4): distribute new type_rpcvers_t.m4 1098 macro. 1099 1100 * conf/transp/transp_tli.c (get_nfs_version): always use 1101 rpcvers_t, now that it'll be automatically discovered. 1102 1103 * configure.in: check for rpcvers_t type. 1104 1105 * m4/macros/type_rpcvers_t.m4: new macro to check for type of 1106 rpcvers_t (Some Solaris versions need it). 1107 1108 * conf/nfs_prot/nfs_prot_sunos5_8.h: don't define INADDR_NONE 1109 here, but in the actual source files that may need it. 1110 1111 * libamu/wire.c (INADDR_NONE): define INADDR_NONE if not defined 1112 already. 1113 1114 * include/am_defs.h: define extern for sleep(3) if needed. 1115 1116 * m4/macros/header_templates.m4: template for sleep(3) extern. 1117 1118 * configure.in: check for extern for sleep(3), which is missing 1119 from some old (and buggy) versions of gcc's fixinc'ed headers. 1120 1121 * conf/nfs_prot/nfs_prot_aix4_3.h: update definition of struct 1122 nfs_args from actual system headers. 1123 1124 * conf/mount/mount_aix.c (mount_aix3): fix name of aix4 "bis" 1125 structure. 1126 11272005-06-22 Erez Zadok <ezk@cs.sunysb.edu> 1128 1129 * BUGS: update Solaris information about use of f/lex and 1130 yacc/bison. 1131 11322005-06-20 Erez Zadok <ezk@cs.sunysb.edu> 1133 1134 * minor new port: i386-pc-linux-suse9.3. 1135 11362005-06-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1137 1138 * configure.in (linux/nfs_mount.h): Move __KERNEL__ definition up 1139 so u32 is available for <linux/sunrpc/msg_prot.h>. 1140 11412005-06-16 Erez Zadok <ezk@cs.sunysb.edu> 1142 1143 * amd/mapc.c (maptypes): move MAP_EXEC after MAP_FILE, because 1144 exec maps will always match when users use amd with command line 1145 args (not amd.conf). Using that legacy way, unfortunately, means 1146 that Amd will use it's hard-coded info-service search path, which 1147 doesn't work for everyone. It's much better to use amd.conf and 1148 specify what you want exactly. 1149 11502005-06-15 Erez Zadok <ezk@cs.sunysb.edu> 1151 1152 * minor new port: i386-pc-linux-fc4 (gcc4 catches more bugs). 1153 1154 * m4/macros/type_recvfrom_fromlen.m4: linux systems use unsigned 1155 int as the type of recvfrom()'s 6th argument. 1156 1157 * m4/macros/type_yp_order_outorder.m4: linux systems use unsigned 1158 int as the type of yp_order()'s 3rd argument. 1159 11602005-06-15 Erez Zadok <ezk@cs.sunysb.edu> 1161 1162 * scripts/amd.conf-sample (map_type): typo, said mount_type 1163 instead of map_type for the 'exec' example. 1164 11652005-06-11 Erez Zadok <ezk@cs.sunysb.edu> 1166 1167 ******************************************************************* 1168 *** Released am-utils-6.1 *** 1169 ******************************************************************* 1170 11712005-06-04 Erez Zadok <ezk@cs.sunysb.edu> 1172 1173 * amd/ops_nfs.c (mount_nfs_fh): set timeo/retrans mount options 1174 only if the user specified them in amd.conf or elsewhere. If they 1175 were not specified, don't do anything, which would let the OS use 1176 its own defaults. 1177 1178 * amd/get_args.c (get_args): negative timeo/retrans are "good" in 1179 that they represent uninitialized values (meaning to let the OS 1180 use it's default values). So only check if user specified a value 1181 equal to zero (invalid). 1182 1183 * amd/amd.h: define AMU_TYPE_NONE so we know when users didn't 1184 specify timeo/retrans at all. 1185 11862005-06-03 Erez Zadok <ezk@cs.sunysb.edu> 1187 1188 ******************************************************************* 1189 *** Released am-utils-6.1-rc7 *** 1190 ******************************************************************* 1191 1192 * m4/macros/os_cflags.m4 (CFLAGS): use custom-OS C flags for 1193 configuring, not just for building. That way the two phases 1194 (configure and compile) are in sync. This fixes getwire() on 1195 OSF/1 systems. 1196 1197 * conf/nfs_prot/nfs_prot_sunos5_8.h: define INADDR_NONE if not 1198 defined in system headers. 1199 12002005-06-01 Erez Zadok <ezk@cs.sunysb.edu> 1201 1202 * libamu/Makefile.am (EXTRA_DIST): remove alloca.c as it's no 1203 longer needed. 1204 12052005-05-28 Erez Zadok <ezk@cs.sunysb.edu> 1206 1207 * completed set of fixes for irix6.5. 1208 1209 * Minor new ports alpha-unknown-linux-gentoo1.4.16 1210 alphaev56-dec-osf4.0f, mips-unknown-linux-gentoo1.4.16, and 1211 sparc64-unknown-linux-gentoo1.4.16, and mips-sgi-irix6.5. Test 1212 those systems with both cc and gcc, where possible. 1213 1214 * include/am_xdr_func.h: remove trailing comma at end of enum 1215 list. 1216 1217 * m4/macros/os_cflags.m4: with gcc 3.4.3 on irix-6.5, we get pte_t 1218 undefined. So give it a dummy value. 1219 1220 * libamu/alloca.c: remove file from distro. 1221 1222 * configure.in: don't call AC_FUNC_ALLOCA any more. 1223 1224 * include/am_defs.h: remove header fixups for <alloca.h>, now that 1225 we don't need it. 1226 1227 * amd/amq_svc.c (amqsvc_is_client_allowed): rewrite function to 1228 avoid only use of alloca() in am-utils, and to use strdup 1229 explicitly. This way we can avoid using alloca, a feature that's 1230 not portable on various systems. 1231 1232 * amq/amq.c: remove unused lint/rcsid cruft. 1233 12342005-05-27 Erez Zadok <ezk@cs.sunysb.edu> 1235 1236 * conf/checkmount/checkmount_osf.c (fixmount_check_mount): add 1237 extra parentheses around assignments in "if" expressions (gcc 1238 complains). 1239 1240 * conf/nfs_prot/nfs_prot_osf4.h: add missing extern definitions 1241 for plock, hstrerror, getmntinfo, alloca, xdr_exportnode, and 1242 xdr_groups. 1243 1244 * configure.in: check for <linux/socket.h>, which, if found, 1245 appears to be preferable to <sys/socket.h>. Use it to find 1246 <linux/nfs_mount.h>. On some Linux systems 1247 (Gentoo), both exist but only one must be included, or else you 1248 get redefined structure errors. 1249 1250 * libamu/wire.c (is_network_member): check if masknum is 1251 INADDR_NONE, not "< 0" because it's an unsigned quantity. 1252 1253 * libamu/util.c (xstrlcpy): remove useless test for size_t < 0, 1254 because it's an unsigned quantity. 1255 12562005-05-26 Erez Zadok <ezk@cs.sunysb.edu> 1257 1258 ******************************************************************* 1259 *** Released am-utils-6.1-rc6 *** 1260 ******************************************************************* 1261 12622005-05-25 Erez Zadok <ezk@cs.sunysb.edu> 1263 1264 * conf/nfs_prot/nfs_prot_aix5_2.h: AIX 5.3 complains about 1265 missing definition of struct thread_credentials in <sys/vfs.h> 1266 but trying to bring that definition in drags a whole lot of other 1267 messy stuff. So just provide a dummy definition for this 1268 structure. 1269 12702005-05-24 Erez Zadok <ezk@cs.sunysb.edu> 1271 1272 * Makefile.am (EXTRA_DIST_M4): distribute m4/macros/libtool.m4. 1273 1274 * m4/macros/header_templates.m4: template for HAVE_EXTERN_MNTCTL. 1275 1276 * m4/macros/check_extern.m4: include <sys/vmount.h> on AIX 1277 systems, so we can find extern definition for mntctl(). 1278 1279 * conf/mtab/mtab_aix.c, conf/checkmount/checkmount_aix.c: only 1280 define an extern for mntctl() if needed. 1281 1282 * amd/ops_nfs.c (prime_nfs_fhandle_cache): never, ever, use C++ 1283 style comments in C code. Some C compilers don't accept it. 1284 1285 * amd/info_ldap.c (amu_ldap_init, get_ldap_timestamp): force cast 1286 of "time_t *ts" to u_long, to avoid complaints on AIX 5.2 with 1287 xlC. 1288 1289 * amd/get_args.c: rename symbol conf_file to amu_conf_file to 1290 avoid conflict with libldap.a from openldap-2.0.21 on AIX 5.2. 1291 Oh, when will people who develop libraries learn to always prefix 1292 their exported symbols with a library-specific name? 1293 1294 * configure.in: check for mntctl() extern on AIX systems. 1295 1296 * ltmain.sh: update from latest libtool-1.5.18, so we can properly 1297 build on AIX 5.2/5.3 with cc and with gcc. 1298 1299 * m4/macros/libtool.m4: update from latest libtool-1.5.18. This 1300 time, and from now on, we must include libtool.m4 from the libtool 1301 distribution itself. That way we ensure that we use an ltmain.sh 1302 that matches the appropriate libtool M4 macros. This makes 1303 am-utils no longer dependent on having libtool installed on a 1304 given system on which you run bootstrap. 1305 13062005-05-23 Erez Zadok <ezk@cs.sunysb.edu> 1307 1308 * minor new port: i386-pc-linux-deb3.0. 1309 13102005-05-22 Erez Zadok <ezk@cs.sunysb.edu> 1311 1312 * minor new ports: i386-unknown-netbsdelf2.0.2 and 1313 i386-unknown-openbsd3.7. 1314 13152005-05-20 Erez Zadok <ezk@cs.sunysb.edu> 1316 1317 * minor new ports: i386-pc-linux-gentoo1.4.16 and 1318 powerpc-unknown-linux-yellowdog2.3. 1319 1320 * include/{mount_headers2.h, am_defs.h}: safer setup before 1321 inclusion of <linux/nfs_mount.h>, which is broken on several 1322 systems. 1323 1324 * configure.in: test for <linux/nfs2.h>. Separate special test 1325 for <linux/nfs_mount.h> because we need to define __KERNEL__ for 1326 that test, as well as optionally define struct nfs2_fh for some 1327 systems (gentoo with 2.4 kernel, yellowdog 2.3, and others). 1328 1329 * config.guess.long: support Gentoo and Yellow Dog Linux distros. 1330 13312005-05-18 Erez Zadok <ezk@cs.sunysb.edu> 1332 1333 * minor new ports: i386-pc-linux-suse9.2 and 1334 i386-unknown-freebsd5.4. 1335 1336 * amd/nfs_subr.c: use NFS_FHSIZE, not FHSIZE. 1337 13382005-05-17 Erez Zadok <ezk@cs.sunysb.edu> 1339 1340 ******************************************************************* 1341 *** Released am-utils-6.1-rc5 *** 1342 ******************************************************************* 1343 1344 * amd/info_ldap.c (amu_ldap_init): change plog to dlog, to avoid 1345 sending annoying warning for a minor issue. 1346 13472005-05-17 Ion Badulescu <ionut@moisil.badula.org> 1348 1349 * amd/nfs_subr.c: check for NULL pointer before dereferencing it. 1350 13512005-05-16 Erez Zadok <ezk@cs.sunysb.edu> 1352 1353 * minor new ports: powerpc-apple-darwin7.9.0. 1354 1355 * m4/macros/host_macros.m4: if a NetBSD system, remove 'elf' part 1356 from OS name because it's no longer relevant. Also, don't include 1357 the major OS version number in the OS name because that's also 1358 unnecessary (and users can always use $osver in maps). 1359 1360 * amd/nfs_subr.c: use [1] for out-of-band pointer at the end of 1361 struct am_fh, because it's the most portable method. Bug fix 1362 suggestion from Dan Riley <dsr at mail.lns.cornell.edu>. Better 1363 fix from Ion Badulescu: use [FHSIZE-sizeof(u_int)] which is the 1364 actual size we use. 1365 1366 * amd/amfs_generic.c (amfs_lookup_mntfs): reset currently used 1367 def_opts to options given in -opts, appended with the /default 1368 options. Bug fix suggestion from Dan Riley <dsr at 1369 mail.lns.cornell.edu>. 1370 13712005-05-13 Erez Zadok <ezk@cs.sunysb.edu> 1372 1373 ******************************************************************* 1374 *** Released am-utils-6.1-rc4 *** 1375 ******************************************************************* 1376 13772005-05-11 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1378 1379 * amd/amd.c (main) : fixed memory leak detected by valgrind 1380 1381 * amd/info_ldap.c (amu_ldap_init) : fixed memory leak detected by 1382 valgrind 1383 13842005-05-11 Erez Zadok <ezk@cs.sunysb.edu> 1385 1386 * m4/macros/{check_checkmount_style.m4, check_mnttab_style.m4, 1387 check_nfs_fh_dref.m4, check_nfs_prot_headers.m4, 1388 check_nfs_sa_dref.m4, check_umount_style.m4, os_cflags.m4}: check 1389 for "macosx" as valid OS string, so we compile properly on Darwin 1390 systems. 1391 1392 ******************************************************************* 1393 *** Released am-utils-6.1-rc3 *** 1394 ******************************************************************* 1395 1396 * rerun bootstrap to get a working configure script that actually 1397 checks for limits.h and dependent linux autofs/nfs headers. 1398 1399 * configure.in: remove redundant check for limits.h. 1400 14012005-05-09 Erez Zadok <ezk@cs.sunysb.edu> 1402 1403 ******************************************************************* 1404 *** Released am-utils-6.1-rc2 *** 1405 ******************************************************************* 1406 14072005-05-08 Erez Zadok <ezk@cs.sunysb.edu> 1408 1409 * amd/amfs_generic.c (amfs_lookup_mntfs): removed redundant use of 1410 old_def_opts variable. 1411 14122005-05-08 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1413 1414 * amd/amfs_generic.c (amfs_lookup_mntfs) : Make sure when a map 1415 entry has a single dash '-', that the default options are reset. 1416 This functionality was somehow lost from earlier releases and 1417 reported by Dan Riley <dsr@mail.lns.cornell.edu>. 1418 14192005-05-05 Erez Zadok <ezk@cs.sunysb.edu> 1420 1421 * config.guess.long: detect SuSE Enterprise Server and call it 1422 "sles" not "suse". 1423 14242005-05-02 Erez Zadok <ezk@cs.sunysb.edu> 1425 1426 * doc/am-utils.texi (amd): document proper use of 1427 /etc/hosts.allow. Don't spawn a new Amd process because Amd will 1428 get confused if someone else waitpid's on its children (which 1429 often do important un/mount work). Issue reported by Francis 1430 Montagnac <Francis.Montagnac at sophia.inria.fr>. 1431 1432 * minor new ports: powerpc64-unknown-linux-rhel4, and 1433 powerpc64-unknown-linux-sles9. 1434 14352005-05-01 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1436 1437 * amd/amfs_host.c (amfs_host_umount): We do not want to pass 1438 ENOENT as an error because if the directory does not exists our 1439 work is done anyway. 1440 1441 * conf/umount/umount_linux.c (umount_fs): If we are successful or 1442 there was an ENOENT, remove the mount entry from the mtab file. 1443 14442005-05-01 Ion Badulescu <ionut@moisil.badula.org> 1445 1446 * amd/nfs_subr.c: am_fh definition moved here from amd.h; 1447 restructured to better reflect its duality (old/new filehandles) 1448 (fh_to_mp3): fhh_gen is always used, even for new style f/h 1449 (mp_to_fh): ditto 1450 1451 * amd/amd.h: moved am_fh definition to nfs_subr.c (which is the 1452 only place where it's used) 1453 14542005-04-30 Erez Zadok <ezk@cs.sunysb.edu> 1455 1456 * m4/macros/host_macros.m4: use sw_vers on Apple machines to find 1457 out more appropriate OS name (macosx) and OS version (10.3.x) than 1458 uname(3) reports. 1459 14602005-04-29 Erez Zadok <ezk@cs.sunysb.edu> 1461 1462 * config.guess, config.sub, doc/texinfo.tex: updates from latest 1463 official GNU distributions. 1464 1465 * m4/macros/host_macros.m4: for macosx, change architecture value 1466 from "Power Macintosh" to "powerpc". 1467 1468 * libamu/util.c (xstrlcpy): format 'len' parameter as u_long, not 1469 int (it's a size_t). 1470 14712005-04-16 Erez Zadok <ezk@cs.sunysb.edu> 1472 1473 * scripts/amd.conf.5, doc/am-utils.texi (normalize_slashes 1474 Parameter), scripts/amd.conf-sample: document new 1475 normalize_slashes global configuration parameter. 1476 1477 * amd/opts.c (deslashify, normalize_slash): don't touch trailing 1478 slashes, even if multiples of them, if user said 1479 normalize_slashes=no in amd.conf. 1480 1481 * amd/conf.c (gopt_normalize_slashes): new function to record if 1482 to normalize slashes or not. 1483 1484 * amd/amd.h (CFM_NORMALIZE_SLASHES): new flag to decide if to 1485 normalize double-slashes or not ("yes" by default). 1486 1487 * amd/autil.c (am_mounted): pass TRUE when calling mf_mounted. 1488 This is the parent mntfs which does the mf->mf_fo 1489 (am_opts type), and we're passing TRUE here to tell mf_mounted to 1490 actually free the am_opts. 1491 1492 * amd/autil.c (mf_mounted): Be careful when calling free_ops and 1493 XFREE here. Some pseudo file systems like nfsx call this 1494 function, even though it would be called by the lower-level amd 1495 file system functions. nfsx needs to call this function because 1496 of the other actions it takes. So we pass a boolean from the 1497 caller (yes, not so clean workaround) to determine if we should 1498 free or not. If we're not freeing (often because we're called 1499 from a callback function), then just to be sure, we'll zero out 1500 the am_opts structure and set the pointer to NULL. The parent 1501 mntfs node owns this memory and is going to free it with a call to 1502 mf_mounted(mntfs,TRUE). 1503 1504 * amd/amd.h: pass flag to mf_mounted, to free or not to free the 1505 am_opts. 1506 1507 * amd/amfs_nfsx.c (amfs_nfsx_cont): call mf_mounted with FALSE to 1508 tell it not to free the am_opts, to avoid double free. 1509 1510 * include/am_defs.h: include limits.h if found. 1511 1512 * configure.in: check for limits.h. Check for certain Linux 1513 headers such as auto_fs.h after checking for limits.h, and include 1514 the latter if it exists, because some Linux headers depend on 1515 limits.h. This prevents warnings during configure time. 1516 15172005-04-12 Erez Zadok <ezk@cs.sunysb.edu> 1518 1519 * amd/amfs_toplvl.c (amfs_toplvl_mount): do NOT set retrans/timeo 1520 values from default global UDP settings, because it can cause 1521 unexpected timeouts in Amd on slow systems. The default that each 1522 OS provides for these toplvl NFS mounts should be OK, or else you 1523 can use the map_options entry. 1524 15252005-04-09 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1526 1527 * amd/nfs_subr.c (mp_to_fh): Replace xstrlcpy with memcpy because the 1528 source buffer is treated more as a filehandle than a string. 1529 1530 * amd/nfs_subr.c (fh_to_mp3): Replace xstrlcpy with memcpy because the 1531 source buffer is treated more as a filehandle than a string. 1532 1533 * amd/opts.c (free_op): No longer need to assign pointer to NULL 1534 after XFREE. 1535 1536 * amd/opts.c (expand_op): Revert back to using strncpy() instead 1537 of xstrlcpy. The code is correct and relies on the semantics of 1538 strncpy. 1539 1540 * libamu/mount_fs.c (compute_nfs_args): Leave XXX warning that use 1541 of xstrlcpy in NFS_HN_DREF may corrupt a struct nfs_args, or 1542 truncate our concocted "hostname:/path" string prematurely if the 1543 nap->hostname field is ever less than 64 bytes long 1544 (MAXHOSTNAMELEN). 1545 1546 * libamu/util.c (xstrlcpy): Return immediately if len is 0 to 1547 avoid unnecessary work. Log an error and return if len is less 1548 than 0. 1549 15502005-04-07 Erez Zadok <ezk@cs.sunysb.edu> 1551 1552 * include/am_utils.h (XFREE): XFREE() should nullify the pointer 1553 even when compiling without debugging. It's safer this way. 1554 1555 * libamu/xutil.c (am_set_hostname), 1556 hlfsd/stubs.c (nfsproc_lookup_2_svc), 1557 fsinfo/fsinfo.c (fsi_get_args), 1558 fixmount/fixmount.c (is_same_host, remove_mount, main), 1559 conf/mtab/mtab_isc3.c (mnt_dup, mtab_of), 1560 conf/mount/mount_svr4.c (mount_svr4), 1561 conf/mount/mount_linux.c (setup_loop_device), 1562 conf/hn_dref/hn_dref_linux.h (NFS_HN_DREF), 1563 conf/hn_dref/hn_dref_isc3.h (NFS_HN_DREF), 1564 amd/opts.c (expand_op), 1565 amd/ops_nfs.c (mount_nfs_fh), 1566 amd/nfs_subr.c (fh_to_mp3, mp_to_fh), 1567 amd/amfs_host.c (amfs_host_mount), 1568 amd/am_ops.c (merge_opts): 1569 use the new xstrlcpy instead of strncpy. 1570 1571 * conf/checkmount/checkmount_{default,svr4}.c 1572 (fixmount_check_mount): document why NOT to use xstrlcpy. 1573 1574 * libamu/xutil.c: am_hostname need not be MAXHOSTNAMELEN+1 any 1575 more, just MAXHOSTNAMELEN. 1576 1577 * libamu/xutil.c (real_plog): use strlcpy (not xstrlcpy to avoid 1578 recursion, since xstrlcpy may use plog). 1579 1580 * libamu/util.c (xstrlcpy): truncating a string is serious. Use 1581 XLOG_ERROR not XLOG_WARNING. 1582 15832005-04-06 Erez Zadok <ezk@cs.sunysb.edu> 1584 1585 * include/am_utils.h: external definition for new xstrlcpy 1586 function. 1587 1588 * libamu/util.c (xstrlcpy): new function. Similar to strncpy, but 1589 uses strlcpy to guarantee that the resulting string is null 1590 terminated, and also warn if the resulting string was truncated. 1591 1592 * libamu/xutil.c (get_server_pid): move this function from util.c 1593 which is for general-purpose utilities. 1594 1595 * m4/macros/header_templates.m4: template for HAVE_EXTERN_STRLCPY. 1596 1597 * include/am_defs.h: provide extern definition for strlcpy, if 1598 needed. 1599 1600 * libamu/Makefile.am (EXTRA_DIST): include strlcpy.c in distro. 1601 1602 * configure.in: search for strlcpy and its extern. 1603 1604 * amq/pawd.c (find_mt): It only handles *some* filesystem types, 1605 so it breaks on direct xfs mounts for example. The fix (from 1606 Christos Zoulas) is simple: We need to exclude toplvl to avoid 1607 infinite recursion, but all other fs's are game. 1608 16092005-03-31 Erez Zadok <ezk@cs.sunysb.edu> 1610 1611 * amd/nfs_subr.c (fh_to_mp3): strncpy may not null terminate if 1612 copying exactly len bytes, so add null just to be safe. 1613 16142005-03-30 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1615 1616 * amd/nfs_subr.c (fh_to_mp3): Increased the n of strncpy() 1617 to make sure it null terminates. 1618 16192005-03-29 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1620 1621 * amd/nfs_subr.c (fh_to_mp3): Fix memset bug. In this case 1622 the memset can be removed because strncpy() should padd the 1623 buffer with NULLs anyway. 1624 16252005-03-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1626 1627 * include/am_defs.h: Clarify comment. 1628 16292005-03-21 Erez Zadok <ezk@cs.sunysb.edu> 1630 1631 * include/am_defs.h: undefine "GROUP" so Solaris 10 with gcc-2.96 1632 won't complain about a conflict for this definition between 1633 <rpcsvc/nis.h> and <sys/acl.h>. 1634 16352005-03-20 Erez Zadok <ezk@cs.sunysb.edu> 1636 1637 * amd/readdir.c (amfs_readdir_browsable): use %p, not %lx. 1638 1639 * libamu/mount_fs.c (print_nfs_args): print pointer with %p, not 1640 %lx. 1641 16422005-03-18 Erez Zadok <ezk@cs.sunysb.edu> 1643 1644 ******************************************************************* 1645 *** Released am-utils-6.1-rc1 *** 1646 ******************************************************************* 1647 16482005-03-18 Erez Zadok <ezk@cs.sunysb.edu> 1649 1650 * conf/transp/transp_tli.c (get_nfs_version): use proper type for 1651 versout on Solaris (rpcvcers_t). 1652 1653 * amd/mapc.c (mapc_showtypes): if last map type to print, don't 1654 append newline or comma to it. 1655 1656 * libamu/mount_fs.c (print_nfs_args): cast struct netbuf pointer 1657 to %lx because on Solaris 10 sparc gcc-3.4.3 complains about 1658 casting it to an int (size is different). 1659 1660 * configure.in, NEWS: prepare for 6.1-rc1 release. 1661 16622005-03-17 Erez Zadok <ezk@cs.sunysb.edu> 1663 1664 * scripts/amd2ldif.in, ldap.schema: fixes by Adam Morley 1665 <adam-at-gmi-dot-com> to synchronize what amd2ldif does vs. what 1666 the ldap.schema expects. 1667 1668 * amd/map.c (exported_ap_free): We're using a free-list data 1669 structure and re-using malloc'ed objects. So, to be safe, memset 1670 entire structure when it's freed, not just the pointer. 1671 (umount_exported): bug fix to on-exit code. Don't run 1672 am_unmounted() unless unmount_mp() didn't run, since the latter 1673 already calls am_unmounted(). This way we avoid a double-free 1674 bug. 1675 16762005-03-15 Erez Zadok <ezk@cs.sunysb.edu> 1677 1678 * tasks: updates. Executable maps is supported. NFSv4 and 1679 FreeBSD autofs isn't. 1680 1681 * Makefile.am (EXTRA_DIST): include FAQ in distro. 1682 1683 * doc/Makefile.am (alldocs): install README.lda and README.osx. 1684 1685 * FAQ: new file, better late than never. 1686 16872005-03-14 Erez Zadok <ezk@cs.sunysb.edu> 1688 1689 * scripts/amd2ldif.in: patch to add the amdMapName attribute to 1690 the amdMapTimestamp object when amd2ldif converts it. This is 1691 necessary if you are using type:=auto mounts and want those 1692 mountmaps looked up through LDAP. Patch from Jim Zajkowski 1693 <jim.zajkowski@gmail.com>. 1694 16952005-03-12 Erez Zadok <ezk@cs.sunysb.edu> 1696 1697 * minor new ports: i386-pc-linux-rhel4. 1698 1699 * minor new ports: powerpc-apple-darwin7.8.0. 1700 17012005-03-10 Erez Zadok <ezk@cs.sunysb.edu> 1702 1703 * amd/ops_nfs.c (prime_nfs_fhandle_cache): rearrange code so it's 1704 cleaner. 1705 1706 * ltmain.sh: upgrade from libtool-1.5.6. 1707 1708 * m4/macros/check_{fs_mntent,mnttab_type,mount_type}.m4: check for 1709 Linux 2.6 kernel modules, which have a .ko extension, not .o. Now 1710 we can properly detect which file systems exist on Linux 2.6 based 1711 systems (SLES9, RHEL4, Fedora, etc.). 1712 17132005-03-09 Erez Zadok <ezk@cs.sunysb.edu> 1714 1715 * m4/macros/host_macros.m4: find out what's the OS software 1716 distribution name, if any. 1717 1718 * m4/macros/header_templates.m4: template for DISTRO_NAME. 1719 1720 * amd/get_args.c (get_version_string): print again full_os, os, 1721 osver, and vendor (bug fix). 1722 (get_version_string): print distribution name, if known (e.g., 1723 rh9, suse8, etc.). 1724 1725 * amd/mapc.c (mapc_showtypes): wrap around list of supported map. 1726 17272005-03-08 Erez Zadok <ezk@cs.sunysb.edu> 1728 1729 * amd/map.c (umount_exported): when unmounting file systems on 1730 exit (when amd.conf global unmount_on_exit=yes), use unmount_mp() 1731 instead of unmount_node() because the latter always unmounts in 1732 the foreground, whereas the former unmounts in the bg/fg as 1733 needed. Unmounting always in the foreground has two problems: (1) 1734 if the unmount hangs, amd hangs, and (2) for type:=program, the 1735 unmount script is execve'd(!) thus replacing the main amd process, 1736 which never gets to finish up, leaving the amd mount points hung. 1737 1738 * NEWS: mention new feature of executable maps. 1739 1740 * AUTHORS: Acknowledge Erik Kline. 1741 1742 * scripts/amd.conf.5: document executable maps and 1743 exec_map_timeout parameter. 1744 1745 * scripts/amd.conf-sample: examples of an executable map and 1746 exec_map_timeout. 1747 1748 * m4/macros/header_templates.m4: template for HAVE_MAP_EXEC. 1749 1750 * doc/am-utils.texi: document Executable maps and exec_map_timeout 1751 parameter. 1752 1753 * amd/conf.c (gopt_exec_map_timeout): function to parse 1754 exec_map_timeout [global] parameter. 1755 1756 * amd/amd.h (AMFS_EXEC_MAP_TIMEOUT): define default executable map 1757 timeout to 10 seconds, and a global placeholder for the 1758 configurable value. 1759 1760 * amd/amd.c (init_global_options): initialize default executable 1761 map timeout. 1762 1763 * amd/Makefile.am (EXTRA_amd_SOURCES): include info_exec.c in 1764 tarball. 1765 1766 * configure.in: enable executable maps. 1767 1768 * amd/mapc.c: define executable map functions and behavior. 1769 1770 * amd/info_exec.c: executable map implementation from Erik Kline 1771 <ekline at ekline dot com>, modified, cleaned-up, and fixed. 1772 17732005-03-07 Erez Zadok <ezk@cs.sunysb.edu> 1774 1775 * amd/info_file.c (file_init_or_mtime): consolidate identical 1776 file_init and file_mtime into one function. 1777 17782005-03-05 Erez Zadok <ezk@cs.sunysb.edu> 1779 1780 * doc/am-utils.texi (Program Filesystem): if umount/unmount are 1781 not specified, Amd uses "umount ${fs}" by default. 1782 1783 * amd/amfs_program.c (amfs_program_match): if neither unmount nor 1784 umount parameters are specified, use the default userland umount 1785 program with "umount ${fs}". This way type:=program doesn't have 1786 to specify the umount program for basic unmounting actions. 1787 (amfs_program_init): save unmount program string in mf_private 1788 only if it's NULL, not based on mf_refc. 1789 1790 * configure.in: auto-detect name of userland unmount program. 1791 1792 * aux_conf.h.in (UNMOUNT_PROGRAM): macro for default userland 1793 unmount program. 1794 1795 * amd/ops_cachefs.c (cachefs_init): save unmount program string in 1796 mf_private only if it's NULL, not based on mf_refc. 1797 1798 * configure.in: don't "discover" inheritance file system any more, 1799 since we don't have the .c file for it. 1800 1801 * amd/get_args.c (get_version_string): hack to still show that we 1802 support the inherit file system in output of amd -v. 1803 18042005-03-05 Ion Badulescu <ionut@moisil.badula.org> 1805 1806 * amd/amfs_inherit.c: removed, dead code 1807 1808 * amd/Makefile.am, 1809 amd/am_ops.c, 1810 amd/amd.h, 1811 conf/autofs/autofs_linux.h, 1812 conf/autofs/autofs_solaris_v1.h, 1813 conf/autofs/autofs_solaris_v2_v3.h, 1814 m4/macros/header_templates.m4: removed references to amfs_inherit.c 1815 18162005-03-05 Erez Zadok <ezk@cs.sunysb.edu> 1817 1818 * amd/autil.c (am_mounted): completely rewrite the unmount 1819 no/timeout code to (1) make more sense for odd conditions, and (2) 1820 allow utimeout=N mount options to override FS_NOTIMEOUT default 1821 flags for disk-based file systems such as ufs, pcfs, cdfs, etc. 1822 1823 * libamu/mount_fs.c (mount_fs): use safer XFREE() not free(). 1824 1825 * conf/umount/umount_linux.c (umount_fs): strtok is destructive, 1826 so use strdup'ed string. 1827 1828 * conf/mount/mount_linux.c (parse_opts): strtok is destructive, so 1829 use strdup'ed string. 1830 18312005-03-04 Erez Zadok <ezk@cs.sunysb.edu> 1832 1833 * scripts/amd.conf.5, doc/am-utils.texi (cache_duration 1834 Parameter): clarify actual behavior: this Parameter affects 1835 initial mount timeout as well as the linear backoff what happens 1836 the initial failed EBUSY unmount. 1837 1838 * doc/am-utils.texi (opts Option): better explanation of 1839 utimeout=N mount pseudo-option. 1840 1841 * amd/amd.h (AM_TTL, AM_TTL_W): better comments, minor cleanup. 1842 18432005-03-02 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1844 1845 * AUTHORS: add Dan Ottavio. 1846 1847 * scripts/amd.conf.5: document new debug_mtab_file option. 1848 1849 * scripts/amd.conf-sample (debug_mtab_file): show example. 1850 1851 * doc/am-utils.texi (debug_mtab_file Parameter): document new 1852 option. 1853 1854 * conf/mtab/mtab_{file,mach3}.c (open_locked_mtab): if mtab file 1855 doesn't exist by the time Amd tries to exist, return a 0 rather 1856 than hang indefinitely. 1857 1858 * amd/conf.c (gopt_debug_mtab_file): new function to parse 1859 debug_mtab_file option. 1860 1861 * amd/amd.h: placeholder for debug_mtab_file string. 1862 Define default debug_mtab_file to "/tmp/mtab". 1863 1864 * NEWS: document new debug_mtab_file option. 1865 18662005-03-02 Erez Zadok <ezk@cs.sunysb.edu> 1867 1868 * conf/transp/transp_{sockets,tli}.c (amu_get_myaddress): when 1869 users want Amd's NFS service to bind to some arbitrary "localhost" 1870 address, show which address was actually resolved and bound to. 1871 18722005-03-01 Erez Zadok <ezk@cs.sunysb.edu> 1873 1874 * amd/srvr_nfs.c (start_nfs_pings): move code from elsewhere 1875 (update_nfs_pingval) that initializes the pinger, as well as turns 1876 it on/off as needed, and handles changing its value. This is to 1877 avoid races and other infinite-loop conditions that could result 1878 in ping storms. 1879 1880 * amd/srvr_amfs_auto.c (amfs_generic_find_srvr): when creating a 1881 new file server structure, default the ping value to AM_PINGER 1882 (30sec) and set the FSF_PING_UNINIT flag. 1883 1884 * amd/amd.h (FSF_PING_UNINIT): new flag to tell whether the NFS 1885 pinger had been initialized for a given file server. 1886 1887 * scripts/ctl-amd.in (stop): no need to check if 1888 /var/lock/subsys/amd file exists if you do an rm -f afterward. 1889 Ensure that proper return value is returned from script. 1890 1891 * NEWS, doc/am-utils.texi (opts Option): update meaning of ping=N 1892 so that if N=-1, pings are off; if N=0, pings are set to the 1893 default value (currently 30 seconds). 1894 18952005-02-28 Erez Zadok <ezk@cs.sunysb.edu> 1896 1897 * amd/nfs_prot_svc.c (nfs_program_2): on TLI system, try to call 1898 __rpc_get_local_uid to verify if the RPC call through the 1899 local host interface came from UID 0. 1900 1901 * configure.in: look for internal libnsl function 1902 __rpc_get_local_uid (seems to be available on all known TLI 1903 systems, Solaris and HP-UX 11). 1904 1905 * conf/transp/transp_tli.c (amu_svc_getcaller): unnecessary 1906 function for TLI systems (and it violated a array's bounds, 1907 discovered with libumem.so). 1908 (bind_resv_port, bind_resv_port_only_udp, get_autofs_address): 1909 just to be on the safe side, set struct t_bind's qlen field to non 1910 zero (64 by default). This value cannot be zero for TCP 1911 connections, and it's unclear if it's good to have it zero for UDP 1912 connections, so setting it to 64 is safer. 1913 19142005-02-27 Erez Zadok <ezk@cs.sunysb.edu> 1915 1916 * doc/am-utils.texi (opts Option, Keep-alives): update text on 1917 ping option. 1918 1919 * amd/srvr_nfs.c (update_nfs_pingval): new function to update NFS 1920 server ping values, turn them off, or re-enable them. 1921 (find_nfs_srvr): call update_nfs_pingval() as needed. 1922 1923 * hlfsd/hlfsd.c (reaper, cleanup): don't use exit(3) in a signal 1924 handler, but use _exit(2) instead. 1925 1926 * amd/amd.c (parent_exit): This signal handler is called during 1927 Amd initialization. The parent forks a child to do all the hard 1928 automounting work, and waits for a SIGQUIT signal from the child. 1929 When the parent gets the signal it's supposed to call this handler 1930 and exit(3), thus completing the daemonizing process. Alas, on 1931 some systems, especially Linux 2.4/2.6 with Glibc, exit(3) doesn't 1932 always terminate the parent process. Worse, the parent process 1933 now refuses to accept any more SIGQUIT signals -- they are 1934 blocked. What's really annoying is that this doesn't happen all 1935 the time, suggesting a race condition somewhere. 1936 (This happens even if I change the logic to use another signal.) 1937 I traced this to something which exit(3) does in addition to 1938 exiting the process, probably some atexit() stuff or other 1939 side-effects related to signal handling. Either way, since at 1940 this stage the parent process just needs to terminate, I'm simply 1941 calling _exit(2). Note also that the OpenGroup doesn't list 1942 exit(3) as a recommended "Base Interface" but they do list 1943 _exit(2) as one. This fix seems to work reliably all the time. 1944 1945 * scripts/wait4amd2die.in: change default to recognize that amd is 1946 down more quickly (check every 3 seconds instead of 5). 1947 19482005-02-26 Erez Zadok <ezk@cs.sunysb.edu> 1949 1950 * libamu/xutil.c (amu_release_controlling_tty): warn if closing 1951 stdin/stdout/stderr failed. No need for tempfd. 1952 1953 * scripts/ctl-{amd,hlfsd}.in: before running any real program in 1954 these shell scripts, chdir to "/" to avoid possible hangs with 1955 existing NFS mounts. This was causing ctl-amd's forked 1956 grand-child amd process to hang if restartable_mounts=no. Go 1957 figure. 1958 19592005-02-25 Erez Zadok <ezk@cs.sunysb.edu> 1960 1961 * minor new port ia64-unknown-linux-rhel4 1962 1963 * fsinfo/fsi_util.c (set_ether_if): avoid u_long casting to -1 1964 (RHEL4 gcc 3.4.3 ia64 compiler complains). 1965 19662005-02-24 Erez Zadok <ezk@cs.sunysb.edu> 1967 1968 * minor new port i386-unknown-freebsd6.0 (6.0-CURRENT-SNAP001). 1969 19702005-02-23 Erez Zadok <ezk@cs.sunysb.edu> 1971 1972 * minor new port: i386-pc-linux-rhel3. 1973 1974 * INSTALL: major update of the compatibility list. 1975 1976 * m4/macros/os_cflags.m4: set AMU_CFLAGS not AM_CFLAGS. 1977 19782005-02-22 Erez Zadok <ezk@cs.sunysb.edu> 1979 1980 * scripts/amd.conf.5, doc/am-utils.texi (preferred_amq_port): 1981 document new preferred_amq_port [global] option. 1982 1983 * scripts/amd.conf-sample (preferred_amq_port): example. 1984 1985 * include/am_utils.h: add preferred_amq_port to prototype. 1986 1987 * conf/transp/transp_tli.c (bind_preferred_amq_port): new function 1988 to bind the Amq RPC service for UDP and TCP to a preferred port 1989 (or to any port if preferred_amq_port==0). 1990 (create_amq_service): decide if to bind to RPC_ANYFD, or to a 1991 requested port. 1992 1993 * conf/transp/transp_sockets.c (create_amq_service): if 1994 preferred_amq_port is greater than 0, then bind to that port for 1995 both UDP and TCP. If preferred_amq_port==0, then bind to any 1996 port. 1997 1998 * amd/nfs_start.c (mount_automounter): pass global 1999 preferred_amq_port value to create_amq_service(). 2000 2001 * amd/conf.c (gopt_preferred_amq_port): new function to parse 2002 amd.conf value for preferred_amq_port. 2003 2004 * amd/amd.h: placeholder for preferred_amq_port. 2005 20062005-02-21 Erez Zadok <ezk@cs.sunysb.edu> 2007 2008 * conf/transp/transp_tli.c (bind_resv_port_only_udp): rename old 2009 bindnfs_port to a more proper name. This function binds the NFS 2010 service to a specified port, and only for UDP. 2011 2012 * conf/transp/transp_tli.c: cleanup some code, rename some 2013 functions, in preparation for RPC amq port specification code. 2014 20152005-02-19 Erez Zadok <ezk@cs.sunysb.edu> 2016 2017 * */Makefile.am: don't redefine CFLAGS or LDFLAGS; they are 2018 reserved for users to pass them on the command line. Instead, use 2019 autoconf's internal AM_CFLAGS and AM_LDFLAGS. 2020 2021 * depcomp, install-sh, missing, mkinstalldirs: update from latest 2022 versions of Automake 1.9.2. 2023 2024 * m4/macros/*.m4: properly quote AC_DEFUN'ed macro name, and fix 2025 regexp/patsubst M4 commands. Newer versions of autoconf (e.g., 2026 v2.59) complain about those. 2027 20282005-02-17 Erez Zadok <ezk@cs.sunysb.edu> 2029 2030 * amd/opts.c (f_xhost): if we don't have hstrerror, just print the 2031 value of h_errno. 2032 2033 * configure.in: include -lresolv if it defines the hstrerror() 2034 function and not already available in existing libraries. 2035 2036 * minor new port: powerpc-apple-darwin7.7.0. 2037 2038 * amd/nfs_subr.c (mp_to_fh): pathlen should be u_int because it is 2039 later compared against an unsigned quantity (complaint from gcc 2040 3.3 on SuSE 8.2) 2041 2042 * include/am_utils.h: remove unnecessary (and conflicting) extern 2043 for bind_resv_port2(), which is declared as static in 2044 transp_tli.c. 2045 2046 * doc/am-utils.texi, scripts/amd.conf.5, scripts/amd.conf-sample, 2047 NEWS: document four new amd.conf options: nfs_retry_interval_udp, 2048 nfs_retransmit_counter_udp nfs_retry_interval_tcp, and 2049 nfs_retransmit_counter_tcp. 2050 2051 * amd/ops_nfs.c (mount_nfs_fh): set timeo/retrans values based on 2052 wether nfs_proto was "udp" or "tcp". 2053 2054 * amd/amfs_toplvl.c (amfs_toplvl_mount): set retrans/timeo values 2055 from default UDP settings (because toplvl mounts are UDP for now). 2056 2057 * amd/get_args.c (get_args): use parameters to -t option to set 2058 both UDP and TCP timeo/retrans values. 2059 2060 * amd/conf.c: (gopt_nfs_retransmit_counter_udp, 2061 (gopt_nfs_retransmit_counter_tcp, gopt_nfs_retry_interval_udp 2062 (gopt_nfs_retry_interval_tcp): new functions to parse UDP and TCP 2063 retrans/timeo parameters separately. 2064 (gopt_nfs_retry_interval, gopt_nfs_retransmit_counter): if 2065 specified, use it to set defaults for both UDP and TCP. 2066 2067 * amd/amd.c (init_global_options): initialize default values of 2068 both UDP and TCP retrans/timeo values to -1. 2069 2070 * amd/amd.h (AMU_TYPE_{TCP,UDP,MAX}): define separate retrans and 2071 timeo values, one for udp mounts and another for tcp mounts. 2072 20732005-02-16 Erez Zadok <ezk@cs.sunysb.edu> 2074 2075 * README.osx: new file with some instructions for Mac OS-X users, 2076 courtesy Kevin Layer. 2077 2078 * amd/get_args.c (get_args): move call to switch_to_logfile() 2079 after processing -v, so we don't print "no logfile defined; using 2080 stderr" when we're about to print version info and exit anyway. 2081 2082 * minor new port: powerpc-ibm-aix5.3.0.0. 2083 2084 * hlfsd/hlfsd.c (main): rewrite code to avoid negative array 2085 references. 2086 2087 * conf/checkmount/checkmount_aix.c: remove extern definition for 2088 mntctl(), since AIX 5.3 has it in <sys/vmount.h>. 2089 2090 * amd/info_union.c (union_reload): rewrite code to avoid negative 2091 array references. 2092 2093 * amd/opts.c (split_opts, expand_op): rewrite code to avoid 2094 negative array references. 2095 2096 * conf/mtab/mtab_aix.c: remove extern definition for mntctl(), 2097 since AIX 5.3 has it in <sys/vmount.h>. 2098 2099 * libamu/xutil.c (real_plog): rewrite code to avoid negative array 2100 references. 2101 2102 * libamu/wire.c (is_network_member): rearrange code slightly to 2103 avoid negative array references (AIX 5.3 xlC 7.0 compiler 2104 complains about it). 2105 21062005-01-26 Erez Zadok <ezk@cs.sunysb.edu> 2107 2108 * doc/am-utils.texi (xhost Selector Function): document new 2109 selector function. 2110 2111 * amd/opts.c (f_xhost): new function for use when matching the 2112 "host" selector for the current host's name. This function will 2113 now match the primary host name as well as all known aliases 2114 (CNAMES) that gethostbyname() returns. This function now supports 2115 a new function selector called xhost(ARG); the old host==ARG 2116 selector is unharmed. 2117 21182005-01-17 Ion Badulescu <ionut@moisil.badula.org> 2119 2120 * NEWS: document the ability to restart old mount points 2121 2122 * amd/map.c (mount_auto_node): force the fileid of the 2123 root to be 1, so that it won't change between restarts; use the 2124 root filesystem's own methods instead of hard-coding the use of 2125 the default methods 2126 2127 * conf/transp/transp_tli.c (create_nfs_service): better cleanup on 2128 error conditions. 2129 (bind_resv_port2): allow the caller to request a certain port. 2130 2131 * conf/transp/transp_sockets.c (bind_resv_port): allow the caller 2132 to request a certain port. 2133 (create_nfs_service): better cleanup on error conditions. 2134 2135 * amd/restart.c (restart_automounter_nodes): new function, takes 2136 care of restarting automounter NFS mount points (autofs will come 2137 later). 2138 (restart): skip all automounter mount points. 2139 2140 * amd/nfs_subr.c (fh_to_mp3, mp_to_fh): new filehandle 2141 implementation: if the path to the node is shorter than sizeof(fh) 2142 chars (currently 32 chars for a NFSv2 fh), simply store it inside 2143 the fh. For longer paths, keep the old implementation. 2144 2145 * amd/nfs_start.c (mount_automounter): reorder things so that 2146 restarting the toplvl filesystems occurs before anything else (so 2147 that we can grab all the ports we need before we accidentally use 2148 them for something else). 2149 2150 * amd/mntfs.c (locate_mntfs): remove dead code; add special 2151 handling of restarted toplvl filesystems. 2152 2153 * amd/mapc.c (root_keyiter): fix up a comment. 2154 2155 * amd/map.c (path_to_exported_ap): new function, searches for and 2156 returns a node by the path to it. 2157 (get_root_nfs_fh): remove unnecessary fiddling with the root fh. 2158 2159 * config.guess.long: support Red Hat Enterprise Linux 2160 21612005-01-17 Erez Zadok <ezk@cs.sunysb.edu> 2162 2163 * libamu/util.c (rmdirs): prevent amd from logging 'Read-only 2164 filesystem' errors when the mount point has an ancestor (i.e. '/') 2165 that is mounted read-only. Patch from David Rage <rage@ucl.ac.uk>. 2166 21672005-01-17 Ion Badulescu <ionut@moisil.badula.org> 2168 2169 * conf/umount/umount_linux.c (umount_fs): Linux doesn't need the 2170 autofs space hack 2171 2172 * conf/umount/umount_default.c (umount_fs): there is no need for 2173 HAVE_LOOP_DEV, now that Linux has its own dedicated umount_linux.c 2174 21752005-01-17 Erez Zadok <ezk@cs.sunysb.edu> 2176 2177 * doc/am-utils.texi (Automatic Unmounting): document new umount2() 2178 behavior on Linux. 2179 2180 * conf/umount/umount_linux.c (umount_fs): new file. On Linux, if 2181 umount(2) failed with EIO or ESTALE, try umount2(2) with 2182 MNT_FORCE+MNT_DETACH. Based on patch from Christos Zoulas 2183 <christos@zoulas.com>. 2184 2185 * m4/macros/check_umount_style.m4: pick new linux umount style. 2186 2187 * Makefile.am (EXTRA_DIST_CONF): distribute new umount_linux.c 2188 file. 2189 21902005-01-16 Erez Zadok <ezk@cs.sunysb.edu> 2191 2192 * conf/nfs_prot/nfs_prot_aix{4_2,4_3,5_1,5_2}.h, 2193 m4/macros/struct_nfs_args.m4: minor cleanups for quicker execution 2194 of "nfs_args" test. 2195 21962005-01-13 Erez Zadok <ezk@cs.sunysb.edu> 2197 2198 * amd/get_args.c (show_usage): separate function to print usage 2199 string. 2200 (get_args) Call show_usage() from get_args when needed, then exit. 2201 2202 * amd/get_args.c (get_version_string): print also domain, host, 2203 and hostd. 2204 (get_args): print version string at the very end, after all other 2205 values had been initialized. Patch from Christos Zoulas 2206 <christos@zoulas.com>. 2207 2208 * conf/transp/transp_sockets.c (check_pmap_up, get_nfs_version), 2209 conf/transp/transp_tli.c (check_pmap_up): correct an inconsistency 2210 in timeouts in the RPC code between socket and TLI 2211 implementations. The clntudp_create timeout has a different 2212 meaning than the clnt_call timeout. Set the timeout of the create 2213 to 2 seconds which means retry if no answer in two seconds, and 2214 the timeout call to 6 seconds, which will give us consistently 2 2215 to 3 pings. This is useful on occasional network UDP loss where a 2216 single packet loss would wrongfully mark a server down. (The TLI 2217 code is the one that had the problem occurs.) Patch from Christos 2218 Zoulas <christos@zoulas.com>. 2219 2220 * libamu/mount_fs.c (compute_nfs_attrcache_flags): make sure code 2221 compiles even for systems that don't have the nfs_args 2222 ac{reg,dir}{min,max} fields. 2223 2224 * amd/amfs_toplvl.c (set_auto_attrcache_timeout): just to be safe, 2225 add "noac" if amd.conf option auto_attrcache was set to 0. This 2226 should hopefully make the compute_nfs_attrcache_flags patch even 2227 safer. 2228 2229 * libamu/mount_fs.c (compute_nfs_attrcache_flags): separate 2230 function to compute attribute-cache values. This function now 2231 computes attribute-cache flags for BOTH Amd's automount points 2232 (NFS) as well as any normal NFS mount that Amd performs. 2233 (compute_nfs_args, compute_automounter_nfs_args): call 2234 compute_nfs_attrcache_flags to figure out attribute-cache related 2235 flags. Patch from Christos Zoulas <christos@zoulas.com>. 2236 2237 * scripts/amd.conf-sample: show examples of new global options 2238 domain_strip and auto_attrcache. 2239 2240 * scripts/amd.conf.5: document new global options domain_strip and 2241 auto_attrcache. Add warning to auto_attrcache use in case of 2242 ESTALE. 2243 2244 * doc/am-utils.texi: minor cleanups and document new global 2245 options domain_strip and auto_attrcache. Add warning to 2246 auto_attrcache use in case of ESTALE. 2247 2248 * amd/conf.c (gopt_auto_attrcache): parse new global amd.conf 2249 option auto_attrcache. 2250 (gopt_domain_strip): parse new global amd.conf option 2251 domain_strip. Part of a patch from Christos Zoulas 2252 <christos@zoulas.com>. 2253 2254 * amd/autil.c (host_normalize): don't call domain_strip() 2255 unconditionally, but depend on the new global amd.conf flag 2256 domain_strip. 2257 2258 * amd/amfs_toplvl.c (set_auto_attrcache_timeout): new function to 2259 set attribute cache timeout value given other configured global 2260 defaults. 2261 (amfs_toplvl_mount): set automount point attribute cache option 2262 value to "noac" if attrcache=0, else set it to whatever 2263 set_auto_attrcache_timeout() returns. 2264 2265 * amd/amd.h (CFM_DOMAIN_STRIP, CFM_DEFAULT_FLAGS): flag to decide 2266 if to strip the domain from the host name or not, default options 2267 set to strip the domain. 2268 Store global value of automount attribute cache timeout value. 2269 2270 * amd/amd.c (init_global_options): add flag to record automount 2271 point attribute cache value. 2272 2273 * amd/amd.c (do_memory_locking): new function to encapsulate all 2274 of the memory-locking functionality, which was in main() before. 2275 Also added a call to madvise(), just in case. 2276 (main): call do_memory_locking() to pin process memory if amd.conf 2277 asked for it, but do so after the main Amd process daemonizes, 2278 because mlock/mlockall is not inherited by fork() by default. 2279 Slightly restructured patch from Jonathan Chen 2280 <jon+amd@spock.org>. 2281 2282 * configure.in: check for madvise(2). 2283 2284 * config.guess, config.sub: updates for latest official GNU 2285 versions. 2286 2287 * m4/GNUmakefile: update paths to "make update" 2288 22892005-01-12 Erez Zadok <ezk@cs.sunysb.edu> 2290 2291 * conf/nfs_prot/nfs_prot_hpux11.h: define an nfs_fh3 structure 2292 that's compatible for HPUX11 as well as NFSv3. 2293 2294 * include/am_defs.h: On AIX 5.2, both <resolv.h> and 2295 <arpa/nameser_compat.h> define MAXDNAME, if compiling with gcc 2296 -D_USE_IRS (so that we get extern definitions for hstrerror() and 2297 others). So undef MAXDNAME before it gets redefined. 2298 2299 * include/am_defs.h: Solaris 10 (build 72) defines GROUP_OBJ in 2300 <sys/acl.h>, which is included in many other header files. 2301 <rpcsvc/nis.h> uses GROUP_OBJ inside enum zotypes. So if you're 2302 unlucky enough to include both headers, you get a compile error 2303 because the two symbols conflict. Temp hack: undefine acl.h's 2304 GROUP_OBJ before including nis.h, because we don't need acl.h for 2305 am-utils. 2306 2307 * m4/macros/os_cflags.m4: turn -D_USE_IRS for AIX5+ so that 2308 certain extern definitions of resolver functions become available. 2309 2310 * amd/opts.c (expand_op): use #define for expand_error string 2311 because some compilers complain about the use of static const 2312 char[] inside a varargs function. 2313 2314 * minor new port i386-unknown-netbsdelf1.6.2. 2315 2316 * new port i386-unknown-netbsdelf2.0. 2317 2318 * minor port i386-unknown-freebsd5.3. 2319 2320 * libamu/mount_fs.c (compute_nfs_args): don't compare 2321 nap->maxgrouplist against NULL but against 0 directly, because on 2322 FreeBSD 4.3, NULL is defined is (void *)0 and gcc 3.4 complains 2323 about a type mismatch. 2324 2325 * minor port i386-pc-linux-fc3 (Fedora Core 3). 2326 23272005-01-11 Erez Zadok <ezk@cs.sunysb.edu> 2328 2329 * hlfsd/hlfsd.c (main): use sigsuspend() over sigpause(), because 2330 FC3 doesn't have proper extern definition for the defunct 2331 sigpause(). 2332 2333 * configure.in: look for sigsuspend(). 2334 23352005-01-01 Erez Zadok <ezk@cs.sunysb.edu> 2336 2337 * updated copyright year to 2005 on all files. 2338 23392004-11-29 Erez Zadok <ezk@cs.sunysb.edu> 2340 2341 * scripts/amd.conf.5: Small fixes to typos in man page, from 2342 Thomas Klausner <tk@giga.or.at>. 2343 23442004-10-22 Erez Zadok <ezk@cs.sunysb.edu> 2345 2346 * ldap.schema: add this file to distribution. 2347 23482004-09-15 Erez Zadok <ezk@cs.sunysb.edu> 2349 2350 * doc/am-utils.texi: fix old URLs. 2351 23522004-09-01 Erez Zadok <ezk@cs.sunysb.edu> 2353 2354 * conf/mtab/mtab_aix.c (read_mtab): avoid a race condition between 2355 multiple calls to mntctl(). Patch suggested by Michael van Elst 2356 <M.van.Elst@science-computing.de>. 2357 23582004-08-07 Erez Zadok <ezk@cs.sunysb.edu> 2359 2360 * doc/am-utils.texi (Program Filesystem): document how to get 2361 double slashes in Amd maps. 2362 2363 * amd/opts.c (normalize_slash): support escaped slashes, needed 2364 for SMB mounts. Use '\\\/\\\/' in a string to get a double slash. 2365 23662004-08-06 Erez Zadok <ezk@cs.sunysb.edu> 2367 2368 * amd/amfs_program.c (amfs_program_match): bug fix. Complain if 2369 both opt_unmount and opt_umount are missing, not when just one of 2370 them is missing. 2371 23722004-08-03 Erez Zadok <ezk@cs.sunysb.edu> 2373 2374 * amq/pawd.c (find_mt): recognize "linkx" type mounts. Patch from 2375 Hauke Fath <hauke@Espresso.Rhein-Neckar.DE>. Support "nfsx" while 2376 we're at it. 2377 2378 * doc/am-utils.texi: mention bugzilla. Fix broken URL HREF's. 2379 23802004-08-02 Erez Zadok <ezk@cs.sunysb.edu> 2381 2382 * amq/pawd.c (find_mt): recognize "host" type mounts. Patch from 2383 Dan Nelson <dnelson@allantgroup.com>. 2384 23852004-07-30 Erez Zadok <ezk@cs.sunysb.edu> 2386 2387 * doc/am-utils.texi, NEWS: minor typos fixed. 2388 23892004-07-30 Erez Zadok <ezk@play.cs.columbia.edu> 2390 2391 * include/am_xdr_func.h: cannot have field-less structure; put a 2392 dummy field in. 2393 2394 * conf/autofs/autofs_solaris_v2_v3.c (xdr_autofs_rddirargs): cast 2395 2nd arg of xdr_u_int to a u_int*, not int*. 2396 (autofs_mount_2_req): don't use C++ // comments. 2397 23982004-07-30 Erez Zadok <ezk@cs.sunysb.edu> 2399 2400 * m4/macros/{try_compile_anyfs,check_field}.m4: include 2401 <fs/msdosfs/msdosfsmount.h> if it exists. Part of a set of 2402 FreeBSD 5 patches from Martin Blapp <mb@imp.ch>. 2403 2404 * include/am_defs.h: include <fs/msdosfs/msdosfsmount.h> if it 2405 exists. 2406 2407 * amd/ops_pcfs.c (mount_pcfs): set pcfs_args_t.dirmask field to 2408 0777 by default. 2409 2410 * configure.in: check for pcfs_args_t.dirmask field. Check for 2411 existence of <fs/msdosfs/msdosfsmount.h>, new on FreeBSD 5. 2412 24132004-07-29 Erez Zadok <ezk@cs.sunysb.edu> 2414 2415 * minor new port: i386-pc-linux-fc2 (Fedora Core 2). 2416 2417 * amd/info_ldap.c (amu_ldap_rebind): don't use ldap_enable_cache() 2418 unless the function exists in libldap and the extern is in 2419 <ldap.h>. Recently, openldap removed the extern from ldap.h, but 2420 left the function in libldap, for binary compatibility; however 2421 ldap_enable_cache and related functions have been deprecated (and 2422 no longer listed in the header files), and therefore should be 2423 avoided. 2424 2425 * m4/macros/check_extern_ldap.m4: new macro to check for 2426 LDAP-specific externs. This is separate from check_extern.m4 so 2427 as to avoid breaking the general-purpose macro with LDAP-specific 2428 headers. 2429 2430 * m4/macros/header_templates.m4: extern template for new 2431 HAVE_EXTERN_LDAP_ENABLE_CACHE. 2432 2433 * configure.in: call new check_extern_ldap.m4 macro. 2434 2435 * Makefile.am (EXTRA_DIST_M4): distribute new check_extern_ldap.m4 2436 macro. 2437 2438 * config.guess.long: distinguish between redhat and fedora-core 2439 releases. 2440 24412004-07-23 Erez Zadok <ezk@cs.sunysb.edu> 2442 2443 * Minor new port i386-pc-linux-suse8.2: minor new port to SuSE 2444 8.2. This systems' latest GCC (gcc version 3.3 20030226 2445 prerelease) correctly caught a lot of possibly bad comparisons 2446 between signed and unsigned quantities. 2447 2448 * hlfsd/homedir.c (table_add, plt_search): changed first arg of 2449 both functions to u_int. 2450 2451 * hlfsd/hlfsd.h, hlfsd/hlfsd.c: change 'cache_interval' to u_int. 2452 Changed proto for plt_search arg to u_int. 2453 2454 * amq/amq.c (show_mi, main): change 'i' to u_int. 2455 2456 * amq/pawd.c (find_mlp): change 'i' to u_int. 2457 2458 * amd/srvr_nfs.c (find_nfs_srvr): change proto_nfs_version to 2459 u_int. 2460 2461 * amd/amd.h: change prototype of vreaddir and amfs_error_readdir 2462 to use u_int count parameter. 2463 2464 * amd/ops_TEMPLATE.c (foofs_readdir), amd/amfs_error.c 2465 (amfs_error_readdir): change 'count' parameter in proto to u_int. 2466 2467 * amd/amd.h: change proto of amfs_generic_readdir() to use u_int 2468 count parameter. 2469 2470 * amd/readdir.c (make_entry_chain): preflen should be u_int. 2471 (amfs_readdir_browsable): change 'count' to u_int. 2472 (amfs_generic_readdir): change 'count' to u_int. 2473 2474 * amd/amd.h: amu_global_options's portmap_program field should be 2475 u_long, not int (to match RPC conventions). Change am_fh's 2476 fhh_gen field to u_int, to match am_gen field in struct am_node. 2477 2478 * amd/conf.c (gopt_portmap_program): use atol() instead of atoi() 2479 to avoid size differences. 2480 2481 * conf/mount/mount_linux.c (find_unused_loop_device): cast to int 2482 to avoid comparison between chars and integers. 2483 2484 * libamu/mount_fs.c (get_hex_string): change 'i' to u_int to avoid 2485 comparisons between signed and unsigned integers. 2486 24872004-07-13 Erez Zadok <ezk@cs.sunysb.edu> 2488 2489 * minor new port: i386-pc-linux-suse9.1. 2490 2491 * include/am_defs.h: don't use __kernel_dev_t for dev_t on Linux, 2492 because SuSE wants __kernel_old_dev_t. Instead, just define it 2493 directly to what they both use: an unsigned short. 2494 24952004-05-27 Erez Zadok <ezk@cs.sunysb.edu> 2496 2497 * minor new port: i386-unknown-freebsd4.10 2498 24992004-04-29 Ion Badulescu <ionut@moisil.badula.org> 2500 2501 * amd/amfs_generic.c (amfs_lookup_one_mntfs): fix the creation of 2502 mountpoints for autofs-based sublinks the right way 2503 25042004-04-28 Ion Badulescu <ionut@moisil.badula.org> 2505 2506 Fixes for various memory management problems discovered by 2507 Rainer's purify run: 2508 2509 * conf/transp/transp_tli.c (check_pmap_up): zero out struct 2510 timeval before using; 2511 (get_nfs_version): ditto 2512 2513 * amd/map.c (umount_exported): make sure we don't try to free the 2514 same am_node multiple times, by setting its corresponding 2515 exported_ap slot to null 2516 2517 * amd/get_args.c (get_version_string): a static pointer is pretty 2518 pointless, make it automatic 2519 2520 * amd/conf.c (gopt_debug_options): remove unnecessary strdup(); 2521 (gopt_log_options): ditto 2522 (gopt_print_version): free version string after using it 2523 2524 * amd/autil.c (mf_mounted): free mntfs->mf_fo instead of leaking 2525 it 2526 2527 * amd/amfs_generic.c (amfs_lookup_one_mntfs): use the CALLOC macro 2528 (amfs_lookup_mntfs): free def_opts on return 2529 2530 * amd/amd.c (daemon_mode): zero out struct sigaction before using 2531 it; 2532 (main): ditto 2533 25342004-04-27 Ion Badulescu <ionut@moisil.badula.org> 2535 2536 * amd/amfs_generic.c (amfs_lookup_one_mntfs): force FS_MKMNT on 2537 the real mount of an autofs-based sublink 2538 25392004-04-25 Ion Badulescu <ionut@moisil.badula.org> 2540 2541 * amd/map.c (free_map_if_success): avoid dereferencing a pointer 2542 to potentially freed memory 2543 25442004-02-26 Erez Zadok <ezk@cs.sunysb.edu> 2545 2546 * minor new port: i386-unknown-freebsd5.2.1. 2547 25482004-01-30 Ion Badulescu <ion@guppy.limebrokerage.com> 2549 2550 * scripts/ctl-hlfsd.in: don't run hlfsd with -D fork 2551 25522004-01-25 Erez Zadok <ezk@cs.sunysb.edu> 2553 2554 * minor new port: sparc64-unknown-linux-deb3.0 2555 2556 * config.guess.long: recoognize Debian Linux. 2557 25582004-01-22 Erez Zadok <ezk@cs.sunysb.edu> 2559 2560 * conf/transp/transp_tli.c (amu_get_myaddress): use 2561 htonl(INADDR_LOOPBACK) and define INADDR_LOOPBACK if not already 2562 available. 2563 25642004-01-21 Erez Zadok <ezk@cs.sunysb.edu> 2565 2566 * wire-test/wire-test.c, hlfsd/hlfsd.c (main): pass NULL as second 2567 parameter to amu_get_myaddress(). 2568 2569 * conf/transp/transp_tli.c (amu_get_myaddress): resolve value of 2570 localhost_address amd.conf parameter, if defined (else default to 2571 HOST_SELF_CONNECT). 2572 Removed htonl() around socket address copying (I think it was 2573 wrong) since plog("My IP address is...") in amd.c was printing 2574 addresses wrong on Solaris x86.. 2575 2576 * conf/transp/transp_sockets.c (amu_get_myaddress): comment out 2577 old DEBUG code that warns if 127.0.0.1 isn't the same as what 2578 get_myaddress() reports. Add code to resolve value of 2579 localhost_address amd.conf parameter, if defined (else default to 2580 127.0.0.1). 2581 2582 * amd/conf.c (gopt_localhost_address): new function to parse 2583 amd.conf parameter localhost_address. 2584 2585 * amd/amd.h: global field to store amd.conf localhost_address 2586 parameter. 2587 2588 * amd/amd.c (main): call amu_get_myaddress with global option, 2589 which could have been set in amd.conf. 2590 2591 * NEWS, doc/am-utils.texi, scripts/amd.conf-sample, 2592 scripts/amd.conf.5: document new option localhost_address. 2593 25942004-01-20 Ion Badulescu <ionut@moisil.badula.org> 2595 2596 * amd/conf.c (gopt_nfs_allow_insecure_port): support function for 2597 the new "nfs_allow_insecure_port" amd.conf directive 2598 2599 * amd/nfs_prot_svc.c (nfs_program_2): complain about the insecure 2600 port and drop the request only if the "nfs_allow_insecure_port" 2601 option is not set in amd.conf 2602 2603 * doc/am-utils.texi (Global Parameters): documented the new 2604 amd.conf directive "nfs_allow_insecure_port" 2605 2606 * scripts/amd.conf.5 (nfs_allow_insecure_port): ditto 2607 2608 * scripts/amd.conf-sample (nfs_allow_insecure_port): added the 2609 "nfs_allow_insecure_port" directive 2610 26112004-01-20 Erez Zadok <ezk@cs.sunysb.edu> 2612 2613 * doc/am-utils.texi: amd-workers is defunct. 2614 26152004-01-19 Erez Zadok <ezk@cs.sunysb.edu> 2616 2617 * cvs-server.txt: updated instructions 2618 26192004-01-18 Erez Zadok <ezk@cs.sunysb.edu> 2620 2621 * minor new port: i386-unknown-freebsd5.2. 2622 26232004-01-05 Erez Zadok <ezk@cs.sunysb.edu> 2624 2625 * MIRRORS.{txt,html}: verify each mirror site, update to new 2626 locations (if found), and remove stale mirrors URLs. 2627 2628 * updated copyright year to 2004 on all files. 2629 26302004-01-03 Erez Zadok <ezk@cs.sunysb.edu> 2631 2632 * MIRRORS.txt: track status. 2633 2634 * Makefile.am (install-snapshot): new directory to install 2635 snapshots (now that am-utils home page is moved). 2636 26372004-01-02 Erez Zadok <ezk@cs.sunysb.edu> 2638 2639 * INSTALL, README.autofs: remove forced text-mode. 2640 2641 * doc/am-utils.texi: fix Amd book URL. 2642 2643 * Makefile.am (EXTRA_DIST): include new mirror files in tarball. 2644 2645 * AUTHORS, BUGS, README, README.y2k, configure.in, 2646 doc/am-utils.texi: revisions to use newer URLs for Web site, FTP, 2647 and mailing lists. 2648 2649 * MIRRORS.{html,txt}: updates. 2650 2651 * doc/Makefile.am: install mirror lists officially. 2652 26532004-01-01 Erez Zadok <ezk@cs.sunysb.edu> 2654 2655 * tasks: things to do after migrating ftp/Web sites. 2656 26572003-12-09 Erez Zadok <ezk@cs.sunysb.edu> 2658 2659 * fsinfo/fsinfo.8: fixed typo (unbalanced []) in man page. Bug 2660 report from Eric S. Raymond <esr@thyrsus.com>. 2661 26622003-11-18 Erez Zadok <ezk@cs.sunysb.edu> 2663 2664 * Makefile.am (EXTRA_DIST_M4): exclude removed file 2665 m4/macros/struct_nfs_fh3.m4 from distro. 2666 26672003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2668 2669 * libamu/xdr_func.c (xdr_am_nfs_fh3): Use AM_FHSIZE3 instead of 2670 FHSIZE3 (may be undefined). 2671 26722003-10-24 Ion Badulescu <ion@guppy.limebrokerage.com> 2673 2674 Compile fix for Solaris7 with LDAP: 2675 2676 * include/am_defs.h: moved the ldap headers before am_nfs_prot.h 2677 to facilitate using ldap types in it 2678 2679 * conf/nfs_prot/nfs_prot_sunos5_7.h: add a couple of ldap 2680 definitions that Sun left out of their headers 2681 26822003-10-24 Ion Badulescu <ionut@moisil.badula.org> 2683 2684 * conf/nfs_prot/nfs_prot_*.h: remove all NFSv3-related 2685 definitions, they are now defined globally 2686 2687 * libamu/xdr_func.c: unconditionally define all xdr functions 2688 needed for NFSv3, but with an am_ prefix to prevent namespace 2689 collisions 2690 2691 * amd/amfs_host.c, amd/ops_nfs.c, amd/srvr_nfs.c, 2692 libamu/mount_fs.c: added the am_ prefix to all 2693 structures and functions having to do with NFSv3 to prevent 2694 namespace collisions 2695 2696 * include/am_utils.h: moved definition of am_nfs_handle to ... 2697 2698 * include/am_xdr_func.h: ... here. Also define AM_FHSIZE3, 2699 am_nfs_fh3, AM_NFSPROC3_LOOKUP, am_nfsstat3, am_fhandle3, 2700 am_mountstat3, am_mountres3_ok, am_mountres3, am_filename3, 2701 am_diropargs3, am_LOOKUP3args, am_LOOKUP3resok, am_LOOKUP3resfail, 2702 am_LOOKUP3res here; remove cross-platform compile helper macros 2703 AMU_LOOKUP3RES_*. 2704 2705 * include/am_defs.h: include am_xdr_func.h before am_utils.h to 2706 provide definitions for NFS filehandles 2707 2708 * amd/amd.h: removed declaration for xdr_mountres3 2709 2710 * doc/am-utils.text: minor warning fix 2711 2712 * BUGS: document the autoconf warnings when trying to compile 2713 system header files in isolation 2714 27152003-10-23 Ion Badulescu <ionut@moisil.badula.org> 2716 2717 * m4/macros/struct_nfs_fh3.m4: removed, not needed 2718 2719 * configure.in: check if struct mounta has the optptr field; 2720 removed all NFSv3-related checks, we implement everything 2721 internally now 2722 2723 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mount_2_free): don't 2724 touch mnt->optptr unless HAVE_MOUNTA_OPTPTR is defined 2725 27262003-10-22 Ion Badulescu <ionut@moisil.badula.org> 2727 2728 * m4/macros/struct_nfs_fh3.m4: removed, not used anymore 2729 2730 * libamu/xdr_func.c (xdr_am_nfs_fh3): update xdr_am_nfs_fh3 2731 comments 2732 2733 * configure.in: don't check for xdr_nfs_fh3 and struct nfs_fh3, we 2734 always use our own 2735 27362003-10-22 Ion Badulescu <ion@guppy.limebrokerage.com> 2737 2738 * BUGS: document the limitations of bind mounts on Linux 2739 27402003-10-21 Ion Badulescu <ionut@moisil.badula.org> 2741 2742 * buildall: added support for -i (make install) 2743 27442003-10-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2745 2746 * NEWS: New minor port i386-pc-solaris2.10 (Solaris 10). 2747 * INSTALL: Mention its test status. 2748 27492003-10-16 Erez Zadok <ezk@cs.sunysb.edu> 2750 2751 * amd/ops_nfs.c (nfs_init): declare as static to match forward 2752 definition at top of file. 2753 2754 * conf/nfs_prot/nfs_prot_{hpux11, netbsd1_4,openbsd,aix5_2}.h: 2755 added missing definitions for LOOKUP3res, diropargs3, etc. 2756 27572003-10-15 Erez Zadok <ezk@cs.sunysb.edu> 2758 2759 * libamu/xdr_func.c (xdr_LOOKUP3res, xdr_am_nfs_fh3), 2760 libamu/mount_fs.c (compute_nfs_args), amd/ops_nfs.c 2761 (got_nfs_fh_mount, got_nfs_fh_webnfs, prime_nfs_fhandle_cache, 2762 webnfs_lookup), amd/amfs_host.c (fetch_fhandle): Attempt to 2763 cleanup some inconsistencies with how we treat NFSv3 file handles. 2764 Whenever we need to get data out of a filehandle given to us, we 2765 assume that it uses the OS's native fhandle structure 2766 (often struct nfs_fh3). When we store the fhandle data for our 2767 own use, however, we store it in one of two ways. The first, is 2768 that we use the system's default nfs_fh3 structure; the second is 2769 that we define out own struct am_nfs_fh3 in nfs_prot.h (and go 2770 through an elaborate autoconf song-and-dance to "discover" it as a 2771 native fh3 handle structure). It appears that we do the latter, 2772 instead of using the system's default fhandle structure, simply to 2773 avoid extra malloc's and free's, because whereas nfsv2's fhandle 2774 structure is a simple 32-byte buffer, nfsv3's fhandle structures 2775 often just define a "char *" for the fhandle data, and the caller 2776 must malloc/free the space inside as needed. Our code was never 2777 written with constructor/destructor callbacks for these nfsv3 2778 filehandles. Moreover, we carefully wrote our own am_nfs_fh3 2779 structure so IT JUST SO HAPPENS to align with most (hopefully all) 2780 of the fhandle structures for v3: first four bytes are the length 2781 fields and the next four bytes are the fhandle data. Sigh. 2782 Having this inconsistent use of v3 filehandles can be a real bear, 2783 because we simply cannot avoid using the system's default fhandle 2784 structure indirectly, through things like diropargs3 in 2785 xdr_diropargs3(), which has inside of it a reference to the 2786 system's default nfs_fh3 structure. ANYWAY, the current fix I've 2787 come up with is to generalize the way we dereference field names 2788 within the nfs_fh3 structure (whether ours or the system's) and 2789 the same for the system's LOOKUP3res structure. I'm not pleased 2790 with this fix; I'd rather we don't use our own am_nfs_fh3 2791 structure at all. 2792 2793 * libamu/xdr_func.c (xdr_am_nfs_fh3): always define this 2794 function if we have NFS3, because we often use our own, 2795 incompatible am_nfs_fh3 structure. 2796 2797 * include/am_xdr_func.h: We cannot use the native system's 2798 xdr_nfs_fh3 because we are defining our own incompatible 2799 am_hfs_fh3 structure for some systems. 2800 2801 * include/am_xdr_func.h: Define default values for field names of 2802 struct nfs_fh3 and LOOKUP3res. 2803 2804 * doc/am-utils.texi (debug_options Parameter): minor typo fixed. 2805 2806 * conf/nfs_prot/nfs_prot_freebsd3.h: FreeBSD uses different fields 2807 names for struct nfs_fh3 and LOOKUP3res, so override the default 2808 names here. 2809 2810 * configure.in: AMU_CHECK_FS_MNTENT(nfs3) test before 2811 AMU_STRUCT_NFS_FH3, because the latter depends on the former. 2812 2813 * amd/ops_nfs.c (prime_nfs_fhandle_cache): add {} to disambiguate 2814 and clarify if-the-else clauses. 2815 28162003-10-13 Ion Badulescu <ionut@moisil.badula.org> 2817 2818 * amd/get_args.c (get_version_string): change "Built by" to 2819 "Configured by", and add a new "Built by" line using the variables 2820 below 2821 2822 * m4/update_build_version (vers): add BUILD_USER, BUILD_HOST, and 2823 BUILD_DATE to build_version.h 2824 2825 * amd/mntfs.c (locate_mntfs): fix restarted filesystems: mf_fo 2826 must be initialized even for them, otherwise we lose opt_sublink 2827 (and perhaps other options as well). Report from Rainer Orth. 2828 2829 * amd/amfs_generic.c (amfs_bgmount): The fix for the mf_fo NULL 2830 pointer dereferencing was a bit too aggressive and could end up 2831 not processing the sublink option if the filesystem was already 2832 mounted. 2833 28342003-10-11 Ion Badulescu <ionut@moisil.badula.org> 2835 2836 Fix restarted filesystem by disabling the amfs_inherit filesystem 2837 and moving the restarting logic into the generic code. The old 2838 code is still there, will be removed sometime in the near future. 2839 2840 * amd/mntfs.c (locate_mntfs): disable amfs_inherit and simply 2841 return the pointer to the restarted filesystem 2842 (free_mntfs): check for the MFF_RESTART flag instead of the 2843 amfs_inherit ops 2844 2845 * amd/autil.c (mf_mounted): remove the MFF_RESTART flag once the 2846 filesystem is in use 2847 2848 * amd/amfs_nfsx.c (amfs_nfsx_init): only call fs_init() if the 2849 filesystem is not being restarted 2850 (amfs_nfsx_remount): if the filesystem is already mounted, 2851 short-circuit the code and just continue 2852 2853 * amd/amfs_generic.c (amfs_bgmount): only call fs_init() if the 2854 filesystem is not being restarted; remove hack that was used to 2855 work around an amfs_inherit problem 2856 28572003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2858 2859 Use WebNFS to obtain file handles for mount(2). 2860 2861 * NEWS: Document WebNFS support. 2862 2863 * configure.in: Check for public mount option. 2864 * include/am_compat.h (MNTTAB_OPT_PUBLIC): Define if missing. 2865 * doc/am-utils.texi (opts Option): Renamed webnfs to public, 2866 update description. 2867 2868 * amd/amd.h (FSF_WEBNFS): New mntfs flag. 2869 * include/am_utils.h (RPC_XID_WEBNFS): New XID type. 2870 2871 * amd/amfs_host.c (amfs_host_mount, amfs_host_umounted): Reject 2872 WebNFS mount/umount attempts. 2873 * amd/ops_nfs.c (got_nfs_fh_mount): Renamed from got_nfs_fh. 2874 (got_nfs_fh_webnfs): New function. 2875 (flush_nfs_fhandle_cache): Don't invalidate port for WebNFS servers. 2876 (prime_nfs_fhandle_cache): Likewise. 2877 Remove unconditional return of public file handle for WebNFS, but 2878 get NFS file handles via mountd or WebNFS instead. 2879 (webnfs_lookup): New function. 2880 (nfs_umounted): Don't inform mountd if MFF_WEBNFS. 2881 * amd/rpc_fwd.c (fwd_packet, fwd_reply): Send/receive WebNFS 2882 packets. 2883 * amd/srvr_nfs.c (recompute_portmap): Don't contact portmap for 2884 WebNFS servers. 2885 Mention host in info message. 2886 (find_nfs_srvr): Handle public mount option. 2887 Prefer NFSv3/tcp if the client supports it. 2888 Allow port mount option to override default or result from portmap 2889 lookup. 2890 2891 * libamu/xdr_func.c (xdr_diropargs3, xdr_filename3, 2892 xdr_LOOKUP3args, xdr_LOOKUP3res, xdr_LOOKUP3resfail, 2893 xdr_LOOKUP3resok, xdr_nfs_fh3, xdr_nfsstat3): New functions. 2894 * include/am_xdr_func.h: Declare them. 2895 * configure.in: Check for them. 2896 * conf/nfs_prot/nfs_prot_linux.h: Provide missing NFSv3 2897 definitions and types. 2898 28992003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2900 2901 Support IRIX 6 private mount option. 2902 2903 * configure.in (AC_CHECK_MNTTAB_OPTS): Check for private option 2904 name string. 2905 (AC_CHECK_MNT2_NFS_OPTS): Check for private NFS mount option (IRIX 6). 2906 * aux/macros/header_templates.m4 (MNTTAB_OPT_PRIVATE, 2907 MNT2_NFS_OPT_PRIVATE): Provide templates. 2908 * include/am_compat.h (MNTTAB_OPT_PRIVATE): Define if missing. 2909 * doc/am-utils.texi (opts Option): Document it. 2910 29112003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2912 2913 * doc/am-utils.texi (opts Option): Fix Tru64 UNIX name in proplist 2914 mount option. 2915 29162003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2917 2918 * libamu/mount_fs.c (compute_nfs_args) [HAVE_NFS_ARGS_T_FH_LEN]: 2919 Don't reference removed fh3. 2920 29212003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2922 2923 * NEWS: New minor port sparc-sun-solaris2.10 (Solaris 10). 2924 2925 * INSTALL: Mention test status of various ports. 2926 Describe IRIX 6 autofs status. 2927 29282003-10-09 Ion Badulescu <ionut@moisil.badula.org> 2929 2930 * NEWS: updated 2931 2932 * amd/amfs_generic.c (amfs_bgmount): don't use mf_fo until after 2933 we've done all the tests and we know we have a valid and mountable 2934 mntfs. Otherwise we could end up dereferencing null pointers. 2935 2936 * amd/amd.h: fixed a copy&paste comment bug 2937 2938 * amd/am_ops.c (ops_match): minor code cleanup 2939 2940 * doc/am-utils.texi: fixed various typos; added warning about the 2941 racy nature of nfsx; removed duplicated listing of debug options; 2942 added paragraph about signals supported by hlfsd; removed the long 2943 list of (maybe) supported platforms since it duplicates the list 2944 in INSTALL. 2945 29462003-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2947 2948 Simplify FD_SET etc. use. 2949 2950 * include/am_defs.h (FD_SET, FD_ISSET, FD_CLR, FD_ZERO): Provide 2951 if missing. 2952 (rpc_pending_now, run_rpc): Use them. 2953 * configure.in: Check for fds_bits field in fd_set. 2954 * amd/nfs_start.c (run_rpc): Use it. 2955 29562003-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2957 2958 Improve RPC XID handling. 2959 2960 * amd/rpc_fwd.c (fwd_packet, fwd_reply): Always log xid. 2961 Convert xid to/from host/network byte order. 2962 29632003-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2964 2965 Use NFS V2/V3 file handles instead of mount results. 2966 2967 * include/am_utils.h (am_nfs_fhandle): Use NFS V2/V3 file handles 2968 only, not MOUNTPROC_MNT results. 2969 * amd/amfs_host.c (fetch_fhandle): Use local variables to store 2970 MOUNTPROC_MNT results. 2971 * amd/autil.c (amfs_mount): Use new am_nfs_fhandle_t. 2972 * amd/ops_nfs.c (struct fh_cache): New member fh_status. 2973 (got_nfs_fh): Use local variables to store MOUNTPROC_MNT results. 2974 Store MOUNTPROC_MNT errors in fh_status. 2975 (prime_nfs_fhandle_cache): Get fh_error from fh_status. 2976 * hlfsd/hlfsd.c (main): Use new am_nfs_fhandle_t. 2977 * libamu/mount_fs.c (compute_nfs_args): Copy NFS V2/V3 file 2978 handles straight from new am_nfs_fhandle_t. 2979 29802003-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2981 2982 * amd/clock.c (CID_ALLOC): Remove unused argument. 2983 (timeout): Likewise. 2984 2985 * amd/ops_nfs.c (FHID_ALLOC): Remove unused argument. 2986 (prime_nfs_fhandle_cache): Likewise. 2987 (call_mountd): Use UDPMSGSIZE instead of magic constant. 2988 2989 * amd/rpc_fwd.c (XID_ALLOC): Remove unused argument. 2990 (fwd_packet): Likewise. 2991 Handle TLOOK error from t_rcvudata(). 2992 29932003-09-30 Ion Badulescu <ionut@moisil.badula.org> 2994 2995 * NEWS: updated 2996 2997 * libamu/mount_fs.c (mount_fs): don't try to recreate the mount 2998 point if the mount fails with ENOENT: in the best case we would be 2999 papering over a bug, and in the worst case we could cause a 3000 deadlock (with autofs). If there are races, they need to be 3001 exposed and fixed properly. 3002 3003 * conf/autofs/autofs_solaris_v1.h, 3004 conf/autofs/autofs_solaris_v2_v3.h, 3005 conf/autofs/autofs_linux.h: (AUTOFS_NFSX_FS_FLAGS): autofs 3006 semantics don't allow us to mount nfsx directly onto an autofs 3007 mountpoint, so disallow it 3008 3009 * amd/amfs_nfsx.c (amfs_nfsx_match): more restrictive sanity check 3010 to avoid trying to memmove(foo, bar, (unsigned)-1) due to invalid 3011 map entries... 3012 (amfs_nfsx_cont): amfs_retry does most of the cleanup work for us 3013 in the upper layer, so don't do anything else beside wakeup() on 3014 success 3015 (amfs_nfsx_remount): only create the mountpoints as we need them, 3016 avoids creating them on the wrong filesystem in the case of 3017 hierarchical mounts; fix crash-generating typo (m should really be 3018 mf and I swear I hate single-character variable names) 3019 3020 * amd/amfs_generic.c (amfs_cont): one more dlog 3021 (amfs_bgmount): amazingly enough, even foreground mounts can be 3022 backgrounded (in the case of nfsx), so account for this 3023 possibility and permit retries 3024 3025 * m4/macros/check_autofs_style.m4 (AMU_AUTOFS_PROT_HEADER): define 3026 and AC_SUBST it as ${top_builddir}/amu_autofs_prot.h 3027 3028 * amd/Makefile.am ($(amd_OBJECTS) $(EXTRA_amd_OBJECTS)): depend on 3029 @AMU_AUTOFS_PROT_HEADER@ 3030 30312003-09-29 Erez Zadok <ezk@urd.fsl.cs.sunysb.edu> 3032 3033 * minor new port mipsel-unknown-linux-rhPS2 (Linux on Sony 3034 PlayStation 2) 3035 3036 * amd/srvr_nfs.c (find_nfs_srvr): don't run code that expects 3037 "char protocols[]" unless MNTTAB_OPT_PROTO is defined. 3038 30392003-09-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3040 3041 Consolidate alloca support. 3042 3043 * amd/amq_svc.c: Move alloca support ... 3044 * include/am_defs.h: ... here. 3045 * amd/conf_parse.y: Remove alloca support. 3046 * fsinfo/fsi_gram.y: Likewise. 3047 30482003-09-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3049 3050 Handle Solaris 10. 3051 * m4/macros/check_nfs_prot_headers.m4 3052 (AMU_CHECK_NFS_PROT_HEADERS): Don't use wildcards for 3053 sunos5.[0-3], solaris 2.[0-3], there were no micro releases. 3054 Explicitly match sunos5*, solaris2* for Solaris 8 and beyond. 3055 3056 * m4/macros/os_cflags.m4 (AMU_OS_CFLAGS): Dont use wildcards for 3057 solaris2.[0-5], sunos5.[0-5], but explicitly handle Solaris 2.5 3058 micro releases to cope with Solaris 2.5.1. 3059 Explicitly match solaris2*, sunos5*. 3060 30612003-09-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3062 3063 * amd/amq_svc.c: Provide alloca prerequisites. 3064 3065 * conf/transp/transp_tli.c (register_autofs_service): Fix typo. 3066 30672003-09-23 Ion Badulescu <ion@opteron.tower-research.com> 3068 3069 * minor new port: x86_64-unknown-linux-rh2.9.5AS. (Red Hat 3070 Enterprise Linux 3.0 beta running on a 64-bit AMD64 platform) 3071 30722003-09-22 Ion Badulescu <ionut@buggy.badula.org> 3073 3074 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): compile fix 3075 30762003-09-19 Ion Badulescu <ionut@moisil.badula.org> 3077 3078 * amd/amfs_nfsl.c (amfs_nfsl_match): checking opt_fs is not always 3079 enough, we should lstat() the sublink if it's defined. 3080 (amfs_nfsl_ffserver): ditto 3081 (ALL): Removed some obsolete comments. The nfsl code is now little 3082 more than a very straight-forward switch between link and nfs. 3083 3084 * amd/amfs_link.c (amfs_link_match): more up-to-date explanation 3085 for the prepend-the-dot hack for type link; also, the sublink is 3086 already normalized and absolute, so take advantage of that 3087 3088 * amd/amfs_generic.c (amfs_lookup_one_mntfs): the sublink is 3089 already normalized and absolute, so take advantage of that 3090 3091 * amd/am_ops.c (ops_match): normalize the sublink here, early into 3092 the matching process 3093 3094 * amd/autil.c (am_mounted): be consistent and accept both 3095 "nounmount" and "noumount" as pseudo mount options (same as 3096 "unmount" and "umount" nearby) 3097 3098 * amd/Makefile.am (build_version.h): fixed dependencies (depends 3099 on amd_OBJECTS, not OBJECTS -- which doesn't even exist) 3100 31012003-09-19 Erez Zadok <ezk@dhcp8.fsl.cs.sunysb.edu> 3102 3103 * amd/amq_subr.c (amqproc_export_1_svc): force double casting to 3104 avoid gcc-3.3 complaints on Solaris 9 about "dereferencing 3105 type-punned pointer will break strict-aliasing rules". 3106 31072003-09-16 Ion Badulescu <ionut@moisil.badula.org> 3108 3109 * Released beta version 6.1b4 3110 31112003-09-15 Ion Badulescu <ionut@moisil.badula.org> 3112 3113 * doc/am-utils.texi (opts Option): removed documentation for old 3114 ignore_portmapper mount option, documented the new webnfs option 3115 3116 * NEWS: webnfs support 3117 3118 * amd/srvr_nfs.c (find_nfs_srvr): set MFF_WEBNFS if the "webnfs" 3119 (former "ignore_portmapper") mount option is present 3120 3121 * amd/ops_nfs.c (prime_nfs_fhandle_cache): generate a public 3122 filehandle (all zeros) if MFF_WEBNFS is set 3123 (nfs_umounted): don't talk to mountd if MFF_WEBNFS is set 3124 3125 * amd/amd.h (MFF_WEBNFS): new flag, obvious meaning 3126 31272003-09-13 Ion Badulescu <ionut@moisil.badula.org> 3128 3129 * amd/srvr_nfs.c: renamed np_xid to global_xid; sanitized the 3130 NPXID_ALLOC macro and renamed it to XID_ALLOC; renamed start_ping 3131 to create_ping_payload; renamed nfs_pinged to 3132 nfs_keepalive_callback; renamed nfs_timed_out to 3133 nfs_keepalive_timeout; renamed nfs_srvr_port to get_mountd_port; 3134 made ping_buf and ping_len arrays with one element for each 3135 supported nfs version 3136 3137 * amd/amd.h: renamed nfs_srvr_port() to get_mountd_port() 3138 3139 * amd/amfs_host.c (amfs_host_init): ditto 3140 3141 * amd/ops_nfs.c (call_mountd): ditto 3142 31432003-09-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3144 3145 * BUGS: Mention fix for broken Solaris 8 <rpcsvc/autofs_prot.h> 3146 patches. 3147 31482003-08-31 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3149 3150 * amd/autil.c (strealloc): don't call malloc_verify() unless it 3151 exists. 3152 3153 * configure.in: move "OPTION PROCESSING" section (opt_debug etc.) 3154 after we figure out PROG_CC and other compiler features, because 3155 some of the option processing macros need a compiler to function. 3156 3157 * libamu/xutil.c: don't define variables that won't be used unless 3158 mallinfo() and malloc_verify() exist. 3159 (real_plog): don't call checkup_mem unless 3160 mallocinfo() and malloc_verify() exist. 3161 (checkup_mem): don't define this function unless mallocinfo() and 3162 malloc_verify() exist. 3163 3164 * m4/macros/opt_debug.m4: check for functions malloc_verify and 3165 mallinfo in general libraries and then in libmapmalloc and 3166 libmalloc. These seem to have disappeared in FreeBSD 5.x. 3167 3168 * libamu/xutil.c (dxfree): print pointer using %p 3169 31702003-08-29 Erez Zadok <ezk@a-opendarwin.fsl.cs.sunysb.edu> 3171 3172 * configure.in: start 6.1b4-pre officially (belated) 3173 3174 * minor new port: i686-apple-darwin6.6 3175 31762003-08-27 Ion Badulescu <ionut@moisil.badula.org> 3177 3178 * conf/autofs/autofs_solaris_v1.c: convert relative targets to 3179 absolute paths when using lofs mounts 3180 3181 * conf/autofs/autofs_solaris_v2_v3.c: ditto 3182 3183 * conf/autofs/autofs_linux.c: ditto 3184 31852003-08-27 Ion Badulescu <ionut@buggy.badula.org> 3186 3187 * README.autofs: added a paragraph about the resource consumption 3188 of auto maps over autofs 3189 3190 * amd/amfs_generic.c (amfs_lookup_one_mntfs): moved the setting of 3191 the MFF_IS_AUTOFS flag from init_mntfs() to 3192 amfs_lookup_one_mntfs(), where it belongs 3193 3194 * amd/mntfs.c (init_mntfs): ditto 3195 31962003-08-27 Ion Badulescu <ion@guppy.limebrokerage.com> 3197 3198 * amd/ops_nfs.c (got_nfs_fh): make the error EACCES if we are 3199 denied a filehandle by the server (used to be EIO) 3200 32012003-08-27 Erez Zadok <ezk@a-bsdi42.fsl.cs.sunysb.edu> 3202 3203 * conf/nfs_prot/nfs_prot_bsdi3.h: support na_uid and na_gid. 3204 32052003-08-27 Ion Badulescu <ionut@moisil.badula.org> 3206 3207 * conf/autofs/autofs_linux.c (autofs_mount_succeeded): force 3208 daemon-initiated timeouts on autofs filesystems, since apparently 3209 they appear as "always busy" to the kernel-based expiration routine 3210 32112003-08-26 Ion Badulescu <ionut@buggy.badula.org> 3212 3213 * NEWS: updated 3214 3215 * conf/autofs/autofs_linux.h (AUTOFS_LINK_FS_FLAGS): remove 3216 FS_ON_AUTOFS 3217 (AUTOFS_LINKX_FS_FLAGS): ditto 3218 3219 * conf/autofs/autofs_solaris_v1.h (AUTOFS_LINK_FS_FLAGS): remove 3220 FS_ON_AUTOFS 3221 (AUTOFS_LINKX_FS_FLAGS): ditto 3222 3223 * conf/autofs/autofs_solaris_v2_v3.h (AUTOFS_LINK_FS_FLAGS): remove 3224 FS_ON_AUTOFS 3225 (AUTOFS_LINKX_FS_FLAGS): ditto 3226 3227 * amd/amfs_generic.c (amfs_lookup_one_mntfs): don't modify the 3228 original opt_fs, instead store the new mount point for autofs in a 3229 temporary variable and pass it around. Fixes a problem with the 3230 link side of nfsl. 3231 32322003-08-25 Ion Badulescu <ionut@moisil.badula.org> 3233 3234 * NEWS: updated 3235 3236 * amd/ops_nfs.c (prime_nfs_fhandle_cache): use get_mntfs_wchan to 3237 initialize the fh_wchan member of the cache entry 3238 (prime_nfs_fhandle_cache): use get_mntfs_wchan for the wchan_t 3239 argument of call_mountd() 3240 3241 * amd/map.c (free_map_if_success): use get_mntfs_wchan for the 3242 wchan_t argument of wakeup() 3243 3244 * amd/amfs_nfsx.c (amfs_nfsx_cont): use get_mntfs_wchan for the 3245 wchan_t argument of wakeup_task() and wakeup() 3246 3247 * amd/amfs_host.c (amfs_host_init): use get_mntfs_wchan for the 3248 wchan_t argument of nfs_srvr_port() 3249 3250 * amd/amfs_generic.c (ALL): use get_mntfs_wchan for the wchan_t 3251 argument of sched_task() and wakeup() 3252 (amfs_retry): minor cleanup 3253 (amfs_bgmount): call nfs_quick_reply on failure 3254 3255 * amd/sched.c (get_mntfs_wchan): new function which calls the 3256 member function get_wchan if defined, otherwise returns the mntfs 3257 pointer itself 3258 3259 * amd/amfs_inherit.c (amfs_inherit_get_wchan): new function, 3260 calls get_mntfs_wchan() on the inherited filesystem 3261 3262 * amd/amfs_*.c, amd/ops_*.c: initialize the new get_wchan member 3263 of the ops to 0 3264 3265 * amd/amd.h: new function type vget_wchan 3266 (struct mntfs): new member get_wchan which returns the waiting 3267 channel associated with the mntfs (normally itself) 3268 32692003-08-22 Ion Badulescu <ion@guppy.limebrokerage.com> 3270 3271 * conf/mount/mount_linux.c (parse_opts): minor cleanup 3272 3273 * conf/autofs/autofs_linux.c (autofs_handle_fdset): added missing 3274 break in case autofs_ptype_expire_multi 3275 32762003-08-22 Ion Badulescu <ionut@moisil.badula.org> 3277 3278 * conf/autofs/autofs_solaris_v1.h: undefine autofs support if 3279 autofs_args_t cannot be determined (hopefully fixes a reported 3280 IRIX 6.5.4 problem). 3281 3282 * conf/autofs/autofs_solaris_v1.c: wrap entire file in #ifdef 3283 HAVE_FS_AUTOFS / #endif (see above) 3284 3285 * conf/autofs/autofs_linux.h: undefine autofs support if the 3286 necessary header files are not found (fixes a reported RedHat 6.2 3287 Sparc problem). 3288 3289 * conf/autofs/autofs_linux.c: wrap entire file in #ifdef 3290 HAVE_FS_AUTOFS / #endif (see above) 3291 3292 * libamu/mount_fs.c (compute_nfs_args): only use MNT2_NFS_OPT_SOFT 3293 if autoconf detected it (fixes a reported RedHat 6.2 Alpha problem). 3294 3295 * amd/map.c (unmount_mp, unmount_exported): move the code that 3296 changes the fattr from NFLNK to NFDIR from unmount_mp to 3297 unmount_exported, it was causing troubles (ESTALE) after failed 3298 unmounts. This is still very very unclean, but it's the same as the 3299 old 6.0 code. 3300 33012003-08-22 Nick Williams <Nick.Williams@morganstanley.com> 3302 3303 * amd/info_ldap.c (amu_ldap_init): don't try to pass a null 3304 pointer as a string to plog, Solaris (and other OS's) don't like 3305 it and will dump core. 3306 33072003-08-13 Ion Badulescu <ion@guppy.limebrokerage.com> 3308 3309 * amd/amd.h: introduced two new types, wchan_t and opaque_t, as 3310 aliases of voidp. This makes reading the code easier on the eyes. :) 3311 3312 * ALL: replace various instances of voidp with wchan_t and 3313 opaque_t, as appropriate 3314 33152003-08-13 Ion Badulescu <ionut@nicu.badula.org> 3316 3317 * NEWS, configure.in: bumped version up to 6.1b4-pre 3318 33192003-08-13 Ion Badulescu <ionut@moisil.badula.org> 3320 3321 * Released beta version 6.1b3 3322 33232003-08-13 Ion Badulescu <ion@guppy.limebrokerage.com> 3324 3325 * conf/autofs/autofs_linux.c (autofs_mount_fs): HACK: always use 3326 symlinks for host mounts; assorted fixes for the symlink mode 3327 33282003-08-05 Ion Badulescu <ionut@moisil.badula.org> 3329 3330 * conf/umount/umount_default.c (umount_fs): enable space hack 3331 handling for autofs v1 3332 3333 * amd/map.c (get_first_exported_ap, get_next_exported_ap): new 3334 functions that facilitate iterating through the list of 3335 mountpoints 3336 3337 * amd/amfs_union.c (amfs_union_mounted): use get_first_exported_ap 3338 and get_next_exported_ap 3339 3340 * conf/autofs/autofs_solaris_v2_v3.c (autofs_unmount_2_req): ditto 3341 33422003-08-04 Erez Zadok <ezk@ulkesh.dyn.optonline.net> 3343 3344 * configure.in: check if system stores mount tables in files 3345 (usually in /etc), and configure couldn't find a definition for 3346 either struct mntent or struct mnttab. If so, abort configure 3347 because this could be a new/misconfigured system, or a bug in 3348 am-utils. 3349 33502003-08-04 Ion Badulescu <ionut@moisil.badula.org> 3351 3352 * conf/autofs/autofs_solaris_v2_v3.c (autofs_umount_fs): fix 3353 compile warning 3354 33552003-08-04 Ion Badulescu <ionut@buggy.badula.org> 3356 3357 * conf/autofs/autofs_linux.c (autofs_mount_fs): don't call 3358 ops->mount_fs() for an already mounted filesystem 3359 (autofs_umount_fs): only call ops->umount_fs() if we're holding 3360 the last reference to the filesystem 3361 3362 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): ditto 3363 (autofs_umount_fs): ditto 3364 3365 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mount_fs): ditto 3366 (autofs_umount_fs): ditto 3367 3368 * amd/amfs_generic.c (amfs_lookup_mntfs): remove the shortcut for 3369 already-mounted filesystems 3370 (amfs_cont): only release the autofs_fh if the filesystem is not 3371 mounted; add another comment about the NFS_SCALEDOWN hack 3372 (amfs_bgmount): if the mntfs is already mounted, skip just the 3373 filesystem initialization, but do call mount_node() 3374 3375 * amd/map.c (mount_node): always call autofs_mount_fs(), but only 3376 call ops->mount_fs() if the mntfs is not yet mounted 3377 (unmount_node): always call autofs_umount_fs(), but only call 3378 ops->umount_fs() if the refcount on the mntfs equals 1. 3379 33802003-08-02 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3381 3382 * conf/nfs_prot/nfs_prot_openbsd.h: include <ufs/ufs/ufsmount.h> 3383 here with the proper workarounds for openbsd3.3 (define MAXQUOTAS, 3384 define dummy struct netexport, and include <ufs/ufs/extattr.h> 3385 wrapped in _KERNEL). 3386 3387 * conf/nfs_prot/nfs_prot_freebsd3.h: include <ufs/ufs/ufsmount.h> 3388 here with the proper workarounds for freebsd5.1 (define dummy 3389 struct ufs_extattr_per_mount). 3390 3391 * conf/nfs_prot/nfs_prot_bsdi2.h: include <ufs/ufs/ufsmount.h> 3392 here with the proper workarounds for bsdi2 (define MAXQUOTAS and 3393 dummy struct netexport). 3394 3395 * include/mount_headers1.h: do not include <ufs/ufs/ufsmount.h> 3396 here, b/c every *BSD system has some sort of problem in including 3397 this header file, which includes ugly workarounds. Inclusion of 3398 this header was already moved out of am_defs.h (used to compile 3399 amd), but we forgot to move it out of mount_headers1.h (used to 3400 configure). The specific inclusion of ufsmount.h is now in the OS 3401 specific nfs_prot.h file. 3402 3403 * configure.in: if configure could not find any definition for 3404 "struct nfs_args", abort configure with an explanatory message. 3405 There's no point in continuing, as this could be a system bug, 3406 buggy am-utils, or a new system to which am-utils wasn't ported to 3407 yet. 3408 3409 * minor new port: i386-pc-solaris2.9 3410 34112003-08-01 Ion Badulescu <ionut@buggy.badula.org> 3412 3413 * doc/am-utils.texi (NFS-Link Filesystem): make the documentation 3414 match the code (as well as basic logic operations: the negation of 3415 'a or b' is 'not a and not b', not 'not a or not b') 3416 34172003-08-01 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3418 3419 * minor new port: i386-unknown-openbsd3.3. 3420 3421 * m4/macros/check_libwrap_severity.m4: new macro to check if 3422 libwrap includes the integer variables deny_severity and 3423 allow_severity, since some libwrap implementations do and others 3424 don't. The test tries to compile and run a simple empty main() 3425 program, then the same program while defining these two variables: 3426 comparing the results of the two tests, we can tell whether we 3427 should define NEED_LIBWRAP_SEVERITY_VARIABLES. 3428 3429 * Makefile.am (EXTRA_DIST_M4): distribute new macro 3430 check_libwrap_severity.m4. 3431 3432 * m4/macros/header_templates.m4: template for HAVE_LIBWRAP (which 3433 we must define explicitly since we've overridden the 3434 action-if-found in AC_CHECK_LIB(wrap). Also template for 3435 NEED_LIBWRAP_SEVERITY_VARIABLES. 3436 3437 * amd/amq_svc.c: if libwrap does not include the severity 3438 variables, then define and initialize them here. 3439 3440 * amd/Makefile.am (LIBS): explicitly include @WRAPLIB@ only for 3441 Amd binary. Other am-utils binaries don't need -lwrap. 3442 3443 * configure.in: if libwrap is found, only define it in @WRAPLIB@, 3444 so we don't automatically link every am-utils binary with -lwrap. 3445 Run test for existence of severity variables in libwrap. 3446 34472003-07-31 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3448 3449 * conf/nfs_prot/nfs_prot_openbsd.h: define struct fattr fields uid 3450 and gid. 3451 3452 * configure.in: move check for AC_CHECK_LIB(libwrap) as far down 3453 as possible because on modern tcpwrapper systems such as openbsd, 3454 the caller must provide two symbols: deny_severity and 3455 allow_severity, which determine the logging level of rejected and 3456 requested requests, respectively. If this check happens too 3457 early, then $LIBS includes -lwrap, which causes many subsequent 3458 tests that need to run a compiled program to fail with missing 3459 symbols. 3460 3461 * m4/macros/header_templates.m4: fix typo in template for 3462 readdirplus. 3463 3464 * configure.in: check for <ufs/ufs/extattr.h> (OpenBSD 3.3) 3465 3466 * minor new port: i386-unknown-netbsdelf1.6.1. 3467 3468 * configure.in: save state before system-specific tests are run. 3469 3470 * m4/macros/check_gnu_getopt.m4: do NOT abort ./configure just 3471 because the compiled test program failed to run. 3472 34732003-08-01 Ion Badulescu <ionut@buggy.badula.org> 3474 3475 * NEWS, README.autofs: updated 3476 3477 * libamu/mount_fs.c (mount_fs): added support for the space hack 3478 3479 * doc/am-utils.texi: mention than UFS/XFS/EFS/CacheFS filesystems 3480 are not expired by default; correct and expand the section 3481 describing the program filesystem 3482 3483 * conf/autofs/autofs_solaris_v2_v3.h (AUTOFS_*_FS_FLAGS): add 3484 FS_ON_AUTOFS for supported filesystems 3485 3486 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mount_fs): call 3487 mf->mount_fs() 3488 (autofs_umount_fs): call mf->umount_fs() 3489 3490 * conf/autofs/autofs_solaris_v1.h (autofs_strdup_space_hack): add 3491 prototype for malloc() 3492 (AUTOFS_*_FS_FLAGS): lose the FS_MKMNT flags, add FS_ON_AUTOFS for 3493 supported filesystems 3494 3495 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): add support 3496 for the space hack; call mf->mount_fs() 3497 (autofs_umount_fs): add support for the space hack; call 3498 mf->umount_fs() 3499 (autofs_mount_succeeded): add support for the space hack 3500 3501 * conf/autofs/autofs_linux.h: lose the FS_MKMNT flags, add 3502 FS_ON_AUTOFS for supported filesystems 3503 3504 * conf/autofs/autofs_linux.c (AUTOFS_MAX_VERSION): define to 3505 AUTOFS_MAX_PROTO_VERSION instead of hardcoding to 4 3506 (autofs_mounted): host mounts are now supported on all autofs 3507 versions, remove the hack to turn it off on v3 3508 (autofs_mount_fs): call mf->mount_fs(), create/remove mountpoints 3509 as needed 3510 (autofs_umount_fs): call mf->umount_fs(), remove mountpoints on 3511 success 3512 (ALL): use '#if AUTOFS_MAX_VERSION >= 4' instead of 3513 '#ifdef autofs_ptype_expire_multi' 3514 3515 * amd/map.c (mount_node): autofs_mount_fs() now calls 3516 mf->mount_fs() internally 3517 (unmount_node): autofs_umount_fs() now calls mf->umount_fs() 3518 internally 3519 3520 * amd/autil.c (am_mounted): minor cleanup 3521 3522 * amd/amfs_program.c (amfs_program_ops): added FS_MKMNT to 3523 nfs_fs_flags 3524 3525 * amd/amfs_generic.c (amfs_lookup_one_mntfs): use the FS_ON_AUTOFS 3526 flag instead of hardcoding filesystem types 3527 (amfs_bgmount): better mount_type logging 3528 3529 * amd/amd.h (FS_ON_AUTOFS): new flag which tells the code that 3530 this filesystem can be mounted directly onto an autofs mountpoint 3531 35322003-07-31 Ion Badulescu <ionut@buggy.badula.org> 3533 3534 * amd/amfs_nfsl.c (amfs_nfsl_umount): fix copy&paste error (was 3535 calling amfs_link_ops.umount_fs() for NFS filesystems) 3536 (amfs_nfsl_umounted): remove rmdirs() hack, it is now handled 3537 properly elsewhere 3538 (amfs_nfsl_ffserver): remove FS_MKMNT from mf_fsflags if we're 3539 using link (not NFS) 3540 35412003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3542 3543 * README.autofs: Correct IRIX spelling. 3544 AutoFS support exists only on IRIX 6. 3545 Update IRIX 6 status. 3546 3547 Allow AutoFS V1 support to compile on IRIX 6. 3548 * conf/autofs/autofs_solaris_v1.c (autofs_mount_1_req): Add 3549 SVCXPRT * arg. 3550 Remove superfluous \n from dlog messages. 3551 (autofs_unmount_1_req): Likewise. 3552 Switch to get_exported_ap. 3553 (autofs_program_1): Invoke handlers with additional transp arg. 3554 * conf/autofs/autofs_solaris_v1.h: Use autofs_args_t to define 3555 autofs_fh_t, struct auto_args doesn't exist on IRIX 6. 3556 3557 * conf/mount/mount_irix6.c (mount_irix) [HAVE_FS_AUTOFS]: Support 3558 AutoFS mounts. 3559 [HAVE_FS_LOFS]: Likewise for lofs mounts. 3560 3561 * conf/nfs_prot/nfs_prot_irix6.h (AUTOFS_CONFTYPE): Define. 3562 Don't disable AutoFS support any more. 3563 3564 * conf/transp/transp_sockets.c [HAVE_FS_AUTOFS && AUTOFS_PROG] 3565 (register_autofs_service): Define autofs_xprt. 3566 3567 * m4/macros/check_autofs_style.m4 (AMU_CHECK_AUTOFS_STYLE): Update 3568 Solaris 8+ comment to mention AutoFS V4. 3569 (irix6*): Enable AutoFS V1 support on IRIX 6. 3570 35712003-07-30 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 3572 3573 * NEWS, doc/am-utils.texi, scripts/amd.conf.5: revised explanation 3574 of autofs_use_lofs. 3575 35762003-07-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3577 3578 * amd/ops_efs.c (efs_mount): Replace on_autofs arg with 3579 MFF_ON_AUTOFS flag. 3580 (efs_umount): Likewise. 3581 35822003-07-30 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3583 3584 * conf/umount/umount_bsd44.c (umount_fs): convert to new way of 3585 unmounting which takes autofs into account. 3586 35872003-07-30 Ion Badulescu <ionut@moisil.badula.org> 3588 3589 * ALL: renamed MFF_AUTOFS to MFF_IS_AUTOFS; removed mf_real_mount 3590 hack; pass a new on_autofs argument to mount/umount function, 3591 based on the MFF_ON_AUTOFS mntfs flag 3592 3593 * NEWS, README.autofs: updated 3594 3595 * scripts/amd.conf.5: document new option autofs_use_lofs 3596 3597 * scripts/amd.conf-sample (autofs_use_lofs): document new option 3598 3599 * m4/macros/check_autofs_style.m4 (am_utils_link_files): symlink 3600 the autofs header as amu_autofs_prot.h instead of slurping it into 3601 aux_conf.h 3602 3603 * libamu/mount_fs.c (mount_fs): removed old stub, renamed 3604 mount_fs2 to mount_fs, added new argument on_autofs 3605 3606 * doc/am-utils.texi (Direct Automount Filesystem): document 3607 problems with nfs direct mounts on modern kernels, document good 3608 autofs support for direct mounts on Solaris 3609 (autofs_use_lofs Parameter): document this new option 3610 (browsable_dirs Parameter): note that mount storms are avoided 3611 when using autofs 3612 3613 * conf/umount/umount_bsd44.c (umount_fs): removed old stub, 3614 renamed umount_fs2 to umount_fs 3615 3616 * conf/umount/umount_osf.c (umount_fs): removed old stub, 3617 renamed umount_fs2 to umount_fs, added new argument on_autofs 3618 3619 * conf/umount/umount_default.c (umount_fs): ditto as above; return 3620 an error on ENOENT instead of faking success 3621 3622 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req): much 3623 simplified, now only consults the map for existance of the key and 3624 returns success if key is found 3625 (autofs_mount_2_req): request symlinks if CFM_AUTOFS_USE_LOFS is 3626 not on; 3627 (autofs_mount_2_free): implemented 3628 (autofs_unmount_2_req): use get_exported_ap() instead of 3629 referencing export_ap directly 3630 (autofs_mount_succeeded): remove code for replying to lookup 3631 requests, now only mount requests can end up here 3632 (autofs_mount_failed): ditto 3633 3634 * conf/autofs/autofs_solaris_v1.h (AUTOFS_HOST_FS_FLAGS): removed 3635 FS_AUTOFS 3636 (AUTOFS_DIRECT_FS_FLAGS): added FS_DIRECTORY 3637 3638 * conf/autofs/autofs_solaris_v2_v3.h (AUTOFS_HOST_FS_FLAGS): removed 3639 FS_AUTOFS 3640 (AUTOFS_DIRECT_FS_FLAGS): added FS_DIRECTORY 3641 (AUTOFS_LINK_FS_FLAGS): added FS_MBACKGROUND 3642 3643 * conf/autofs/autofs_linux.c (autofs_bind_umount): new function, 3644 factored out of autofs_umount_fs() 3645 (autofs_mount_fs): renamed from autofs_link_mount() and expanded 3646 to deal with filesystems mounted indirectly (via lofs/bind 3647 mounts) on autofs and to observe the new CFM_AUTOFS_USE_LOFS flag 3648 (autofs_umount_fs): ditto, from autofs_link_umount() 3649 3650 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): ditto 3651 * (autofs_umount_fs): ditto 3652 3653 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mount_fs): ditto 3654 * (autofs_umount_fs): ditto 3655 3656 * amd/opts.c: made fs_static static 3657 3658 * amd/ops_nfs.c: made nfs_init, nfs_match, nfs_mount, nfs_umount 3659 and nfs_umounted static 3660 (mount_nfs_fh): removed unnecessary arguments 3661 3662 * amd/ops_cachefs.c (cachefs_ops): use amfs_generic_find_srvr for 3663 the ffserver method, because using NULL causes problems 3664 3665 * amd/ops_cdfs.c (cdfs_ops): ditto 3666 3667 * amd/ops_efs.c (efs_ops): ditto 3668 3669 * amd/ops_lofs.c (lofs_ops): ditto 3670 3671 * amd/ops_pcfs.c (pcfs_ops): ditto 3672 3673 * amd/ops_ufs.c (ufs_ops): ditto 3674 3675 * amd/ops_xfs.c (xfs_ops): ditto 3676 3677 * amd/nfs_subr.c (fh_to_mp3, fh_to_mp, mp_to_fh): moved here from 3678 map.c 3679 3680 * amd/nfs_start.c: use get_exported_ap() instead of referencing 3681 exported_ap directly 3682 3683 * amd/mntfs.c (locate_mntfs): new function, factored out of 3684 find_mntfs 3685 (locate_mntfs): special-case FS_DIRECT filesystems: for direct 3686 mounts we will have two filesystems mounted on the same m/p 3687 (realloc_mntfs): removed the old EZK hack for failovers 3688 3689 * amd/map.c (get_exported_ap): new function that returns an 3690 exported_ap member by its index 3691 (root_node,exported_ap,exported_ap_size,first_free_map,last_used_map): 3692 made static 3693 (fh_to_mp3, fh_to_mp, mp_to_fh): moved to nfs_subr.c 3694 (get_root_ap): removed unused second argument 3695 (unmount_mp): moved the mk_fattr(NFDIR) here from umount_exported 3696 to catch more cases 3697 (mount_node): call autofs_mount_fs after ops->mount_fs for autofs 3698 nodes 3699 (unmount_node): call autofs_umount_fs before ops->umount_fs for 3700 autofs nodes 3701 3702 * amd/conf.c: new global option "autofs_use_lofs", takes yes/no 3703 values 3704 3705 * amd/autil.c (amfs_mount): take an extra argument (mf) 3706 (amfs_mount): call autofs_compute_mount_flags() for mounts 3707 directly on autofs m/p 3708 (am_unmounted): document and avoid the race between am_umounted() 3709 at shutdown time and amfs_cont() 3710 3711 * amd/amfs_union.c (amfs_union_mounted): use get_exported_ap() 3712 instead of referencing internal map variables directly 3713 3714 * amd/amq_subr.c (amqproc_export_1_svc): ditto 3715 3716 * amd/amfs_toplvl.c (amfs_toplvl_ops): removed FS_AUTOFS from 3717 nfs_fs_flags 3718 (amfs_toplvl_mount): pass extra argument (mf) to amfs_mount() 3719 (amfs_toplvl_umount): refuse to attempt the unmount if the 3720 mountpoint is not a directory 3721 3722 * amd/amfs_nfsx.c (amfs_nfsx_init): propagate the MFF_ON_AUTOFS 3723 flag into the nfs f/s at the bottom of the stack 3724 3725 * amd/amfs_nfsl.c: call nfs and link member functions through 3726 their respective am_ops structures, not directly 3727 3728 * amd/amfs_linkx.c (amfs_linkx_umount): new static stub 3729 3730 * amd/amfs_link.c: made amfs_link_mount() and amfs_link_umount() 3731 static functions 3732 (amfs_link_mount): removed call to autofs_link_mount() 3733 (amfs_link_umount): removed call to autofs_link_umount() 3734 3735 * amd/amfs_host.c (amfs_host_ops): removed FS_AUTOFS from 3736 nfs_fs_flags 3737 (do_mount): removed superfluous function arguments 3738 3739 * amd/amfs_direct.c (amfs_direct_ops): removed FS_AUTOFS from 3740 nfs_fs_flags 3741 3742 * amd/amfs_auto.c (amfs_auto_ops): removed FS_AUTOFS from 3743 nfs_fs_flags 3744 (amfs_auto_mount): pass extra argument (mf) to amfs_mount 3745 3746 * amd/amd.h (CFM_AUTOFS_USE_LOFS): new flag, tells amd whether to 3747 use lofs-mounts or symlinks when mounting on autofs 3748 (CFM_DEFAULT_FLAGS): added CFM_AUTOFS_USE_LOFS 3749 (VLOOK_LOOKUP): new flag, will merely check if a key exists 3750 (MFF_IS_AUTOFS): renamed from MFF_AUTOFS 3751 (MFF_ON_AUTOFS): new flag, tells amd if a f/s is mounted directly 3752 on an autofs m/p, or indirectly via a lofs mount/symlink 3753 (fh_to_mp2): macro expanded throughout the code and removed 3754 (mntfs): removed mf_real_mount hack 3755 (autofs_mount_fs): renamed from autofs_link_mount 3756 (autofs_umount_fs): renamed from autofs_link_umount 3757 (mount_lofs): exposed 3758 various other cleanups, functions/variables made static and removed 3759 3760 * aux_conf.h.in: removed @am_utils_autofs_style@, it is now 3761 included directly as amu_autofs_prot.h 3762 37632003-07-24 Erez Zadok <ezk@whitestar.dyn.optonline.net> 3764 3765 * doc/am-utils.texi, scripts/amd.conf.5: document that 3766 use_tcpwrappers is "yes" by default. 3767 3768 * amd/amd.c (init_global_options): set default global options. 3769 3770 * amd/amd.h (CFM_DEFAULT_FLAGS): define default options which 3771 are always on (plock and use_tcpwrappers). 3772 3773 * scripts/amd.conf-sample: reorganize values per option so default 3774 one is listed first. 3775 37762003-07-23 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3777 3778 * tasks: trim old stuff. Discuss new parser. 3779 3780 * amd/conf.c (set_conf_kv): initialize the very first map in conf 3781 file from global defaults. Bug fix which was introduced after 3782 conf.c code restructuring. 3783 37842003-07-18 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3785 3786 * m4/macros/header_templates.m4: template for 3787 HAVE_EXTERN_HOSTS_CTL. 3788 3789 * include/am_defs.h: define extern for hosts_ctl() if needed. 3790 3791 * configure.in (AMU_CHECK_EXTERNS): check for extern definition 3792 for libwrap's hosts_ctl() (FreeBSD 5.0 doesn't have it). 3793 3794 * m4/macros/check_extern.m4: include tcpd.h if it and libwrap exist. 3795 37962003-07-18 Erez Zadok <ezk@cs.sunysb.edu> 3797 3798 * hlfsd/hlfsd.h: redundant extern for mboxfile removed. 3799 3800 * amd/amq_svc.c (amq_program_1): only check for tcpwrappers if 3801 amd.conf global option use_tcpwrappers=yes. 3802 3803 * scripts/amd.conf.5, scripts/amd.conf-sample (use_tcpwrappers), 3804 doc/am-utils.texi (use_tcpwrappers Parameter): document new 3805 amd.conf global option. 3806 3807 * amd/conf.c (gopt_use_tcpwrappers): define a new amd.conf global 3808 option called use_tcpwrappers ("no" by default). 3809 3810 * amd/amq_svc.c (amqsvc_is_client_allowed): include tcpd/libwrap 3811 code only if both libwrap and tcpd.h exist. 3812 (amq_program_1): log warning when an Amq service client is denied, 3813 and a debug message when a client is allowed. 3814 3815 * amd/amd.h (CFM_USE_TCPWRAPPERS): define [global] amd.conf flag. 3816 (AMD_SERVICE_NAME): define AMD_SERVICE_NAME for tcpd/libwrap. 3817 3818 * include/am_defs.h: include tcpd.h if available and libwrap 3819 available. 3820 3821 * configure.in: check for tcpd.h. 3822 38232003-07-18 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3824 3825 * scripts/expn.1, amd/amd.8 amq/amq.8, fixmount/fixmount.8, 3826 hlfsd/hlfsd.8, scripts/expn.1: remove ".PD 0" nroff command 3827 because it removes useful spaces in between paragraphs. Based on 3828 smaller patch from Philippe Troin <phil@fifi.org>. 3829 38302003-07-17 Philippe Troin <phil@fifi.org> 3831 3832 * amq/amq.8: Document the libwrap/amd behavior. 3833 3834 * amd/amq_svc.c (libwrap_check_client): New function to validate 3835 an amq connection with libwrap. 3836 (amq_program_1): Call libwrap_check_client() and close the 3837 connection if libwrap does not allow it. 3838 3839 * configure.in: Check for the tcp wrappers library. 3840 38412003-07-17 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3842 3843 * amd/amq_subr.c (amqproc_mnttree_1_svc, amqproc_stats_1_svc, 3844 amqproc_getmntfs_1_svc, xdr_amq_mount_tree), hlfsd/hlfsd.c 3845 (hlfsd_init): cast pointers to void* before casting them to 3846 another type, to avoid gcc-3.3 -Wall warnings. 3847 3848 * fsinfo/*.[hc]: rename fsinfo function log() to fsi_log(), to 3849 avoid conflict with builtin function in gcc-3.3. 3850 38512003-07-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3852 3853 * scripts/amd.conf-sample: Remove obsolete comment. 3854 38552003-07-16 Erez Zadok <ezk@cs.sunysb.edu> 3856 3857 * amd/info_file.c (read_line): check for errors from fgets(). 3858 Although rare, they can occur upon disk or network failures. 3859 Patch from Nick Williams <Nick.Williams@morganstanley.com>. 3860 38612003-07-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3862 3863 * BUGS (Solaris 8): Update patch revisions, mention old autofs 3864 patches, fix filenames and rpcgen command. 3865 38662003-07-15 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 3867 3868 * doc/am-utils.texi (map_defaults Parameter): document new 3869 map_defaults option. 3870 3871 * scripts/amd.conf.5: document new map_defaults option. 3872 3873 * scripts/amd.conf-sample (map_type): show examples of new 3874 map_defaults option. 3875 3876 * amd/mapc.c (mapc_create): initialize mnt_map->cfm field to NULL. 3877 3878 * amd/get_args.c (get_args): call process_all_regular_maps(). 3879 3880 * amd/conf.c: keep head and tail of cfm list. 3881 (init_cf_map): reworked reset_cf_map. This one doesn't reset a 3882 globaly reused cfm, but rather just inherits [global] options. 3883 (set_conf_kv): just store global/map options without actually 3884 creating any mnt_map's. Essentially, we now parse the whole 3885 amd.conf file, and then try to process the maps one at a time. 3886 (process_one_regular_map): new function to process one map, just 3887 renamed from process_regular_map. 3888 (process_all_regular_maps): new exported function to process all 3889 maps. No need for hacky process_last_map(). 3890 (find_cf_map): new exported function to return a cf_map_t given a 3891 map's mount point (e.g., /home or /net). 3892 3893 * amd/amfs_generic.c (amfs_parse_defaults): find if amd.conf 3894 specificed a map_defaults for a given map. If so, use that 3895 instead of the /defaults that came from the map itself. Also 3896 restructure code a bit so it's not one huge long "if" statement. 3897 3898 HACK ALERT: there's no easy way to find out what the map mount 3899 point is at this point, so I am forced to initialize the 3900 mnt_map->cfm field here for the first time, upon the very first 3901 search for a /defaults entry in this map. This initialization is 3902 much better done in mapc_create(), but it's impossible to do that 3903 there with the current code structure. 3904 3905 * amd/amd.h: struct cf_map becomes linked list. struct mnt_map 3906 includes pointer to cf_map_t, amd.conf defaults and options for a 3907 given map. extern cleanups. 3908 39092003-07-15 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3910 3911 * amd/info_hesiod.c (hesiod_search): It's not possible to have a 3912 key such as ".access" in a hesiod map as that would imply a null 3913 node in the DNS tree. So a lookup for such a key must clearly 3914 fail. With the current info_hesiod.c it does (after calling 3915 hes{,iod}_resolve) but returns an error that confuses some 3916 programs - eg. apache. This patch shortcuts the process and just 3917 returns ENOENT for any key starting with ".". Patch submitted by 3918 by Mark Davies <mark@mcs.vuw.ac.nz>. 3919 3920 * include/am_utils.h (CALLOC): redefine macro to use xzalloc, not 3921 fsinfo's own xcalloc. 3922 3923 * fsinfo/fsi_util.c (xcalloc): remove redundant function. 3924 39252003-07-14 Erez Zadok <ezk@cs.sunysb.edu> 3926 3927 * include/am_compat.h (MNTTAB_OPT_XLATECOOKIE): The NetBSD 3928 xlatecookie NFS option doesn't work as MNTTAB_OPT_XLATECOOKIE is 3929 never defined. Define it as needed. Patch from Mark Davies 3930 <mark@mcs.vuw.ac.nz>. 3931 39322003-07-14 Ion Badulescu <lionut@gonzales.badula.org> 3933 3934 * BUGS (Note): document the Solaris 8 bug (the upgrade to autofs 3935 v4 without updating all the header files) 3936 39372003-07-13 Ion Badulescu <lionut@gonzales.badula.org> 3938 3939 * NEWS, tasks: updated 3940 3941 * amd/amfs_generic.c (free_continuation): free _all_ mntfs's in 3942 the am_mfarray, unconditionally 3943 (amfs_bgmount): call free_mntfs when we're done with a mntfs, call 3944 dup_mntfs when starting processing of a new one; make sure we 3945 always go through 'goto failed' for a failed mntfs; use the error 3946 code returned by autofs_get_fh() 3947 3948 * conf/autofs/autofs_linux.c (autofs_get_fh): return proper error 3949 codes in case of problems 3950 39512003-07-13 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3952 3953 * BUGS: Document buggy behavior of Solaris /usr/ccs/bin/lex. In 3954 short, use flex. 3955 39562003-07-13 Erez Zadok <ezk@a-hpux11.fsl.cs.sunysb.edu> 3957 3958 * fsinfo/fsi_lex.l, amd/conf_tok.l: allocate more output slots so 3959 lex scanners don't run out of mem. 3960 39612003-07-13 Ion Badulescu <lionut@gonzales.badula.org> 3962 3963 * amd/amfs_generic.c (amfs_lookup_mntfs): ditto as below for the 3964 special provision 3965 3966 * amd/mntfs.c (find_mntfs): compare the filesystem type 3967 (i.e. mf_ops) in addition to mf_info; the special provision 3968 mentioned below is really for any filesystem already mounted on 3969 our mount point, not just for inherited filesystems 3970 39712003-07-13 Erez Zadok <ezk@whitestar.dyn.optonline.net> 3972 3973 * doc/Makefile.am (install-html): build per-chapter HTML manual, 3974 as well as manual in one big HTML file. 3975 3976 * doc/am-utils.texi: Minor corrections. Ack Ion's autofs work. 3977 Ack maintainers. New section on How to get additionl info, 3978 including the Amd book. Correct stale URLs and Emails. 3979 3980 * amd/amd.8, amq/amq.8, amq/pawd.1, fixmount/fixmount.8, 3981 fsinfo/fsinfo.8, hlfsd/hlfsd.8, mk-amd-map/mk-amd-map.8, 3982 scripts/amd.conf.5, scripts/automount2amd.8, 3983 wire-test/wire-test.8: include references to info pages, proper 3984 authors, am-utils Web page, and amd book. 3985 39862003-07-13 Ion Badulescu <lionut@gonzales.badula.org> 3987 3988 * amd/mntfs.c (find_mntfs): re-add the check for mf_info, but with 3989 a special provision for inherited filesystems. This unbreaks the 3990 handling of parallel mounts 3991 3992 * amd/amfs_generic.c (amfs_lookup_mntfs): for restarted 3993 filesystems, there can be no alternative mntfs to try to mount 3994 39952003-07-13 Erez Zadok <ezk@cs.sunysb.edu> 3996 3997 * amd/amd.8: reference am-utils info page in amd man page, as per 3998 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>. 3999 4000 * fsinfo/fsinfo.h, fsinfo/fsinfo.c (fsi_get_args): don't use 4001 yywrap() if it doesn't exist. 4002 4003 * amd/conf_parse.y, amd/conf_tok.l, fsinfo/fsi_gram.y, 4004 fsinfo/fsi_lex.l: fixes to support old flex 2.5.4, as well as the 4005 newer flex 2.5.31 (beta development). These include resolving 4006 conflicts with yylineno, unput() vs. nounput(), etc. 4007 40082003-07-13 Ion Badulescu <lionut@gonzales.badula.org> 4009 4010 * amd/amfs_generic.c (amfs_cont): check for (am_error > 0) before 4011 calling assign_error_mntfs() 4012 (amfs_generic_mount_child): ditto 4013 4014 * amd/autil.c (assign_error_mntfs): move the check for 4015 (am_error > 0) up into the caller, it's less confusing that way 4016 4017 * tasks: some updates 4018 4019 * conf/transp/transp_tli.c (check_pmap_up): new function which 4020 detects if the remote portmapper is functional 4021 (amu_clnt_create_best_version): removed 4022 (get_nfs_version): use a much simplified version of the old 4023 amu_clnt_create_best_version(), based on clnt_create_vers() and 4024 its _timed() counterpart 4025 4026 * conf/transp/transp_sockets.c (check_pmap_up): new function which 4027 detects if the remote portmapper is functional 4028 (pmap_ping): deleted 4029 (get_nfs_version): removed calls to pmap_ping, already done by 4030 caller 4031 4032 * amd/srvr_nfs.c: call check_pmap_up() before continuing with 4033 get_nfs_version() 4034 4035 * amd/amfs_generic.c: updated a couple of log messages 4036 4037 * configure.in: detect clnt_create_vers and clnt_create_vers_timed; 4038 changed LIBTOOL versioning to 3:0:0 4039 40402003-07-12 Ion Badulescu <lionut@gonzales.badula.org> 4041 4042 * conf/autofs/autofs_linux.h (AUTOFS_HOST_FS_FLAGS): removed 4043 FS_AUTOFS because the host mount cannot be a top level mount 4044 (AUTOFS_DIRECT_FS_FLAGS): removed FS_AUTOFS because Linux autofs 4045 doesn't support direct mounts 4046 40472003-07-12 Erez Zadok <ezk@whitestar.dyn.optonline.net> 4048 4049 * amd/conf_parse.y, amd/conf_tok.l: pretty comments on # cpp 4050 macros. 4051 40522003-07-10 Ion Badulescu <ionut@buggy.badula.org> 4053 4054 * include/am_utils.h (dlog): improved version for gcc, using 4055 vararg macros 4056 4057 * amd/rpc_fwd.c (fwd_packet): unused variable when compiling 4058 without debugging 4059 40602003-07-10 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4061 4062 * include/am_utils.h (dlog): change the #define of non-debugging 4063 dlog to "nothing" so that all that'll be left behind is a list of 4064 args in parenthesis (arg,arg,...). GCC and other native C 4065 compilers seem OK with it, even if it doesn't optimize away the 4066 whole debugging line. 4067 4068 * ltmain.sh: was from libtool 1.4.2. updated to libtool 1.4.3, 4069 the latest on RH9 systems (but is not the latest libtool 4070 available). Stay with stable version in preparation for 6.1 4071 release. 4072 4073 * config.{guess,sub}, doc/texinfo.tex: update to latest off of 4074 ftp.gnu.org. 4075 40762003-07-09 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4077 4078 * amd/amfs_inherit.c (amfs_inherit_inherit): don't use // C++ 4079 style comments: breaks non-C++ compilers (like AIX xlC 6) 4080 40812003-07-02 Ion Badulescu <ionut@buggy.badula.org> 4082 4083 * doc/am-utils.texi (opts Option): document ignore_portmapper option 4084 4085 * conf/transp/transp_sockets.c (get_nfs_version): better 4086 protocol/version cycling while probing remote server; better log 4087 messages 4088 4089 * amd/srvr_nfs.c (start_ping): improved log message 4090 (find_nfs_srvr): always use requested nfs_version/nfs_proto; make 4091 sure we have a valid NFS port; start the server as "valid, down" if 4092 the remote portmapper tells us the NFS service is not running; 4093 implement the "ignore_portmapper" pseudo-mount option 4094 4095 * amd/rpc_fwd.c (fwd_packet): better debug messages 4096 4097 * amd/ops_nfs.c (got_nfs_fh): log a messages if a root fh is 4098 denied; call wakeup even if mountd call fails 4099 4100 * amd/amq_subr.c (xdr_amq_mount_info_qelem): use FSRV_ISUP/ISDOWN 4101 instead of checking the flags directly 4102 * amd/srvr_amfs_auto.c (free_srvr): ditto 4103 4104 * amd/amfs_generic.c (amfs_bgmount): refined some error/debug 4105 messages 4106 4107 * amd/amd.h (FSRV_ERROR): new macro 4108 (FSRV_ISDOWN, FSRV_ISUP): a server that doesn't exist (i.e. it's a 4109 local filesystem) is always up 4110 41112003-06-30 Erez Zadok <ezk@cs.sunysb.edu> 4112 4113 * amd/autil.c (am_mounted): set AMF_NOTIMEOUT if either unmount or 4114 umount options are present. 4115 4116 * doc/am-utils.texi (Program Filesystem): document alias options 4117 to unmount:=, umount:=. 4118 4119 * amd/opts.c (expansions): initialize opt_umount. 4120 (to_free): initialize opt_umount. 4121 4122 * amd/amfs_program.c (amfs_program_match): ensure that only one of 4123 umount:= or unmount:= options are specified, but that at least one 4124 of them is listed. 4125 4126 * amd/amd.h: support unmount:=XXX as well as umount:=XXX (too 4127 annoying in type:program, when one forgets the 'n' in "unmount"). 4128 They are two separate fields, so we can catch mistakes when 4129 someone tries to define both options. 4130 4131 * doc/am-utils.texi (Program Filesystem): explain that both mount 4132 and unmount options must be specified. Correct example to show 4133 both. 4134 41352003-06-25 Erez Zadok <ezk@cs.sunysb.edu> 4136 4137 * XXX: beginning of new amd.conf option map_defaults: will parse 4138 the option and set remember it in the right places. Need to 4139 document this and actually hook it up with the rest of the code. 4140 Any volunteers? :-) 4141 4142 * scripts/amd.conf-sample (map_defaults): example of map_defaults 4143 amd.conf option. 4144 4145 * amd/conf.c (reset_cf_map): initialize global and per-mount 4146 map_defaults. 4147 (gopt_map_defaults): parse global map_defaults. 4148 (process_regular_option,ropt_map_defaults): parse per-map 4149 map_defaults amd.conf option. 4150 4151 * amd/amd.h: a place to store global and per-mount map_defaults. 4152 4153 * BUGS: more notes about AIX 5.2 problems and how to overcome 4154 them. 4155 41562003-06-10 Erez Zadok <ezk@cs.sunysb.edu> 4157 4158 * doc/Makefile.am: force version.texi to be rebuilt regardless of 4159 maintainer mode. Silly Automake will not build version.texi if 4160 maintainer mode is off (this is hardcoded into the automake perl 4161 script!). According to the Automake maintainers, users should 4162 always build in CVS trees with maintainer-mode on; but what if I 4163 don't want to?! I don't want to distribute Makefiles with 4164 maintained rules in them to users. The Automake maintainers also 4165 say that "make dist" will rebuild version.texi no matter what. I 4166 find that not to be the case. It failed to run a "make" before 4167 "make dist" because version.texi doesn't exist! Chicken and Egg 4168 situation. So, until Automake deals with version.texi in a more 4169 flexible and friendly manner, I adapted a rule to build 4170 version.texi and inserted it in this Makefile.am. 4171 41722003-06-09 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4173 4174 * mk-amd-map/mk-amd-map.c (main): open temp db file using O_EXCL, 4175 next best thing to using mkstemp(). Patch from Hendrik Scholz 4176 <hscholz@raisdorf.net>. 4177 41782003-05-08 Ion Badulescu <ion@guppy.limebrokerage.com> 4179 4180 * libamu/mount_fs.c (compute_automounter_mount_flags): use 4181 MNT2_GEN_OPT_AUTOMNTFS if available; minor cleanup 4182 4183 * m4/macros/header_templates.m4: added template for 4184 MNT2_GEN_OPT_AUTOMOUNTED 4185 41862003-05-01 Ion Badulescu <ionut@nicu.badula.org> 4187 4188 * amd/ops_xfs.c (mount_xfs): compile fix (s/genflags/flags/) 4189 41902003-04-23 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4191 4192 * conf/transp/transp_sockets.c (create_amq_service): minor cpp 4193 directive indentation and commenting. 4194 41952003-04-22 Ion Badulescu <ionut@moisil.badula.org> 4196 4197 * conf/transp/transp_sockets.c (create_amq_service): Ugly *BSD fix 4198 for an RPC library DoS issue (original patch from Martin Blapp, 4199 massaged into something more digestable by me) 4200 42012003-04-14 Ion Badulescu <ionut@moisil.badula.org> 4202 4203 * conf/autofs/autofs_solaris_v2_v3.c: removed autofs_free_data(), 4204 left over from the recent cleanup 4205 42062003-04-13 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4207 4208 * doc/Makefile.am (DVIPS): use proper options for dvips. 4209 4210 * doc/am-utils.texi (opts Option): document new 'unmount' option, 4211 and better explain the 'nounmount' option. Also some misc options 4212 for better generation of html manual. 4213 4214 * doc/Makefile.am (install-html): support newer texi2html 4.0 4215 options, as older options were renamed or changed behavior. 4216 4217 * amd/autil.c (am_mounted): support new 'unmount' option, to allow 4218 all file system mounts to timeout and thus expire. This option is 4219 useful for removable local media such as CD-ROMs, USB drives, 4220 etc. so they can expire when not in use, and get unmounted (such 4221 drives can get work out when they keep spinning). Patch from 4222 Christos Zoulas <christos@zoulas.com> (originally from Koji 4223 Imada). 4224 42252003-04-10 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4226 4227 * configure.in: use AM_MAINTAINER_MODE, so maintainer-only rules 4228 do not get added to Makefiles by default (they are confusing to 4229 users who don't have autotools installed). 4230 42312003-04-09 Ion Badulescu <ion@guppy.limebrokerage.com> 4232 4233 * amd/mntfs.c (find_mntfs): revert the "change of philosophy" (see 4234 the 2001-05-23 entry) back to the 6.0 code 4235 42362003-04-04 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4237 4238 * libamu/xutil.c (switch_to_logfile): don't try to print logfile 4239 if it is null (strlen core dump on solaris). Bug report from John 4240 P. Rouillard <rouilj@ieee.org>. 4241 42422003-03-31 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4243 4244 * fsinfo/fsinfo.8: typo co-ordinate -> coordinate. Typo report 4245 from Perry E. Metzger" <perry@piermont.com>. 4246 42472003-03-25 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4248 4249 * include/am_defs.h: Don't include malloc.h if stdlib.h exists, 4250 because modern systems (e.g., BSD) complain if you use malloc.h 4251 instead of stdlib.h. Let's hope there are no systems out 4252 there that need both. 4253 42542003-03-20 Erez Zadok <ezk@suse73.fsl.cs.sunysb.edu> 4255 4256 * minor new port: sparc64-unknown-linux-suse7.3. 4257 42582003-03-20 Erez Zadok <ezk@a-freebsd5.fsl.cs.sunysb.edu> 4259 4260 * minor new port: i386-unknown-freebsd5.0. 4261 4262 * configure.in: detect nfsclient/nfsargs.h. 4263 4264 * conf/nfs_prot/nfs_prot_freebsd3.h: include 4265 <nfsclient/nfsargs.h>, needed in FreeBSD 5.0. 4266 42672003-03-15 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4268 4269 * amd/amd.8, amd/amd.8, fixmount/fixmount.8, hlfsd/hlfsd.8, 4270 scripts/amd.conf.5, scripts/expn.1: minor spell checking and 4271 extraneous space elimination. 4272 42732003-03-07 Ion Badulescu <ionut@buggy.badula.org> 4274 4275 * conf/autofs/autofs_linux.c (autofs_get_fh): don't leak file 4276 descriptors if limit exceeded 4277 (autofs_mounted): call autofs_get_mp(); init am_autofs_ttl 4278 (autofs_release_fh): release pending_mounts and pending_umounts 4279 queues 4280 (autofs_timeout_mp): update am_autofs_ttl instead of am_ttl 4281 4282 * amd/mntfs.c (init_mntfs): delete initialization of removed 4283 mf_autofs_fh 4284 (uninit_mntfs): delete call to autofs_release_fh() 4285 4286 * amd/map.c (init_map): init autofs_fh to 0, delete initialization 4287 of removed autofs_data 4288 (free_map): release autofs_fh after unmounting map; delete call to 4289 autofs_free_data() 4290 (umount_exported): call autofs_release_mp() prior to unmounting 4291 autofs f/s 4292 (unmount_mp): ditto 4293 (free_map_if_success): call autofs_get_mp() if unmounting fails 4294 (timeout_mp): use the dedicated am_autofs_ttl timeout for f/s-wide 4295 timeouts instead of the per-mountpoint am_ttl 4296 4297 * amd/autil.c (am_unmounted): release autofs_fh after unmounting 4298 autofs f/s 4299 4300 * amd/amfs_generic.c (amfs_cont): release autofs_fh if mounting 4301 autofs f/s fails; 4302 (amfs_bgmount): ditto 4303 4304 * amd/amd.h: moved autofs_fh from mntfs to am_node, since it's 4305 more related to the mount point than to the f/s mounted; 4306 added am_autofs_ttl to am_node, for running expirations on entire 4307 filesystems 4308 4309 * conf/autofs/autofs_*: autofs_get_fh() returns int instead of 4310 autofs_fh_t *; autofs_release_fh() now takes an am_node * parameter 4311 instead of autofs_fh_t *, in an effort to not deal with 4312 autofs-specific data structures outside autofs code; 4313 new methods autofs_get_mp() and autofs_release_mp(), which 4314 acquire/release autofs resources to allow clean unmount attempts; 4315 nuke autofs_data_t, never used 4316 4317 * amd/amd.h: prototypes for new and changed autofs functions 4318 43192003-03-07 Ion Badulescu <ion@guppy.limebrokerage.com> 4320 4321 * amd/nfs_subr.c (do_readlink): eliminate third argument, never used 4322 (nfsproc_getattr_2_svc): reorganize the code a bit 4323 4324 * amd/map.c (mk_fattr): take a nfsfattr * argument instead of an 4325 am_node * argument 4326 4327 * amd/amd.h: changed prototype for mk_fattr() 4328 4329 * amd/autil.c (am_unmounted): when remounting, use the parent 4330 node's lookup_child() and mount_child() operations, not the 4331 generic ones 4332 4333 * amd/amfs_generic.c (amfs_cont): minor code optimization 4334 43352003-03-06 Ion Badulescu <ion@guppy.limebrokerage.com> 4336 4337 * amd/amfs_auto.c: lots of renames and code moving: 4338 amfs_auto_match() -> amfs_generic_match(), moved to generic; 4339 amfs_auto_mkcacheref() -> amfs_mkcacheref(), moved to autil.c; 4340 amfs_auto_mounted() -> amfs_generic_mounted(), moved to generic; 4341 amfs_auto_umount() -> amfs_generic_umount(), moved to generic; 4342 free_continuation(): moved to generic, made static; 4343 assign_error_mntfs(): moved to autil.c; 4344 amfs_auto_cont() -> amfs_cont(), moved to generic, made static; 4345 amfs_auto_retry() -> amfs_retry(), moved to generic, made static; 4346 try_mount() + mount_node() -> mount_node(), moved to map.c 4347 amfs_auto_bgmount() -> amfs_bgmount(), moved to generic; 4348 amfs_parse_defaults(): moved to generic; 4349 amfs_auto_lookup_node() -> amfs_lookup_node(), moved to generic; 4350 amfs_auto_lookup_one_mntfs() -> amfs_lookup_one_mntfs(), in generic; 4351 amfs_auto_lookup_mntfs() -> amfs_lookup_mntfs(), moved to generic; 4352 amfs_auto_mount_child() -> amfs_generic_mount_child(), in generic; 4353 amfs_auto_lookup_child() -> amfs_generic_lookup_child(), in generic; 4354 next_nonerror_node(): moved to autil.c; 4355 amfs_auto_readdir() -> amfs_generic_readdir(), moved to readdir; 4356 amfs_auto_readdir_browsable() -> amfs_readdir_browsable(), in readdir; 4357 4358 * amd/amfs_toplvl.c: mount_amfs_toplvl() renamed to amfs_mount() 4359 and moved to autil.c 4360 4361 * amd/readdir.c, amd/amfs_generic.c: new files with stuff ripped 4362 out of amd/amfs_auto.c 4363 4364 * amd/amd.h: struct continuation moved to generic.c; prototypes 4365 for the renamed functions; NumChild renamed to NumChildren 4366 4367 * amd/map.c: collaped unmount_node_wrap() and unmount_node() into 4368 the latter 4369 4370 * amd/mapc.c: key_already_in_chain(): moved to readdir.c; 4371 make_entry_chain(): moved to readdir.c; 4372 4373 * amd/srvr_amfs_auto.c: find_amfs_auto_srvr() renamed to 4374 amfs_generic_find_srvr() 4375 4376 * amd/amfs_*.c: adjustments for the renames above 4377 4378 * amd/ops_*.c: low-level filesystems don't need a find_server() 4379 method 4380 4381 * amd/Makefile.am: added amfs_generic.c and readdir.c 4382 4383 * doc/am-utils.texi: minor clarification for auto maps 4384 43852003-03-06 Ion Badulescu <ion@guppy.limebrokerage.com> 4386 4387 * amd/amd.h: moved lots and lots of amd-only stuff here, from 4388 include/am_utils.h; changed task_fun, cb_fun and fwd_fun typedefs 4389 to be function typedefs, not pointer to function typedefs 4390 4391 * include/am_utils.h: see above 4392 4393 * amd/ops_nfs.c, amd/rpc_fwd.c, amd/sched.c: adjustments for 4394 function typedef changes 4395 43962003-03-05 Erez Zadok <ezk@cs.sunysb.edu> 4397 4398 * BUGS: record IBM's patch number for the AIX 5.2 NFS over IPv6 4399 bug. 4400 44012003-02-02 Erez Zadok <ezk@siamese.fsl.cs.sunysb.edu> 4402 4403 * NEWS: minor new port: ia64-unknown-linux-rh2.1AS 4404 44052003-01-31 Ion Badulescu <ion@console.limebrokerage.com> 4406 4407 * m4/macros/os_cflags.m4: rhapsody and darwin are the same 4408 4409 * amd/autil.c (mount_node): vastly simplified, just a wrapper now 4410 4411 * amd/amfs_inherit.c (amfs_inherit_mount): remove the am_mounted() 4412 hack, we now do it properly in the generic code 4413 4414 * amd/amfs_auto.c (amfs_auto_bgmount): get the autofs_fh _before_ 4415 forking the child; set and reset MFF_MOUNTING here, not in 4416 mount_node(), because the latter might be running in child 4417 context; call am_mounted() after a successful foreground mount 4418 44192003-01-29 Ion Badulescu <ionut@moisil.badula.org> 4420 4421 * configure.in: new flag --with[out]-ndbm; don't pull in libldap 4422 if building --without-ldap; look for the gdbm/ndbm.h header; make 4423 explicit the dependency between the ndbm headers and libraries; 4424 define NEW_DBM_H as the ndbm header that should be used 4425 4426 * include/am_defs.h: simply include NEW_DBM_H for ndbm stuff, 4427 instead of trying to second-guess configure 4428 4429 * m4/macros/header_templates.m4: new template for NEW_DBM_H 4430 4431 * m4/macros/check_map_funcs.m4: 4432 (ac_upcase_map_name): use the third argument correctly 4433 4434 * ltmain.sh: working version from libtool-1.4.2-7 4435 4436 * buildall: print the entire configure command, including extra 4437 arguments; pass each of the extra arguments separately, not 4438 commingled into one 4439 44402003-01-28 Ion Badulescu <ion@guppy.limebrokerage.com> 4441 4442 * include/am_utils.h (DEBUG_MNTTAB): define outside of #ifdef 4443 DEBUG; it is not used without DEBUG, but it is referenced at 4444 compile time. Bug report from John Kilburg <john@physics.unlv.edu>. 4445 (D_ALL): don't include D_XDRTRACE, too verbose and normally 4446 unnecessary 4447 44482003-01-28 Erez Zadok <ezk@cs.sunysb.edu> 4449 4450 * ltmain.sh, config.guess, config.sub, doc/texinfo.tex: updates 4451 from latest official GNU versions. 4452 44532003-01-25 Erez Zadok <ezk@cs.sunysb.edu> 4454 4455 * BUGS (Note): document AIX-5.1 NFS-client side bug (hangs in 4456 vmount). 4457 44582003-01-25 Ion Badulescu <ionut@moisil.badula.org> 4459 4460 * Released beta version 6.1b2 4461 44622003-01-24 Ion Badulescu <ionut@moisil.badula.org> 4463 4464 * amd/autil.c (am_unmounted): reset MFF_MKMNT from mf_flags when 4465 calling rmdirs() on mountpoint 4466 4467 * amd/amfs_auto.c (amfs_auto_bgmount): ditto 4468 4469 * amd/amfs_nfsl.c (amfs_nfsl_umounted): ditto 4470 4471 * doc/am-utils.texi (opts Option): "sftlookup" -> "softlookup" 4472 4473 * NEWS: "sftlookup" -> "softlookup" 4474 4475 * amd/ops_nfs.c (nfs_mount): "sftlookup" -> "softlookup", also 4476 check for "nosoftlookup" in combination with "soft" 4477 44782003-01-23 Ion Badulescu <ion@guppy.limebrokerage.com> 4479 4480 * m4/macros/check_nfs_fh_dref.m4: darwin/rhapsody is another 4481 freebsd22 derivative 4482 4483 * NEWS: updated for Darwin changes 4484 4485 * .cvsignore: added A.i386-apple-darwin6.0 4486 4487 * m4/macros/os_cflags.m4: add -D_P1003_1B_VISIBLE to cflags for 4488 Darwin 4489 44902003-01-23 Erez Zadok <ezk@cs.sunysb.edu> 4491 4492 * conf/mount/mount_aix.c (mount_aix3): clean back this file from 4493 all the debugging cruft that is no longer needed (and really was 4494 never needed in the first place). 4495 44962003-01-10 Erez Zadok <ezk@cs.sunysb.edu> 4497 4498 * scripts/test-amd.{misc,conf}: simple amd.conf and amd.misc 4499 (map) files for testing basic amd functionality such as whether it 4500 can mount its own mount NFS points. 4501 45022002-12-28 Ion Badulescu <ionut@moisil.badula.org> 4503 4504 * amd/srvr_nfs.c (start_nfs_pings): don't set FSF_PINGING if 4505 pings are disabled 4506 4507 * libamu/xdr_func.c (xdr_ftype): use a local enum_t variable 4508 instead of casting the pointer to (enum_t *) 4509 (xdr_mountstat3): ditto 4510 (xdr_nfsstat): ditto 4511 4512 * libamu/misc_rpc.c (make_rpc_packet): fix make_rpc_packet() on 4513 64-bit big-endian platforms, bug report from Bill Fenner 4514 <fenner@research.att.com> 4515 4516 * configure.in: increase library patchlevel 4517 4518 * libamu/xutil.c (amu_release_controlling_tty): close and reopen 4519 file descriptors 0,1,2 before calling setsid() 4520 45212002-12-27 Erez Zadok <ezk@cs.sunysb.edu> 4522 4523 * updated copyright year to 2003 on all files 4524 45252002-12-10 Erez Zadok <ezk@localhost.localdomain> 4526 4527 * rename "aux/" subdir into "m4/" so as to avoid problems with 4528 MS-DOS systems (where "AUX" is a reserved name). This required 4529 fixing numerous files. 4530 45312002-12-10 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4532 4533 * configure.in: don't check for bad hasmntopt() function if 4534 hasmntopt() doesn't exist on the system, because we will replace 4535 it with our own version anyway. 4536 4537 * conf/transp/transp_sockets.c (amu_get_myaddress): use "%lx" in 4538 dlog because htonl() returns a u_long. 4539 45402002-12-10 Erez Zadok <ezk@localhost.localdomain> 4541 4542 * include/am_defs.h: use system's hasmntopt() only if it is found 4543 and it is not buggy. 4544 4545 * libamu/hasmntopt.c (nextmntopt): isspace() takes an int, not a 4546 char. 4547 4548 * amd/am_ops.c, amd/amfs_auto.c, amd/autil.c, amd/nfs_subr.c, 4549 amd/ops_cdfs.c, amd/ops_nfs.c, amd/srvr_nfs.c, libamu/hasmntopt.c, 4550 libamu/mount_fs.c, libamu/mtab.c: rename all uses of hasmntopt() 4551 to amu_hasmntopt(). Don't use hasmntopt() directly any more! 4552 4553 * aux/macros/func_bad_hasmntopt.m4: new M4 macro to test for a bad 4554 hasmntopt() function, which incorrectly finds the option "soft" in 4555 a string "hard,softlookup,ro". 4556 4557 * libamu/hasmntopt.c (hasmntopt): use 'const' on two args to 4558 hasmntopt(), to match what most systems use. 4559 4560 * aux/macros/header_templates.m4: template for HAVE_BAD_HASMNTOPT. 4561 4562 * configure.in: invoke test for bad hasmntopt() 4563 4564 * NEWS: minor new port, i386-pc-linux-rh8.0. 4565 Mention autofs-v4 on solaris9 works. 4566 4567 * bootstrap: remove any autom4te-*.cache directories, now that 4568 autoconf uses a version number for them. 4569 45702002-12-09 Ion Badulescu <ionut@moisil.badula.org> 4571 4572 Patches from Christos Zoulas: 4573 4574 -1- am_utils.h: add full prototypes 4575 -2- amfs_auto.c make functions static and add prototypes 4576 -3- map.c: kill double free 4577 -5- transp_sockets.c: add full prototypes 4578 45792002-12-09 Ion Badulescu <ionut@moisil.badula.org> 4580 4581 * NEWS: updated 4582 4583 * doc/am-utils.texi (opts Option): document sftlookup 4584 4585 * conf/autofs/autofs_solaris_v2_v3.c: compile fixes 4586 45872002-11-22 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4588 4589 * amd/info_ldap.c (amu_ldap_rebind): gopt.ldap_cache_seconds is 4590 %ld not %d. 4591 45922002-11-21 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4593 4594 * {amd,fsinfo}/Makefile.am: remove special rules for processing 4595 yacc/lex files, now that autoconf/automake properly handle them 4596 better (esp. now that bison 1.75 behaves differently than older 4597 bison versions). 4598 45992002-11-21 Erez Zadok <ezk@cs.sunysb.edu> 4600 4601 * config.guess.long: updated script so it will properly find the 4602 version number of the new Itanium 2 machines running "Red Hat 4603 Linux Advanced Workstation release 2.1AW (Derry)". The script now 4604 will report ia64-unknown-linux-rh2.1AW. 4605 46062002-11-20 Ion Badulescu <ionut@moisil.badula.org> 4607 4608 * amfs_auto_bgmount(): almost complete rewrite 4609 4610 * fixed amfs_inherit to do the right thing and not dereference 4611 freed mntfs'es 4612 4613 * #if 0'ed bogus code in fh_to_mp3() -- it is now done properly in 4614 amfs_autofs_lookup_child() 4615 4616 * release the autofs_fh only in one place 4617 4618 * remove the mountpoint only if mf_refc == 1 4619 4620 * print the mntfs type in free_mntfs() 4621 4622 * new pseudo-mount option 'sftlookup' which causes lookups to 4623 mounted shares from downed servers to return EIO; the default 4624 depends on whether the mount is 'hard' or 'soft' 4625 4626 * improved querying of supported NFS versions on the server -- 4627 don't even try if it's known to be down 4628 4629 * solaris autofs mount code moved to transp_{sockets,tli}.c 4630 4631 * incipient (non-functional) AIX autofs support 4632 46332002-11-11 Ion Badulescu <ion@guppy.limebrokerage.com> 4634 4635 * doc/am-utils.texi (Keep-alives): removed outdated info about not 4636 maintaining the state of TCP NFS servers 4637 46382002-11-04 Ion Badulescu <ion@guppy.limebrokerage.com> 4639 4640 * include/am_utils.h: prototype for ops_search() 4641 4642 * amd/am_ops.c (ops_search): new function for searching the right 4643 set of ops for a given filesystem type 4644 4645 * amd/restart.c (restart): cleanup and split into two functions in 4646 preparation for handling the restart of amd's own mount points 4647 (restart_fake_mntfs): new function, factored out from restart() 4648 46492002-11-04 Ion Badulescu <ionut@buggy.badula.org> 4650 4651 * amd/ops_cdfs.c (mount_cdfs): remove special code for loop device 4652 (cdfs_umount): ditto 4653 4654 * conf/mount/mount_linux.c (mount_linux): factor it out to 4655 mount_linux_nfs() and mount_linux_nonfs() 4656 (mount_linux_nonfs): generalize loop device support to all 4657 filesystems (not just cdfs); make it automatic for anything that's 4658 a regular file 4659 (parse_opts): deprecate the explicit "loop" mount option 4660 (do_mount_linux): minor cleanup 4661 4662 * conf/umount/umount_default.c (umount_fs2): release loop device 4663 on umount() 4664 46652002-11-03 Erez Zadok <ezk@cnm20> 4666 4667 * include/am_defs.h: moved #include of net/if.h above net/route.h, 4668 because on AIX 5.2 if.h is needed for route.h (let's hope it 4669 doesn't break things on other systems). 4670 4671 * include/am_defs.h: AIX 5.2 needs struct sigevent from signal.h 4672 to be defined, but I don't want to move the inclusion of signal.h 4673 this early into this file. Luckily, amd doesn't need the size of 4674 this structure in any other structure that it uses. So we 4675 sidestep it for now. 4676 4677 * conf/nfs_prot/nfs_prot_aix5_2.h: AIX 5.2 wants 'struct pathcnf', 4678 but I couldn't find its definition anywhere. Luckily, amd doesn't 4679 need the size of this structure in any other structure that it 4680 uses. So we sidestep it for now. 4681 46822002-11-02 Erez Zadok <ezk@cs.sunysb.edu> 4683 4684 * config.guess, config.sub, doc/texinfo.tex: updates from 4685 the latest GNU distributions (2002-09-05). 4686 46872002-10-30 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4688 4689 * conf/nfs_prot/nfs_prot_aix5_2.h: add more definitions from 4690 mount.h for NFSOPT_* and NFSMNT_*. 4691 Don't use typedefs that aren't found in system header files. 4692 46932002-10-30 Erez Zadok <ezk@cs.sunysb.edu> 4694 4695 * Makefile.am (EXTRA_DIST_CONF): distribute nfs_prot_aix5_2.h. 4696 4697 * conf/nfs_prot/nfs_prot_aix5_2.h: new file. 4698 4699 * aux/macros/struct_nfs_args.m4 (ac_cv_have_struct_nfs_args): look 4700 for "struct aux52_nfs_args". 4701 4702 * aux/macros/check_nfs_prot_headers.m4: define new header file for 4703 AIX 5.2. 4704 47052002-10-21 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4706 4707 * scripts/amd.conf.5 (ldap_proto_version): document in amd.conf 4708 man page. 4709 4710 * scripts/amd.conf-sample (ldap_proto_version): show example of use 4711 4712 * doc/am-utils.texi (ldap_proto_version Parameter): document new 4713 amd.conf option. 4714 4715 * amd/conf.c (gopt_ldap_proto_version): new conf function to 4716 support ldap_proto_version amd.conf parameter. 4717 4718 * amd/amd.h: field to hold LDAP protocol version. 4719 4720 * amd/amd.c (init_global_options): set default for 4721 ldap_proto_version. ldap_proto_version patch from George Ross 4722 <gdmr@dcs.ed.ac.uk> and Tim Colles <timc@inf.ed.ac.uk>. 4723 4724 * amd/info_ldap.c (amu_ldap_unbind): ignore SIGPIPE errors while 4725 unbinding from an LDAP server that may have been restarted. Fix 4726 from George Ross <gdmr@dcs.ed.ac.uk>. 4727 47282002-09-17 Ion Badulescu <ion@guppy.limebrokerage.com> 4729 4730 * remove all autoconf stuff added for sys_nerr 4731 4732 * amq/amq.c, libamu/xutil.c, hlfsd/hlfsd.c: always use strerror 4733 4734 * libamu/strerror.c: more explicit text for unknown errno's 4735 47362002-10-01 Erez Zadok <ezk@cs.sunysb.edu> 4737 4738 * include/am_defs.h: define "extern int sys_err" if needed. 4739 4740 * aux/macros/header_templates.m4: template for 4741 HAVE_EXTERN_SYS_NERR. 4742 4743 * hlfsd/hlfsd.h, libamu/xutil.c (expand_error), amq/amq.c 4744 (show_mi): remove "extern int sys_err" 4745 4746 * configure.in: execute test for "extern int sys_err" 4747 4748 * Makefile.am (EXTRA_DIST_AUX): distribute new extern_sys_err.m4 file. 4749 4750 * aux/macros/extern_sys_nerr.m4: new test to check for existence 4751 of "extern int sys_nerr" definition in system headers. 4752 47532002-09-17 Ion Badulescu <ion@guppy.limebrokerage.com> 4754 4755 * libamu/xutil.c (dbg_opt): bring comments in line with the code 4756 4757 * hlfsd/hlfsd.c (main): use amuDebug() instead of touching 4758 debug_flags directly 4759 4760 * amd/amd.c (main): don't init debug_flags, leave it as zero (no 4761 debugging by default) 4762 47632002-09-11 Ion Badulescu <ion@guppy.limebrokerage.com> 4764 4765 Debug code sanitization: 4766 4767 - amuDebug() becomes an expression, and explicit if() statements 4768 are added around it throughout the code 4769 - amuDebugNo() goes away (ugh!) 4770 - D_AMQ, D_DAEMON and D_FORK reverse their meaning 4771 - D_ALL contains only options that don't affect amd's functionality 4772 47732002-09-04 Ion Badulescu <ion@guppy.limebrokerage.com> 4774 4775 * amd/amfs_auto.c (free_continuation): avoid double-free'ing the 4776 mntfs if there was an error/timeout 4777 47782002-09-04 Ion Badulescu <ion@guppy.limebrokerage.com> 4779 4780 * amd/amfs_auto.c (amfs_auto_lookup_mntfs): use ereturn() instead 4781 of "return NULL" to signal an error to the upper layers 4782 (amfs_auto_mount): use strdup so the string can be free'd later on 4783 [Debian bug report from Matt Chapman <matthewc@cse.unsw.edu.au>] 4784 47852002-09-03 Ion Badulescu <ion@guppy.limebrokerage.com> 4786 4787 Patches from George Ross <gdmr@dcs.ed.ac.uk>: 4788 4789 * amd/amfs_auto.c (assign_error_mntfs): do not discard old mntfs, 4790 it will be done in free_continuation(); assorted debugging messages 4791 4792 * amd/srvr_nfs.c (nfs_timed_out): allocate a new XID on server 4793 timeout to avoid problems with late ping replies 4794 4795 * amd/mntfs.c (free_mntfs): sanity check for mf_refc; assorted 4796 debugging messages 4797 4798 * amd/map.c (unmount_node): more verbose debug message 4799 48002002-07-29 Ion Badulescu <ion@guppy.limebrokerage.com> 4801 4802 * amd/amfs_auto.c (amfs_auto_lookup_mntfs): prevent deferencing 4803 de-allocated memory in str3cat 4804 (amfs_auto_lookup_mntfs): check for buffer overflow 4805 48062002-07-11 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4807 4808 * scripts/expn.{1,in}: fixed typos as reported by Thomas Klausner 4809 <wiz@danbala.ifoer.tuwien.ac.at>. 4810 48112002-06-26 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4812 4813 * doc/Makefile.am (install-html): don't use locally hacked 4814 texi2html features. 4815 4816 * conf/transp/transp_sockets.c (amu_get_myaddress): Most modern 4817 systems should use 127.0.0.1 as the localhost address over which 4818 you can do NFS mounts. In the past we found that some NFS clients 4819 may not allow mounts from localhost. So we used get_myaddress() 4820 and that seemed to work. Alas, on some other systems, 4821 get_myaddress() may return one of the interface addresses at 4822 random, and thus use a less efficient IP address than 127.0.0.1. 4823 The solution is to hard-code 127.0.0.1, but still check if 4824 get_myaddress() returns a different value and warn about it. 4825 4826 * doc/am-utils.texi: don't use ':' in @cindex entries. 4827 48282002-06-25 Ion Badulescu <ion@guppy.limebrokerage.com> 4829 4830 * Released beta version 6.1b1 4831 48322002-06-24 Ion Badulescu <ionut@moisil.badula.org> 4833 4834 * aux/macros/struct_nfs_args.m4: added test for aix51_nfs_args 4835 4836 * conf/nfs_prot/nfs_prot_aix5_1.h: rename aix42_nfs_args to 4837 aix51_nfs_args, rename unknown fields to u<number>, add the 4838 unknown new field into the middle of the old 4.2 structure 4839 48402002-06-24 Ion Badulescu <ion@guppy.limebrokerage.com> 4841 4842 * include/am_compat.h: better test for struct netconfig 4843 (!HAVE_NETCONFIG_H && !HAVE_SYS_NETCONFIG_H) 4844 4845 * aux/macros/check_nfs_prot_headers.m4: added new header for aix5.1+ 4846 4847 * buildall: fix 'buildall -b' on hpux9 and aix5.1 4848 48492002-06-24 Ion Badulescu <ionut@buggy.badula.org> 4850 4851 * INSTALL: updated 4852 4853 * conf/autofs/autofs_solaris_v1.c (autofs_link_mount): compile fix 4854 (autofs_link_umount): ditto 4855 4856 * amd/mntfs.c (init_mntfs): don't use autofs if !amd_use_autofs 4857 48582002-06-23 Ion Badulescu <ionut@moisil.badula.org> 4859 4860 * conf/autofs/autofs_linux.c: compile fixes for autofs v3 4861 48622002-06-23 Ion Badulescu <ionut@moisil.badula.org> 4863 4864 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mounted): no 4865 expirations needed; 4866 (autofs_timeout_mp): likewise 4867 4868 * conf/autofs/autofs_solaris_v1.c (autofs_mounted): no expirations 4869 needed; 4870 (autofs_timeout_mp): likewise 4871 4872 * conf/autofs/autofs_linux.c (autofs_mounted): set the first 4873 expiration interval 4874 4875 * amd/autil.c (am_mounted): call autofs_mounted here, instead of 4876 in mf_mounted() 4877 4878 * amd/amd.h (NEVER): moved here from map.c 4879 (autofs_mounted): change argument from mntfs* to am_node* 4880 48812002-06-23 Ion Badulescu <lionut@gonzales.badula.org> 4882 4883 * conf/autofs/autofs_linux.c (autofs_mounted): set the kernel 4884 timeout on the autofs mountpoint to cache_duration (gopt.am_timeo) 4885 (autofs_timeout_mp): don't update the ttl if we're going down 4886 4887 * amd/map.c (timeout_mp): don't call autofs_timeout_mp unless the 4888 timeout on that particular am_node has expired 4889 4890 * conf/autofs/autofs_linux.c (autofs_timeout_mp): really update 4891 the ttl, as per the comment (compilers are not very good at 4892 translating comments into code...) 4893 4894 * amd/amfs_auto.c (amfs_auto_lookup_one_mntfs): strdup am_path 4895 instead of opt_rfs into opt_fs for autofs, thus avoiding conflicts 4896 between link mounts pointing to the same target 4897 48982002-06-23 Ion Badulescu <lionut@gonzales.badula.org> 4899 4900 * conf/autofs/autofs_linux.c (send_fail, send_ready): new helper 4901 functions for sending messages back to the kernel 4902 (autofs_expire_one): initial implementation of the kernel-based 4903 expiration handler 4904 (autofs_handle_expire): call autofs_expire_one() 4905 (autofs_handle_expire_multi): ditto 4906 (autofs_umount_succeeded): search pending_umounts, send message 4907 back to the kernel 4908 (autofs_umount_failed): ditto 4909 (autofs_mount_succeeded): tell amd core not to expire autofs entries 4910 (autofs_timeout_mp): expiration function for autofs filesystems 4911 (autofs_timeout_mp_task): helper function for autofs_timeout_mp 4912 4913 * conf/autofs/autofs_linux.h: new struct autofs_pending_umount for 4914 keeping tracking of pending umounts 4915 (autofs_fh_t) rename pending to pending_mounts, add pending_umounts 4916 4917 * conf/autofs/autofs_solaris_v1.c (autofs_timeout_mp): stub 4918 4919 * conf/autofs/autofs_solaris_v2_v3.c (autofs_timeout_mp): stub 4920 4921 * amd/map.c (timeout_mp): call autofs_timeout_mp() for autofs 4922 filesystems 4923 4924 * amd/autil.c (mf_mounted): move here the call autofs_mounted() 4925 from amfs_auto_mounted(). 4926 49272002-06-22 Erez Zadok <ezk@whitestar.dyn.optonline.net> 4928 4929 * amd/nfs_start.c (mount_automounter): Security fix. if user sets 4930 -D noamq, don't even create listening socket. Suggestion by Ed 4931 Ravin <eravin@panix.com>. 4932 49332002-06-22 Ion Badulescu <lionut@gonzales.badula.org> 4934 4935 * hlfsd/homedir.c (homedir): use setgid() instead of setegid() 4936 4937 * ALL: #ifdef cleanups, unify some TLI/socket function prototypes 4938 49392002-06-22 Erez Zadok <ezk@whitestar.dyn.optonline.net> 4940 4941 * conf/nfs_prot/nfs_prot_netbsd1_4.h: minor port to support 4942 na_gid and na_uid. NetBSD patch from Jun-ichiro itojun Hagino 4943 <itojun@iijlab.net>. 4944 4945 * doc/am-utils.texi (Option): document xlatecookie mount option. 4946 4947 * libamu/mount_fs.c (compute_nfs_args): support "xlatecookie" 4948 NFS mount option. Patch from Matthias Scheler <tron@zhadum.de> 4949 for NetBSD. 4950 49512002-06-22 Ion Badulescu <ionut@edgar.badula.org> 4952 4953 * conf/autofs/autofs_solaris_v1.h: add FS_MBACKGROUND to 4954 AUTOFS_LINK_FS_FLAGS 4955 4956 * conf/autofs/autofs_solaris_v1.c: convert link mounts to lofs 4957 mounts in autofs_link_mount/umount 4958 49592002-06-22 Ion Badulescu <lionut@gonzales.badula.org> 4960 4961 * configure.in: check for devid inside struct umntrequest 4962 4963 * conf/autofs/autofs_solaris_v2_v3.c (xdr_umntrequest): handle the 4964 new umntrequest structure in v4. 4965 (autofs_unmount_2_req): ditto 4966 4967 * README.autofs: updated for Solaris 2.5/2.5.1 4968 49692002-06-22 Erez Zadok <ezk@whitestar.dyn.optonline.net> 4970 4971 * configure.in: only define LDAP/Hesiod if both the headers and 4972 the libraries exist, and the user didn't explicitly disable those 4973 maps. 4974 49752002-06-22 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4976 4977 * doc/am-utils.texi: fix typos. Can't use ":" in @cindex entries. 4978 49792002-06-22 Erez Zadok <ezk@whitestar.dyn.optonline.net> 4980 4981 * doc/am-utils.texi, scripts/amd.conf.5, scripts/amd.conf-sample, 4982 amd/amd.8, amd/get_args.c (get_args): document amd -A option. 4983 4984 * amd/get_args.c (get_args): support "amd -A arg" option to 4985 override the system's detected architecture. Patch from George 4986 Ross <gdmr@dcs.ed.ac.uk>. 4987 4988 * amd/info_ldap.c (amu_ldap_rebind): don't use ldap_enable_cache() 4989 if the system doesn't have it. 4990 4991 * configure.in: detect existence of ldap_enable_cache function, 4992 because it doesn't exist on Solaris 9's latest ldap libraries. 4993 4994 * amd/info_ldap.c: LDAP patches from George Ross 4995 <gdmr@dcs.ed.ac.uk>. Rework of old code, support for wildcards in 4996 LDAP queries, and an FD leak fix. 4997 49982002-06-22 Ion Badulescu <lionut@gonzales.badula.org> 4999 5000 * buildall: use ksh for configure on aix5.1; pass the extra 5001 arguments after "--" to configure, not to make 5002 5003 * Makefile.am: added nfs_prot_aix4_3.h to EXTRA_DIST_CONF 5004 5005 * conf/mount/mount_aix.c (mount_aix3): if the NFSv3 mount fails 5006 with EINVAL and we have MOUNT_TYPE_NFS3_BIS defined, retry the 5007 mount with the alternative nfs3_args structure 5008 5009 * conf/nfs_prot/nfs_prot_aix4_3.h: added alternative nfs3_args 5010 structure, similar to that in aix5.1, for a hack that tries to 5011 compensate for IBM's brain fart 5012 5013 * conf/nfs_prot/nfs_prot_aix5_1.h: new nfs_prot header for aix5.1+ 5014 5015 * aux/macros/check_nfs_prot_headers.m4: added new header for aix5.1+ 5016 5017 * BUGS: update for direct mounts on Linux; document the brokenness 5018 of /bin/sh on AIX 5.1 and HP-UX 9 5019 5020 * NEWS: aix5.1 port, aix4.3 workaround 5021 50222002-06-22 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5023 5024 * ltmain.sh: use libtool 1.4d, needed support for newer AIX. 5025 50262002-06-21 Ion Badulescu <ion@guppy.limebrokerage.com> 5027 5028 * aux/macros/check_autofs_style.m4: enable autofs_v2_v3 for 5029 all solaris2.6+, not just for 2.[6-8] 5030 5031 * conf/autofs/autofs_default.h: disable autofs if configure 5032 detects it 5033 50342002-06-21 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5035 5036 * aux/macros/with_addon.m4: correct M4 quoting. 5037 5038 * aux/macros/cache_check_dynamic.m4: correct M4 quoting. 5039 5040 * bootstrap: show version of autotools being used. Helps 5041 maintainer debugging. 5042 5043 * configure.in: new proper syntax for libtool and 5044 ansi2knr-filtering rules, required by autoconf 1.53 and higher. 5045 50462002-06-21 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 5047 5048 * aux/GNUmakefile: new search paths for "update" target. 5049 5050 * config.guess, config.sub, doc/texinfo.tex, ltmain: updates from 5051 the latest GNU distributions. 5052 50532002-06-11 Ion Badulescu <ion@guppy.limebrokerage.com> 5054 5055 * amd/amfs_auto.c (amfs_auto_lookup_child): split part of this 5056 function into the new amfs_auto_lookup_one_child function; return 5057 null if all ivecs failed to match 5058 50592002-05-30 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5060 5061 * config.guess.long: support SuSE version names in long 5062 config.guess format. 5063 50642002-05-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 5065 5066 * scripts/lostaltmail.in (vrfy_user): unlink temp files if too 5067 small. 5068 50692002-04-07 Ion Badulescu <ionut@moisil.badula.org> 5070 5071 * hlfsd/hlfsd.c (main): compile fix for --enable-debug=no 5072 50732002-03-29 Ion Badulescu <ionut@moisil.badula.org> 5074 5075 * README.autofs: solaris 2.5/2.5.1 info, other minor changes 5076 5077 * doc/am-utils.texi (History): document solaris 2.5+ support 5078 5079 * include/am_utils.h: new member in struct mntfs: mfs_real_mount; 5080 autofs_fs_flags becomes conditional of HAVE_AUTOFS_FS; new 5081 prototype for umount_fs2(); extra argument for UMOUNT_FS() 5082 5083 * hlfsd/hlfsd.c: use the new mount_fs2() and UMOUNT_FS() 5084 5085 * libamu/mount_fs.c (mount_fs): wrapper around the new mount_fs2() 5086 function; swap mntdir and real_mntdir as necessary for solaris 2.5 5087 autofs support 5088 5089 * conf/umount/umount_default.c (umount_fs2): swap mntdir and 5090 real_mntdir as necessary for solaris 2.5 autofs support 5091 5092 * conf/umount/umount_*.c (umount_fs): wrapper around the new 5093 umount_fs2() function 5094 (umount_fs2): new function which takes the real mountpoint as an 5095 extra argument 5096 5097 * conf/nfs_prot/nfs_prot_sunos5_5.h: allow autofs support to be 5098 compiled in 5099 5100 * conf/autofs/autofs_solaris_v1.h (autofs_strdup_space_hack): new 5101 function that appends a space at the end of a string (the famous 5102 "Autofs Space Protocol") 5103 5104 * conf/autofs/autofs_solaris_v1.c: almost complete reimplementation 5105 5106 * conf/autofs/autofs_*.h (AUTOFS_*_FS_FLAGS): add 5107 system-specific definitions for these macros 5108 5109 * conf/autofs/autofs_linux.c (create_autofs_service): remove hacks 5110 which are now handled properly by more generic code 5111 (autofs_link_umount): complain if umount_fs() fails, rmdir the 5112 mountpoint on success 5113 (autofs_umount_succeeded): remove the rmdirs() code, now handled 5114 by generic code 5115 (autofs_mount_succeeded): ditto 5116 5117 * amd/nfs_start.c (checkup): implement it as an emtpy stub if 5118 DEBUG is not defined 5119 (run_rpc): call autofs_add_fdset() after umount_exported() to 5120 avoid passing invalid file descriptors to select(); use plog() 5121 instead of perror() 5122 5123 * amd/mntfs.c (init_mntfs): initialize mf_real_mount from mp 5124 (uninit_mntfs): free mf_real_mount 5125 5126 * amd/autil.c (am_unmounted): don't remove the mount point if a 5127 remount is pending, also don't make the removal conditional on not 5128 being an autofs mount point 5129 5130 * amd/amfs_nfsx.c (amfs_nfsx_remount): call mkdirs() on 5131 mf->mf_real_mount instead of mf->mf_mount 5132 5133 * amd/amfs_nfsl.c, amd/amfs_nfsx.c: (amfs_nfsl_umounted): call 5134 rmdirs() on mf->mf_real_mount instead of mf->mf_mount 5135 5136 * amd/amfs_host.c (make_mntpt): change the third argument to be 5137 the mountpoint, not the entire mntfs structure 5138 (do_mount): takes real_mntdir as an extra argument 5139 5140 * amd/amfs_auto.c (amfs_auto_bgmount): move the creation of the 5141 mountpoint here from try_mount(), otherwise the change to mf_flags 5142 is lost for background mounts; remove the mountpoint if we created 5143 it and the mount fails 5144 (amfs_auto_lookup_mntfs): re-initialize mf->mf_real_mount using 5145 autofs_strdup_space_hack() if NEED_AUTOFS_SPACE_HACK is defined 5146 5147 * amfs_*.c, ops_*.c: initialize autofs_fs_flags using the 5148 AUTOFS_*_FS_FLAGS macro defined in the system-specific autofs 5149 header; UMOUNT_FS() takes mf->mf_real_mount as an extra argument; 5150 mount_fs() becomes mount_fs2() and takes mf->mf_real_mount as an 5151 extra argument 5152 5153 * amd/amd.h, amd/ops_nfs.c, amd/amfs_host.c: mount_nfs_fh takes 5154 the real mountpoint as an additional argument 5155 51562002-03-28 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5157 5158 * amd/ops_cdfs.c (mount_cdfs): correctly interpret error return 5159 values back from mount_fs(). Return correct error number from 5160 this function. 5161 5162 * conf/mount/mount_linux.c (do_mount_linux): cleanup loop mount 5163 cruft from this function, moved elsewhere. 5164 (mount_linux): prepare for loop-device mounts of ISO images. 5165 51662002-03-28 Ion Badulescu <ionut@buggy.badula.org> 5167 5168 * libamu/Makefile.am (EXTRA_DIST): added strerror.c 5169 5170 * libamu/strerror.c: strerror() implementation for systems lacking it 5171 5172 * doc/am-utils.texi (History): rewrote the history :) about autofs 5173 support 5174 5175 * conf/autofs/autofs_solaris_v2_v3.c: updated copyright; 5176 (autofs_unmount_2_req): minor cleanup 5177 (create_autofs_service): print log message 5178 (destroy_autofs_service): ditto 5179 5180 * conf/autofs/autofs_linux.c: updated copyright 5181 5182 * amd/nfs_start.c (mount_automounter): move the debug message into 5183 create_autofs_service() 5184 5185 * amd/amd.c (main): call destroy_autofs_service() before 5186 going_down(), not after 5187 5188 * configure.in: added strerror to AC_CHECK_FUNCS(); disable ldap 5189 if the ldap headers are not found 5190 51912002-03-28 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5192 5193 * amd/info_ldap.c: patch from "Sebastien Bahloul" 5194 <sebastien.bahloul@medasys.org> to fix a simple initialization bug 5195 and change "HE" to HE_ENT so as to compile on HPUX. 5196 51972002-02-26 Erez Zadok <ezk@t3.fsl.cs.sunysb.edu> 5198 5199 * conf/nfs_prot/nfs_prot_freebsd3.h (na_uid): freebsd4.5 uses nfs 5200 atttributes field named "uid". So #define na_uid to it. 5201 52022002-02-12 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5203 5204 * scripts/lostaltmail.in: don't verify user if -noverify option 5205 was turned on. fix comment typo. 5206 52072002-02-11 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5208 5209 * amd/Makefile.am (TESTS): enable one test script, test1.sh. 5210 5211 * amd/test1.sh: re-commit simple test script. 5212 52132002-02-11 Ion Badulescu <ion@guppy.limebrokerage.com> 5214 5215 * Released snapshot 6.1a5 5216 5217 * NEWS: Solaris autofs readdir() support, Linux autofs sublink fix 5218 5219 * README: require newer auto-tools, update mailing list address 5220 5221 * README.autofs: major update 5222 5223 * configure.in: version changed to 6.1a5 5224 52252002-02-11 Ion Badulescu <ionut@moisil.badula.org> 5226 5227 * conf/autofs/autofs_linux.c (autofs_link_mount): don't do a 5228 stat() on the am_link if called from the parent amd, to prevent 5229 deadlocks 5230 5231 * amd/autil.c (am_unmounted): call amfs_link_ops.umount_fs if the 5232 fstype is not link but we have a sublink (Linux autofs needs this) 5233 (am_mounted): call amfs_link_ops.mount_fs if the fstype is not 5234 link but we have a sublink (Linux autofs needs this) 5235 5236 * amd/amfs_auto.c (amfs_auto_bgmount): print the real mountpoint, 5237 not the amd entry point 5238 52392002-02-09 Ion Badulescu <ionut@moisil.badula.org> 5240 5241 * conf/autofs/autofs_solaris_v2_v3.c (amd_rddirres): new custom 5242 structure for returning the results from readdir_2() 5243 (xdr_amd_putrddirres): renamed from xdr_autofs_putrddirres, 5244 changed to process our internal format (which is essentially the 5245 NFS readdir format) 5246 (xdr_autofs_getrddirres): not needed, deleted 5247 (xdr_amd_rddirres): renamed from xdr_autofs_rddirres, other 5248 changes to handle amd_rddirres instead of autofs_rddirres 5249 (autofs_lookup_2_req): return AUTOFS_NONE instead of 5250 AUTOFS_MOUNT_RQ, to prevent mount storms during ls -F 5251 (autofs_readdir_2_req): implemented 5252 (autofs_readdir_2_free): not needed, deleted 5253 (autofs_program_2): changes from autofs_rddirres to amd_rddirres 5254 (autofs_get_fh): changed initialization of the fh->map member, it 5255 now gets the mountpoint path because it makes it easier to 5256 implement readdir 5257 (autofs_release_fh): put #ifdef HAVE_AUTOFS_ARGS_T_ADDR around 5258 code touching fh->addr 5259 (destroy_autofs_service): new function, deregister the autofs 5260 service with the portmapper on exit 5261 5262 * conf/autofs/autofs_linux.c (autofs_handle_missing): update 5263 statistics 5264 (destroy_autofs_service): new stub 5265 5266 * amd/mapc.c (mapc_find): fixed indentation 5267 5268 * amd/map.c (find_ap_recursive): renamed from find_ap2(), made 5269 static 5270 5271 * amd/amd.h: removed prototype for find_ap2(), added prototype for 5272 destroy_autofs_service() 5273 5274 * amd/amd.c (main): call destroy_autofs_service() before going 5275 down 5276 52772002-02-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 5278 5279 * aux/macros/check_field.m4: need also a new version of 5280 AC_CHECK_MEMBERS (plural). 5281 52822002-02-06 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 5283 5284 * aux/macros/check_field.m4: include a fixed version of 5285 AC_CHECK_MEMBER. g/cc will fail to check a member if the .member 5286 is itself a data structure, because you cannot compare, in C, a 5287 data structure against NULL; you can compare a native data type 5288 (int, char) or a pointer. Solution: do what I did in my original 5289 member checking macro: try to take the address of the member. You 5290 can always take the address of anything. 5291 52922002-01-31 Erez Zadok <ezk@localhost.localdomain> 5293 5294 * remove old '%W%' SCCS IDs from all sources. 5295 52962002-01-21 Ion Badulescu <ionut@moisil.badula.org> 5297 5298 * conf/mount/mount_linux.c (mount_linux): fix breakage introduced 5299 by the loop device mount support. Linux mount takes a real string 5300 as the last argument, unless the mount type is NFS, NCP, or SMB. 5301 53022002-01-20 Erez Zadok <ezk@localhost.localdomain> 5303 5304 * hlfsd/hlfsd.h (HLFSD_VERSION): up version of hlfsd to 1.2, 5305 because we made some important changes. 5306 53072002-01-20 Ion Badulescu <lionut@gonzales.badula.org> 5308 5309 * include/am_utils.h (D_ALL): do not include D_MTAB and D_HRTIME 5310 by default 5311 5312 * NEWS: document latest changes 5313 5314 * amd/map.c (unmount_mp): same fix as for hlfsd, update the 5315 seconds field in mtime because Linux ignores the useconds field 5316 5317 * hlfsd/homedir.c: made some global vars static 5318 (plt_init): remove all trailing '/' chars from root's home; 5319 use root's home, not the username (silly bugfix) 5320 53212002-01-20 Ion Badulescu <lionut@gonzales.badula.org> 5322 5323 * hlfsd/homedir.c (homedir): don't special case uid 0 as having / 5324 as home; instead use the root account's home 5325 (plt_init): properly initialize root_home from the root account's 5326 home directory, or as "" if root doesn't exist 5327 (plt_reset): free root_home 5328 53292002-01-20 Erez Zadok <ezk@localhost.localdomain> 5330 5331 * hlfsd/stubs.c (nfsproc_{lookup,getattr}_2_svc): non-SYMTTL code. 5332 Increment seconds, not microseconds (which are ignored by NFS). 5333 Set symlink owner to euid. 5334 5335 * hlfsd/homedir.c (homedir): pass gid to this function, so we can 5336 also change the effective GID of the process writing to the user's 5337 home dir, as well as the group of the hlfsd symlink. 5338 (homedir): run setegid in the right places. 5339 53402002-01-15 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5341 5342 * scripts/redhat-ctl-amd.in: refer to @sbindir@ not 5343 ${prefix}/sbin. 5344 5345 * scripts/ctl-{amd,hlfsd}.in: refer to @sysconfdir@ not 5346 ${prefix}/etc. Bug report from "A Braunsdorf" 5347 <ab@eas.purdue.edu>. 5348 53492002-01-13 Erez Zadok <ezk@localhost.localdomain> 5350 5351 * configure.in: only check for clock_gettime if --enable-debug was 5352 used. 5353 5354 * aux/macros/opt_debug.m4: define a cache variable to record value 5355 of debug option used. 5356 5357 * libamu/xutil.c (show_time_host_and_name): do not use 5358 clock_gettime unless debugging was compiled in. This way, if 5359 debugging is not compiled, we don't bother linking with librt, 5360 libpthread, and a whole lot of other libraries that aren't that 5361 necessary (esp. on Linux). 5362 53632002-01-12 Erez Zadok <ezk@wavy.dyn.optonline.net> 5364 5365 * doc/am-utils.texi (opts Option): document loop option. 5366 5367 * include/am_utils.h: each mounted file system (mntfs) should 5368 optionally store the loop device used in the field mf_loopdev. 5369 5370 * conf/nfs_prot/nfs_prot_linux.h: define HAVE_LOOP_DEVICE and some 5371 loop function extern definitions. For now this code is here 5372 because we only support loop devices on Linux. 5373 5374 * conf/mount/mount_linux.c: recognize "loop" as a valid iso9660 5375 mount option. 5376 (parse_opts): when skipping over unknown mount options, skip over 5377 "loop" (since it was given in amd map entry), but not over 5378 loop=/dev/loopX, because the latter will go into /etc/mtab. 5379 (do_mount_linux): override actual cdfs mounted device name 5380 because with loop devices you don't mount the .iso file directly, 5381 but the /dev/loopX device that was setup for it. 5382 (show_loop, is_loop_device, find_unused_loop_device, 5383 setup_loop_device, delete_loop_device): support code for loop 5384 devices. 5385 5386 * amd/ops_cdfs.c (mount_cdfs): pass loop device name to function. 5387 setup loop device before isofs mount, if "loop" option was given, 5388 before actual mount(2). 5389 (cdfs_mount): pass loopdev name to mount_cdfs(). 5390 (cdfs_umount): delete/unset loop device after a successful 5391 unmount, if a loop device was used. 5392 5393 * amd/mntfs.c (init_mntfs): initialize mf_loopdev to NULL. 5394 5395 * include/am_compat.h: If loop device (header file) exists, define 5396 mount table option MNTTTAB_OPT_LOOP. 5397 5398 * conf/nfs_prot/nfs_prot_linux.h: hack: define HAVE_LOOP_DEVICE 5399 here until we have a better way to detect /dev/loop devices. 5400 5401 * include/am_defs.h: include <linux/loop.h> if it exists. Define 5402 LARGEFILE support macros, possibly needed for loop devices. 5403 Redefine dev_t apropriately for loop devices. 5404 5405 * configure.in: check for <linux/loop.h>. 5406 54072002-01-10 Ion Badulescu <ion@guppy.limebrokerage.com> 5408 5409 * conf/mount/mount_linux.c (mount_linux): tcp _must_ have a timeo 5410 parameter 2 orders of magnitude larger than udp (patch from Trond 5411 Myklebust) 5412 54132002-01-09 Erez Zadok <ezk@localhost.localdomain> 5414 5415 * aux/macros/linux_headers.m4: properly [quote] a long string in 5416 m4 and use AC_MSG_WARN. 5417 5418 * ALL: put /* comments */ on #else/#endif lines everywhere. 5419 5420 * configure.in, aux/macros/with_addon.m4: due to limitation of 5421 AC_HELP_STRING, pass 2nd arg to AMU_WITH_ADDON, listing name of 5422 package for help string. 5423 5424 * doc/am-utils.texi (FSinfo): fixed various texinfo errors in the 5425 FSinfo section of the manual. 5426 (map_reload_interval Parameter): document new amd.conf global 5427 parameter. 5428 5429 * scripts/amd.conf.5 document new global option 5430 map_reload_interval. Sort entries for nfs_vers and nfs_proto 5431 alphabetically. 5432 5433 * amd/nfs_start.c (do_select): increment do_mapc_reload's value by 5434 global map_reload_interval value, not by fixed ONE_HOUR. 5435 5436 * amd/amd.c (main): increment do_mapc_reload's value by global 5437 map_reload_interval value, not by fixed ONE_HOUR. 5438 5439 * scripts/amd.conf-sample (map_reload_interval): usage example 5440 5441 * amd/amd.c (init_global_options): initialize map_reload_interval 5442 to 3600 seconds. 5443 5444 * amd/conf.c (gopt_map_reload_interval): support a new global 5445 amd.conf option map_reload_interval, to determine how often (in 5446 seconds) Amd should check if the map source has changed and then 5447 reload it it. This value was hard-coded to one hour, now it's the 5448 default if not otherwise specified. 5449 5450 * doc/am-utils.texi (plock Parameter): document plock=yes option 5451 as using mlockall(2) if found. 5452 5453 * scripts/amd.conf.5: document -S option as using mlockall(2) if 5454 found. 5455 5456 * include/am_defs.h: include <sys/mman.h> if it exists. 5457 5458 * configure.in: check for mlockall() function. Check for 5459 sys/mman.h. 5460 5461 * amd/amd.c (main): support mlockall() on systems that have it and 5462 don't have plock(3) for plock=yes. On systems that have both, 5463 will try plock() first and then mlockall(), until one of them (if 5464 any) succeeds. 5465 54662002-01-09 Erez Zadok <ezk@whitestar.dyn.optonline.net> 5467 5468 * aux/macros/opt_debug.m4, opt_cppflags.m4, opt_amu_cflags.m4, 5469 with_addon.m4 (ac_upcase): fix help string formatting using 5470 AC_HELP_STRING. 5471 5472 * amd/test1.sh: simple test script for "make check". Runs "amd 5473 -v". 5474 5475 * amd/Makefile.am (TESTS): add one simple test script, running 5476 "amd -v" and checking its return value. More tests can be added. 5477 5478 * aux/macros/linux_headers.m4: use AC_MSG_WARN directly. 5479 5480 * aux/macros/*.m4: avoid the cumbersome "changequote" M4 command. 5481 Instead, list bracketed regexp patterns in [[double brackets]]. 5482 5483 * aux/macros/header_templates.m4: remove all unnecessary 5484 HAVE_FIELD_* definitions, now that we're using autoconf's new 5485 AC_CHECK_MEMBERS. 5486 5487 * aux/macros/field_mntent_t_mnt_time_string.m4: don't call 5488 5489 * configure.in: use new syntax for AMU_CHECK_FIELD 5490 5491 * aux/macros/check_field.m4: use new and simpler macro 5492 AC_CHECK_MEMBERS. Change all sources to use HAVE_aggregate.member 5493 instead of HAVE_FIELD_aggregate.member. 5494 5495 * aux/amdgrep: simple utility script to egrep the am-utils sources 5496 for any pattern. 5497 5498 * aux/macros/{check_mnttab_style.m4, check_mount_style.m4, 5499 check_umount_style.m4, check_network_transport_type.m4}: use newer 5500 AC_LIBOBJ macros instead of modifying $LIBOBJS directly 5501 5502 * aux/macros/func_bad_memcmp.m4: redefine to use native 5503 AC_FUNC_MEMCMP, and then define HAVE_BAD_MEMCMP as needed. 5504 5505 * fsinfo/fsi_gram.y, amd/conf_parse.y: indent #pragma command so 5506 pre-ANSI C compilers will ignore it. 5507 5508 * conf/autofs/autofs_linux.c (autofs_link_mount): call s/getpgrp() 5509 correctly depending on whether it takes a void or a 0. 5510 5511 * configure.in: check if s/getpgrp() takes void or a 0. 5512 55132002-01-08 Erez Zadok <ezk@whitestar.dyn.optonline.net> 5514 5515 * configure.in: use the newer AC_CONFIG_LINKS instead of 5516 AC_LINK_FILES. 5517 5518 * aux/macros/check_autofs_style.m4, check_checkmount_style.m4, 5519 check_mnttab_style.m4, check_mount_style.m4, 5520 check_network_transport_type.m4, check_umount_style.m4, 5521 check_nfs_prot_headers.m4: removed backward compatible code for 5522 pre-autoconf-2.14. 5523 55242002-01-07 Erez Zadok <ezk@whitestar.dyn.optonline.net> 5525 5526 * doc/Makefile.am: define @SET_MAKE@ for AC_PROG_MAKE_SET macro, since 5527 this Makefile could explicitly chdir to other directories and run 5528 make there. 5529 (install-ps): use ${MAKE} with ${MFLAGS}. 5530 5531 * Makefile.am (EXTRA_DIST_AUX): distribute new package_*.m4 files. 5532 Define @SET_MAKE@ for AC_PROG_MAKE_SET macro, since this Makefile 5533 could explicitly chdir to other directories and run make there. 5534 (install-snapshot): use ${MAKE} ${MFLAGS}, not hardcoded "make". 5535 5536 * configure.in: call AC_PROG_MAKE_SET to check if make program 5537 defines $MAKE variable. 5538 5539 * amd/get_args.c (get_version_string): use new PACKAGE_* macros 5540 and also report the bug-reporting address. 5541 5542 * aux/macros/package_{name,version}.m4, header_templates.m4: using 5543 new PACKAGE_{NAME,VERSION,BUGREPORT} macros. 5544 5545 * aux/macros/name_bugreport.m4: simple macro to print out the 5546 bug-reporting address which was configured in AC_INIT. 5547 5548 * bootstrap: remove new autoconf messages about misuse of 5549 m4_patsubst and m4_regexp (internal GNU M4 macros). 5550 5551 * configure.in: remove old comment above AC_OUTPUT. 5552 Use AC_CONFIG_FILES and AC_OUTPUT separately. 5553 Fix AC_REVISION use. 5554 Add AC_COPYRIGHT. 5555 Use new style for AC_INIT, listing package name, version, and 5556 bug-reporting address. 5557 Call new AMU_PACKAGE_* macros. 5558 5559 * updated copyright year to 2002 on all files 5560 5561 * configure.in: using newly renamed am-utils macros (AMU_*) 5562 5563 * aux/macros/*.m4: renamed ALL am-utils specific macros so they 5564 start with AMU_*, not AC_*. That way it is easier to distinguish 5565 between macros that come with am-utils and those that are part of 5566 Autoconf or Automake. It helps to identify those am-utils macros 5567 that can be removed once there is generic support for them in a 5568 future version of Autoconf. 5569 5570 * bootstrap: run automake --copy 5571 remove autom4te.cache dir before rerunning autoconf 5572 55732001-12-13 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5574 5575 * scripts/amd.conf.5: correct title to section 5, not 8. Correct 5576 reversed meaning of nfs_proto and nfs_vers parameters. Typos 5577 reported by Peter Breitenlohner <peb@mppmu.mpg.de>. 5578 55792001-12-02 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5580 5581 * scripts/ctl-amd.in: run "test" or "[" in front of -x/-f 5582 5583 * scripts/ctl-hlfsd.in: run "test" or "[" in front of -x/-f 5584 55852001-12-02 Ion Badulescu <ionut@moisil.badula.org> 5586 5587 * hlfsd/homedir.c (plt_print): fix typo (s/plot/plog/) in 5588 non-mkstemp code 5589 5590 * scripts/ctl-amd.in: touch/remove /var/lock/subsys/amd to make RH 5591 happy 5592 5593 * scripts/ctl-hlfsd.in: ditto (for hlfsd) 5594 5595 * conf/mtab/mtab_file.c (rewrite_mtab): fchmod(644) the file we 5596 get from mkstemp(), otherwise samba becomes very unhappy (sigsegv) 5597 5598 * conf/mtab/mtab_mach3.c (rewrite_mtab): ditto 5599 56002001-11-29 Ion Badulescu <ion@guppy.limebrokerage.com> 5601 5602 * tasks: updated 5603 5604 * NEWS: document the fixed autofs fd leak 5605 5606 * amq/amq.8: better document the -f option 5607 56082001-11-29 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5609 5610 * libamu/mount_fs.c (mnt_flags): same this as for nolock option 5611 handling, do for maxgrps. 5612 56132001-11-29 Ion Badulescu <ion@guppy.limebrokerage.com> 5614 5615 * conf/autofs/autofs_linux.c (hash_init): determine the max number 5616 of fd's at runtime, use it to dynamically scale the hash and list 5617 arrays 5618 (autofs_get_fh): sanity check, don't allow a pipe() fd greater 5619 than autofs_max_fds 5620 (autofs_release_fh): close our end of the pipe here (no clue why 5621 or when it got commented out) 5622 (autofs_mounted): set kernelfd to -1 after closing it 5623 56242001-11-28 Philippe Troin <phil@fifi.org> 5625 5626 * libamu/mount_fs.c (mnt_flags): Drop nolock from generic mount 5627 opts. 5628 (compute_nfs_args): Added nolock handling. 5629 Adapted from an original patch from Avery Pennarun <apenwarr@nit.ca>. 5630 56312001-11-27 Erez Zadok <ezk@a-hpux11i.fsl.cs.sunysb.edu> 5632 5633 * ported to ia64-hp-hpux11.20 using HP's ANSI/C compiler. 5634 Couldn't use bison/flex because of 32-bit vs. 64-bit binaries 5635 issues. Had to use HP's own yacc/lex. 5636 56372001-11-26 Erez Zadok <ezk@a-hpux11i.fsl.cs.sunysb.edu> 5638 5639 * */Makefile.am: don't use $(OBJECTS) directly because it is no 5640 longer automatically defined now that Automake has automatic 5641 dependency tracking (which I turn off). Instead, hard-code 5642 minimal dependencies on am-utils' header files to depend on 5643 PROG_OBJECTS (where PROG is the program name being built). This 5644 was discovered by using HP's non-GNU make program. 5645 5646 * amd/nfs_start.c (checkup): cast getpagesize() return val to 5647 long, to avoid conflicts in division of a long by an int (on 5648 hpux11i, with their ANSI/C compiler). 5649 5650 * INSTALL, doc/am-utils.texi: port updates 5651 5652 * minor new ports: ia64-hp-hpux11.20, i386-unknown-freebsd5.0, 5653 i386-unknown-freebsd4.4, i386-pc-linux-rh7.2, 5654 ia64-unknown-linux-rh7.1. 5655 5656 * include/am_defs.h: actually declare extern definition for 5657 xdr_callmsg() if it doesn't already exist. 5658 5659 * aux/macros/header_templates.m4: declare template for 5660 HAVE_EXTERN_XDR_CALLMSG. 5661 5662 * configure.in: check for extern definition for xdr_callmsg() 5663 because hpux11 has that function but a bad <rpc/xdr.h> header file 5664 that doesn't define it in the right place. 5665 5666 * libamu/mount_fs.c (print_nfs_args): cast ->rdev to u_long b/c 5667 on hpux11 its type is dev_t. 5668 5669 * conf/nfs_prot/nfs_prot_hpux11.h: don't support autofs on hpux11 5670 yet. 5671 56722001-11-16 Erez Zadok <ezk@fsl-gw.fsl.cs.sunysb.edu> 5673 5674 * buildall (Usage): separate $cnf_flags and $extra_cnf_flags due 5675 to /bin/sh limitations. 5676 5677 * bootstrap (cmd): turn back on --ignore-deps (this Automake may 5678 have problems) 5679 5680 * libamu/xutil.c: remove __attribute__ format_arg statement for 5681 expand_error() because this function, although taking a 5682 printf-like string, does not use it in a printf function; it only 5683 expands a non-printf amd-special syntax %m. 5684 56852001-11-14 Erez Zadok <ezk@fsl-gw.fsl.cs.sunysb.edu> 5686 5687 * conf/nfs_prot/nfs_prot_linux.h: define KERNEL_VERSION macro 5688 before using it because older Linux systems don't define this 5689 (e.g., Red Hat 4.2) 5690 56912001-11-13 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5692 5693 * configure.in: convert to using autoconfig 2.52. Use new macros. 5694 AC_MSG_NOTICE for messages; AH_TOP and AH_BOTTOM to top and bottom 5695 parts of autogenerated config.h.in; increase autoconf 5696 pre-requisite to version 2.50; use AC_DISABLE_SHARED not 5697 AM_DISABLE_SHARED. 5698 5699 * aux/macros/cache_check_dynamic.m4: finally I can use the new 5700 $ECHO_N syntax in macros instead of $ac_n, since I'm using a new 5701 autoconf. Isn't it nice to be such forward looking and having 5702 placed a comment "XXX: use the next line for autoconf-2.14 and 5703 newer"... :-) 5704 5705 * aux/macros/save_state.m4: highlight message with ***'s 5706 5707 * aux/macros/host_macros.m4: use proper M4 quoting ([], not "") 5708 5709 * config.{guess,sub}: upated from latest prep ftp distributions 5710 5711 * depcomp, missing, mkinstalldirs: upated from latest Automake 1.5 5712 5713 * ltmain.sh: updated from latest Libtool 1.4.2 5714 5715 * bootstrap: finally, new autoconf doesn't print silly "AC_TRY_RUN 5716 called without default to allow cross compiling" warnings. And, 5717 it only took like 3+ years to fix this. But, now it has anoter, 5718 albeit less annoying warning (which the manual says to ignore): 5719 "AC_PROG_LEX invoked multiple times". 5720 When autoheader is run, don't treat the "all clear" message 5721 "config.h.in is update" as an error. 5722 5723 * ltconfig: removed. not needed with latest version of libtool 5724 5725 * aux/macros/header_templates.m4: replaces acconfig.h and defines 5726 all CPP macros we use in this package, including their 5727 accompanying C /* comments */. 5728 5729 * acconfig.h: removed. replaced by new autoconf system to generate 5730 header templates using AH_TEMPLATE macros and such. 5731 5732 * aux/macros/msg.m4: removed. Replaced with new macro 5733 AC_MSG_NOTICE 5734 5735 * Makefile.am (EXTRA_DIST_AUX): remove aux/macros/msg.m4. Add 5736 aux/macros/header_templates.m4 5737 5738 * configure.in: early, in host_macros.m4, I'm renaming silly linux 5739 $host_os names such as linux-gnu and lignux to plain "linux". 5740 Alas, RMS finally had his way and libtool will NOT recognize 5741 "linux" as a valid system, only "linux-gnu". Sigh. Rich, I know 5742 you're responsible to Linux's fame. Kudos to you and your 5743 cohorts. But please don't force the rest of us to use those ugly 5744 or long names. Solution: temporarily name $host_os to "linux-gnu" 5745 before calling the AC_PROG_LIBTOOL macro, then name it back to 5746 "linux". (That way I don't have to maintain my own version of 5747 ltmain.sh. 5748 5749 * buildall: force running configure -C (to create and use a local 5750 config.cache file). New default behavior for autoconf is NOT to 5751 use cache files. Yeah, that's gonna fly real well with am-utils, 5752 with its 700+ automatic tests. 5753 5754 * conf/mtab/mtab_mach3.c (rewrite_mtab): use mkstemp instead of 5755 mktemp, if the former is available. 5756 5757 * conf/mtab/mtab_file.c (rewrite_mtab): use mkstemp instead of 5758 mktemp, if the former is available. 5759 5760 * mk-amd-map/mk-amd-map.c (main): use mkstemp instead of mktemp, 5761 if the former is available. 5762 5763 * aux/macros/check_nfs_socket_connection.m4: AC_DEFINE calls must 5764 be on a separate line, as per new Autoconf manual, to avoid some 5765 Bourne Shell syntactical bizarreness. 5766 57672001-11-13 Erez Zadok <ezk@a-rh71i.fsl.cs.suunysb.edu> 5768 5769 * amd/amfs_auto.c (amfs_auto_readdir_browsable): cast to u_long, 5770 for IA64 Linux. 5771 57722001-11-12 Ion Badulescu <ionut@buggy.badula.org> 5773 5774 * libamu/mtab.c (hasmntval): strtol can return a non-NULL pointer 5775 pointing to '\0' on success, so we need to allow for it. This 5776 fixes the problem with rejecting numerical mount options if they 5777 are the last option in the string. 5778 5779 * configure.in: increased library patchlevel 5780 5781 * NEWS: document the parsing bug 5782 57832001-10-29 Ion Badulescu <ionut@moisil.badula.org> 5784 5785 * configure.in: bumped version up to 6.1a5-pre 5786 5787 * NEWS: fixed speeling mistaike 5788 57892001-10-29 Ion Badulescu <ionut@moisil.badula.org> 5790 5791 * released snapshot am-utils-6.1a4 5792 57932001-10-26 Ion Badulescu <ionut@moisil.badula.org> 5794 5795 These changes fix autofs support for sublinks. While it is not 5796 perfect by any means and is hardly better than non-autofs, at 5797 least it works. 5798 5799 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req): don't 5800 reply if the mount is in progress 5801 (autofs_mount_succeeded): handle both delayed lookups and mounts 5802 (autofs_mount_failed): ditto 5803 5804 * amd/amfs_auto.c (amfs_auto_lookup_mntfs): don't dispose of the 5805 original opt_fs if we have a sublink 5806 58072001-10-23 Ion Badulescu <ionut@moisil.badula.org> 5808 5809 * amd/amfs_auto.c (amfs_auto_lookup_mntfs): fixed silly typo (mf 5810 instead of new_mf) which was causing null pointer error when 5811 sublinks were being used 5812 58132001-10-22 Ion Badulescu <ionut@moisil.badula.org> 5814 5815 * README.autofs: updated 5816 5817 * NEWS: updated 5818 5819 * INSTALL: updated 5820 5821 * AUTHORS: added myself 5822 5823 * doc/am-utils.texi: updated 5824 5825 * conf/autofs/autofs_solaris_v2_v3.c (xdr_autofs_rddirargs): use 5826 xdr_u_int() and cast things to (int) to appease Solaris 2.7 compile 5827 (autofs_readdir_2_req): cast req->rda_offset to (int), same as 5828 above 5829 58302001-10-22 Ion Badulescu <ionut@moisil.badula.org> 5831 5832 Autofs direct mounts have been verified to work on Solaris2.[67]. 5833 5834 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req): 5835 retrieve the uid and gid from the lookup request 5836 (autofs_mount_2_req): skip the first char in the name (it's a 5837 leading '/') if this is a direct mount 5838 5839 * amd/amfs_direct.c (amfs_direct_ops): use amfs_auto_lookup_child 5840 and amfs_auto_mount_child for amfs_direct's methods 5841 5842 * amd/amfs_auto.c (amfs_auto_lookup_child): don't leak an am_node 5843 if the mntfs lookup fails 5844 58452001-10-21 Ion Badulescu <ionut@moisil.badula.org> 5846 5847 * include/am_utils.h (AMF_REMOUNT): new flag, marks the node as 5848 pending a remount 5849 (mntfs): new member mf_fsflags, holds a copy of the filesystem's 5850 fs_flags 5851 (am_ops): new member autofs_fs_flags, holds the filesystem's flags 5852 when mounted onto an autofs node; fs_flags renamed to nfs_fs_flags 5853 5854 * conf/autofs/autofs_linux.c (create_autofs_service): turn on 5855 FS_MKMNT for amfs_auto and FS_MBACKGROUND for amfs_link 5856 (autofs_umount_succeeded): don't rmdir the mountpoint if a remount 5857 is needed [lest the access that triggered the remount will fail] 5858 5859 * amd/mntfs.c (init_mntfs): copy the filesystem's nfs_fs_flags 5860 into mf_fsflags on initialization 5861 5862 * amd/autil.c (am_unmounted): start the remounting right away if 5863 the node is marked as needing a remount [fixes the Linux autofs 5864 deadlock when mount/unmount collide] 5865 5866 * amd/amfs_auto.c (amfs_auto_lookup_node): mark the node as 5867 needing a remount if a mount request comes in while we're 5868 unmounting it 5869 (amfs_auto_lookup_mntfs): copy the filesystem's autofs_fs_flags 5870 into mf_fsflags if this is an autofs node 5871 5872 * amd/amfs_*.c, amd/ops_*.c: added initialization for the new 5873 autofs_fs_flags member of am_ops 5874 58752001-10-20 Ion Badulescu <ionut@moisil.badula.org> 5876 5877 With these changes, Solaris 2.[67] autofs support is finally 5878 functional! 5879 5880 * conf/autofs/autofs_solaris_v2_v3.c (autofs_readdir_2_req): stub 5881 (autofs_readdir_2_free, xdr_autofs_rddirargs, xdr_autofs_putrddirres, 5882 xdr_autofs_getrddirres, xdr_autofs_rddirres): new functions 5883 (autofs_lookup_2_req): do an actual lookup here, and tell the 5884 kernel to create a symlink if necessary 5885 (autofs_mount_2_req): no need to am_autofs_data 5886 (autofs_program_2): enable AUTOFS_READDIR 5887 (autofs_link_mount): no code needed here 5888 (autofs_link_umount): return success 5889 (autofs_mount_succeeded): lstat real mount points; don't mark 5890 symlinks as NOTIMEOUT 5891 5892 * amd/mntfs.c (init_mntfs): mf_dev and mf_rdev don't exist anymore 5893 5894 * amd/map.c (init_map): init am_dev and am_rdev to -1 5895 (free_map): free am_mfarray and all mntfs's listed 5896 5897 * amd/autil.c (mf_mounted): move the lstat of the node to the 5898 autofs-specific code 5899 5900 * amd/amfs_link.c (amfs_link_ops): don't background symlink creation 5901 59022001-10-18 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 5903 5904 * aux/macros/os_cflags.m4 (irix6*): Enforce N32 ABI/mips3 ISA with cc. 5905 * BUGS: Explain this. 5906 59072001-10-02 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5908 5909 * doc/am-utils.texi (redhat-ctl-amd): document new script. 5910 5911 * scripts/Makefile.am: build redhat-ctl-amd but do not install it. 5912 5913 * scripts/redhat-ctl-amd.in: new script, useful to correctly 5914 control Amd on Red Hat Linux systems. Script adapted from ctl-amd 5915 and Red Hat's own rc.d script. 5916 59172001-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 5918 5919 * conf/nfs_prot/nfs_prot_osf5.h: Renamed from nfs_prot_osf5_1.h. 5920 (MNT2_NFS_OPT_AUTO): Disable. 5921 * Makefile.am (EXTRA_DIST_CONF): Reflect new name. 5922 * aux/macros/check_nfs_prot_headers.m4: Use this file for all 5923 Tru64 UNIX V5 and up releases. 5924 59252001-09-24 Ion Badulescu <ionut@moisil.badula.org> 5926 5927 * include/mount_headers1.h (MFS): define as 1 instead of nothing, 5928 to fix compile problems on OS X (patch from Ahmon Dancy) 5929 5930 * aux/macros/try_compile_anyfs.m4 (MFS): ditto 5931 59322001-08-13 Erez Zadok <ezk@fsl-gw.fsl.cs.sunysb.edu> 5933 5934 * doc/am-utils.texi (in_network Selector Variable): document 5935 expanded syntax 5936 5937 * libamu/wire.c (is_network_member): support for network/netmask 5938 as well as network/bits syntax in in_network() 5939 59402001-08-11 Erez Zadok <ezk@a-linux64.fsl.cs.sunysb.edu> 5941 5942 * amq/amq.c (show_mti): print full four digits for year, and print 5943 it in MM/DD/YYYY format, not in YY/MM/DD format. 5944 59452001-08-11 Ion Badulescu <lionut@gonzales.badula.org> 5946 5947 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req): 5948 initial attempt to do something useful -- but commented out for now 5949 (autofs_link_mount): create an action structure with a link 5950 request and pass it up 5951 (autofs_mount_2_req): pass the link request to the kernel 5952 (autofs_free_data): new helper function 5953 5954 * conf/autofs/autofs_linux.h: added definition for autofs_data_t 5955 5956 * conf/autofs/autofs_solaris_v2_v3.h: ditto 5957 5958 * amd/map.c (init_map): initialize am_autofs_data 5959 (free_map): call the autofs cleanup function if necessary 5960 5961 * include/am_utils.h (am_node): added private data and cleanup 5962 function for autofs 5963 5964 * tasks: removed some obsolete entries 5965 59662001-08-11 Erez Zadok <ezk@a-solaris8.fsl.cs.sunysb.edu> 5967 5968 * amd/map.c (free_map_if_success): run autofs_umount_failed() only 5969 if this mount node is of type autofs. 5970 59712001-08-11 Ion Badulescu <lionut@gonzales.badula.org> 5972 5973 * amd/amd.h: removed mf_array from struct continuation (moved into 5974 am_node) 5975 5976 * include/am_utils.h: removed VLOOK_LOOKUP; renamed vlookuppn to 5977 vlookup_child; added vmount_child; added mount_child to the fs_ops 5978 API; added prototypes for amfs_auto_mount_child and 5979 amfs_error_mount_child 5980 5981 * amd/map.c (init_map): initialize am_mfarray to 0 5982 5983 * amd/amfs_*, amd/ops_*: new API function mount_child, old API 5984 function lookuppn renamed to lookup_child 5985 5986 * amd/amfs_auto.c: renamed amfs_auto_lookuppn1 to 5987 amfs_auto_lookup_node; renamed amfs_auto_lookuppn2 to 5988 amfs_auto_lookup_mntfs; renamed amfs_auto_lookuppn3 to 5989 amfs_auto_mount_child; moved the freeing of the error mntfs in the 5990 newly allocated am_node from lookup_mntfs to mount_child; make 5991 sure lookup_child returns a negative error if the node needs to be 5992 mounted; removed the call to lookuppn3 from lookup_child 5993 5994 * amd/amfs_error.c: added stub implementations of 5995 amfs_error_lookup_child and amfs_error_mount_child 5996 5997 * amd/amfs_direct.c, amd/amfs_union.c, amd/map.c, amd/nfs_subr.c, 5998 conf/autofs/autofs_linux.c, conf/autofs/autofs_solaris_v2_v3.c: 5999 call both lookup_child and mount_child, instead of the old 6000 lookuppn API method 6001 60022001-07-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6003 6004 * amd/get_args.c (get_args): a better way to handle GNU and 6005 non-GNU getopts without strdup-ing the getopt string. 6006 60072001-07-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6008 6009 * amd/info_ldap.c (amu_ldap_rebind): The first time you called 6010 amu_ldap_init, aldh->ldap is not set. So when amu_ldap_rebind is 6011 called, this function is absolutely sure to return 0. Then 6012 amu_ldap_init return 0 without having opened any LDAP connection. 6013 This is not the correct behavior. 6014 (get_ldap_timestamp, amu_ldap_search): error to free an object 6015 ("entry") that is automatically freed by the library. Patch from 6016 Sebastien Bahloul <sebastien.bahloul@mangoosta.fr>. 6017 60182001-07-19 Ion Badulescu <ionut@moisil.badula.org> 6019 6020 * AUTHORS (variables): added Philippe Troin 6021 6022 * Makefile.am (EXTRA_DIST): added bootstrap 6023 6024 * include/am_compat.h (xfs_args_t): define as u_int if the 6025 filesystem is supported but we can't autodetect the type for 6026 xfs_args_t. This allows Linux to mount xfs filesystems. 6027 60282001-07-12 Philippe Troin <phil@fifi.org> 6029 6030 * doc/am-utils.texi: Added @dircategory Administration. 6031 60322001-07-12 Philippe Troin <phil@fifi.org> 6033 6034 * aux/macros/with_addon.m4: Created. Wrapper around AC_ARG_WITH 6035 with only the `yes' and `no' as possible answers. 6036 6037 * configure.in: Added support for disabling LDAP and HESIOD even 6038 if the supporting libraries are found. 6039 6040 * Makefile.am (EXTRA_DIST_AUX): Added with_addon.m4 macro file. 6041 60422001-07-12 Philippe Troin <phil@fifi.org> 6043 6044 * include/am_compat.h: Removed forced definition of MNTTAB_OPT_DEV 6045 if MNT2_GEN_OPT_NODEV was found. Actually, the dev= (SVR4) options 6046 and the linux nodev options are different beasts. 6047 6048 * conf/mount/mount_linux.c (opt_map): Removed the MNTTAB_OPT_DEV 6049 entry (not really necessary on linux). 6050 60512001-07-12 Philippe Troin <phil@fifi.org> 6052 6053 * amd/get_args.c (get_args): Prepend "+" to the getopt string if 6054 HAVE_GNU_GETOPT to avoid getting all options (even the ones after 6055 the first non-option argument) slurped in by GNU getopt. 6056 6057 * aux/macros/check_gnu_getopt.m4: Created. Defines HAVE_GNU_GETOPT 6058 if GNU/glibc getopt implementation is detected. 6059 6060 * configure.in: Added call to AC_CHECK_GNU_GETOPT. 6061 6062 * acconfig.h: Document HAVE_GNU_GETOPT. 6063 6064 * Makefile.am (EXTRA_DIST_AUX): Added check_gnu_getopt.m4 macro file. 6065 60662001-06-25 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6067 6068 * LSM.am-utils, NEWS, README.y2k, ChangeLog: make sure all 6069 am-utils URL references use www.am-utils.org, not the columbia 6070 URL. 6071 60722001-06-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6073 6074 * conf/transp/transp_sockets.c (create_nfs_service): cast to 6075 u_long to ensure clean compile on freebsd5 and bsdi2. 6076 60772001-05-23 Ion Badulescu <ionut@moisil.badula.org> 6078 6079 WARNING: WORK IN PROGRESS 6080 6081 It works for me on Linux (both autofs and nfs mounts), for nfs and 6082 link, but I won't make any guarantees outside those. 6083 6084 * amd/mntfs.c (find_mntfs): reuse the mntfs only if both the mount 6085 point and the device/fileserver are the same. This is an important 6086 change of philosophy, watch out for memory leaks! 6087 6088 * amd/map.c (get_ap_child): helper function for 6089 amfs_auto_lookuppn, creates a new am_node for key fname, inits it, 6090 and inserts it into all necessary structures 6091 6092 * amd/amfs_auto.c (free_continuation): free unused mntfs's; don't 6093 free any of the removed fields 6094 (amfs_auto_lookuppn, amfs_auto_bgmount): split lookuppn into three 6095 subfunctions, including some code stolen from bgmount; lookuppn 6096 now generates an array of possible mntfs to try mounting, and 6097 bgmount will actually try to mount each of them. 6098 (amfs_auto_lookuppn[123]): the three new subfunctions for lookuppn 6099 (amfs_parse_defaults): new helper function for lookuppn 6100 61012001-05-19 Erez Zadok <ezk@kosh.dyn.optonline.net> 6102 6103 * conf/mount/mount_linux.c: typo: added comma after '0' element. 6104 61052001-05-19 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6106 6107 * conf/autofs/autofs_linux.c (AUTOFS_MAX_VERSION): allow using 6108 autofs-v4 again 6109 (autofs_get_opts): don't pass pgrp, the kernel will get it 6110 automatically anyway, not to mention that we were passing bogus 6111 data if amd was not daemonized. 6112 6113 * conf/mount/mount_linux.c (linux_nfs_error): don't special case 6114 the 0 result, just put it into the translation list 6115 61162001-05-19 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6117 6118 * conf/mount/mount_linux.c (linux_nfs_error): don't report success 6119 (0) as error (NE_IO)! 6120 61212001-05-18 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6122 6123 * amd/amfs_host.c (amfs_host_mount): don't fail the mount if at 6124 least one share is already mounted 6125 61262001-05-17 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6127 6128 * libamu/util.c (str3cat): updated comment 6129 6130 * include/am_utils.h: added VLOOK_LOOKUP and FS_DIRECT 6131 6132 * conf/autofs/autofs_linux.c (autofs_get_fh): removed obsolete comment 6133 (autofs_mounted): disable autofs support for host f/s if version < 4 6134 (create_autofs_service): turn on FS_MKMNT on auto f/s if using autofs 6135 (autofs_umount_succeeded): use rmdirs instead of rmdir 6136 (autofs_mount_failed): ditto 6137 6138 * amd/opts.c (expand_op): align the debugging messages 6139 6140 * amd/map.c (mount_auto_node): use am_node *mp instead of casting 6141 the void *arg; update the comment 6142 6143 * amd/autil.c (am_mounted): check the FS_DIRECT flag instead of 6144 comparing to &amfs_direct_ops 6145 (mount_node): ifs_mount doesn't exist, make note of it in the 6146 comment 6147 6148 * amd/amfs_direct.c (amfs_direct_ops): added FS_DIRECT to fs_flags 6149 6150 * amd/amfs_auto.c (amfs_auto_mount): removed the autofs hack to 6151 create the mountpoint directory for auto f/s; it is now handled in 6152 autofs_linux.c 6153 (amfs_auto_bgmount): renamed the mpe parameter to mp_error; 6154 renamed dont_retry to retry and reverted its meaning as well; 6155 moved the mp variable up one scope and made use of it throughout 6156 the function; 6157 (amfs_auto_readdir): whitespace 6158 (amfs_auto_readdir_browsable): whitespace, also some debugging 6159 6160 * amd/am_ops.c (vops): updated a comment 6161 6162 * .cvsignore: added A.i386-pc-linux-rh7.[01] 6163 61642001-05-01 Ion Badulescu <ionut@gonzales.dev.hydraweb.com> 6165 6166 * conf/mount/mount_linux.c: fixed stupid error in the linux 6167 nfs_errormap[], which was mapping ENOENT to success!!! 6168 61692001-04-28 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6170 6171 * BUGS: added info about the direct mount problems on Linux and 6172 about the kernel patches on www.am-utils.org. 6173 6174 * conf/autofs/autofs_solaris_v2_v3.c (autofs_unmount_2_req): 6175 removed obsolete comment 6176 6177 * amd/autil.c (forcibly_timeout_mp): always log a message when the 6178 forced unmount request is ignored 6179 (mf_mounted): don't lstat unless this is an autofs mount point, 6180 lest we deadlock 6181 6182 * amd/amfs_auto.c (amfs_auto_bgmount): don't gratuitously add 6183 MFF_MKMNT to the flags, it causes deadlocks later on when 6184 unmounting 6185 61862001-04-14 Erez Zadok <ezk@whitestar.dyn.optonline.net> 6187 6188 * COPYING: update copyright year 6189 6190 * amd/amfs_auto.c, amd/amfs_host.c, amd/amfs_nfsx.c, 6191 amd/amfs_toplvl.c, amd/amfs_union.c, amd/conf.c, amd/info_nis.c, 6192 amd/info_nisplus.c, amd/mapc.c, amd/nfs_subr.c, amd/ops_nfs.c, 6193 amd/rpc_fwd.c, amd/srvr_amfs_auto.c, amd/srvr_nfs.c, 6194 conf/autofs/autofs_solaris_v1.c, conf/mtab/mtab_file.c, 6195 conf/mtab/mtab_isc3.c, conf/mtab/mtab_svr4.c, 6196 conf/transp/transp_sockets.c, conf/transp/transp_tli.c, 6197 libamu/mount_fs.c, libamu/mtab.c: rewritten various dlog/plog 6198 messages for clarity, to avoid duplication, to better recognize 6199 what the message means and where it ran, and to fix typos. 6200 6201 * amd/nfs_subr.c (nfsproc_lookup_2_svc): moved trace message of 6202 function's name to the beginning of the function, before any other 6203 messages are logged. 6204 62052001-04-14 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6206 6207 * conf/mount/mount_linux.c (do_mount_linux): removed plog() of 6208 binary data 6209 62102001-04-05 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6211 6212 * include/am_defs.h: define NFSCLIENT, NFS, PCFS, LOFS, RFS, 6213 MSDOSFS, MFS and CD9660 to 1, so that both #if FOO and #ifdef FOO 6214 work (needed for MacOS X); removed duplicate definition of NFS. 6215 62162001-03-29 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6217 6218 * amd/amd.h, amd/amfs_auto.c, amd/conf.c, 6219 doc/am-utils.texi, 6220 scripts/amd.conf-sample, scripts/amd.conf.5: 6221 renamed selectors_on_default to selectors_in_defaults, 6222 kept the former as a deprecated option; 6223 renamed CFM_ENABLE_DEFAULT_SELECTORS to CFM_SELECTORS_IN_DEFAULTS; 6224 renamed gopt_selectors_on_default() to gopt_selectors_in_defaults() 6225 62262001-03-19 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6227 6228 * amd/amfs_toplvl.c, amd/amfs_auto.c, amd/srvr_nfs.c, 6229 include/am_utils.h: compile fixes for --enable-debug=no 6230 62312001-03-15 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6232 6233 * NEWS: updated 6234 6235 * README.autofs: updated 6236 6237 * conf/mount/mount_linux.c (linux_version_code): export the fn 6238 6239 * conf/nfs_prot/nfs_prot_linux.h: ditto 6240 6241 * conf/autofs/autofs_linux.c (create_autofs_service): verify the 6242 kernel version here, and turn off bind_works if the kernel is 6243 older than 2.4.0. 6244 (autofs_link_mount): don't touch bind_works here, it's useless 6245 b/c we're in a child process; remove the mountpoint directory if 6246 the bind mount fails 6247 6248 * amd/opts.c (eval_fs_opts): changed some annoying debugging plogs 6249 into dlogs 6250 6251 * conf/autofs/autofs_linux.c (autofs_link_mount): zero out the 6252 mntent struct before initializing it 6253 62542001-03-14 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6255 6256 * conf/mount/mount_linux.c (parse_opts): added support for lofs 6257 (mount_linux): support lofs through bind mounts and/or FiST lofs 6258 6259 * scripts/ctl-hlfsd.in: search for /var/spool/mail in addition to 6260 /var/mail and /usr/spool/mail 6261 6262 * conf/nfs_prot/nfs_prot_linux.h (MS_BIND): add define for it, if 6263 kernel is newer than 2.4.0 6264 (MNTTYPE_LOFS): ditto 6265 6266 * conf/autofs/autofs_solaris_v2_v3.c (autofs_link_umount): new stub 6267 (autofs_lookup_failed): removed stub 6268 6269 * conf/autofs/autofs_linux.c (autofs_lookup_failed): moved up in 6270 the file, made static; 6271 (autofs_link_mount): activate MNT2_GEN_OPT_BIND code; use stat() 6272 and friends to determine if bind mounts can be used and to trigger 6273 further cascading mounts; return proper error codes 6274 (autofs_link_umount): distinguish between symlinks and bind mounts 6275 and handle both correctly 6276 (autofs_umount_succeeded): remove call to autofs_link_umount() 6277 6278 * amd/map.c (umount_exported): try to unmount all mount points on 6279 an autofs filesystem; this isn't really needed and will be removed 6280 when we start handling restarting autofs mounts 6281 6282 * amd/amfs_link.c (amfs_link_[u]mount): call autofs_link_[u]mount, 6283 if necessary 6284 6285 * amd/amfs_auto.c (amfs_auto_bgmount): fixed a bug that was 6286 causing the wrong mntfs to be selected when using autofs; removed 6287 call to autofs_link_mount() (moved where it belongs, in 6288 amfs_link.c) 6289 6290 * amd/amfs_link.c: added FS_MBACKGROUND to fs flags -- cleaner 6291 solution is needed, because background mounting is only necessary 6292 for linux autofs + bind mounts 6293 6294 * amd/amd.h: removed prototype for autofs_lookup_failed (internal 6295 static function for linux autofs); added prototype for 6296 autofs_link_umount 6297 6298 * configure.in: bump up library patchlevel 6299 63002001-02-28 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6301 6302 * aux/macros/check_mount_trap.m4, 6303 aux/macros/check_nfs_fh_dref.m4, 6304 aux/macros/check_nfs_prot_headers.m4, 6305 aux/macros/type_recvfrom_fromlen.m4, 6306 aux/macros/type_yp_order_outorder.m4: 6307 Fixed newer freebsd's fh type, expanded more aix3, osf2, hpux9 to 6308 aix[1-3], osf[1-3] and hpux[6-9]. 6309 63102001-02-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6311 6312 * check_mount_style.m4, check_mount_trap.m4, 6313 check_network_transport_type.m4, check_nfs_fh_dref.m4, 6314 check_nfs_prot_headers.m4, check_nfs_sa_dref.m4, 6315 check_nfs_socket_connection.m4, os_cflags.m4, 6316 type_yp_order_outorder.m4: small fixes to Ion's cleanup, and more 6317 cleanup (use [[0-1]] instead of M4 changequote commands). 6318 6319 * Makefile.am: removed unused conf/trap/trap_hpux11.h 6320 63212001-02-27 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6322 6323 * aux/macros/check_network_transport_type.m4, 6324 aux/macros/check_mount_style.m4, 6325 aux/macros/check_mount_trap.m4, 6326 aux/macros/check_network_transport_type.m4, 6327 aux/macros/check_nfs_fh_dref.m4, 6328 aux/macros/check_nfs_prot_headers.m4, 6329 aux/macros/check_nfs_sa_dref.m4, 6330 aux/macros/check_nfs_socket_connection.m4, 6331 aux/macros/os_cflags.m4, 6332 aux/macros/type_auth_create_gidlist.m4, 6333 aux/macros/type_recvfrom_fromlen.m4, 6334 aux/macros/type_yp_order_outorder.m4: 6335 Reworked the scripts, so that a new _unknown_ version of a known OS 6336 will use the option for the newest _known_ version of that OS. For 6337 example, when freebsd6 comes out, it will use the stuff for 6338 freebsd5, not the stuff for freebsd2. This makes configure more 6339 likely to succeed on new systems/versions. 6340 6341 * Makefile.am (EXTRA_DIST_AUX): added check_autofs_style.m4 (grr) 6342 63432001-02-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6344 6345 * Makefile.am (install-snapshot): use a different symlink target 6346 for the experimental snapshots. 6347 63482001-02-23 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6349 6350 * Makefile.am (EXTRA_DIST_CONF): include nfs_prot_darwin.h in 6351 distributions. 6352 63532001-02-22 Erez Zadok <ezk@earth.cs.columbia.edu> 6354 6355 * released snapshot am-utils-6.1a3 6356 6357 * amd/Makefile.am (EXTRA_amd_SOURCES): don't forget to distribute 6358 get_args.c 6359 63602001-02-21 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6361 6362 * libamu/mtab.c: added the functions hasmnteq and haseq to 6363 ease checks for non-numeric values in opt=value strings. 6364 Recoded hasmntval to qualify input as numeric, allow hex and 6365 octal strings on rhs of =, and log when the value is missing 6366 or invalid. 6367 6368 * conf/mount/mount_linux.c: revised mount_linux to use new 6369 hasmnteq function to extract type of non-nfs mounts, and added 6370 a log message to catch possible failure of strdup. 6371 6372 * amd/am_ops.c: revised merge_ops to use new haseq function 6373 6374 * amd/srvr_nfs.c: revised find_nfs_srvr to use hasmnteq to 6375 discover protocol setting. 6376 6377 * include/am_utils.h: added function prototypes for hasmnteq 6378 and haseq 6379 63802001-02-19 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6381 6382 * include/mount_headers2.h (_LINUX_NFS3_H): define it, to avoid 6383 pulling in unwanted declarations from 2.2.19pre and 2.4.1ac 6384 6385 * include/am_defs.h (_LINUX_NFS3_H): ditto 6386 6387 * conf/nfs_prot/nfs_prot_linux.h: whitespace, comments 6388 63892001-02-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6390 6391 * aux/macros/check_fs_mntent.m4 (ac_safe): remove debugging "echo" 6392 command. 6393 63942001-02-18 Erez Zadok <ezk@earth.cs.columbia.edu> 6395 6396 * aux/macros/mount_headers.m4, include/mount_headers[12].h: split 6397 mount_headers.h in two because one relative header (nfs_prot.h) 6398 file cannot be included inside another from the start directory of 6399 the first (it's relative to the directory of the first). 6400 64012001-02-09 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6402 6403 * AUTHORS: added Ahmon Dancy <dancy@franz.com> 6404 6405 * (all): added Darwin/Rhapsody/Apple OS X support from Ahmon Dancy 6406 6407 * aux/macros/mount_headers.m4: moved all the C code into a 6408 separate file, include/mount_headers.h; the effect is that 6409 configure goes down in size by a factor of 2.5! 6410 6411 * include/mount_headers.h: new file, with C code from 6412 aux/macros/mount_headers.m4 6413 64142001-02-01 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6415 6416 * conf/mount/mount_linux.c: made linux_nfs_error() more robust. 6417 64182001-02-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6419 6420 * released snapshot am-utils-6.1a2 6421 6422 * updated ltmain.sh and ltconfig from latest stable version of 6423 libtool-1.3.5 6424 64252001-02-01 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6426 6427 * conf/nfs_prot/nfs_prot_linux.h (nfs_error): moved the definition 6428 of nfs_error here, from mount_linux.c, so that it can actually be 6429 used. 6430 6431 * conf/mount/mount_linux.c: added unused errno 41 to the 6432 nfs_errormap array, lest the following errno's get shifted up by 6433 one! 6434 6435Sat Jan 13 00:04:38 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6436 6437 * amd/amd.h (autofs_lookuppn): Fixup whitespace. 6438 * amd/amfs_auto.c (amfs_auto_bgmount): Likewise. 6439 * amd/amfs_error.c: (amfs_error_match): Likewise. 6440 * amd/amfs_host.c (fetch_fhandle): Fixup whitespace. Remove 6441 unnecessary temporary variable. 6442 * amd/info_file.c (read_line): Likewise. 6443 (search_or_reload_file): Likewise. 6444 * amd/info_ldap.c (get_ldap_timestamp): Likewise. 6445 * amd/map.c (get_root_ap): Likewise. 6446 * amd/nfs_prot_svc.c: Likewise. 6447 * amd/ops_TEMPLATE.c (foofs_match, foofs_lookuppn, 6448 foofs_readlink, foofs_ffserver): Likewise. 6449 * amd/ops_autofs.c (autofs_bgmount): Likewise. 6450 * amd/ops_lofs.c (lofs_match): Likewise. 6451 * amd/ops_nfs.c (got_nfs_fh): Fixup whitespace. 6452 * amd/ops_xfs.c (xfs_match): Likewise. 6453 * amd/srvr_amfs_auto.c (srvrlog): Line break. 6454 * amd/srvr_nfs.c (got_portmap, call_portmap, nfs_pinged, 6455 nfs_srvr_port): Fixup whitespace. 6456 * conf/nfs_prot/nfs_prot_bsdi2.h: Likewise. 6457 * conf/nfs_prot/nfs_prot_hpux.h: Likewise. 6458 * conf/nfs_prot/nfs_prot_hpux11.h: Likewise. 6459 * conf/nfs_prot/nfs_prot_irix5.h: Likewise. 6460 * conf/nfs_prot/nfs_prot_irix6.h: Likewise. 6461 * conf/nfs_prot/nfs_prot_nextstep.h: Likewise. 6462 * conf/nfs_prot/nfs_prot_osf2.h: Likewise. 6463 * conf/nfs_prot/nfs_prot_osf4.h: Likewise. 6464 * conf/nfs_prot/nfs_prot_osf5_1.h: Likewise. 6465 * conf/nfs_prot/nfs_prot_sunos3.h: Likewise. 6466 * conf/nfs_prot/nfs_prot_sunos4.h: Likewise. 6467 * conf/nfs_prot/nfs_prot_ultrix.h: Likewise. 6468 * conf/transp/transp_tli.c (get_mount_client): Likewise. 6469 * hlfsd/nfs_prot_svc.c: Likewise. 6470 * include/am_defs.h (sys_errlist): Likewise. 6471 * include/am_utils.h (am_get_progname, am_get_hostname, 6472 amq_program_1): Likewise. 6473 (nfsxprt): Moved declaration. 6474 6475Fri Jan 12 23:31:45 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6476 6477 Removed support for amq -M. 6478 6479 * acconfig.h (ENABLE_AMQ_MOUNT): Removed. 6480 * aux/macros/opt_amq_mount.m4: Removed. 6481 * Makefile.am (EXTRA_DIST_AUX): Don't distribute 6482 opt_amq_mount.m4. 6483 * configure.in (AC_OPT_AMQ_MOUNT): Removed invocation. 6484 6485 * amd/amq_subr.c (ok_security, amqproc_mount_1_svc): Removed. 6486 * amd/amq_svc.c (amq_program_1): Removed amq -M support. 6487 * amq/amq.c (mount_map): Removed. 6488 (main): Removed -M option handling. 6489 Removed transport-type specific CLIENT creation. 6490 (get_secure_amd_client, amq_bind_resv_port, privsock): Removed. 6491 6492 * amq/amq.8: Removed -M documentation. 6493 * doc/am-utils.texi (Top-level Filesystem): Removed amq -M 6494 reference, but retain comment on mount -t amd. 6495 (Controlling Amd): Likewise. 6496 6497 * tasks: Removed this task. 6498 6499Fri Jan 12 23:18:26 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6500 6501 * conf/autofs/autofs_*.c: Bump copyright year to 2001. 6502 * hlfsd/hlfsd.h (HLFSD_VERSION): Likewise. 6503 6504 * aux/macros/check_autofs_style.m4: Renamed solaris[12] styles to 6505 solaris_v1, solaris_v2_v3 to reflect that these are AutoFS 6506 protocol version numbers, not solaris versions. 6507 * conf/autofs/autofs_solaris[12].[ch]: Renamed to 6508 autofs_solaris_{v1, 2_v3}.[ch] to reflect this. 6509 * Makefile.am (EXTRA_DIST_CONF): Likewise. 6510 6511 * aux/macros/check_autofs_style.m4: Use solaris2 style for both 6512 versions 2 and 3 of the AutoFS protocol. 6513 6514 Handle missing AUTOFS_POSTUNMOUNT, AUTOFS_POSTMOUNT (unnecessary 6515 with Solaris 8 mntfs). 6516 6517 * conf/autofs/autofs_solaris2.c (xdr_postumntreq, xdr_postumntres, 6518 xdr_postmountreq, xdr_postmountres, autofs_postunmount_2_req, 6519 autofs_postmount_2_req ): Don't define for version 3. 6520 (autofs_program_2): Don't handle AUTOFS_POSTUNMOUNT, 6521 AUTOFS_POSTMOUNT if missing. 6522 6523 * conf/nfs_prot/nfs_prot_sunos5_8.h: Enable AutoFS support. 6524 6525 * aux/macros/check_autofs_style.m4: Use empty autofs_default.[ch] 6526 files on systems without existing autofs port. 6527 * conf/autofs/autofs_default.[ch]: New files, empty. 6528 * Makefile.am (EXTRA_DIST_CONF): Distribute them. 6529 * INSTALL: With this change, Solaris 8 and Tru64 5.1 compile and 6530 link. 6531 65322001-01-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6533 6534 * Makefile.am (EXTRA_DIST): distribute new LDAP files. 6535 6536 * README.ldap, ldap-id.txt, ldap-id.ms: LDAP status information, 6537 proposed Schema, and internet draft. 6538 6539Fri Jan 12 22:27:07 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6540 6541 * Support Tru64 UNIX V5.1: 6542 6543 * conf/nfs_prot/nfs_prot_osf5_1.h: New file. 6544 6545 * Makefile.am (EXTRA_DIST_CONF): Distribute it. 6546 6547 * aux/macros/check_nfs_prot_headers.m4: Tru64 UNIX V5.1 has 6548 AutoFS, need to disable it until a port exists. 6549 6550 * INSTALL, doc/am-utils.texi (Supported Platforms): Mention new 6551 minor port. 6552 65532001-01-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6554 6555 * ALL: bump copyright year to 2001. 6556 65572001-01-05 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6558 6559 * acconfig.h: correct comments for NODEV/NONDEV mount options 6560 6561Fri Jan 5 05:12:02 2001 Erez Zadok <ezk@subzero.cs.columbia.edu> 6562 6563 * libamu/xdr_func.c: removed ugly casts to "groups*", now that 6564 irix6's nfs_prot.h is fixed. 6565 6566 * conf/nfs_prot/nfs_prot_irix6.h: copied relevant parts of 6567 <rpcsvc/mount.h> here so we don't have to include this header. 6568 65692001-01-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6570 6571 * conf/nfs_prot/nfs_prot_irix6.h: redefine "groups" typedef to 6572 struct groups, not the pointer to this struct. 6573 6574 * include/am_xdr_func.h: prototype should take "groups *" as 2nd 6575 arg. 6576 6577 * libamu/xdr_func.c (xdr_groupnode, xdr_exportnode): change 6578 casting of second arg of xdr_groups to "groups *". It's only 6579 needed for irix6, due to problems with xdr_groups on that platform. 6580 (xdr_groups): prototype should take "groups *" as 2nd arg. 6581 6582 * conf/nfs_prot/nfs_prot_aix*.h: correct xdr_groups extern 6583 definition. Report from Ahmon Dancy <dancy@franz.com>. 6584 65852000-12-06 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6586 6587 * include/am_defs.h: force non-inclusion of <linux/fs.h> via 6588 <linux/auto_fs.h> 6589 6590 * conf/autofs/autofs_linux.c (autofs_mounted): rename 6591 AUTOFS_MIN_PROTO_VERSION to AUTOFS_MIN_VERSION (leftover from 6592 previous commit) 6593 6594 * configure.in: fixed libtool version 6595 65962000-12-02 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6597 6598 * doc/am-utils.texi (opts Option): document lock/nolock 6599 66002000-12-02 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6601 6602 * conf/autofs/autofs_linux.h: added struct autofs_pending_mount; 6603 modified autofs_fh_t to have a linked list of autofs_pending_mount; 6604 added some support for autofs4 6605 6606 * conf/autofs/autofs_linux.c: use a linked list for pending 6607 request, to allow for handling multiple simultaneous request; 6608 incipient non-functional support for autofs4; incipient 6609 non-functional support for bind-mounting 6610 6611 * amd/amd.c (main): print a warning if PROCLOCK is requested but 6612 the O/S doesn't support it 6613 6614 * libamu/mount_fs.c (mnt_flags): allow the use of the "nolock" 6615 option 6616 6617 * include/am_defs.h: don't include <linux/fs.h> on a glibc2 6618 system; include <linux/auto_fs4.h> if it exists, instead of 6619 <linux/auto_fs.h> 6620 6621 * include/am_compat.h: define the "nolock" mnttab option if the 6622 NONLM NFS mount option is defined 6623 6624 * acconfig.h: added MNT2_NFS_OPT_NONLM, MNT2_GEN_OPT_BIND 6625 6626 * configure.in: added detection of the NONLM Linux NFS mount 6627 option; added a clarification for the library versioning rules and 6628 increased the minor level; added detection of <linux/auto_fs4.h> 6629 and the MS_BIND generic mount option 6630 66312000-11-29 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6632 6633 * Enabled Solaris 2.7 autofs support (tested, works) 6634 6635 * Updated NEWS, README.autofs 6636 6637 * Updated Makefile's, make dist is now fixed 6638 6639 * Fixed potential memory leak in map.c 6640 6641 * Fixed autofs style detection for solaris 2.[67] 6642 6643 * Added a few casts in autofs_solaris2.c, needed on Solaris 2.7 6644 66452000-11-28 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6646 6647 More Solaris 2.[67] work in progress: 6648 6649 * changed the API for the mount/umount methods: fmount/fumount are 6650 gone, and mount/umount now take two arguments (am_node and mntfs) 6651 6652 * changed the semantics of the MFF_AUTOFS flag: MFF_AUTOFS now 6653 means the mntfs is a filesystem of type autofs, and AMF_AUTOFS 6654 means the am_node is a node on a filesystem of type autofs. 6655 6656 * renamed nfs_program_2_transp to current_transp so it can be used 6657 with autofs 6658 6659 * renamed quick_reply() to nfs_quick_reply() 6660 6661 * added two more autofs methods: autofs_umount_failed() and 6662 autofs_compute_mount_flags() -- it turns out that on sol2.6 the 6663 autofs mounts MUST be overlay'ed 6664 6665 * moved the autofs_mount_succeeded() into am_mounted() 6666 6667 * made amd *not* timeout autofs mounts -- the kernel will do it 6668 for us 6669 6670 * store dev and rdev of a mounted filesystem in the mntfs 6671 structure, to help autofs 6672 6673 * moved the rmdirs() call from uninit_mntfs() to am_umounted(), to 6674 prevent deadlocking with autofs 6675 6676 * amd/Makefile.am: shuffled things around to make 6677 update_build_version be the last thing that runs 6678 66792000-11-27 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6680 6681 * split amd/ops_autofs.c into conf/autofs/autofs_<system>.c files 6682 and made configure create a symlink to the appropriate one 6683 6684 * moved the xdr autofs functions from libamu/xdr_func.c into the 6685 system-specific conf/autofs/autofs*.c 6686 6687 * added some more experimental code to the sol2.6 autofs support, 6688 but it's by no means functional 6689 66902000-11-27 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6691 6692 * libamu/wire.c (getwire_lookup): truncate the hostname to 6693 MAXHOSTNAMELEN characters. 6694 66952000-11-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6696 6697 * include/am_utils.h (MAXHOSTNAMELEN): if not defined, set this to 6698 256 bytes, not 64. Suggestion form Kris Kennaway 6699 <kris@FreeBSD.org>. 6700 67012000-11-26 Erez Zadok <ezk@dmath5.geometrie.tuwien.ac.at> 6702 6703 * configure.in (AC_CHECK_MNT2_NFS_OPTS): check for NFS mount 6704 options kerb, rdirplus, readdirsize, and xlatecookie 6705 (NetBSD-1.5K). 6706 6707 * acconfig.h: recognize NFS mount options rdirplus, readdirsize, 6708 and xlatecookie (NetBSD-1.5K) 6709 67102000-11-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6711 6712 * amd/srvr_nfs.c: comment on NFS proto search order. 6713 6714 * libamu/xutil.c (real_plog): don't try to write the last byte of 6715 the fmt buf. security suggtion from NetBSD: Thomas Klausner 6716 <wiz@danbala.ifoer.tuwien.ac.at> 6717 67182000-11-22 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6719 6720 * amd/amfs_auto.c (amfs_auto_bgmount): removed the initialization of 6721 fattr.na_fileid, it is now done in map.c when the map is initialized 6722 6723 * amd/map.c (init_map): initialize fattr.na_fileid to am_gen, not 6724 to 0, to avoid cache aliasing problems on Linux (and to follow the 6725 NFS spec!) 6726 67272000-11-22 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at> 6728 6729 * libamu/mount_fs.c (mount_fs): avoid using extra limited-size buf 6730 (security) 6731 6732 * libamu/xutil.c, fsinfo/fsinfo.h, include/am_utils.h: use 6733 __attribute__, __format__, and __printf__ for GCC string auditing. 6734 6735 * wire-test/wire-test.8: this is not a section 8L man page. 6736 6737 * libamu/xutil.c (expand_error): don't use sys_nerr on systems 6738 that support strerror(). 6739 (dplog): fmt is const 6740 (plog): fmt is const 6741 (real_plog): fmt is const. use new expand_error function with its 6742 new return value. be more careful about running off the end of 6743 char[] fixed size buffers. 6744 6745 * libamu/wire.c (getwire): fix alignment error on alpha using an 6746 extra automatic storage variable ifrpool. 6747 6748 * hlfsd/hlfsd.c (fatal): use proper printf style to plog. 6749 6750 * fsinfo/fsinfo.c (find_username): getlogin() returns a const. 6751 6752 * fsinfo/fsi_util.c (error, lerror, lwarning, fatal, log): use 6753 vfprintf. 6754 6755 * fsinfo/fsi_lex.l (yyerror): use vfprintf. 6756 6757 * fixmount/fixmount.8: this is not a section 8L man page. 6758 6759 * doc/am-utils.texi (Hesiod maps): fixed typo. 6760 6761 * amd/sched.c (do_task_notify): typo in comment. 6762 6763 * amd/opts.c (expand_op): expand_error[] is a const char *. 6764 6765 * amd/amd.c (main): use proper printf style to plog. 6766 67672000-11-22 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6768 6769 * libamu/mount_fs.c (mnt_flags, compute_nfs_args): recognize 6770 proplist mnttab flag. Bug fix from Wolfram Klaus 6771 <klaus@physik.fu-berlin.de>. 6772 67732000-11-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6774 6775 * updated config.guess, config.sub, and doc/texinfo.tex from 6776 mirrors 6777 6778 * Makefile.am (update): proper updating of config.* and texinfo 6779 from mirrors. 6780 6781 * aux/macros/check_nfs_prot_headers.m4: newer netbsd systems 6782 reports their system name as "netbsdelf" in config.guess. 6783 67842000-11-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6785 6786 * doc/am-utils.texi (opts Option): document new mount option 6787 "proplist" 6788 6789 * include/am_compat.h: define amd mount option "proplist" if the 6790 system doesn't recognize it, but the NFS bit flag exists. 6791 6792 * configure.in, acconfig.h: recognize/support "proplist" NFS mount 6793 option in Amd, useful under DU-4.0 to process ACLs over NFS 6794 mounts. 6795 67962000-11-10 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6797 6798 * conf/mount/mount_linux.c (mount_linux): removed unnecessary 6799 rsize/wsize defaults -- performance killers on 2.2.18+ and 2.4.0+ 6800 68012000-10-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6802 6803 * scripts/am-eject.in: accept "cdrom" and "floppy" as arguments. 6804 68052000-11-05 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6806 6807 Too many changes to list them here. Here's a high level 6808 description: 6809 6810 * Forward-ported the Linux fixes from 6.0.5pre 6811 6812 * Got rid of a mountain of #ifdef DEBUG, replaced with smart 6813 header-file #ifdef's 6814 6815 * and, the grand finale: initial Solaris 2.6 autofs 6816 support. Compiles, mounts, gets requests; all the 6817 infrastructure is in place to actually implement the calls. Linux 6818 autofs might be a bit broken, but only compile-time so it'll be 6819 easy to fix. 6820 68212000-11-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6822 6823 * MIRRORS (Note): added a mirror at ufl.edu 6824 68252000-10-11 Erez Zadok <ezk@lorien.dev.hydraweb.com> 6826 6827 * amq/amq.8: synchronize Amq's options with reality 6828 6829 * amq/amq.c (main): synchronize Amq's usage() string with reality 6830 68312000-10-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6832 6833 * scripts/ctl-amd.in: add targets condrestart (redhat) and 6834 reload. 6835 68362000-10-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6837 6838 * scripts/lostaltmail.in (vrfy_user): ensure that MAILDIR is 6839 defined. 6840 68412000-09-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6842 6843 * amd/opts.c (backslash): Bell char (ASCII 007) should be \g, not 6844 \a. 6845 68462000-09-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6847 6848 * include/am_utils.h: removed unused field opt_autopref 6849 6850 * amd/opts.c: removed unused variable $autopref 6851 68522000-09-05 Erez Zadok <ezk@aladdin.dev.hydraweb.com> 6853 6854 * conf/mtab/mtab_svr4.c (lockfile): function not needed unless 6855 MOUNT_TABLE_ON_FILE is defined. 6856 mtlckname static var is onlyneeded if MOUNT_TABLE_ON_FILE. 6857 (update_mnttab_fields): only needed if MOUNT_TABLE_ON_FILE. 6858 68592000-09-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6860 6861 * buildall (Usage): typo in usage string 6862 68632000-08-25 Erez Zadok <ezk@lynn.soscorp.com> 6864 6865 * conf/mount/mount_linux.c (mount_linux): MNT2_NFS_OPT_VER3 may 6866 is no defined on older Linux systems (kernel 2.0.36) 6867 68682000-08-19 Erez Zadok <ezk@earth.cs.columbia.edu> 6869 6870 * scripts/amd.conf.5: correct swapped descriptions for ldap_base 6871 and ldap_hostports. 6872 6873 * doc/am-utils.texi: correct swapped descriptions for ldap_base 6874 and ldap_hostports. 6875 6876 * scripts/amd.conf-sample: swap examples for ldap_base and 6877 ldap_hostports. 6878 68792000-08-13 Erez Zadok <ezk@earth.cs.columbia.edu> 6880 6881 * scripts/amd.conf-sample: -O is CLI equivalent to "os" 6882 amd.conf parameter 6883 68842000-07-30 Erez Zadok <ezk@earth.cs.columbia.edu> 6885 6886 * scripts/amd.conf-sample (nfs_retransmit_counter): correct 6887 meaning and use of parameter 6888 68892000-07-23 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6890 6891 * doc/am-utils.texi: updated URLs to www.am-utils.org. 6892 68932000-07-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6894 6895 * doc/am-utils.texi (Supported Platforms): document osf4.0f 6896 68972000-06-19 Erez Zadok <ezk@vir.cs.columbia.edu> 6898 6899 * doc/am-utils.texi (dollar Selector Variable): document 6900 ${dollar}. 6901 6902 * amd/opts.c: special new variable ${dollar} which expands into a 6903 literal '$' sign. Otherwise there is no way to include a literal 6904 dollar symbol in an amd map. 6905 69062000-06-11 Ion Badulescu <ib42@moisil.cs.columbia.edu> 6907 6908 * amd/opts.c (eval_selectors): don't deref opt after it's been 6909 XFREE'd 6910 69112000-06-11 Erez Zadok <ezk@earth.cs.columbia.edu> 6912 6913 * amd/opts.c: move mount_type expansion until later in the list, 6914 so common variable are "hit" first. 6915 69162000-06-11 Ion Badulescu <ib42@moisil.cs.columbia.edu> 6917 6918 * amd/opts.c (split_opts, eval_selectors): split old function 6919 eval_opts into two, one that only splits non-selectors and 6920 assigns the values to fs_static, and one that only evaluates 6921 selectors; also simplified the rather obfuscated logic inside 6922 these functions 6923 (expand_op): made it take a char * instead of a structure from 6924 which it was using only one field (a char *). Also now returns a 6925 char * instead of modifying said structure in place 6926 (expand_opts): deal with the change above 6927 (expand_selectors): renamed from expand_key 6928 (expand_options): new function, expands non-selectors; it's the 6929 complement of expand_selectors, both of which are just wrappers 6930 around expand_op() 6931 (eval_fs_opts): use the new split_opts, eval_selectors to allow 6932 using options (like ${rhost}) in selectors 6933 69342000-06-11 Ion Badulescu <ionut@moisil.cs.columbia.edu> 6935 6936 * config.guess.long: munge config.guess' output so that intel 6937 linux appears as i386-pc-linux 6938 6939Fri Jun 9 16:06:56 2000 Erez Zadok <ezk@defiant.dev.hydraweb.com> 6940 6941 * conf/nfs_prot/nfs_prot_bsdi2.h: getifaddrs() on bsdi2 is broken. 6942 Don't use it. 6943 69442000-06-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6945 6946 * amd/mapc.c (maptypes): Change default allocation mode to 6947 MAPC_INC where reload support is missing to avoid warning in 6948 mapc_create(). 6949 69502000-06-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6951 6952 * conf/nfs_prot/nfs_prot_sunos5_5.h: turn off autofs support for 6953 solaris 2.5 until a full port can be done. 6954 69552000-06-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6956 6957 * Makefile.am, aux/GNUmakefile: fix maintainer rules to update 6958 config.* and texinfo.tex files. 6959 6960 * amd/nfs_subr.c (nfsproc_getattr_2_svc): Don't conditionalize the 6961 mtime update of the symlinks on the SYMTTL option, but rather 6962 delay unmount of what was looked up using am_timeo_w. Patch from 6963 Nick Williams <Nick.Williams@msdw.com>. As Nick says "Basically: 6964 during unmount, increment the parent dir's mtime (fixes 6965 people doing amq -u). During stat, increase the TTL (to fix bad-luck 6966 timeouts), but leave the mtime alone." 6967 6968 (nfsproc_lookup_2_svc, nfsproc_readlink_2_svc, unlink_or_rmdir, 6969 nfsproc_readdir_2_svc): correctly update d_drops stats for amq -s. 6970 Patch from Nick Williams <Nick.Williams@msdw.com>. 6971 6972 * amd/map.c (unmount_mp): update mtime of amd symlink to further 6973 reduce the chances of race conditions between unmounting and 6974 looking up an entry again. Patch from Nick Williams 6975 <Nick.Williams@msdw.com>. 6976 6977 * README: updated instructions 6978 6979 * bootstrap: remove log file before existing 6980 69812000-06-06 Erez Zadok <ezk@aladdin.dev.hydraweb.com> 6982 6983 * configure.in: no longer using aux/ subdir. don't force autoconf 6984 2.14. comment out (but leave explanation) everything that's needed 6985 for autoconf 2.14, so for now it works with autoconf-2.13, but the 6986 code is ready for 2.14 when it is released. Similar changes to 6987 make code work with automake-1.4, until the next release comes 6988 out. 6989 6990 * libamu/Makefile.am: include definitions that are required in 6991 automake 1.4, but won't be necessary when the next release of 6992 automake comes out (see XXX comments). 6993 6994 * cache_check_dynamic.m4, check_checkmount_style.m4, 6995 check_mnttab_style.m4, check_mount_style.m4, 6996 check_network_transport_type.m4, check_nfs_prot_headers.m4, 6997 check_umount_style.m4: use symlink creation code that works for 6998 both autoconf 2.13 and 2.14 (when the latter comes out). 6999 7000 * bootstrap: new script for maintainers to run to update autoconf, 7001 automake, and libtool related files. Has the same effect as 7002 "buildall -K". 7003 7004 * removed dependencies on CVS versions of autoconf, automake, and 7005 libtool, especially the modified automake I had. This is so that 7006 maintainers could built the auto* files out of the latest released 7007 GNU autoconf, automake, and libtool. However, without my nice 7008 patches to automake, many files that used to live in the aux/ 7009 subdir now were moved to the top level source directory: acconfig.h, 7010 acinclude.m4, aclocal.m4, aux_conf.h.in, config.guess, 7011 config.guess.long, config.h.in, config.sub, configure.in, depcomp, 7012 install-sh, ltconfig, ltmain.sh, missing, and mkinstalldirs. Also 7013 texinfo.tex and mdate-sh moved from aux/ dir to doc/ dir. 7014 70152000-06-05 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7016 7017 * cvs-server.txt: instructions for maintainers to access the CVS 7018 server for am-utils. 7019 70202000-06-03 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7021 7022 * amd/restart.c (restart): grr.. passing around initialized 7023 structures is *really* bad habit. memset(mo, 0) so at least we can 7024 test for NULL pointers... 7025 70262000-06-02 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7027 7028 * amd/am_ops.c (ops_match): changed XLOG_USER messages about 7029 merging addopts options to the more appropriate XLOG_INFO. Patch 7030 submitted by Tom Schmidt <tschmidt@micron.com>. 7031 7032 * config.{guess,sub}: make sure chmod'ed a+rx. Updated from 7033 latest GNU copies. 7034 70352000-05-30 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7036 7037 * aux/configure.in: bump up the version to 6.1a2 7038 70392000-05-29 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7040 7041 * released snapshot am-utils-6.1a1 7042 70432000-05-29 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7044 7045 * amd/ops_autofs.c (autofs_mounted): retrieve the autofs protocol 7046 version and store it in the fh 7047 (autofs_get_opts): support protocol version 4 7048 7049 * amd/mntfs.c (uninit_mntfs): clear the autofs fh pointer after 7050 releasing it 7051 7052 * conf/transp/transp_sockets.c (amu_svc_getcaller): cast result of 7053 svc_getcaller() to sockaddr_in, to appease glibc 2.2 7054 7055 * amd/amfs_auto.c (amfs_auto_bgmount): if the filesystem wants 7056 autofs handling and the parent is already handled by autofs, 7057 handle this filesystem as well 7058 (amfs_auto_mount): create the mountpoint for an autofs mount 7059 (amfs_auto_umount): do a real UMOUNT_FS() call for autofs mounts 7060 7061 * include/am_utils.h (FS_AUTOFS): new flag signalling that the 7062 filesystem wants autofs handling; toplvl, auto, host and direct 7063 have this flag, at least for now 7064 70652000-05-28 Erez Zadok <ezk@mulberry.mcl.cs.columbia.edu> 7066 7067 * doc/am-utils.texi (Network Filesystem Group): minor typos 7068 70692000-05-28 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7070 7071 * amd/autil.c (am_unmounted): check mp->am_parent before dereferencing 7072 7073 * amd/srvr_nfs.c (find_nfs_srvr): if NFS_SCALEDOWN, force 7074 version=2 and proto=udp and try again 7075 7076 * amd/ops_nfs.c (prime_nfs_fhandle_cache): take an explicit mntfs 7077 instead of a voidp; handle the NFS_SCALEDOWN case by removing the 7078 cached server entry and re-querying the server 7079 7080 * amd/amfs_toplvl.c (amfs_toplvl_mount): removed ugly if 7081 statement, assign mnttype from the fs-specific mf_ops->fs_type 7082 instead 7083 7084 * amd/amfs_nfsx.c (amfs_nfsx_init): call fs_init() only if it's 7085 defined; 7086 (amfs_nfsx_remount): removed superfluous check for fmount_fs -- it 7087 always exists 7088 (amfs_nfsx_umount): removed the hacked am_node -- umounted() now 7089 takes an mntfs; call umounted() only if it's defined 7090 7091 * amd/amfs_auto.c: removed amfs_auto_umounted and moved its 7092 functionality into am_umounted(). 7093 (amfs_auto_cont): Linux hack: if we got an EINVAL, mark the mntfs 7094 as needing an "NFS scaledown" and retry the operation 7095 7096 * amd/amfs_*.c: changed all fmount/fumount functions to 7097 mount/umount and made them take an am_node instead of an 7098 mntfs. This is a first step towards an amfs/ops API separation. 7099 7100 * amd/{amfs,ops}_*.c: changed the umounted() function to take an 7101 mntfs instead of an am_node 7102 71032000-05-28 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7104 7105 * amd/amfs_toplvl.c (mount_amfs_toplvl): init error to 0 to shut 7106 up gcc 7107 7108 * aux/macros/check_hide_mount_type.m4: revert to the 6.0 version 7109 which always defines HIDE_MOUNT_TYPE 7110 7111 * amd/ops_autofs.c (autofs_mounted): remove MFF_AUTOFS 7112 initialization -- now done in init_mntfs() 7113 7114 * amd/mntfs.c (init_mntfs): init mf_flags to MFF_AUTOFS if we are 7115 mounting an autofs-style map 7116 7117 * amd/*.c: use the MFF_AUTOFS flag instead of doing a costly STREQ 7118 7119 * amd/amfs_toplvl.c (mount_amfs_toplvl): MTYPE_TYPE is not 7120 necessarily a string type, so handle the nfs/autofs separation 7121 differently 7122 7123 * amd/amfs_auto.c (amfs_auto_bgmount): removed initialization of 7124 opt_mount_type (now done in ops_match()) 7125 7126 * amd/am_ops.c (ops_match): need to initialize opt_mount_type if 7127 it's not initialized yet 7128 71292000-05-27 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7130 7131 * libamu/wire.c (getwire_lookup): handle calling irs_gen_acc with 7132 one or two arguments (bsdi3 vs. bsdi4) 7133 71342000-05-27 Ion Badulescu <ib42@chestnut.mcl.cs.columbia.edu> 7135 7136 * libamu/xutil.c (amu_release_controlling_tty): removed an unused 7137 variable from the previous patch 7138 71392000-05-26 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7140 7141 * aux/macros/check_autofs_style.m4: fixed substitution for default 7142 case 7143 7144 * libamu/xutil.c (amu_release_controlling_tty): close standard 7145 file descriptors, re-open them as /dev/null 7146 7147 * include/am_defs.h: don't try to include both <ndbm.h> and 7148 <db1/ndbm.h>, it really doesn't work 7149 71502000-05-16 Ion Badulescu <ib42@earth.cs.columbia.edu> 7151 7152 * hlfsd/stubs.c (nfsproc_lookup_2_svc): added code to update mtime 7153 on lookup if MNT2_NFS_OPT_SYMTTL is not defined (copied from 7154 getattr). This fixes the problem introduced by the Linux nfsv3 7155 patches. 7156 71572000-05-12 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7158 7159 * Makefile.am (EXTRA_DIST_CONF): added conf/autofs/autofs_linux.h 7160 71612000-05-10 Ion Badulescu <ib42@earth.cs.columbia.edu> 7162 7163 * amd/ops_autofs.c (autofs_handle_fdset): call 7164 autofs_lookup_failed instead of autofs_mount_failed, if the name 7165 is not in the map 7166 (autofs_umount_{succeeded,failed}): pass the actual mount point, 7167 not its parent, as it's needed for clean-up; 7168 7169 * amd/autil.c (am_unmounted): notify autofs that the umount 7170 succeeded 7171 7172 * amd/amfs_link.c (amfs_link_[u]mount): autofs link notification 7173 moved elsewhere 7174 71752000-05-09 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7176 7177 * amd/amfs_auto.c (amfs_auto_bgmount): initialize opt_mount_type 7178 if necessary; 7179 (amfs_auto_mounted): test if opt_mount_type is NULL first 7180 (amfs_auto_mount): revert earlier change 7181 7182 * amd/ops_autofs.c (autofs_mount_failed): remove autofs directory 7183 if mount failed 7184 71852000-05-09 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7186 7187 * amd/ops_autofs.c (autofs_link_mount): use am_link as target 7188 7189 * amd/map.c (unmount_mp): release file handle for autofs f/s about 7190 to be unmounted; this leak was preventing the unmount altogether 7191 7192 * amd/amfs_auto.c (amfs_auto_umount): removed autofs-specific 7193 code, was broken 7194 (amfs_auto_bgmount): nfs mounts + sublinks is a valid combination, 7195 handle it 7196 71972000-05-07 Ion Badulescu <ib42@moisil.cs.columbia.edu> 7198 7199 * Merged changes from stable branch 7200 72012000-04-30 Erez Zadok <ezk@beetle.mcl.cs.columbia.edu> 7202 7203 * include/am_defs.h, aux/macros/mount_headers.m4, 7204 aux/macros/try_compile_anyfs.m4: include linux/kdev_t.h and 7205 linux/list.h before including linux/fs.h, and define __KERNEL__ 7206 for those two headers. All of this to get a couple of definitions 7207 that are needed in the new struct vfsmount. 7208 7209 * aux/configure.in: look for <linux/kdev_t.h> and <linux/list.h>. 7210 7211 * include/am_defs.h, aux/macros/mount_headers.m4: avoid conflicts 7212 between linux/in.h. and netinet/in.h (linux-2.3.99-pre6), by 7213 defining _LINUX_IN_H so it doesn't get included. 7214 72152000-04-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7216 7217 * minor new ports: i686-pc-linux-gnu-rh6.2, 7218 i386-unknown-freebsdelf3.4, i586-pc-linux-gnu-rh6.2. 7219 72202000-04-03 Erez Zadok <ezk@vir.cs.columbia.edu> 7221 7222 * aux/acconfig.h: move all #undef macros above @TOP@, so they can 7223 be recognized by pickier autoconf. 7224 72252000-04-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7226 7227 * aux/macros/cache_check_dynamic.m4 (ac_tmp): use correct echo -n 7228 or \c. 7229 72302000-03-25 Erez Zadok <ezk@beetle.mcl.cs.columbia.edu> 7231 7232 * include/am_defs.h: ditto 7233 7234 * aux/macros/{mount_headers,try_compile_anyfs}.m4: force 7235 non-inclusion of <linux/string.h>. Breaks build on newer 2.3 7236 kernels. 7237 72382000-02-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7239 7240 * doc/am-utils.texi (Amq -w option): document new amq -w option. 7241 7242 * amq/amq.8: document new amq -w option. 7243 7244 * amq/amq.c: disable last remains of insecure amq -M code. 7245 (main): add amq -H option to show usage. 7246 (main): new amq -w option, translates getpwd() into an amd path. 7247 72482000-02-25 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7249 7250 * libamu/util.c (get_server_pid): new function 7251 7252 * hlfsd/hlfsd.c (main): make use of HIDE_MOUNT_TYPE 7253 7254 * conf/transp/transp_sockets.c: removed create_autofs_service 7255 7256 * conf/mount/mount_linux.c: added autofs mount options; split 7257 mount_linux into two functions, itself and do_mount_linux 7258 7259 * aux/macros/check_hide_mount_type.m4: better failover 7260 7261 * aux/configure.in: changed version to 6.1a1; added 7262 AC_CHECK_AUTOFS_STYLE 7263 7264 * aux/aux_conf.h.in: added @am_utils_autofs_style@ 7265 7266 * amd/opts.c: added "mount_type" option 7267 7268 * amd/ops_autofs.c: ifdef-ed out solaris code; moved all autofs 7269 variables in here; split create_autofs_service into sun and linux 7270 specific functions 7271 7272 * amd/nfs_start.c: removed autofs-specific variables 7273 7274 * amd/map.c (get_root_nfs_fh): renamed root_fh to get_root_nfs_fh 7275 (get_root_ap): renamed root_ap to get_root_ap 7276 7277 * amd/amfs_toplvl.c (amfs_toplvl_ops): replaced 7278 amfs_toplvl_mounted with amfs_auto_mounted 7279 (mount_amfs_toplvl): moved code around, added autofs handling 7280 (amfs_toplvl_mounted): removed 7281 7282 * amd/amfs_nfsl.c (amfs_nfsl_ops): removed amfs_auto_fu?mount, 7283 replaced with amfs_nfsl_u?mount 7284 7285 * amd/amfs_linkx.c (amfs_linkx_ops): removed amfs_auto_fumount, 7286 replaced with amfs_link_umount 7287 7288 * amd/amfs_link.c (amfs_link_ops): removed amfs_auto_fu?mount, 7289 replaced with amfs_link_u?mount 7290 7291 * amd/amfs_direct.c (amfs_direct_ops): changed "mounted" function 7292 from amfs_toplvl_mounted to amfs_auto_mounted 7293 7294 * all: added autofs hooks throughout the code 7295 7296 * amd/am_ops.c (vops): autofs_ops doesn't belong in here, removed 7297 7298 * README.autofs: linux status update 7299 73002000-02-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7301 7302 * minor new port: alphaev6-dec-osf5.0 7303 7304 * doc/am-utils.texi (Supported Platforms): hpux-11 supports NFSv3, 7305 but only for UDP. 7306 7307 * released snapshot am-utils-6.0.4s3 7308 7309 * conf/nfs_prot/nfs_prot_hpux11.h: support NFSv3 in hpux-11. Note 7310 that hpux-11 NFSv3 supports UDP only, and trying TCP locks up the 7311 kernel! Must set nfs_proto=udp in amd.conf [global]. 7312 7313 * aux/config.guess.long: set and export PATH separately. DU5 7314 /bin/sh doesn't like setting it on the command line in a 7315 back-tick'ed `script`. 7316 73172000-02-24 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7318 7319 * Makefile.am: removed struct_nfs_mount_data.m4 7320 7321 * aux/macros/struct_nfs_mount_data.m4: deleted 7322 7323 * aux/acconfig.h: removed definition for HAVE_NFS_MOUNT_DATA 7324 7325 * aux/configure.in: removed check for struct nfs_mount_data 7326 73272000-02-24 Ion Badulescu <ib42@beetle.mcl.cs.columbia.edu> 7328 7329 * amd/amfs_auto.c (amfs_auto_bgmount): changed log message to 7330 avoid having 'failed' in a message not indicating a failure 7331 (amfs_auto_lookuppn): ditto 7332 7333 * amd/ops_autofs.c (autofs_bgmount): ditto 7334 (autofs_lookuppn): ditto 7335 73362000-02-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7337 7338 * added .cvsignore files into the CVS repository. 7339 7340 * remove files which can be regenerated: .in, configure, some 7341 files in aux/, and more. 7342 73432000-02-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7344 7345 * doc/am-utils.texi (nfs_vers/nfs_proto): description of two 7346 parameters was reversed. Reported by Paul Jenner 7347 <p.jenner@eim.surrey.ac.uk>. 7348 73492000-02-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7350 7351 * released snapshot am-utils-6.0.4s2 7352 7353 * amd/mntfs.c (realloc_mntfs): don't fallback on certain ops such 7354 as inherit, error, and toplvl (failover code). 7355 7356 * amd/conf.c (gopt_nfs_vers, gopt_nfs_proto): two new (documented) 7357 global options in amd.conf: one to set the NFS version globally 7358 (i.e., nfs_vers=2), and one to set the NFS protocol globally 7359 (i.e., nfs_proto=udp). 7360 7361 * amd/mntfs.c (realloc_mntfs): attempt to fix the failover code, 7362 so when a matching mount entry failed, try the next one. 7363 73642000-02-15 Erez Zadok <ezk@moisil.cs.columbia.edu> 7365 7366 * amd/amfs_auto.c: a new debug option "readdir" to trace the 7367 progress of the browsable_dirs code. 7368 7369 * conf/mount/mount_linux.c (mount_linux): ensure that the new 7370 linux NFSv3 code works for v2-only machines. 7371 73722000-02-14 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7373 7374 * aux/configure.in: cleanup unused dnl entries. 7375 7376 * conf/mount/mount_linux.c (parse_opts): typo: check for string 7377 equality, not string inequality for pcfs and cdfs. 7378 7379 * aux/acconfig.h: look for MNT2_NFS_OPT_INTR as well. 7380 7381 * libamu/mount_fs.c (compute_mount_flags): check for INTR and 7382 NOINTR options as well (intr was never passed to linux mount 7383 syscall). 7384 73852000-02-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7386 7387 * released snapshot am-utils-6.0.4s1 7388 7389 * aux/GNUmakefile: buildall -k (for maintainers) temporarily now 7390 ignores autoconf warnings: "The macro `AC_OUTPUT_COMMANDS' is 7391 obsolete". It is harmless but annoying, and will be fixed when 7392 autoconf and automake in their respective CVS trees are working 7393 and in sync again. 7394 7395 * scripts/amd.conf.5: document -D hrtime,xdrtrace 7396 7397 * all man pages: update copyright to 2000. 7398 7399 * doc/am-utils.texi: update copyright to 2000. 7400 7401Wed Feb 9 14:22:31 2000 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7402 7403 * include/am_utils.h (D_XDRTRACE): Define. 7404 (D_TEST): Disable here. 7405 7406 * libamu/xutil.c (dbg_opt): Handle it. 7407 7408 * doc/am-utils.texi (-D-Option): Document it. 7409 7410 * libamu/xdr_func.c: Use it instead of D_TRACE. 7411 7412 * include/am_utils.h (D_HRTIME): Define. 7413 7414 * doc/am-utils.texi (-D-Option): Document it. 7415 7416 * libamu/xutil.c (show_time_host_and_name): Print high-resolution 7417 timestamp if available and activated. 7418 7419 * aux/configure.in (clock_gettime): Check for it in -lrt and 7420 -lposix4. 7421 7422 * hlfsd/hlfsd.c (mnttab_file_name): Initialize to MNTTAB_FILE_NAME 7423 if defined, even for some systems with in kernel mount tables. 7424 74252000-02-08 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7426 7427 * aux/macros/mount_headers.m4: remove #if 0 around linux/nfs.h to 7428 allow compiles against libc5 7429 7430 * aux/macros/check_mnttab_type.m4: avoid detecting nfs3 under 7431 linux when the kernel doesn't support it 7432 7433 * include/am_compat.h: add workaround for linux efs 7434 74352000-02-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7436 7437 * aux/configure.in: test for ANSI C compiler (before AC_C_CONST). 7438 Comment out unused AC_STRUCT_ST_RDEV (which is obsolete anyway). 7439 74402000-02-07 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7441 7442 * libamu/mount_fs.c (compute_nfs_args): turn on VER3 option for 7443 nfs (linux NFSv3). 7444 7445 * include/am_defs.h: avoid reinclusion of some header files under 7446 linux. 7447 7448 * conf/nfs_prot/nfs_prot_linux.h: support NFSv3. 7449 7450 * conf/mount/mount_linux.c (mount_linux): support nfs mount 7451 (implementation) version 4 for NFSv3. 7452 7453 * aux/macros/try_compile_nfs.m4: use AC_MOUNT_HEADERS. 7454 7455 * aux/macros/mount_headers.m4: don't include <linux/fs.h> (may 7456 need to fix the code on other linux machines). 7457 7458 * aux/macros/check_mnttab_type.m4 (ac_safe): ditto. 7459 7460 * aux/macros/check_fs_mntent.m4 (ac_safe): check for nfs3 option 7461 under linux (depends on ac_cv variable, is that a good idea?) 7462 7463 * added NFSv3 support for linux 7464 7465 * aux/{configure.in,acconfig.h}: new option ver3 7466 7467 * aux/macros/mount_headers.m4: commented out inclusion of 7468 linux/fs.h, it's not needed on rh61 (and actually generates 7469 conflicts), we should see if it's still needed on libc5 systems 7470 7471 * aux/macros/try_compile_nfs.m4: use AC_MOUNT_HEADERS rather than 7472 try to have its own (out of date) list of headers and ifdef's and 7473 ... 7474 74752000-02-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7476 7477 ******************************************************************* 7478 *** Released am-utils-6.0.3 *** 7479 ******************************************************************* 7480 74812000-02-06 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7482 7483 * conf/mount/mount_default.c: dummy empty file to work around a 7484 limitation of automake (it looks for LIBBOBJS in aclocal.m4 and 7485 processes them even if they are optional, enclosed in if/else). 7486 74872000-01-29 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7488 7489 * released snapshot am-utils-6.0.3s5 7490 74912000-01-25 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7492 7493 * update to use latest version of autoconf, automake, and libtool. 7494 7495 * aux/GNUmakefile (depcomp): "make update" should also update the 7496 depcomp script. 7497 7498 * Makefile.am (EXTRA_DIST_AUX): include depcomp in distribution. 7499 7500 * aux/configure.in: use renamed AC_CHECK_AMU_FS. 7501 7502 * aux/macros/check_amu_fs.m4: renamed macro name and file name to 7503 say AMU_FS, not AM_FS. 7504 7505 * aux/acconfig.h: renamed HAVE_AM_FS_* to HAVE_AMU_FS_* because 7506 latest version of autoconf doesn't handle it (bug in 2.14a) 7507 7508 * aux/configure.in: require version 2.14 of autoconf. 7509 7510 * amd/mapc.c (mapc_reload_map): more fixes from Nick Williams. 7511 7512 * doc/am-utils.texi (Automount Filesystem): document type:=auto 7513 map browsability option. 7514 7515 * amd/mapc.c (make_entry_chain): patch from Steven Danz 7516 <sdanz@awc.kc.noaa.gov> to allow browsable auto maps. 7517 75182000-01-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7519 7520 * released snapshot am-utils-6.0.3s4 7521 7522 * amd/mapc.c (mapc_reload_map): fixes to sync maps even if they 7523 are set to mapcache:=sync. Fix from Nick Williams 7524 <Nick.Williams@msdw.com>. 7525 75262000-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7527 7528 * released snapshot am-utils-6.0.3s3 7529 7530 * minor port to i386-unknown-netbsd1.4.1 7531 7532 * amd/nfs_subr.c (nfsproc_getattr_2_svc): patch from Nick Williams 7533 <Nick.Williams@msdw.com> to fix (or reduce the incidence of) stale 7534 file handles when doing rapid mounts and umounts in succession 7535 such as "ls /vol/foo ; amq -u /vol/foo ; ls /vol/foo" 7536 75372000-01-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7538 7539 * minor port to i386-pc-bsdi4.1. 7540 75412000-01-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7542 7543 * libamu/wire.c (getwire_lookup): pass NULL as conf_file (2nd) 7544 argument to irs_gen_acc(), which was changed in bsdi 4.1. 7545 75462000-01-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7547 7548 * amd/get_args.c (get_args): don't use MNTTAB_FILE_NAME for 7549 systems with in-kernel mount tables unless this macro is defined 7550 (Solaris 8). 7551 75522000-01-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7553 7554 * ALL: bump copyright year to 2000. 7555 75561999-12-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7557 7558 * conf/mount/mount_svr4.c (mount_svr4): optionstr exists on 7559 solaris 7, but should not be used unless MAX_MNTOPT_STR also 7560 exists (solaris 8). 7561 7562 * doc/am-utils.texi (opts Option): document new mount option: 7563 optionstr. 7564 7565Fri Dec 10 01:31:53 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7566 7567 * conf/trap/trap_svr4.h (MOUNT_TRAP): Pass mount option string to 7568 mount_svr4(). 7569 (mount_svr4): Adapt prototype. 7570 * conf/mount/mount_svr4.c (mount_svr4): Pass them to kernel so 7571 they are evaluated and show up in Solaris 8 in-kernel mnttab. 7572 7573 * aux/configure.in: Check for new Solaris 8 MS_OPTIONSTR mount(2) 7574 option. 7575 * aux/acconfig.h (MNT2_GEN_OPT_OPTIONSTR): Provide template. 7576 75771999-12-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7578 7579 * released snapshot am-utils-6.0.3s2 7580 75811999-12-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7582 7583 * doc/am-utils.texi (opts Option): document noexec and nomnttab 7584 (new to Solaris 8). 7585 7586 * Makefile.am (EXTRA_DIST_CONF): include nfs_prot_sunos5_8.h in 7587 distribution. 7588 7589 * applied fixes from Rainer Orth for Solaris 8. 7590 7591 * libamu/wire.c (getwire): increment the cp pointer in the loop 7592 body, because the ioctl() inside the "for" loop will overwrite the 7593 ifr structure, thus not detecting all of the interfaces. Bug 7594 reported and fixed by Amitha Perera <perera@cs.rpi.edu>. 7595 7596Thu Dec 9 19:09:38 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7597 7598 * conf/mtab/mtab_svr4.c (unlockmnttab, lockmnttab): No-ops if 7599 MOUNT_TABLE_ON_FILE. 7600 7601 * amd/get_args.c (get_args): Initialize mnttab_file_name even for 7602 in-kernel mount table. conf/mtab/mtab_svr4.c (read_mtab) depends 7603 on a non-NULL value. 7604 7605 * amd/info_ldap.c (get_ldap_timestamp): Don't peek into opaque 7606 LDAP structure to get error code, but use it directly. 7607 (amu_ldap_search): Likewise. 7608 7609 * conf/nfs_prot/nfs_prot_sunos5_7.h: Rip superfluous and wrong 7610 ldap support. 7611 * conf/nfs_prot/nfs_prot_sunos5_8.h: Likewise. 7612 7613 * conf/nfs_prot/nfs_prot_sunos5_8.h: New file, doesn't typedef 7614 nfsstat, already in <nfs/nfs.h>. 7615 * aux/macros/check_nfs_prot_headers.m4: Use it for all Solaris 7616 versions beyond 7. 7617 Allow for micro versions of SunOS 5.[67]. 7618 7619 * aux/configure.in: Check for new Solaris 8 Beta Refresh 7620 MS_NOMNTTAB mount(2) option. 7621 * aux/macros/check_mnttab_location.m4: Use it to test for 7622 mntfs-based in-kernel mnttab. 7623 7624 * aux/macros/os_cflags.m4: Treat Solaris 8 and higher like 2.6/7. 7625 7626 * aux/macros/check_fs_headers.m4: Revert test for duplicate 7627 objects. 7628 * aux/macros/check_fs_mntent.m4: Likewise 7629 7630 * aux/macros/HEADER: Fixed typo. 7631 7632 * include/am_defs.h: Likewise. 7633 76341999-12-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7635 7636 * aux/macros/*.m4: prepare for hpux-12 (assume same as hpux-11) 7637 76381999-11-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7639 7640 * BUGS: document glibc-2.1 nis file descriptor leak in yp_bind. 7641 7642 * amd/info_ldap.c (string2he): updated function which does not 7643 corrupt strings when called more than once. Patch from 7644 JOHANN.PFEFFERL.JP@germany.agfa.com. 7645 76461999-11-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7647 7648 * MIRRORS (Asia): two new mirrors in Japan. 7649 76501999-11-10 Erez Zadok <ezk@kosh.cs.columbia.edu> 7651 7652 * doc/am-utils.texi: document new variables for ${uid} and ${gid}. 7653 7654 * amd/nfs_subr.c (nfsproc_lookup_2_svc): find the uid/gid of the 7655 last lookup from the RPC credentials. 7656 7657 * aux/configure.in: upped version-info to 4:0:2 because I've added 7658 a new interface to libamu. 7659 7660 * libamu/misc_rpc.c (getcreds): moved function from hlfsd to here, 7661 so it can be used by amd. 7662 7663 * amd/opts.c: new variables ${uid} and ${gid}. 7664 76651999-10-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7666 7667 * scripts/ctl-amd.in: add "status" command that tells you if amd 7668 is running on not (same output as RedHat scripts). 7669 Added start_msg and stop_msg targets as they are used on HPUX. 7670 reported by Jon Peatfield <J.S.Peatfield@damtp.cam.ac.uk>. 7671 76721999-10-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7673 7674 * released snapshot am-utils-6.0.3s1 7675 76761999-10-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7677 7678 * amd/amd.c (main): On AIX you must lower the stack size using 7679 ulimit() before calling plock. Otherwise plock will reserve a lot 7680 of memory space based on your maximum stack size limit. Since it 7681 is not easily possible to tell what should the limit be, I print a 7682 warning before calling plock(). See the manual pages for 7683 ulimit(1,3,4) on your AIX system. 7684 7685 * include/am_defs.h: define default extern for vsnprintf() 7686 7687 * aux/configure.in: check for extern definition for vsnprintf() 7688 76891999-10-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7690 7691 * amd/amfs_auto.c (amfs_auto_bgmount): patch from Nick Williams 7692 <njw@ms.com>. SYMPTOMS: 'occasionally' sublinks do not point to 7693 the correct location, but to the top level of the mountpoint and 7694 an (error-hook) is seen being mounted in the log file. This causes 7695 things to Go Wrong(TM). 7696 CAUSE: When evaluating two locations which are requested 7697 'practically simultaneously', and the two locations resolve to the 7698 same NFS mountpoint (but different sublinks), the later request 7699 will be "deferred" and retried after wakeup when the first mount 7700 succeeds. To do this, it rewinds the options location string to 7701 re-evaluate the location when the mount is retried. However, it 7702 shouldn't rewind the options for two reasons: (a) the semantics of 7703 the map language say you shouldn't and (b) the NFS mount reference 7704 is not reset at the same time, meaning that on the retry it will 7705 have an options structure out-of-sync with the mount 7706 structure. The "shortcut" code when retrying the mount sees the 7707 mount structure is already filled in and does not fully evaluate 7708 the options structure.... so if the first location is not the one 7709 which ties in with the mountpoint (see ordering in the 7710 recreate-by), you're now well messed up. 7711 7712 * BUGS: mention aix4.3 plock() bug (memory usage blows up and 7713 plock fails) 7714 77151999-10-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7716 7717 * aux/GNUmakefile: certain files should be copied if they are 7718 newer, not also if they are bigger: install-sh, ltconfig, 7719 ltmain.sh, mdate-sh, missing, mkinstalldirs, and texinfo.tex. 7720 7721 * minor new port: i586-pc-linux-gnu-rh6.1 (RedHat Linux 6.1) 7722 77231999-10-05 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7724 7725 * aux/macros/check_nfs_prot_headers.m4: prepare for OSF-5. 7726 7727 * aux/macros/check_nfs_fh_dref.m4: prepare for Tru64, aka OSF-5. 7728 77291999-09-30 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7730 7731 ******************************************************************* 7732 *** Released am-utils-6.0.2 *** 7733 ******************************************************************* 7734 77351999-09-27 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7736 7737 * conf/mount/mount_linux.c (mount_linux): print the updated mount 7738 flags. 7739 7740 * doc/am-utils.texi: document $full_os and $vendor. 7741 7742 * scripts/amd.conf-sample: examples of $full_os and $vendor. 7743 7744 * scripts/amd.conf.5: document $full_os and $vendor. 7745 7746 * amd/conf.c: add support for $full_os and $vendor. 7747 77481999-09-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7749 7750 * doc/am-utils.texi (netgrp Selector Function): don't give 7751 examples with old single '=' assignment variable. Use foo:=bar. 7752 7753 * amd/amfs_auto.c (amfs_auto_bgmount): corectly indent long 7754 comment describing this complex function. 7755 7756 * doc/Makefile.am (alldocs): do install-ps last (because distiller 7757 is slow) and install-html next to last (because texi2html is also 7758 slow). 7759 7760 * amd/amd.8: Major fixes to the description of the option -t 7761 timeout.retransmit. 7762 7763 * doc/am-utils.texi: better description of "trace" debug option. 7764 amd -H (not -v) shows log_options and debug_options. Major fixes 7765 to the description of amd -t timeout.retransmit, and the amd.conf 7766 parameters nfs_retransmit_counter and nfs_retry_interval. 7767 7768 * scripts/amd.conf.5: better description of "trace" debug option. 7769 amd -H (not -v) shows log_options and debug_options. Major fixes 7770 to the description of the parameters nfs_retransmit_counter and 7771 nfs_retry_interval. 7772 77731999-09-25 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7774 7775 * doc/am-utils.texi (Automount Filesystem): cache:= is not a mount 7776 option, but a mount map option. 7777 7778 * libamu/xutil.c (switch_to_logfile): log the name of the log file 7779 we switched into, after the log file had been [re]opened. 7780 77811999-09-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7782 7783 * amd/mapc.c (mapc_reload_map): count and show the number of times 7784 a map was reloaded. Only reload a map if its modify-time was 7785 updated. But amq -f forced a reload no matter what. 7786 7787 * amd/amd.h: new flag to struct mnt_map to count number of times a 7788 map was reloaded. 7789 7790 * amd/mapc.c (mapc_reload_map): attempt to reload the map without 7791 losing current data by reloading into a temp copy, and switching 7792 the hashes round only if the reload was successful. Patch from Jon 7793 Peatfield <J.S.Peatfield@damtp.cam.ac.uk>. 7794 (mapc_sync): mapc_reload_map() always succeeds. 7795 77961999-09-22 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7797 7798 * amd/info_ldap.c (amu_ldap_rebind): don't busy-loop trying to 7799 rebind to an LDAP server forever. Try up to 10 times. 7800 7801 * fsinfo/fsi_lex.l (yyerror): rework code that will never happen 7802 7803 * released snapshot am-utils-6.0.2s2 7804 7805 * aux/configure.in: bumped library version-info to 3:2:1, since 7806 some libamu code got changed. 7807 7808 * libamu/xutil.c (real_plog): use vsnprintf, not vsprintf, which 7809 is better and more secure. Fix from "David O'Brien" 7810 <obrien@NUXI.com>. 7811 7812 * aux/configure.in: check for vsnprintf. 7813 78141999-09-21 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7815 7816 * aux/macros/linux_headers.m4: use AC_MSG_ERROR. 7817 7818 * aux/macros/opt_{cppflags,ldflags,libs,amu_cflags}.m4: the ARG is 7819 not optional. Make sure ARG is supplied else flag an error. 7820 78211999-09-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7822 7823 * minor port i386-unknown-freebsdelf3.3 7824 7825 * released snapshot am-utils-6.0.2s1 7826 78271999-09-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7828 7829 * aux/configure.in (AC_CHECK_FUNCS): check for getitimer(). 7830 7831 * include/am_defs.h: extern definition for getitimer(). 7832 7833 * aux/configure.in: use AC_CHECK_EXTERNS. Look for getitimer() 7834 extern. 7835 7836 * aux/macros/check_extern.m4: define a simple AC_CHECK_EXTERNS 7837 that calls AC_CHECK_EXTERN in a loop. This saves repeated code in 7838 configure. 7839 7840 * aux/macros/type_auth_create_gidlist.m4: AIX 4.x systems use 7841 'int' as the 5th arg to authunix_create(). 7842 7843 * aux/macros/type_recvfrom_fromlen.m4: all AIX 4.x systems use a 7844 size_t for the 6th arg of recvfrom(). 7845 7846 * aux/macros/os_cflags.m4: define _XOPEN_EXTENDED_SOURCE for 7847 aix4.x systems. 7848 7849 * libamu/mount_fs.c (print_nfs_args): cast some values to int, to 7850 avoid gcc -Wall errors. 7851 7852 * scripts/expn.in: use sockaddr_in(), not pack() to correctly fill 7853 in a struct sockaddr_in. On Solaris x86 hosts, using pack() 7854 results in byte-misaligned values. Bug fix from Jeffrey C Honig 7855 <jch@BSDI.COM>. 7856 7857 * libamu/mount_fs.c (compute_automounter_mount_flags): turn on 7858 automntfs (ignore on bsdi-4.1) flag. 7859 (compute_automounter_nfs_args): ditto. 7860 7861 * aux/acconfig.h: add new flag for automntfs (ignore) 7862 7863 * aux/configure.in: check for new automntfs flag (bsdi-4.1). 7864 78651999-09-14 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7866 7867 * MIRRORS: added new site in Germany. Updated status of umn.edu 7868 and ferginc.com, who may no longer be mirroring am-utils. 7869 78701999-09-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7871 7872 ******************************************************************* 7873 *** Released am-utils-6.0.1 *** 7874 ******************************************************************* 7875 78761999-09-08 Erez Zadok <ezk@cs.columbia.edu> 7877 7878 * aux/macros/mount_headers.m4: bsdi-2.1 needs MAXQUOTAS and struct 7879 netexport defined. 7880 7881 * aux/macros/try_compile_anyfs.m4: bsdi-2.1 needs MAXQUOTAS and 7882 struct netexport defined. 7883 78841999-09-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7885 7886 * aux/macros/check_field.m4 (ac_upcase_var_name): include 7887 <ifaddrs.h> so we can detect fields within struct ifaddrs. 7888 7889 * libamu/wire.c (getwire): bsdi-2.1 uses a second arg to 7890 getifaddrs() and struct ifaddrs has no ifa_next field. 7891 7892 * aux/configure.in: check if 'struct ifaddrs' has a field 7893 ifa_next. 7894 7895 * include/amq_defs.h (AMQ_STRLEN): double size of amq string 7896 length to 2048 bytes. 7897 7898 * conf/nfs_prot/nfs_prot_netbsd1_4.h: include several more nfs 7899 header files and ufs/ufs/ufsmount.h. Bug reported by <Christos 7900 Zoulas> christos@zoulas.com. 7901 7902 * aux/macros/try_compile_anyfs.m4: include <ufs/ufs/ufsmount.h>. 7903 Bug reported by <Christos Zoulas> christos@zoulas.com. 7904 7905 * aux/macros/mount_headers.m4: include <ufs/ufs/ufsmount.h> 7906 79071999-09-06 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7908 7909 * libamu/xutil.c (expand_error): use strerror if available instead 7910 of sys_errlist. Bug reported by <Christos Zoulas> 7911 christos@zoulas.com. 7912 7913 * hlfsd/hlfsd.c (fatal): use strerror if available instead of 7914 sys_errlist. 7915 7916 * amq/amq.c (show_mi): use strerror if available instead of 7917 sys_errlist. 7918 7919 * aux/macros/check_nfs_prot_headers.m4: make sure netbsd1.4 7920 nfs_prot header is used for any future (1.5 etc.) netbsd systems. 7921 7922 * amq/pawd.c (find_mt): check for type nfsl as well. Fix from 7923 "Andrew J. Korty" <ajk@purdue.edu> 7924 79251999-08-29 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7926 7927 * doc/am-utils.texi (Supported Platforms): updates for redhat 7928 systems. 7929 7930 * INSTALL: updates for redhat systems. 7931 7932 * libamu/wire.c (getwire_lookup): spell "succeeded" correctly 7933 79341999-08-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7935 7936 * scripts/ctl-amd.in: sleep 1 second between killing amd and 7937 restarting it, because amq may respond that amd is down, where in 7938 fact it is still trying to unmount itself after unmapping itself 7939 from the portmapper. 7940 7941 * aux/config.guess.long: new script to print long version of 7942 config.guess output. 7943 7944 * buildall (host_alias): use long version of config.guess. 7945 79461999-08-27 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7947 7948 * scripts/ctl-{amd,hlfsd}.in: update RH tags for start/stop 7949 scripts. 7950 79511999-08-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7952 7953 * released snapshot am-utils-6.0.1s11 7954 7955 * libamu/xutil.c (expand_error): make sure expanding the string 7956 with textual version of errno doesn't overrun the 1024 bytes 7957 buffer. 7958 (real_plog): null terminate msg, just in case. 7959 7960 * amq/amq.c (main): don't getopt -M option and don't process it 7961 unless ENABLE_AMQ_MOUNT is on. 7962 7963 * amd/amq_svc.c (amq_program_1): all code that relates to amq -M 7964 is conditional on #ifdef ENABLE_AMQ_MOUNT. 7965 7966 * amd/amq_subr.c: remove amqproc_mount_1_svc() function invoked 7967 when amq -M code is disabled. Not taking any chances. 7968 79691999-08-23 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7970 7971 * released snapshot am-utils-6.0.1s10 7972 7973Sun Aug 22 16:18:59 1999 Erez Zadok <ezk@subzero.cs.columbia.edu> 7974 7975 * libamu/wire.c (getwire_lookup): if getnetbyaddr failed (e.g., on 7976 128.59.16.0), try to shift the network out of zeros (e.g., 7977 128.59.16) and try again. Irix 6.4 requires short network 7978 numbers. 7979 79801999-08-22 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7981 7982 * libamu/wire.c (getwire_lookup): correctly compute subnet using 7983 netmask. 7984 7985 * libamu/mount_fs.c (compute_automounter_nfs_args): require that 7986 Amd's own NFS mounts use reserved ports (if possible). IP packet 7987 security fix from Jeffrey C Honig <jch@BSDI.COM>. 7988 7989 * conf/transp/transp_tli.c (create_autofs_service): use correct 7990 autofs_port. IP packet security fix from Jeffrey C Honig 7991 <jch@BSDI.COM>. 7992 7993 * conf/transp/transp_sockets.c (bindnfs_port): remove unnecessary 7994 function. IP packet security fix from Jeffrey C Honig 7995 <jch@BSDI.COM>. 7996 (create_nfs_service): use bind_resv_port() directly. ensure that 7997 privileged ports are used. IP packet security fix from Jeffrey C 7998 Honig <jch@BSDI.COM>. 7999 8000 * amd/nfs_prot_svc.c (nfs_program_2): verify that requests come 8001 from reserved ports and from a local IP address. IP packet 8002 security fix from Jeffrey C Honig <jch@BSDI.COM>. 8003 8004 * amd/amq_subr.c (ok_security): use IPPORT_RESERVED, instead of 8005 hard-coded 1024. IP packet security fix from Jeffrey C Honig 8006 <jch@BSDI.COM>. 8007 (amqproc_mount_1_svc): provide information on the caller making an 8008 amq -M request. IP packet security fix from Jeffrey C Honig 8009 <jch@BSDI.COM>. 8010 8011 * amd/map.c (free_map_if_success): If the program doing an unmount 8012 of a program filesystem fails, amd tries to interpret the return 8013 code as an errno. Fix from Jeffrey C Honig <jch@BSDI.COM>. 8014 8015 * amd/info_nis.c (determine_nis_domain): don't always print 8016 warning about NIS domain name not being set, even if NIS is not in 8017 use. 8018 80191999-08-21 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8020 8021 * amd/info_ldap.c (get_ldap_timestamp): initialize variable err. 8022 (amu_ldap_search): initialize variable err. 8023 80241999-08-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8025 8026 * libamu/wire.c: written using getifaddrs() for BSD systems, 8027 contributed by BSDI, Jeffrey C Honig <jch@BSDI.COM>). 8028 80291999-08-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8030 8031 * include/am_utils.h (SALLOC): a simple macro to allocate N bytes. 8032 8033 * aux/configure.in: check for irs.h and ifaddrs.h. 8034 Increase libamu.so --version-info to 3:1:1 since we've changed the 8035 source code for the library. 8036 Check for getifaddrs() function. 8037 80381999-08-14 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8039 8040 * libamu/mount_fs.c (print_nfs_args): print fields namlen and 8041 bsize if they exist. 8042 8043 * conf/mount/mount_linux.c (mount_linux): set nfs_args_t->namlen 8044 and ->bsize fields correctly, if those fields exist. This is a 8045 bug in that amd neglected to set these fields, but told the 8046 kernel it is mounting the nfs_args_t structure using mount version 8047 3 (which requires both bsize and namlen fields). 8048 8049 * aux/configure.in: test for two new nfs_args_t fields (used on 8050 newer linux with mount versions 2 and 3): bsize and namlen. 8051 8052 * doc/am-utils.texi (netgrpd Selector Function): document new 8053 selector function. 8054 8055 * amd/opts.c (f_netgrpd): new amd map function netgrpd(ARG) to 8056 test if the current host (fully-qualified name) is in the ARG host 8057 netgroup. The netgrp() function uses the short form of a host 8058 name. Patch from Christophe Kalt <Christophe-Kalt@deshaw.com>. 8059 8060 * doc/am-utils.texi (automount2amd): document new script. 8061 8062 * scripts/Makefile.am: create, install, and distribute 8063 automount2amd perl script and its man page. 8064 8065 * scripts/automount2amd.8: new man page for automount2amd. 8066 8067 * scripts/automount2amd.in: new file, contributed a in 1993 by 8068 Mike Walker <mike@tab00.larc.nasa.gov>. Fixed to use addopts for 8069 any automount map options specified. 8070 80711999-08-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8072 8073 * released snapshot am-utils-6.0.1s9 8074 80751999-08-09 Erez Zadok <ezk@beetle.mcl.cs.columbia.edu> 8076 8077 * amd/amfs_auto.c (DOT_DOT_COOKIE): set the NFS cookie of '..' to 8078 1. 8079 (amfs_auto_readdir): use DOT_DOT_COOKIE instead of (u_int)~0. 8080 (amfs_auto_readdir_browsable): use DOT_DOT_COOKIE instead of 8081 (u_int)~0. 8082 8083 * amd/mapc.c (make_entry_chain): NFS cookies should be 8084 monotonically increasing, because Linux 2.3 expects that, even 8085 though it is not in the spec (RFC-1094) for NFS V2. 8086 80871999-08-06 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8088 8089 * aux/macros/check_lib_funcs.m4: removed unused macro. 8090 8091 * aux/macros/linux_headers.m4: new macro to ensure that linux 8092 kernel headers match running kernel version. 8093 8094 * aux/acconfig.h: define HOST_HEADER_VERSION so we can check if 8095 amd is configured on linux hosts that run one kernel but have 8096 headers for a different version. 8097 8098 * amd/info_nis.c (nis_isup, nis_search, nis_init): fixes for the 8099 logic which uses nis_isup and has_yp_order. Make sure it is used 8100 correctly , esp. for NIS+ in NIS-compatibility mode. Bug fix from 8101 Peter Breitenlohner <peb@mppmu.mpg.de>. 8102 8103 * include/am_defs.h: fix conflicts on linux 2.2 systems with older 8104 libc5. Bug fix from Peter Breitenlohner <peb@mppmu.mpg.de>. 8105 8106 * scripts/lostaltmail.in: use sockaddr_in(), not pack() to 8107 correctly fill in a struct sockaddr_in. On Solaris x86 hosts, 8108 using pack() results in byte-misaligned values. 8109 81101999-08-02 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8111 8112 * conf/mtab/mtab_aix.c (mnt_dup): add support for nfs3 8113 mounting, as per Dale Talcott <aeh@quest.cc.purdue.edu>. Also use 8114 better macros for case statement. 8115 8116 * conf/nfs_prot/nfs_prot_sunos5_7.h: don't include ldap structures 8117 unless ldap is actually available. 8118 8119 * use updated config.guess and config.sub. Use newer automake 8120 that fixes problems with distributing optional libamu files 8121 (clnt_sperrno.c, hasmntopt.c, strcasecmp.c, strdup.c, strstr.c, 8122 and ualarm.c) 8123 81241999-07-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8125 8126 * minor port i386-unknown-openbsd2.5 8127 81281999-07-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8129 8130 * minor ports to freebsdelf 3.[0-2] and 4.0 completed 8131 8132 * aux/macros/check_nfs_prot_headers.m4: support freebsdelf 8133 8134 * aux/macros/check_nfs_socket_connection.m4: support freebsdelf 8135 81361999-06-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8137 8138 * released snapshot am-utils-6.0.1s8 8139 81401999-06-23 Erez Zadok <ezk@beetle.mcl.cs.columbia.edu> 8141 8142 * include/am_defs.h: avoid various header conflicts on 8143 RedHat/Linux 6.0 and kernels 2.2.10 or newer. 8144 8145 * aux/configure.in: look for <db1/ndbm.h> (RedHat/Linux 6.0 and 8146 kernel 2.2.10) 8147 8148 * amd/amfs_program.c (amfs_program_exec): make sure logfp is 8149 initialized dynamically to stderr if needed. 8150 8151 * libamu/xutil.c (dplog): make sure logfp is initialized 8152 dynamically to stderr if needed. 8153 (plog): ditto. 8154 8155 * amd/amfs_program.c (amfs_program_exec): set logfp to stderr if 8156 not initialized. 8157 8158 * libamu/xutil.c: don't initialize logfp statically to stderr, 8159 because on RedHat/Linux 6.0 (kernel 2.2.10) stderr can no longer 8160 be manipulated like a variable. 8161 8162 * include/am_defs.h: avoid more conflicts between <linux/fs.h> and 8163 <sys/mount.h> on 2.2 linux kernels. 8164 include <db1/ndbm.h> as needed (RedHat/Linux 6.0) 8165 81661999-04-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8167 8168 * all Makefile.am: use AMU_NFS_PROT_HEADER (not *_HEADERS) 8169 8170 * aux/macros/check_nfs_prot_headers.m4 (AMU_NFS_PROT_HEADER): 8171 renamed AC_SUBST name from *_HEADERS to *_HEADER so that automake 8172 won't attempt to add it to the header files to distribute. 8173 81741999-04-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8175 8176 * aux/GNUmakefile: invoke aclocal with new --altdir flag. 8177 81781999-04-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8179 8180 * minor new port: i386-unknown-netbsd1.4 (ALPHA) 8181 8182 * aux/macros/check_field.m4: no need to include <cdfs/cdfsmount.h> 8183 and <isofs/cd9660/cd9660_mount.h> because they are also included 8184 from MOUNT_HEADERS. Causes multiple inclusion of unprotected 8185 headers on netbsd-1.4_ALPHA. 8186 81871999-04-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8188 8189 * aux/macros/extern_sys_errlist.m4 (pattern): netbsd-1.4_ALPHA's 8190 sys_errlist extern doesn't end with []. 8191 8192 * aux/macros/check_nfs_prot_headers.m4: netbsd 1.4 support. 8193 81941999-04-11 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8195 8196 * newer automake wants texinfo.tex to be in aux/ not doc/ 8197 81981999-03-30 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8199 8200 * amd/conf_parse.y: alloca support. 8201 8202 * fsinfo/fsi_gram.y: alloca support. 8203 8204 * libamu/Makefile.am (libamu_la_LIBADD): compile alloca.o if 8205 needed. 8206 8207 * aux/configure.in: test for alloca support. Needed because bison 8208 generates parsers that use alloca, and hpux9 does have alloca and 8209 its /bin/cc doesn't support it builtin (the way gcc does). 8210 8211 * libamu/alloca.c: new file, needed on hpux9 with /bin/cc. Taken 8212 verbatim from bison-1.25. 8213 8214 * include/am_defs.h: fixed typo #errir -> #error 8215 8216 * released snapshot am-utils-6.0.1s7 8217 8218 * README.y2k: more information about am-utils' compatibility, from 8219 Paul Balyoz <pbalyoz@sedona.ch.intel.com>. 8220 8221 * scripts/lostaltmail.in (Splice_in_resent_headers): ensure Y2K 8222 compliant format. Patch from Paul Balyoz 8223 <pbalyoz@sedona.ch.intel.com> 8224 8225 * doc/am-utils.texi (Supported Platforms): hpux10.20 could have 8226 nfs v.3 support (with some vendor patches), but it is turned off. 8227 8228 * aux/macros/os_cflags.m4: use ansi compiler options on hpux. 8229 8230 * conf/nfs_prot/nfs_prot_hpux.h: Turn off NFS V.3 support to avoid 8231 confusing am-utils. 10.20 with some patches has incomplete 8232 support. Patch from Jon Peatfield 8233 <J.S.Peatfield@damtp.cam.ac.uk>. 8234 82351999-03-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8236 8237 * minor port i386-pc-bsdi4.0.1 8238 82391999-03-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8240 8241 * doc/am-utils.texi (Supported Platforms): add forgotten listing 8242 for powerpc-linux. 8243 82441999-03-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8245 8246 * scripts/amd.conf.5: fix typo. From Jeffrey C Honig 8247 <jch@BSDI.COM>. 8248 8249 * doc/am-utils.texi: document iso9660 options norrip, gens, and 8250 extatt. 8251 (opts Option): documented dumbtimr and noauto options. From 8252 Jeffrey C Honig <jch@BSDI.COM>. 8253 8254 * include/am_compat.h: define default strings for options norrip, 8255 gens, and extatt. 8256 8257 * amd/ops_cdfs.c (mount_cdfs): support options norrip, gens, and 8258 extatt. 8259 8260 * aux/macros/mount_headers.m4: also include 8261 <isofs/cd9660/cd9660_mount.h> as needed. 8262 8263 * aux/configure.in: check for isofs mount options for bsdi4: 8264 norrip, gens, and extatt. Reported by Jeffrey C Honig 8265 <jch@BSDI.COM>. 8266 8267 * aux/macros/check_mnt2_cdfs_opt.m4: check for ISOFSMNT_* flags 8268 (bsdi4). 8269 82701999-03-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8271 8272 * conf/nfs_prot/nfs_prot_freebsd3.h: ditto. 8273 8274 * conf/nfs_prot/nfs_prot_bsdi3.h: include <ufs/ufs/ufsmount.h>, 8275 for bsdi4, as per Jeffrey C Honig <jch@BSDI.COM>. 8276 82771999-03-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8278 8279 * get latest copies of config.guess, config.sub, ltconfig, and 8280 ltmain.sh from libtool-1.2f. 8281 8282 * all Makefile.am: don't use continuation lines (using \) for 8283 short lists of files. 8284 8285 * libamu/Makefile.am (DISTCLEANFILES): make distclean should 8286 remove mountutil.c, mtabutil.c, transputil.c, and umount_fs.c. 8287 Reported by Jeffrey C Honig <jch@BSDI.COM>. 8288 8289 * fixmount/Makefile.am (DISTCLEANFILES): make distclean should 8290 remove checkmount.c. Reported by Jeffrey C Honig <jch@BSDI.COM>. 8291 8292 * Makefile.am (DISTCLEANFILES): make distclean should remove 8293 amu_nfs_prot.h, config.cache.old, and dbgcf.h. Reported by 8294 Jeffrey C Honig <jch@BSDI.COM>. 8295 82961999-03-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8297 8298 * released snapshot am-utils-6.0.1s6 8299 83001999-03-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8301 8302 * INSTALL: document freebsdelf. 8303 8304 * doc/am-utils.texi (Supported Platforms): document freebsdelf. 8305 83061999-03-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8307 8308 * minor new ports: i386-unknown-freebsdelf3.1 and 8309 i386-unknown-freebsdelf4.0 8310 8311 * aux/macros/check_nfs_prot_headers.m4: freebsd4 support. 8312 8313 * aux/macros/check_nfs_socket_connection.m4: freebsd4 support. 8314 8315 * aux/macros/check_nfs_fh_dref.m4: freebsd4 support. 8316 8317 * amd/opts.c (eval_opts): changed log level of "executing 8318 negated..." message from USER to INFO, as per Guntram Wolski 8319 <gwolsk@sei.com>. 8320 83211999-02-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8322 8323 * */Makefile.am (LDADD): force linking against an installed 8324 libamu.{a,so}. 8325 8326 * doc/am-utils.texi (addopts Option): document remopts interaction 8327 with addopts. 8328 8329 * amd/am_ops.c (ops_match): if addopts are specified, apply them 8330 to the value of remopts as well as opts. 8331 8332 * amd/ops_nfs.c (mount_nfs_fh): tell users when remopts are used. 8333 83341999-02-05 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8335 8336 * released snapshot am-utils-6.0.1s5 8337 8338 * conf/mount/mount_linux.c (mount_linux): set default nfs_args 8339 options for ac{reg,dir}{min,man} as per the mount-2.8a package, 8340 but only if noac option was not used. 8341 83421999-02-05 Erez Zadok <ezk@retro.cs.columbia.edu> 8343 8344 * conf/mount/mount_linux.c (mount_linux): print nfs_args again 8345 since it was updated. 8346 (mount_linux): use 4KB for NFS rsize/wsize on 2.1.0 linux kernels 8347 and newer. Bug was found by Neil Conway 8348 <nconway.list@ukaea.org.uk> 8349 83501999-02-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8351 8352 * released snapshot am-utils-6.0.1s4 8353 83541999-02-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8355 8356 * amq/amq.c (main): don't list -M as a valid amq option unless 8357 configure'd with --enable-amq-mount. 8358 8359Wed Feb 3 18:11:18 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8360 8361 * amd/nfs_start.c (amd_use_autofs): Define. 8362 (mount_automounter): Create autofs service listener only if 8363 necessary to avoid unnecessary clashes with e.g. automountd. 8364 8365 * amd/amd.h (amd_use_autofs): Declare. 8366 8367 * amd/conf.c (gopt_mount_type): Set amd_use_autofs. 8368 (ropt_mount_type): Likewise. 8369 83701999-02-02 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8371 8372 * aux/macros/check_mnt2_nfs_opt.m4:: ditto 8373 8374 * aux/macros/check_mnt2_cdfs_opt.m4: ditto 8375 8376 * aux/macros/check_mnt2_gen_opt.m4: ditto 8377 8378 * aux/macros/check_mnttab_opt.m4: new macro in this file to loop 8379 over AC_CHECK_MNTTAB_OPT. Reduces size of configure script a lot. 8380 8381 * conf/nfs_prot/nfs_prot_netbsd1_3.h: include nfs/rpcv2.h, 8382 nfs/nfs.h and nfs/nfsmount.h if they exist. Patch from 8383 christos@zoulas.com (Christos Zoulas). 8384 8385 * amd/info_hesiod.c: some forward declarations. Patch from 8386 christos@zoulas.com (Christos Zoulas). 8387 83881999-01-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8389 8390 * libamu/mount_fs.c (compute_nfs_args): don't turn on/off noconn 8391 option if it was already in that state. Patch from David 8392 Wolfskill <dhw@whistle.com>. 8393 83941999-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8395 8396 * aux/configure.in: automake nowadays supports LTLIBOBJS (but not 8397 LTALLOCA yet). Substitute value of LIBTOOL_DEPS for libtool 8398 rebuild make rules. 8399 8400 * Makefile.am: new rules to remake libtool (maintainers only) 8401 8402 * amd/amfs_toplvl.c (mount_amfs_toplvl): print generic mount flags 8403 if -D trace was used. 8404 84051999-01-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8406 8407 * buildall: all if statements should have an else clause because 8408 of Ultrix's /bin/sh. 8409 84101999-01-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8411 8412 * amq/amq.c: removed dummy variables. 8413 8414 * amq/pawd.c: removed dummy variable.s 8415 8416 * fixmount/fixmount.c (usage): removed dummy variables. 8417 8418 * fsinfo/fsinfo.c: removed dummy variables. 8419 8420 * hlfsd/hlfsd.c: removed dummy variables. 8421 8422 * wire-test/wire-test.c: removed dummy variables. 8423 8424 * mk-amd-map/mk-amd-map.c: removed dummy variables. 8425 8426 * doc/texinfo.tex: updates from GNU mirror. 8427 8428 * aux/GNUmakefile (../doc/texinfo.tex): new rule to update 8429 doc/texinfo.tex from GNU mirror. 8430 8431 * released snapshot am-utils-6.0.1s3 8432 8433 * Makefile.am (install-snapshot): better snapshot and new 8434 install-snapshot and test-snapshot rules (maintainer). 8435 8436 * amd/info_ldap.c (amu_ldap_init): don't run STREQ if one of the 8437 args may be NULL. 8438 Some dlog() entries were not enclosed in #ifdef DEBUG. Fix from 8439 Bill Paul <wpaul@ctr.columbia.edu> 8440 84411999-01-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8442 8443 * check for experimental generic 'ignore' mount flag on freebsd3. 8444 8445 * Update library -version-info to 3:0:1 (will result in 2.1.0 .so 8446 version, which is backwards compatible with older versions.) Only 8447 one new interface was added to libamu. 8448 8449 * amd/amfs_toplvl.c (mount_amfs_toplvl): add generic mount flags 8450 that are specific to automounter mounts. 8451 8452 * aux/configure.in: update libamu.so age and revision since a new 8453 interface was added to libamu/mount_fs.c 8454 (compute_automounter_mount_flags). 8455 8456 * libamu/mount_fs.c (compute_automounter_mount_flags): new 8457 function to compute generic mount flags that are specific to mount 8458 points only. 8459 8460 * aux/{configure.in,acconfig.h}: add support for generic mount 8461 entry ignore option. 8462 8463 * released snapshot am-utils-6.0.1s2 8464 8465 * amd/info_ldap.c (get_ldap_timestamp): dlog format fixes. 8466 8467 * libamu/mount_fs.c (print_nfs_args): solaris 2.7 changed format 8468 of knc_semantics from u_long to u_int. 8469 8470 * aux/macros/check_mount_style.m4: freebsd3 no longer needs a 8471 special mount helper. 8472 84731999-01-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8474 8475 * aux/macros/check_nfs_prot_headers.m4 (AMU_NFS_PROT_HEADERS): 8476 amu_nfs_conf.h should always be found in $top_builddir. 8477 8478Tue Jan 12 00:05:42 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8479 8480 * conf/nfs_prot/nfs_prot_sunos5_7.h (MNTTAB_TYPE_AUTOFS): Undefine 8481 to avoid wrong reports from show_fstypes. 8482 8483 * conf/nfs_prot/nfs_prot_irix5.h (MNTTAB_TYPE_XFS): Likewise. 8484 8485 * conf/nfs_prot/nfs_prot_hpux11.h (MNTTAB_TYPE_NFS3): Likewise. 8486 8487Tue Jan 12 00:05:42 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8488 8489 * BUGS (mips-dec-ultrix4.3): Update Ultrix caveats. 8490 8491Tue Jan 12 00:05:42 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8492 8493 * hlfsd/homedir.c (delay): Cast child to long, adapt format. 8494 (hlfsd_getpwent): Likewise for pw_uid. 8495 8496 * amd/info_nis.c (nis_init): Cast order to unsigned long, adapt 8497 format. 8498 8499 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): Cast 8500 tv_sec to int to match format. 8501 (get_nfs_version): Cast nfs_version, NFS_VERSION to int to match 8502 formats. 8503 8504 * amd/amfs_program.c (amfs_program_exec): Cast ptr difference to 8505 long, adapt format. 8506 8507 * include/am_defs.h: Handle __attribute__ if available. From 8508 GNU fileutils 4.0 lib/errors.h. 8509 8510Mon Jan 11 13:46:44 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8511 8512 * libamu/mount_fs.c (print_nfs_args): Cast sizeof() to int to 8513 match format. 8514 8515 * hlfsd/stubs.c (nfsproc_getattr_2_svc): Cast uid, gid to long, 8516 adapt format. 8517 (nfsproc_lookup_2_svc): Likewise. 8518 (nfsproc_readlink_2_svc): Likewise for userid, groupid. 8519 8520 * hlfsd/nfs_prot_svc.c (nfs_program_2): Cast args to int to match 8521 format. 8522 8523 * hlfsd/homedir.c (homedir): Cast uid, child to long, adapt 8524 format. 8525 8526 * amd/info_hesiod.c (hesiod_search): Cast m, pval, tp to unsigned 8527 long, adapt format. 8528 8529 * amd/ops_nfs.c (find_nfs_fhandle_cache): Cast fh_wchan to 8530 unsigned long, adapt format. 8531 (got_nfs_fh): Likewise. 8532 (prime_nfs_fhandle_cache): Cast fh_nfs_version to int to match 8533 format. 8534 (call_mountd): Likewise, mnt_version also. 8535 (mount_nfs_fh): Likewise. 8536 8537 * amd/ops_autofs.c (autofs_program_1): Cast args to int to match 8538 format. 8539 (autofs_unmount_1_svc): Cast ur->devid, ur_rdevid, ur->next to 8540 unsigned long, adapt formats. 8541 (autofs_bgmount): Cast opt_fs to unsigned to, adapt format. 8542 (autofs_bgmount): Use long format to match arg. 8543 (autofs_lookuppn): Removed superfluous arg. 8544 8545 * amd/srvr_nfs.c (start_ping): Cast nfs_version to int to match 8546 format. 8547 (got_portmap): Likewise for port. 8548 (recompute_portmap): Likewise for fs->fs_version, mnt_version. 8549 (find_nfs_srvr): Likewise for nfs_version. 8550 8551 * amd/sched.c (sched_task): Cast wchan to unsigned long, adapt 8552 format. 8553 8554 * amd/nfs_start.c (checkup): Cast ptr difference to long, next_mem 8555 to unsigned long, adapt format. 8556 Cast tvv.tv_sec to int to match format. 8557 8558 * amd/nfs_prot_svc.c (nfs_program_2): Cast args to int to match 8559 format. 8560 8561 * amd/map.c (root_fh): Cast pid to long, adapt format. 8562 (timeout_mp): Cast time_t to long, adapt format. 8563 8564 * amd/clock.c (reschedule_timeouts): Use long format, cast time_t 8565 arg. 8566 8567 * amd/amfs_host.c (fetch_fhandle): Cast nfs_version to int to 8568 match format. 8569 (amfs_host_fmount): Likewise. 8570 (amfs_host_umounted): Likewise. Removed superfluous arg. 8571 8572 * amd/amfs_auto.c (amfs_auto_bgmount): Cast pointer to unsigned 8573 long, adapt format. 8574 (amfs_auto_bgmount): Use long format, cast time_t arg. 8575 (amfs_auto_lookuppn): Removed superfluous arg. 8576 8577 * amd/amd.c (main): Cast geteuid() result to long, adapt format. 8578 8579 * conf/transp/transp_sockets.c (get_nfs_version): Cast nfs_version 8580 to int to match format. 8581 8582 * include/am_utils.h: Declare plog, dplog as printf-like. 8583 8584 * conf/mount/mount_irix6.c (mount_irix): Print type as char *. 8585 8586Mon Jan 11 13:46:44 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8587 8588 * amd/info_hesiod.c (hesiod_isup): New function. 8589 * amd/mapc.c (maptypes): Add it. 8590 85911999-01-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8592 8593 * released snapshot am-utils-6.0.1s1 8594 85951999-01-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8596 8597 * ALL: bump copyright year to 1999. 8598 8599Fri Jan 8 15:24:15 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8600 8601 * aux/macros/check_mtype_type.m4: Ultrix uses an int mount type, 8602 too. 8603 8604 * aux/macros/check_mtype_printf_type.m4: Adapt corresponding 8605 printf type. 8606 8607Fri Jan 8 15:24:15 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8608 8609 * aux/acconfig.h: Removed HAVE_AM_FS_AUTOFS, unused. 8610 8611 * conf/nfs_prot/nfs_prot_irix6.h: Likewise. 8612 8613 * conf/nfs_prot/nfs_prot_sunos5_6.h: Likewise. 8614 8615 * conf/nfs_prot/nfs_prot_sunos5_7.h: Likewise. 8616 8617 * Makefile.am (EXTRA_DIST_DIRS): Removed, not needed by current 8618 automake. 8619 8620Thu Jan 7 02:55:18 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8621 8622 * aux/configure.in (AM_PROG_YACC): Replaced by AC_PROG_YACC, not 8623 in current automake. 8624 8625Thu Jan 7 02:55:18 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8626 8627 * doc/am-utils.texi: Added some missing inter-punctation after 8628 @xref, or use @pxref/@ref as appropriate. Spotted by makeinfo 8629 from texinfo 3.12b. 8630 86311999-01-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8632 8633 * doc/texinfo.tex: updated off of latest GNU mirror. 8634 86351999-01-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8636 8637 * doc/am-utils.texi (Supported Platforms): update platforms that 8638 support NFS v.3. Nicer postscript printing on double-sided pages. 8639 8640 * amd/info_hesiod.c: add extern definition for hesiod_init() 8641 86421999-01-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8643 8644 ******************************************************************* 8645 *** Released am-utils-6.0 *** 8646 ******************************************************************* 8647 86481998-12-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8649 8650 * conf/nfs_prot/nfs_prot_sunos5_7.h: support ldap in solaris 2.7. 8651 86521998-12-27 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8653 8654 * conf/nfs_prot/nfs_prot_bsdi3.h: don't use reserved ports on 8655 bsdi4 for NFS V3/nfs mounts. 8656 86571998-12-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8658 8659 * using latest libtool (1.2e + patches), now supporting shared 8660 libraries on many more systems. Also using latest autoconf and 8661 automake (unreleased GNU CVS'd versions.) 8662 8663 * minor new ports: hppa2.0w-hp-hpux11.00, 8664 i386-unknown-netbsd1.3.3, mips-sgi-irix6.5. 8665 8666 * fsinfo/fsinfo.h (yywrap): define it for systems (osf4) that 8667 have /usr/bin/flex but not libfl. 8668 86691998-12-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8670 8671 * lots of code cleanup, to make sure libamu.so does not use 8672 undefined symbols. Some system's shared libraries cannot handle 8673 that. 8674 86751998-12-23 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8676 8677 * include/am_defs.h: only defined seteuid extern if function also 8678 exists and is not superceded by setresuid (hpux). 8679 8680 * amd/ops_autofs.c (autofs_bgmount, autofs_lookuppn): put explicit 8681 braces to avoid confusion with nested if-then-else clauses. 8682 8683 * aux/config.{sub,status}, aux/{ltmain.sh,ltconfig,mkinstalldirs: 8684 updated from latest versions. 8685 86861998-12-22 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8687 8688 * minor new port: i386-pc-bsdi4.0 8689 8690 * conf/nfs_prot/nfs_prot_bsdi3.h: add missing hesiod header 8691 definitions for bsdi4. 8692 8693 * {amd,fsinfo}/Makefile.am: force path to .y/.l files, because 8694 some make programs (bsdi4) do not support VPATH correctly. 8695 86961998-12-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8697 8698 * conf/mount/mount_aix.c: minor code cleanup 8699 8700 * aux/configure.in: check for extern definition to xdr_groups. 8701 87021998-12-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8703 8704 * minor new port: powerpc-ibm-aix4.3.1.0 8705 8706 * aux/macros/*.m4: updates for aix 4.3 8707 87081998-12-14 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8709 8710 * minor new port: i386-unknown-openbsd2.4 8711 8712 * aux/configure.in: don't check for xfs on openbsd because 8713 openbsd-2.4 introduces a new file system named xfs, but different 8714 than Irix's XFS. Sigh. 8715 8716 * minor new port: i386-unknown-freebsd2.2.8 8717 87181998-12-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8719 8720 * amd/amfs_nfsl.c (amfs_nfsl_ffserver): use case insensitive host 8721 name match. Bug fix from Douglas K. Rand" <rand@aero.und.edu>. 8722 87231998-11-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8724 8725 * scripts/ctl-amd.in: wait4amd2die runs in the stop action, to 8726 avoid race conditions when shutting down systems running amd. 8727 8728 * Makefile.am: add a dist-hook to change modes of the directories 8729 in the tar file so they are not world writable. 8730 8731 * conf/nfs_prot/nfs_prot_freebsd3.h: turned on NFSv3 support, 8732 since it is now finally defined in the header files and 8733 (hopefully) stable. 8734 8735 * amd/srvr_nfs.c (find_nfs_srvr): allow overriding if nfsv2 option 8736 is specified in mount options. freebsd patches from David 8737 O'Brien. 8738 8739 * amq/amq.c (main), fixmount/fixmount.c (main), hlfsd/hlfsd.c 8740 (main), fsinfo/fsinfo.c (fsi_get_args), hlfsd/hlfsd.c (main), 8741 amd/get_args.c (get_args): posix: use -1 to check for return from 8742 getopt() (not EOF), as per posix. 8743 8744 * amd/amq_subr.c (xdr_amq_mount_tree_node): patches from "David 8745 O'Brien" <obrien@NUXI.com>, from the FreeBSD source tree. Use 8746 real variable whose pointer is on the stack for decoding a long 8747 int. 8748 87491998-11-11 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8750 8751 * scripts/ctl-{amd,hlfsd}.in: include comments useful for redhat's 8752 chkconfig utility. 8753 87541998-11-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8755 8756 * released snapshot am-utils-6.0b2s3 8757 8758 * conf/transp/transp_sockets.c (create_nfs_service): remove C++ 8759 style comments. 8760 87611998-11-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8762 8763 * released snapshot am-utils-6.0b2s2 8764 8765 * created CVS package 8766 8767 * amd/nfs_subr.c (nfsproc_lookup_2_svc): try to avoid a race 8768 condition between unmounting and re-mounting an entry, by 8769 increasing the ttl of a looked up entry before unmounting it. 8770 Patch from Mike Mitchell <mcm@unx.sas.com>. 8771 8772 * All files: spell comments and strings. 8773 87741998-11-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8775 8776 * aux/configure.in: look for yp_all in libnsl only if yp_all not 8777 already found elsewhere (in libc or other default libraries). 8778 This is so RedHat 5.1 systems could find yp functions in libnsl, 8779 but also so AIX 4.2.1 will NOT include libnsl, because the latter 8780 has broken nis functionality that also exists and works ok in libc. 8781 87821998-10-29 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8783 8784 * amd/amd.c (main): bug fix: swapped arguments to kill(2). Fix 8785 from Danny Rathjens <dkr@cs.fiu.edu>. 8786 87871998-10-28 Erez Zadok <ezk@spruce.mcl.cs.columbia.edu> 8788 8789 * released snapshot am-utils-6.0b2s1 8790 87911998-10-27 Erez Zadok <ezk@spruce.mcl.cs.columbia.edu> 8792 8793 * aux/macros/*.m4: support bsdi4 as bsdi3. 8794 8795 * aux/macros/os_ldflags.m4: enable detection of LDAP on solaris 8796 2.7 (libraries located in /usr/lib/fn). This is off until Sun 8797 includes LDAP header information. 8798 87991998-10-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8800 8801 ******************************************************************* 8802 *** Released am-utils-6.0b1 *** 8803 ******************************************************************* 8804 88051998-10-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8806 8807 * mk-amd-map/mk-amd-map.c (main): use perror not strerror. 8808 (main): set return type to int if no ndbm maps. 8809 8810 * include/am_defs.h: avoid conflicts with <sys/mount.h> in 2.1 8811 kernels. 8812 88131998-10-18 Erez Zadok <ezk@london.mcl.cs.columbia.edu> 8814 8815 * A.i386-unknown-netbsd1.3.2/amu_nfs_prot.h: trim down and cleanup 8816 for netbsd 1.3.2. 8817 88181998-10-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8819 8820 * aux/configure.in: check for yp_all in libnsl, b/c redhat 5.1 8821 systems put NIS functions there. 8822 8823 * mk-amd-map/mk-amd-map.c: patch from "David O'Brien" 8824 <obrien@NUXI.com> merged in. Use POSIX -1 return code from 8825 getopt(), not EOF. Use .db extentions for systems that use it, 8826 instead of .{pag,dir}. 8827 88281998-10-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8829 8830 * wire-test/wire-test.c, hlfsd/hlfsd.c, fixmount/fixmount.c, 8831 amd/amd.c (main): avoid overrunning hostname buffer. Bug fix from 8832 "David O'Brien" <obrien@NUXI.com>. 8833 8834 * scripts/amd.conf.5: minor typo reported by "David O'Brien" 8835 <obrien@NUXI.com> in .TH section of man page. 8836 8837 * amd/info_nis.c (am_yp_all): don't leak key-val entries. Patch 8838 from Thomas Richter <richter@chemie.fu-berlin.de>. 8839 88401998-10-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8841 8842 * doc/am-utils.texi (Program Filesystem): minor typo fixed as per 8843 Andreas Stolcke <stolcke@speech.sri.com>. 8844 8845 * minor new ports: sparc64-unknown-linux-gnu, i386-pc-solaris2.7, 8846 and sparc-sun-solaris2.7. 8847 8848 * conf/mount/mount_freebsd3.c (mount_freebsd3): freebsd 3.0 is now 8849 a 4.4lite kernel, and somethings were removed, such as 8850 INITMOUNTNAMES. 8851 8852 * amd/ops_autofs.c (autofs_lookuppn): don't leak memory while 8853 processing /defaults. Free temporary opts. Patch from 8854 dsr@mail.lns.cornell.edu (Daniel S. Riley) 8855 8856 * amd/amfs_auto.c (amfs_auto_lookuppn): don't leak memory while 8857 processing /defaults. Free temporary opts. Patch from 8858 dsr@mail.lns.cornell.edu (Daniel S. Riley) 8859 8860 * conf/mtab/mtab_osf.c (read_mtab): patch from 8861 dsr@mail.lns.cornell.edu (Daniel S. Riley) not to access 8862 uninitialized memory on Digital Unix. 8863 88641998-10-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8865 8866 * aux/macros/{check_mtype_type,check_mtype_printf_type}.m4: most 8867 systems now use "char *" as their mount type. 8868 88691998-10-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8870 8871 * amd/conf.c (gopt_map_type, ropt_map_type): check if map type 8872 exists. 8873 8874 * amd/mapc.c (mapc_type_exists): function to test if a map of 8875 certain type exists. 8876 88771998-10-08 Erez Zadok <ezk@horatio.mcl.cs.columbia.edu> 8878 8879 * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4, 8880 include/am_defs.h: Avoid a conflict in definitions of ntohl/htonl 8881 in RH-5.1 sparc64 between <netinet/in.h> and 8882 <linux/byteorder/generic.h> (2.1 kernels). 8883 88841998-09-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8885 8886 * aux/macros/func_bad_yp_all.m4 (ac_cv_func_yp_all_clean): RedHat 8887 5.1 systems with glibc glibc-2.0.7-19 or below leak a UDP socket 8888 from yp_all(). 8889 88901998-09-25 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8891 8892 * conf/mount/mount_linux.c (parse_opts): check for pcfs support 8893 only if autoconfigured. 8894 88951998-09-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8896 8897 * Makefile.am (EXTRA_DIST): distribute README.yk2 file. 8898 8899 * README.y2k: explain y2k compliance status of am-utils. 8900 89011998-09-16 Erez Zadok <ezk@iguana.mcl.cs.columbia.edu> 8902 8903 * amd/amfs_host.c (fetch_fhandle, amfs_host_fmount, 8904 amfs_host_umounted): clnt_sperrno() may return a const. 8905 8906Sat Aug 8 23:28:32 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8907 8908 * aux/configure.in: check for <nfs/nfsmount.h>, as per Christos 8909 Zoulas. Turned on checking for mount options: async, synchronous, 8910 deadthresh, leasterm, nqnfs, and readahead. 8911 8912 * amd/info_nis.c: patch from christos@zoulas.com (Christos Zoulas) 8913 to include prototype definition for nis_isup(). 8914 8915Sun Jul 19 18:50:10 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8916 8917 * hlfsd/stubs.c (getcreds): force sscanf arg to u_long. 8918 8919Tue Jul 14 20:34:25 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8920 8921 * released snapshot am-utils-6.0a17s1 8922 8923Wed Jul 8 21:49:15 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8924 8925 * aux/macros/host_macros.m4: all x86 hosts should have $arch be 8926 i386, not i[456]86. 8927 8928Tue Jul 7 18:55:09 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8929 8930 * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4, 8931 include/am_defs.h: include <linux/posix_types.h> before 8932 <linux/fs.h> because on redhat 5.1, there is a bug (misuse) of 8933 headers in <socketbits.h> (it defines _LINUX_TYPES_H instead of 8934 __KERNEL_STRICT_NAMES). 8935 8936 * aux/configure.in: check for <linux/posix_types.h> because it is 8937 need for RedHat 5.1. 8938 8939Wed Jun 17 00:05:33 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8940 8941 * scripts/Makefile.am (EXTRA_DIST): have fixrmtab generated from 8942 .in as well, so it doesn't get removed by make clean. 8943 8944Tue Jun 16 22:00:15 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8945 8946 * aux/macros/{check_fs_mntent.m4, check_mnttab_type.m4, 8947 check_mount_type.m4}: redhat 5.1 puts some modules in 8948 /lib/modules/preferred/. 8949 8950Wed May 13 16:33:57 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8951 8952 * amd/ops_autofs.c (mount_autofs): cast pid to long. 8953 8954Tue Apr 28 15:12:36 1998 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8955 8956 * conf/nfs_prot/nfs_prot/nfs_prot_irix6.h, 8957 conf/nfs_prot/nfs_prot_sunos5_6.h: Undef MNTTAB_TYPE_AUTOFS too to 8958 avoid amd/am_ops.c (show_fstypes) from erroneously claiming 8959 support. 8960 8961Fri Apr 24 23:02:11 1998 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8962 8963 * libamu/xutil.c (get_syslog_facility): Don't use LOG_DAEMON 8964 unconditionally, may be missing on Ultrix V4.3. 8965 8966Thu Apr 23 20:24:33 1998 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8967 8968 * conf/nfs_prot/nfs_prot_sunos5_4.h (MNTTYPE_CACHEFS): Define, 8969 missing from <sys/mntent.h>. 8970 8971 * conf/mtab/mtab_ultrix.c: Need separate inclusion of <sys/fs_types.h> 8972 without KERNEL defined here. 8973 8974 * aux/macros/mount_headers.m4: Need to include <ufs/ufs_mount.h>, 8975 <cdfs/cdfs_mount.h>, <cdfs/cdfsmount.h> so autoconfiguration of 8976 ufs_args_t, cdfs_args_t fields and cdfs mount options can succeed. 8977 8978 * amd/ops_ufs.c (mount_ufs): Removed obsolete comment. 8979 8980 * ChangeLog: Fixed confusing linebreaks from ChangeLog imports. 8981 Removed purely local (and obsolete) entry. 8982 8983Thu Apr 23 00:22:17 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8984 8985 ******************************************************************* 8986 *** Released am-utils-6.0a16 *** 8987 ******************************************************************* 8988 8989Wed Apr 22 01:20:39 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8990 8991 * aux/macros/check_mount_style.m4: define freebsd3 mount style. 8992 8993 * aux/macros/check_mount_trap.m4: new mount trap for freebsd3. 8994 8995 * aux/macros/check_mtype_printf_type.m4, 8996 aux/macros/check_mtype_type.m4 (ac_cv_mtype_type,): freebsd3 (as 8997 of snapshot 3.0-980311-SNAP) uses char * types for mount(2), not 8998 integers, but I'll keep them as integers and do the mapping in 8999 conf/mount/mount_freebsd3.c 9000 9001 * minor new port to i386-pc-bsdi3.1. 9002 9003 * minor new port to i386-unknown-netbsd1.3.1. 9004 9005 * amd/opts.c: new option addopts:=ARG, which smartly merges ARG 9006 options with whatever the /default ones for a key are. This 9007 allows adding or overriding /default options individual keys. 9008 9009 * amd/am_ops.c (ops_match): strdup/malloc string assigned to 9010 opt_opts because it'll get free()'d upon next use. 9011 (merge_opts): new function to merge two sets of options. 9012 (ops_match): if addopts option exist, append and merge it to the 9013 current default options. 9014 9015Tue Apr 21 12:54:59 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9016 9017 * wire-test/wire-test.c (main): use dynamically allocated returned 9018 string with list of interfaces. 9019 9020 * amd/get_args.c (get_version_string): allocate enough space for 9021 header version string and a list of network interfaces of any 9022 length. 9023 9024 * libamu/wire.c (print_wires): return dynamically allocated string 9025 containing list of networks. Must be dynamic because some sites 9026 had potentially dozens of network interfaces. Patch from Matthew 9027 Crosby <mcrosby@ms.com> slightly modified. 9028 9029Mon Apr 20 00:37:20 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9030 9031 * conf/nfs_prot/nfs_prot_irix5.h: underfine MNTTYPE_XFS because 9032 irix 5.3 does not have full header definitions for it. 9033 9034 * fsinfo/fsi_lex.l (yywrap): define yywrap if needed, and 9035 undefined it when not needed (similar to amd/conf_tok.l) 9036 9037 * hlfsd/hlfsd.h (ROOTID, SLINKID, INVALID): reduced maximum size 9038 of these to unsigned short (because uid_t on some linux systems is 9039 small). 9040 9041 * released snapshot am-utils-6.0a16s10 9042 9043 * doc/am-utils.texi (opts Option): documented resvport mount 9044 option. 9045 9046Sun Apr 19 18:17:03 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9047 9048 * doc/am-utils.texi (-D-Option): document behavior of -D info and 9049 especially what it does to hesiod (turn on RES_DEBUG). 9050 9051 * scripts/amd.conf.5: document info debugging option. 9052 9053 * libamu/xutil.c (dbg_opt): parse info debugging option. 9054 9055 * include/am_utils.h (D_INFO): define new trace option. 9056 9057 * Makefile.am (EXTRA_DIST): include list of official mirrors in 9058 distribution. 9059 9060 * libamu/wire.c (SIZE): in the simple case, just compute 9061 sizeof(struct ifreq). 9062 9063Sun Apr 19 16:30:35 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9064 9065 * amd/amd.c (daemon_mode): set a temporary secure umask(0022) 9066 before writing log file and restore it afterwards. Patch from 9067 Donald Buczek <buczek@MPIMG-Berlin-Dahlem.MPG.DE>. 9068 9069 * amd/get_args.c (get_args): 9070 9071 * doc/am-utils.texi (-F Option), amd/amd.8: mention that amd.conf 9072 file specified by -F is always processed last. 9073 9074 * amd/amd.c (daemon_mode): do not fclose(stdout) so that the fd 9075 won't be reused. Allows startup script to redirect stdout. Patch 9076 from Donald Buczek <buczek@MPIMG-Berlin-Dahlem.MPG.DE>. 9077 9078 * libamu/xutil.c (switch_to_logfile): compare logfile name and 9079 syslog string with correct length. Patch from Donald Buczek 9080 <buczek@MPIMG-Berlin-Dahlem.MPG.DE>. 9081 9082 * amd/restart.c (restart): correctly inherit existing NFS V.3 9083 mounts upon restart. Patch from Donald Buczek 9084 <buczek@MPIMG-Berlin-Dahlem.MPG.DE>. 9085 9086Sat Apr 18 19:01:19 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9087 9088 * using libtool 1.2 and automake 1.3 (with my patches). 9089 9090 * aux/macros/opt_am_cflags.m4, */Makefile.in: rename AM_CFLAGS to 9091 AMU_CFLAGS to avoid conflicts with automake-1.3. 9092 9093Sun Apr 5 23:09:08 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9094 9095 * converted to using libtool-1.2. 9096 9097Tue Mar 10 16:52:09 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9098 9099 * fsinfo/fsi_analyze.c (fixup_required_mount_info): replaced silly 9100 for loop (ITER) which used to run only to initialize the variable 9101 dd once and then break; with a simple assignment. 9102 9103 * hlfsd/hlfsd.h: cleanup so it compiles with Solaris 9104 /opt/SUNWspro/bin/cc, and use gid_t not int. 9105 9106 * amd/mapc.c (mapc_sync): don't dereference pointer (so it 9107 compiles with Solaris /opt/SUNWspro/bin/cc) 9108 9109Sun Mar 8 15:54:22 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9110 9111 * aux/config.{guess,sub}: used from gcc-2.8.1. 9112 9113Sat Mar 7 15:33:27 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9114 9115 * released snapshot am-utils-6.0a16s9 9116 9117 * INSTALL, doc/am-utils.texi (Supported Platforms): updated names 9118 based on new output of new config.guess. 9119 9120 * aux/config.{sub,guess}: used newer versions from gcc-2.8.0. 9121 9122 * amd/amd.8,doc/am-utils.texi: document correct usage of default 9123 /etc/amd.conf file. 9124 9125 * fixmount/fixmount.c (inetresport,privsock): use some more 9126 portable code from amq/amq.c. 9127 9128 * amd/get_args.c (get_args): use default /etc/amd.conf file only 9129 if no arguments had been passed to amd. 9130 9131 * fixmount/fixmount.c (clnt_create_timeout): use tli/socket code 9132 ala amq/amq.c so that fixmount will work on both types of systems. 9133 9134 * amq/amq.c (main): do no close tcp socket before running udp try, 9135 because we're not sure if it was opened at all. 9136 9137 * mips-dec-ultrix* port merged in and cleaned up. 9138 9139 * aux/configure.in: up minor shared library revision number, since 9140 it has changed enough. 9141 9142 * hlfsd/hlfsd.c (main): don't check for overlay mount option here, 9143 as it is now done in compute_nfs_args(). Remove ultrix specific 9144 code also because it was moved to compute_nfs_args(). 9145 9146 * conf/mount/mount_svr4.c: removed DEBUG_MOUNT_SVR4 code, now that 9147 we have more generic code in print_nfs_args(). 9148 9149 * libamu/mount_fs.c (print_nfs_args): print maxlen of 9150 nfs_args.addr, and also syncaddr (which is mostly NULL). Print 9151 struct knetconfig from nfs_args->knconf. 9152 9153 * aux/macros/mount_headers.m4 (define): do not check for ufs/cdfs 9154 headers here, but in try_compile_anyfs.m4. 9155 9156 * aux/macros/type_ufs_args.m4: move test for struct ufs_specific 9157 (for ultrix) here from its own macro. 9158 9159 * aux/macros/type_cdfs_args.m4: move test for struct iso_specific 9160 (for ultrix) here from its own macro. 9161 9162 * amd/ops_nfs.c (mount_nfs_fh): no need to run code again checking 9163 for overlay mount option. Remove code which checks for overlay 9164 option, as it is now done in compute_nfs_args(). 9165 9166 * libamu/mount_fs.c (compute_mount_flags): move here code which 9167 checks for overlay mount option which was in amd/amfs_toplvl.c: 9168 mount_amfs_toplvl(). 9169 9170Wed Feb 7 15:35:51 1998 Rainer Orth <ro@xayide.TechFak.Uni-Bielefeld.DE> 9171 9172 * The following are Rainer's ChangeLog entries for his ultrix 9173 port, added manually. -Erez. 9174 9175 * merged Ultrix port with am-utils 6.0 a16s5: amd/ops_afs.c 9176 (mount_toplvl) -> amd/amfs_toplvl.c (mount_amfs_toplvl) 9177 9178 * include/am_defs.h: include cdfs specific mount headers 9179 avoid duplication definition of gt_names[] in <sys/fs_types.h> (Ultrix) 9180 9181 * include/am_compat.h: define several mount options corresponding 9182 to mount flags: pgthresh, hard (nfs), defperm, nodefperm, 9183 noversion, rrip (cdfs), nocache, quota, sync (generic) removed 9184 duplicate MNTTAB_OPT_RO definition 9185 9186 * aux/macros/try_compile_anyfs.m4: include Ultrix specific 9187 ufs/cdfs mount headers 9188 9189 * aux/macros/mount_headers.m4: include several Ultrix/Digital UNIX 9190 specific mount headers 9191 9192 * aux/macros/check_{fs_mntent, mount_type}.m4: check for GT_* 9193 mount types in mount headers (Ultrix) 9194 9195 * aux/configure.in: Ultrix/Digital UNIX specific checks: new 9196 headers, mount structures and fields, filesystem and mount types, 9197 mount flags 9198 9199 * aux/acconfig.h: placeholders for new mount options: quota 9200 (generic), ro (nfs), defperm, nodefperm, noversion, rrip (cdfs) 9201 cdfs, nfs, ufs mount structure fields new ufs, cdfs mount 9202 structures 9203 9204 * amd/ops_ufs.c (mount_ufs): Ultrix stores generic mount flags in 9205 ufs_args.ufs_flags and has ufs specific pgthresh option 9206 9207 * amd/ops_cdfs.c (mount_cdfs): handle Ultrix/Digital UNIX specific 9208 CDFS mount flags and options 9209 9210 * amd/ops_afs.c (mount_toplvl), amd/ops_nfs.c (mount_nfs_fh), 9211 hlfsd/hlfsd.c (main): store generic mount flags in 9212 nfs_args.gfs_flags, handle separate NFS ro flag 9213 9214 * aux/macros/{check_mnt2_cdfs_opt, struct_iso_specific, 9215 struct_ufs_specific}.m4: new files; check for Ultrix specific 9216 mount structures 9217 9218 * conf/trap/trap_ultrix.h: arg 3 to mount(2) is rwflag 9219 9220 * aux/macros/type_auth_create_gidlist.m4 (ultrix*): 9221 AUTH_CREATE_GIDLIST_TYPE is int (not short == gid_t) from a 9222 comment in <rpc/auth.h> 9223 9224 * include/am_defs.h: #define KERNEL to avoid definition of 9225 gt_names[] conf/mtab/mtab_ultrix.c: #include <sys/fs_types> before 9226 <config.h> to force single definition here 9227 9228 * libamu/mount_fs.c (compute_nfs_args): Ultrix support for 9229 nfs_args.gfs_flags moved to callers store mount options in 9230 nap->optstr 9231 9232 * include/am_defs.h: fix _am_mntent mnt_{type, opts} field 9233 descriptions 9234 9235 * aux/macros/mount_headers.m4, aux/macros/try_compile_nfs.m4: 9236 include <rpc/rpc.h> before AMU_NFS_PROTOCOL_HEADER for svc_req 9237 definition in prototypes 9238 9239 * aux/macros/mount_headers.m4: include <sys/errno.h> before 9240 AMU_NFS_PROTOCOL_HEADER: <nfs/nfs.h> needs it for NFSERR_* 9241 definitions 9242 9243 * conf/nfs_prot/nfs_prot_ultrix.h: new file 9244 9245 * aux/macros/check_nfs_prot_headers.m4: use nfs_prot_ultrix.h 9246 9247 * aux/macros/mount_headers.m4, aux/macros/try_compile_nfs.m4, 9248 aux/macros/try_compile_rpc.m4, include/am_defs.h: avoid multiple 9249 inclusion of <rpc/xdr.h> 9250 9251Sat Mar 7 13:56:05 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9252 9253 * aux/configure.in: save state of config.cache and confdefs.h 9254 (as dbgcf.h) at various points of the configure. 9255 9256 * aux/macros/save_state.m4: new macro to save state of configure, 9257 esp. useful in long ones. Saves confdefs.h and write $ac_cv_* 9258 cache variables that are known so far. 9259 9260 * released snapshot am-utils-6.0a16s8 9261 92621998-03-06 Erez Zadok <ezk@mercer.psl.cs.columbia.edu> 9263 9264 * fsinfo/fsi_lex.l,amd/conf_tok.l: define ECHO after undefining 9265 it, but only for flex. 9266 9267Fri Mar 6 17:23:17 1998 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 9268 9269 * hlfsd/homedir.c (plt_print): change pathname of hlfsd dump file 9270 to /usr/tmp/hlfsd.dump.XXXXXX, and use a safe method (if possible) 9271 to write the dump file. 9272 9273 * doc/am-utils.texi,amd/opts.c: rename all references to nomadic 9274 functions to boolean functions, which is what they really are. 9275 9276 * aux/configure.in: don't look for strcasecmp in libucb at all, 9277 but rather complete it from libamu/strcasecmp.c as needed. 9278 9279Fri Mar 6 03:29:20 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9280 9281 * conf/nfs_prot/nfs_prot_osf4.h: avoid conflicts with Irix's EFS. 9282 9283 * libamu/wire.c (getwire): fix for 0.0.0.0 loopback on SunOS 3.X 9284 which defines IFF_ROUTE instead of IFF_LOOPBACK. Patch from Tom 9285 Schmidt <tschmidt@micron.com>. 9286 9287 * released snapshot am-utils-6.0a16s7 9288 9289 * conf/nfs_prot/nfs_prot_hpux11.h: a first working port of amd to 9290 hppa1.0-hp-hpux11.00.tgz. 9291 9292Thu Mar 5 21:59:03 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9293 9294 * converted all sources to use mntent field names, and map mnttab 9295 field names to mntent's. 9296 9297 * include/am_defs.h (mnt_special): map struct mnttab field names 9298 to struct mntent field names. 9299 9300 * aux/macros/check_mount_trap.m4: hpux11's mount trap style is 9301 identical to svr4/solaris2. 9302 9303 * aux/macros/check_mount_style.m4: hpux11's mount style is 9304 identical to svr4/solaris2. 9305 9306 * aux/macros/check_network_transport_type.m4: hpux11 is a TLI 9307 system! 9308 9309 * aux/macros/check_nfs_sa_dref.m4: hpux11's NFS host address 9310 dereferencing style is same as svr4. 9311 9312 * aux/macros/check_nfs_fh_dref.m4: hpux11's NFS file fh 9313 dereferencing style is same as svr4. 9314 9315 * conf/transp/transp_tli.c (create_nfs_service): if failed to 9316 getnetconfigent() of ticlts, then try udp (hpux11). 9317 9318 * conf/nfs_prot/nfs_prot_hpux11.h: added correct definitions for 9319 struct nfs_args, nfs_fh, and NFSMNT_* flags, taken from solaris 9320 2.5.1 (HP used them). 9321 9322 * amd/rpc_fwd.c (fwd_init): don't use O_NDELAY for t_open() 9323 because hpux11 doesn't like it. if t_open failed, print error 9324 based on t_errlist, not sys_errlist. 9325 9326Wed Mar 4 22:01:55 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9327 9328 * doc/am-utils.texi: lots of documentation fixes from Rainer Orth 9329 <ro@TechFak.Uni-Bielefeld.DE>. 9330 9331Sat Feb 28 22:16:35 1998 Erez Zadok <ezk@kosh.cs.columbia.edu> 9332 9333 * fsinfo/fsi_lex.l: undefine ECHO again, so it doesn't get used 9334 later. 9335 9336 * include/am_defs.h: defined the extern for ualarm() if it isn't 9337 found, regardless if the function isn't found in standard 9338 libraries, because otherwise libamu will include it. 9339 93401998-02-28 Erez Zadok (per Ron Snyder) <ezk@short.cvo.roguewave.com> 9341 9342 * initial port to hpux-11 completed. Compiles cleanly, but 9343 probably does not work, because of missing NFS V.2/3 headers. 9344 9345 * amd/conf_tok.l: cast yytext to char* when passed to strlen and 9346 strdup, for hpux-11's ansi-cc compiler. 9347 9348 * include/am_utils.h: renamed all xfree() to XFREE() to avoid 9349 conflict with hpux-11's system headers. Also move (voidp) cast 9350 from sources to inside the macro itself. 9351 9352Sat Feb 28 13:44:21 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9353 9354 * released snapshot am-utils-6.0a16s6 9355 9356 * amd/info_nis.c (nis_isup): new function to test if NIS is up 9357 without hanging amd. Used to ensure that amd does not clear the 9358 maps when the expiration period arrived, if the service is down. 9359 Otherwise it would be left with empty maps. It is better to stay 9360 with possibly old information than none at all. 9361 9362 * amd/mapc.c (mapc_sync): check to see if map service is up. 9363 9364Tue Feb 24 02:19:42 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9365 9366 * aux/macros/check_lib2.m4 (AC_CHECK_LIB2): fix macro so it 9367 includes auxiliary library only if needed. 9368 93691998-02-22 Erez Zadok <ezk@mercer.psl.cs.columbia.edu> 9370 9371 * amd/conf_tok.l: undefine ECHO again, so it doesn't get used 9372 later. 9373 9374Sun Feb 22 01:41:08 1998 Erez Zadok <ezk@zen.cs.columbia.edu> 9375 9376 * conf/nfs_prot/nfs_prot_osf2.h: port to alpha-dec-osf2.1 9377 completed. 9378 9379 * conf/mtab/mtab_osf.c (mnt_dup): not all OSF have NFS3. 9380 9381Sat Feb 21 19:45:48 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9382 9383 * doc/am-utils.texi (Network Host Filesystem): correct example for 9384 type:=host map. 9385 9386 * aux/macros/os_cflags.m4: only osf4 should compile with 9387 -D_SOCKADDR_LEN. 9388 9389 * aux/macros/check_nfs_prot_headers.m4: distinguish between OSF2 9390 and OSF4. 9391 9392 * BUGS: include a new file listing known bugs. 9393 9394Sat Feb 21 03:50:48 1998 Erez Zadok <ezk@mercer.psl.cs.columbia.edu> 9395 9396 * conf/nfs_prot/nfs_prot_linux.h: turn DES off on all linux 9397 versions. 9398 9399 * aux/macros/type_recvfrom_fromlen.m4: linux alpha should use 9400 size_t for recvfrom fromlen arg. 9401 9402Sat Feb 21 03:33:59 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9403 9404 * scripts/ctl-hlfsd.in: turn -D fork so primary process never 9405 hangs. 9406 9407Sat Feb 21 02:45:51 1998 Erez Zadok <ezk@mercer.psl.cs.columbia.edu> 9408 9409 * include/am_defs.h: don't include <sys/stat.h> and 9410 <linux/stat.h>, just remaining definitions in <statbuf.h> 9411 9412Thu Jan 29 00:44:28 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9413 9414 * released snapshot am-utils-6.0a16s5 9415 9416 * conf/mount/mount_irix6.c (mount_irix): pass {u,e,x}fs_args to 9417 mount(2). 9418 9419 * check for <sys/fs/xfs_clnt.h> and include it when needed. 9420 9421 * conf/mount/{mount_irix5.c,mount_irix6.c} (mount_irix): recognize 9422 efs and xfs separately from "ufs". 9423 9424 * amd/{ops_xfs.c,ops_efs.c}: new support for irix xfs/efs. 9425 9426 * aux/configure.in: look for irix efs and xfs file systems. 9427 9428 * scripts/amd.conf.5: new unmount_on_exit option documented. 9429 9430 * doc/am-utils.texi (unmount_on_exit): new option documented. 9431 9432 * amd/conf.c (gopt_unmount_on_exit): new function to handle new 9433 amd.conf option. 9434 9435 * amd/map.c (umount_exported): if global amd.conf flag 9436 unmount_on_exit is on, then try to unmount all mounted (or 9437 restartable) file systems. 9438 9439 * amd/amd.c: if print_pid option is on, then normally print it to 9440 stdout. If also pid_file is specified, then print the process ID 9441 into that file. 9442 9443 * amd/get_args.c (get_args): print correct -l option depending if 9444 system supports syslog and/or syslog facilities. Patch from 9445 Tom Schmidt <tschmidt@micron.com>. 9446 9447 * doc/am-utils.texi (opts Option): updates for documentation for 9448 new cdfs options defperm, nodefperm, noversion, rrip. 9449 9450 * amd/ops_cdfs.c (mount_cdfs): support cdfs options defperm, 9451 nodefperm, noversion, rrip. 9452 9453 * conf/nfs_prot/nfs_prot_osf.h: need to look at <cdfs/cdfsmount.h> 9454 on osf. 9455 9456 * aux/macros/{expand_cpp_hex.m4, expand_cpp_int.m4, 9457 expand_cpp_string.m4}: use #error to make failed compilations 9458 fail faster, rather than have the program fail during a run. 9459 9460 * include/am_compat.h: added a few new cdfs options: rrip, 9461 noversion, defperm, and nodefperm (used in OSF). 9462 9463Wed Jan 28 20:24:09 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9464 9465 * released snapshot am-utils-6.0a16s4 9466 9467 * doc/am-utils.texi (Global Parameters): update manual for new 9468 amd.conf global variable hesiod_base. 9469 9470 * scripts/amd.conf.5: update man page for new amd.conf global 9471 variable hesiod_base. 9472 9473 * amd/get_args.c (get_args): use /etc/amd.conf file if exists by 9474 default, else try command line options. Patch from Randall 9475 S. Winchester <rsw@Glue.umd.edu>. 9476 9477Wed Jan 28 12:20:56 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9478 9479 * amd/info_hesiod.c (hesiod_search), amd/conf.c 9480 (gopt_hesiod_base), amd/amd.h, amd/amd.c (init_global_options): 9481 included patch from Randall S. Winchester <rsw@Glue.umd.edu>, to 9482 support a hesiod base name in the amd.conf file. 9483 9484 * doc/am-utils.texi (pid_file Parameter): document new global 9485 amd.conf parameter. 9486 9487 * scripts/amd.conf.5: document new global option pid_file. 9488 9489 * amd/amd.c (daemon_mode): if cannot open pid_file, continue to 9490 run, but print error message. 9491 9492 * amd/conf.c (gopt_pid_file), amd/amd.h, amd/amd.c (daemon_mode, 9493 init_global_options): Included patch from Randall S. Winchester 9494 <rsw@Glue.umd.edu>, to support pid files in the amd.conf file. 9495 9496 * amd/get_args.c (get_args): correct usage info on amd -t. 9497 9498 * amd/*.c: massive file name and symbol name changes. All amd 9499 file systems files and symbols are prefix with amfs_*. Now using 9500 real name of file system: amfs_auto instead of afs, amfs_inherit 9501 instead of ifs, amfs_linkx instead of sfsx, etc. This will enable 9502 clear distinction between amd file system and generic ones like 9503 nfs/ufs/pcfs/hsfs. Also, now we can implement true afs (Andrew 9504 f/s) and DFS (Distributed f/s). 9505 9506 * amd/amfs_union.c: unionfs for amd is always defined, no need to 9507 #ifdef it. 9508 9509Mon Jan 26 16:51:38 1998 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 9510 9511 * libamu/mount_fs.c (compute_nfs_args): set 'noconn' NFS option on 9512 or off, based on the particular quirks of the OS in question. 9513 9514 * aux/macros/check_nfs_socket_connection.m4: new macro to set the 9515 correct wait of handling un/connected NFS sockets. 9516 9517 * scripts/wait4amd.in: use rlogin instead of rsh. 9518 9519 * amd/am_ops.c (ops_showfstypes): when showing F/S types in amd 9520 -v, always show "nfs3" for NFS V.3. 9521 95221998-01-25 Erez Zadok <ezk@snoopy.cs.columbia.edu> 9523 9524 * lots of small fixes for solaris 2.6, since gcc 2.8.0 -Wall gets 9525 more picky than 2.7.2.3 did. 9526 95271998-01-24 Erez Zadok <ezk@snoopy.cs.columbia.edu> 9528 9529 * include/am_utils.h (dlog): amuDebug macros reduced to shorter 9530 forms. 9531 9532Fri Jan 23 18:38:30 1998 Erez Zadok <ezk@goat.mcl.cs.columbia.edu> 9533 9534 * released snapshot am-utils-6.0a16s3 9535 9536 * include/am_defs.h: on Solaris 2.6, <sys/varargs.h> is included 9537 in <sys/fs/autofs.h> but since stdargs.h is used, and varargs.h 9538 must not, fake a definition for varargs. 9539 9540Fri Jan 16 10:16:40 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9541 9542 * README: show how to configure in additional support such as 9543 hesiod using various --enable-* flags. 9544 9545Wed Jan 14 15:13:02 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9546 9547 * aux/configure.in: look for strcasecmp(), and replace it if not 9548 available. 9549 9550 * amd/ops_nfsl.c (nfsl_match): host names should be compared using 9551 case insensitive. 9552 9553 * amd/opts.c: for each map variable, define if the comparison 9554 needs to be done case insensitive. 9555 9556 * include/am_utils.h (STRCEQ): a new macro to use strcasecmp(). 9557 Patch from Thomas Richter <richter@chemie.fu-berlin.de> 9558 95591998-01-14 Erez Zadok <ezk@irt.cs.columbia.edu> 9560 9561 * aux/configure.in: look for "isofs" as a possible mount type for 9562 cdfs (RedHat Linux). 9563 9564Wed Jan 14 02:07:05 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9565 9566 * conf/mount/mount_linux.c (parse_opts): don't look for cdfs mount 9567 type if not defined. 9568 9569 * conf/nfs_prot/nfs_prot_linux.h: don't define __FD_* macros if 9570 already defined. 9571 9572 * aux/configure.in: look for ext2fs before ufs, b/c some linux 9573 have both. 9574 9575Mon Jan 12 15:43:20 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9576 9577 * Makefile.am (snapshot): allow me to install snapshots into the 9578 ftp directory. 9579 9580 * scripts/ctl-hlfsd.in: don't turn on -D mem by default. 9581 9582 * amd/get_args.c (get_args): minor bug in output of amd -H. 9583 9584Mon Jan 12 03:05:06 1998 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 9585 9586 ******************************************************************* 9587 *** Released am-utils-6.0a15 *** 9588 ******************************************************************* 9589 9590Sun Jan 11 15:06:34 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9591 9592 * amd/conf.c (*_browsable_dirs): allow specifying 9593 browsable_dirs=full, which will print *all* entries (other than 9594 /default), including those with '*' and '/' characters. 9595 9596 * amd/info_file.c (MAX_LINE_LEN): up maximum readdir chain length 9597 to 1500. 9598 9599 * doc/am-utils.texi: fixed reversed documentation for NFS mount 9600 options vers and proto. 9601 9602 * doc/Makefile.am (install-html): separate target just for 9603 installing html files. Another new target "alldocs" is just for 9604 installing all files needed for the am-utils home page. 9605 9606 * scripts/amd.conf-sample: updated example for log_file. 9607 9608 * scripts/amd.conf.5: updated for new way to declare new syslog 9609 facility in the log_file option. 9610 9611 * amd/amd.8: updated for new way to declare new syslog facility in 9612 the -l option. 9613 9614 * libamu/xutil.c (get_syslog_facility): allow users to specify the 9615 syslog facility as an appended string to the log device. Ex. amd 9616 -l syslog:local7 will use LOG_LOCAL7, while the older -l syslog 9617 will use the default LOG_DAEMON facility. 9618 9619 * amd/get_args.c (get_args): updated new syntax for amd -l 9620 syslog:facility. 9621 9622Thu Jan 8 04:05:10 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9623 9624 * aux/macros/host_macros.m4: don't confuse sun3 (sparc) with sun3 9625 (intel). 9626 9627 * libamu/wire.c (print_wires): bug fix. Nullify output buffer 9628 before appending to it, on systems with two or more network 9629 interfaces. 9630 9631 * conf/nfs_prot/nfs_prot_sunos5_3.h: add missing definition for 9632 the mntent for cachefs. 9633 9634 * include/am_defs.h: external definition for strstr() should use 9635 const for both arguments. 9636 9637 * aux/configure.in: add extern definitions for getwd() if missing. 9638 9639 * include/am_defs.h: define the extern for strdup() even if the 9640 function does not exist, for it will be filled in by 9641 libamu/strdup.c 9642 9643 * amq/pawd.c (cluster_server): don't use getccent() if the extern 9644 for it isn't there. On hpux 10.20, the function is in libc, but 9645 <cluster.h> and struct cct_entry do not exist. 9646 9647 * aux/configure.in: check for an extern for getccent() b/c some 9648 hpux systems don't have it (hpux 10.20). 9649 9650Wed Jan 7 00:09:19 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9651 9652 * doc/am-utils.texi (Amq -T option): manual documentation updates 9653 for new amq options -T/-U. 9654 9655 * amq/amq.8: updated man page for new amq options -T/-U. 9656 9657 * amq/amq.c: two new switches to amq. -U will contact amd using 9658 UDP only. -T will use TCP only. Normally amq will try TCP and 9659 if that failed, will try UDP. 9660 9661 * doc/am-utils.texi (pawd): manual documentation for pawd. 9662 9663 * amq/pawd.1: new man page for pawd. 9664 9665Tue Jan 6 04:21:59 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9666 9667 * amq/pawd.c: a new program, Print Automounter Working Directory, 9668 to print the proper pathname of the cwd or any other pathname, 9669 adjusted for automounter paths, while avoiding mount points. 9670 9671 * aux/macros/localconfig.m4: trivial support for am-utils 9672 maintainers to adjust some of the configuration of am-utils after 9673 it has been auto-configured by putting whatever definitions you 9674 wish in a file called localconfig.h, located in the top build 9675 directory (the same one where config.h is created for you). 9676 9677 * doc/am-utils.texi (Caching Filesystem): updated documents for 9678 cachefs file system. 9679 9680 * amd/ops_cachefs.c: initial cachefs support, for solaris. 9681 type:=cachefs, requires cachedir:=/cache/dir/name to be defined 9682 and initialized with cfsadmin -c. $rfs is backdir to be cached 9683 from, and $fs is the local mount point of the cachefs. 9684 9685 * conf/mount/mount_svr4.c (mount_svr4): support mounting of 9686 cachefs file systems. 9687 9688 * amd/ops_cdfs.c: cdfs should be named 'cdfs', not whatever the 9689 mnttab type is. 9690 9691Mon Jan 5 23:22:49 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9692 9693 * amd/opts.c: added support for new variable $cachedir. 9694 9695 * include/am_utils.h: added opt_cachedir field to struct am_opts. 9696 9697Sat Jan 3 01:43:57 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9698 9699 * amd/ops_nfsl.c (nfsl_ffserver, nfsl_match): also check if the 9700 local hostname does not match $rhost, and if so, also assume 9701 type:=nfs. 9702 9703Fri Jan 2 01:00:40 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9704 9705 * updated all source files to add 1998 as a copyright year. 9706 9707 * amd/ops_nfsl.c: new amd meta file system "type:=nfsl". Behaves 9708 like type:=linkx if the pathname denoted by $fs exists, and like 9709 type:=nfs if it does not. A convenient shortcut for the most 9710 popular amd map entry. 9711 9712 * amd/amd.c (main): amd should chdir to / before starting, to 9713 avoid hanging on other NFS server if started elsewhere. 9714 9715 * amd/ops_TEMPLATE.c: added an empty template file for developers 9716 who wish to write new amd pseudo file systems. 9717 9718Thu Jan 1 00:27:28 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9719 9720 * hlfsd/homedir.c (plt_init): make function exported, to save on 9721 the unnecessary init_homedir() function which was removed. 9722 (table_add): don't use xmalloc() when you can use strdup() 9723 instead. 9724 9725Thu Jan 1 00:15:58 1998 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 9726 9727 * hlfsd/homedir.c (hlfsd_endpwent): Don't actually run this 9728 because we will be making more passwd calls afterwards. On 9729 Solaris 2.5.1, making getpwent() calls after calling endpwent() 9730 results in a memory leak! (and no, even Purify didn't detect 9731 it...) 9732 9733Tue Dec 23 18:23:47 1997 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 9734 9735 * hlfsd/hlfsd.c (main): Bug fix. Don't try to free() an 9736 automatically allocated address. 9737 9738 * amd/ops_afs.c (mount_toplvl): Bug fix. Don't try to free() an 9739 automatically allocated address. 9740 9741 * ALL SOURCES: change every direct call to free() to xfree(), so 9742 it can be mapped to the right debugging function as needed. 9743 9744 * include/am_utils.h: new free() policy. If debugging memory, 9745 call dxfree(), which will print the file name and line number 9746 where the free occurred and the pointer address. if only regular 9747 debugging, then free() and reset the pointer to NULL so it cannot 9748 be used afterwards inadvertently. If not DEBUG at all, then just 9749 run free(). Three different #define macros set the right mapping. 9750 9751 * libamu/xutil.c (dxfree): renamed function to dxfree(), so it can 9752 be called only when debugging the memory. 9753 9754Tue Dec 23 04:24:28 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9755 9756 * wire-test/wire-test.c (main): use xmalloc() not malloc(). 9757 9758 * conf/transp/transp_tli.c (get_knetconfig): use xzalloc() not 9759 calloc(). 9760 9761 * conf/mtab/mtab_mach3.c (convert): use xzalloc() not calloc(). 9762 9763 * conf/mount/mount_linux.c (parse_opts): use xmalloc() not 9764 malloc(). 9765 9766 * amd/info_ldap.c: use xmalloc() not malloc(). 9767 9768 * libamu/xutil.c (xzalloc): new function to allocate memory and 9769 zero its bytes. 9770 9771 * amq/amq.c: amq does not need its own definition of xfree(). 9772 9773 * aux/macros/opt_debug.m4: if used --enable-debug=mem, then also 9774 look for function malloc_verify() in libmapmalloc.a, and function 9775 mallinfo() in libmalloc. 9776 9777 * libamu/xutil.c (checkup_mem): do not use mallinfo field 9778 uordbytes, because it does not always exist. Rather, compute it 9779 from other fields.. 9780 9781 * include/am_utils.h: add external definition to xfree() function 9782 used when debugging memory references. 9783 9784Mon Dec 22 03:01:30 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9785 9786 * amd/ops_afs.c (afs_readdir_browsable): reduce the number of 9787 bytes heuristically computed to be returned to the kernel. 9788 Otherwise browsable_dirs fails on OpenBSD 2.2. 9789 9790 * amd/mntfs.c (uninit_mntfs): bug fix. Moved freeing of 9791 mf_private field to AFTER it gets used. 9792 9793Sat Dec 20 00:51:21 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9794 9795 * amd/ops_host.c (host_umounted): don't use clnt_spcreateerror() 9796 on systems that don't support it. 9797 9798 * include/am_defs.h: add missing extern definition for free(). 9799 9800 * aux/configure.in: check for external definition for free(). 9801 9802 * libamu/Makefile.am: add to comment a mention of strstr as an 9803 optional function. 9804 9805 * libamu/xutil.c (switch_to_logfile): use openlog() options only 9806 if they exist. 9807 9808 * conf/transp/transp_sockets.c (get_nfs_version): don't use 9809 clnt_spcreateerror if it does not exist. 9810 9811 * aux/configure.in: check for missing functions clnt_create and 9812 clnt_spcreateerror. Check for missing strstr, and complete 9813 its code. Check for missing external definition for strstr. 9814 9815 * aux/macros/host_macros.m4: normalize sun3* names. 9816 9817 * Makefile.am: updates for new sunos3 files distributed. 9818 9819 * conf/nfs_prot/nfs_prot_sunos3.h: new file. 9820 9821 * conf/fh_dref/fh_dref_sunos3.h: new file. 9822 9823 * aux/macros/check_nfs_prot_headers.m4: added sunos3 case. 9824 9825 * aux/macros/check_nfs_fh_dref.m4: added sunos3 case. 9826 9827 * doc/am-utils.texi (wire Selector Variable): updated manual for 9828 adjusted variables wire, network, and netnumber, all using the 9829 in_network() function. 9830 9831Fri Dec 19 04:37:36 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9832 9833 * amd/opts.c: allow options to be processed by executing arbitrary 9834 functions. Converted wire, network, and netnumber all to use the 9835 nomadic function in_network. So from now on they perform a match 9836 against all networks, not just primary. 9837 9838 * initial port to alpha-unknown-linux-gnu, probably works, but 9839 untested yet. 9840 9841 * conf/nfs_prot/nfs_prot_linux.h: add special definitions for 9842 __FD_* macros which for som strange reason do not get included 9843 from <selectbits.h> on redhat alpha linux. Also turn off usage of 9844 <rpc/des_auth.h> because it is incomplete on the same systems. 9845 9846 * hlfsd/homedir.c (table_add): cast uid field to int, for 9847 comparison. 9848 9849 * include/am_defs.h: more coflicts with redhat alpha linux 9850 "resolved". 9851 9852 * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4: 9853 There's a conflict of definitions on redhat alpha linux between 9854 <netinet/in.h> and <linux/fs.h> which must be avoided. 9855 9856 * aux/configure.in: check for <socketbits.h>, which is in use on 9857 redhat alpha linux. 9858 9859 * doc/am-utils.texi (Selectors): added documentation to describe 9860 the new "!" (negated) nomadic functions. 9861 9862 * amd/opts.c (f_in_network): print debugging info that is correct, 9863 rather than saying that any ARG is on a local network. 9864 (eval_opts): added support for negating nomadic functions, by 9865 prepending "!" to their name. Example, !exists(/foo/bar). 9866 9867Thu Dec 18 20:57:19 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9868 9869 * include/am_compat.h: ensure that all NFS3 systems have the mount 9870 table entries (and amd opts switches) "proto" and "vers". 9871 9872 * hlfsd/homedir.c (table_add): added some debugging info to try 9873 and track down a serious memory leak in hlfsd. 9874 98751997-12-18 Erez Zadok <ezk@t-rex.mcl.cs.columbia.edu> 9876 9877 * libamu/mount_fs.c (compute_nfs_args): OpenBSD 2.2 requires that 9878 you do NOT set the noconn option, and use connected sockets 9879 always. So I'm now forced not to set it at all, and have the user 9880 specify it as "conn" or "noconn" in their /default entry. Argh... 9881 Finally, it looks as if OpenBSD 2.2's NFS 3 implementation may be 9882 buggy (TCP hangs with "short receive" kernel errors). I'd better 9883 wait until they get it working in their version of the automounter 9884 first. So I'm putting the "noconn" option back. 9885 9886Thu Dec 18 02:39:39 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9887 9888 * libamu/mount_fs.c (compute_nfs_args): use maxgrps option and set 9889 nfs_args field maxgrouplist accordingly. 9890 9891 * include/am_compat.h (MNTTAB_OPT_MAXGROUPS): complete definition 9892 for mount table entry for maxgroups based on NFS mount option 9893 maxgrp. 9894 9895 * aux/configure.in: put back testing for NFS mount option 9896 "maxgrps". Added test for mount table entry "maxgroups". 9897 9898 * libamu/mount_fs.c (compute_nfs_args): perform more careful tests 9899 on nfs_proto, because it could be NULL. 9900 9901 * doc/am-utils.texi (Selectors): added example of in_network() 9902 selector. 9903 9904 * aux/macros/check_hide_mount_type.m4: all hpux versions, 9905 including 9.x, should use "ignore" as the mount type to hide from 9906 amd. 9907 9908Wed Dec 17 13:09:21 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9909 9910 * include/am_utils.h (NSTREQ): use new macro instead of strncmp() 9911 every where in the sources. 9912 9913Wed Dec 17 01:15:01 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 9914 9915 * libamu/mount_fs.c (print_nfs_args): if -D trace is on, will 9916 print as much info that is given in struct nfs_args as possible. 9917 useful for detecting internal flags and options, as well as the 9918 file handle used. 9919 9920 * scripts/ctl-amd.in: look for amd.conf file in ${prefix}/etc 9921 after /etc and before /etc/local. 9922 9923Tue Dec 16 18:51:36 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9924 9925 * aux/configure.in, libamu/Makefile.am: added support for linking 9926 with specific versions of libamu. Upped shared library version of 9927 libamu to 1 (libamu.so.1.0.0) 9928 9929 * include/am_defs.h: added external definition for mkstemp() as 9930 needed. 9931 9932 * minor new port to i386-unknown-netbsd1.3 (BETA version of 9933 netbsd). 9934 9935 * aux/config.guess: don't leave a trailing '.' on the system name 9936 for NetBSD-1.3_BETA and similarly for OpenBSD. 9937 9938 * conf/nfs_prot/nfs_prot_netbsd1_3.h: new header for the slight 9939 differences in ypall calling conventions. 9940 9941 * mk-amd-map/mk-amd-map.c (main): use mkstemp() whenever possible 9942 in preference over mktemp(), b/c it is more secure. 9943 9944 * aux/configure.in: check for mkstemp(), a more secure version of 9945 mktemp(). 9946 9947Mon Dec 15 02:32:14 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9948 9949 * amd/ops_nfs.c (mount_nfs_fh): Systems that include the mount 9950 table "vers" option generally do not set the mnttab entry to 9951 "nfs3", but to "nfs" and then they set "vers=3". Setting it to 9952 "nfs3" works, but it may break some things like "df -t nfs" and 9953 the "quota" program (esp. on Solaris and Irix). So on those 9954 systems, set it to "nfs". 9955 9956Sat Dec 13 01:36:27 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9957 9958 * doc/am-utils.texi (Distrib): updates for new ports, location of 9959 am-utils' home page, and URL cross references (now supported by my 9960 version of texi2html). 9961 9962 * aux/macros/check_mtype_type.m4: also use string type for file 9963 system mount types under nextstep for mount(2). 9964 9965 * aux/macros/check_mtype_printf_type.m4}: nextstep can handle both 9966 integer and string types for file system mount types in mount(2), 9967 but it is better to use string types. 9968 9969 * conf/nfs_prot/nfs_prot_nextstep.h: set emum nfsstat's NFS_OK to 9970 0, not 1! Otherwise, all NFS calls (esp. mount) return errno 1 9971 (EPERM) instead of 0 (OK). Fixes m68k-next-nextstep3 which now 9972 works. 9973 9974 * conf/nfs_prot/nfs_prot_bsdi2.h: set emum nfsstat's NFS_OK to 0, 9975 not 1! Otherwise, all NFS calls (esp. mount) return errno 1 9976 (EPERM) instead of 0 (OK). 9977 9978 * libamu/xdr_func.c (xdr_*): add debugging calls that are optioned 9979 by -D trace (protocol trace). 9980 99811997-12-11 Erez Zadok <ezk@bach.cs.columbia.edu> 9982 9983 * A.m68k-next-nextstep3/amu_nfs_prot.h: define missing S_ISDIR 9984 macro based on existence on others, and include <sys/stat.h>. 9985 9986Thu Dec 11 14:14:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9987 9988 * aux/macros/try_compile_nfs.m4 (AC_TRY_COMPILE): turn off 9989 inclusion of <nfs/nfs_mount.h> which only affects nextstep3, on 9990 which this header is broken (it tries to include non-existing 9991 headers). 9992 9993Wed Dec 10 16:09:07 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9994 9995 * libamu/mount_fs.c (mnt_flags): support either nfs or generic 9996 mount option for grpid. 9997 9998 * aux/configure.in: turn back on NFS mount option grpid. 9999 10000Sat Dec 6 04:36:05 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10001 10002 * doc/Makefile.am (install-ps): added target to install postscript 10003 file in the am-utils' home page, as well as a few other useful 10004 files for the new am-utils Web page. 10005 10006Mon Nov 17 05:22:56 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10007 10008 ******************************************************************* 10009 *** Released am-utils-6.0a14 *** 10010 ******************************************************************* 10011 10012Sun Nov 16 21:56:16 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10013 10014 * doc/am-utils.texi (Supported Platforms): updated table of new 10015 ports. 10016 10017Sat Nov 15 06:36:27 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10018 10019 * libamu/mount_fs.c (compute_automounter_nfs_args): pass mnttab 10020 options so that they can be printed in logs as needed. 10021 10022 * doc/am-utils.texi (osver Parameter): updated for the correct 10023 usage of the -o/-O options. 10024 10025 * scripts/amd.conf.5: corrected info for -o/-O options. 10026 10027 * amd/amd.8: updated man page for new -O op_sys_name option, and 10028 corrected the usage of the -o op_sys_ver option 10029 10030 * amd/get_args.c (get_args): added new amd option -O to override 10031 OS name. 10032 (get_args): updated usage string. Removed old -m option. Added 10033 -o and -O options. 10034 10035 * conf/nfs_prot/nfs_prot_irix5.h: add definition to FHSIZE in case 10036 it is not there. Reportedly, irix 5.2 does not define it. 10037 10038 * scripts/lostaltmail.in: removed references to unused $hack 10039 variable. 10040 10041 * aux/macros/check_nfs_prot_headers.m4: Patch from Chris Metcalf 10042 <metcalf@cag.lcs.mit.edu> to correctly set the nfs_prot headers 10043 for solaris2.5. 10044 10045 * doc/am-utils.texi (Distrib): typo in the subscription 10046 instructions to amd-dev. Patch from Stefan Vogel 10047 <vogel@physik-rzu.unizh.ch>. 10048 100491997-11-15 Erez Zadok <ezk@amtrak.cs.columbia.edu> 10050 10051 * NFS3 works on powerpc-ibm-aix4.2.1.0. 10052 10053 * libamu/mount_fs.c (compute_nfs_args): set fh3 variable to 10054 static. Some compilers (gcc from egcs on aix 4.2.1) corrupt the 10055 stack of an automatic variable when pointer to it is passed around 10056 several times. 10057 10058Fri Nov 14 20:09:28 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10059 10060 * libamu/xutil.c (real_plog): syslog like behavior for normal 10061 logging. Will not print repeated strings, only a count "last 10062 message repeated N times", but will always print something if 10063 message is repeated more than 100 times. 10064 10065 * scripts/lostaltmail.in: look for lostaltmail.conf files also in 10066 /etc/global, /etc/os, and /etc/local (in that order). 10067 10068Mon Nov 10 03:03:17 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10069 10070 * conf/mount/mount_aix.c (mount_aix3): add support for NFS V.3 10071 mounts. 10072 10073 * aux/macros/struct_nfs_args.m4 (AC_TRY_COMPILE_NFS): test for 10074 aix42_nfs_args, specially set in conf/nfs_prot/nfs_prot_aix4_2.h 10075 10076 * conf/sa_dref/sa_dref_*.h: from now on, the "dst" argument to the 10077 NFS_SA_DREF macro is a pointer to the structure that used to be 10078 passed to it before. So now I have to dereference the pointer 10079 before accessing its values. 10080 10081 * hlfsd/hlfsd.c (main): use the new and cleaner 10082 compute_nfs_args() and compute_automounter_nfs_args() functions. 10083 10084 * amd/ops_nfs.c (mount_nfs_fh): use the new and cleaner 10085 compute_nfs_args() and compute_automounter_nfs_args() functions. 10086 10087 * amd/ops_afs.c (mount_toplvl): MAJOR CODE REVISION. Use the new 10088 and cleaner compute_nfs_args() and compute_automounter_nfs_args() 10089 functions. 10090 10091 * libamu/mount_fs.c (compute_nfs_args): major code cleanup that 10092 relates for struct nfs_args. A new function sets the numerous 10093 possible flags and fields of nfs_args_t in an orderly fashion. 10094 Code cleaned up, organized, and moved from amd/hlfsd into 10095 libamu. This saves on overall size of code. 10096 (compute_automounter_nfs_args): A variant of compute_nfs_args() 10097 which sets special options/flags that need to be used when NFS 10098 mounting an automounter's mount point. Used by hlfsd and amd. 10099 10100 * amq/amq.c (get_secure_amd_client): don't print any more 10101 "get_secure_amd_client: using TCP, port 12345". It's more 10102 annoying than useful a message, even when assumed to be compiled 10103 under DEBUG only. 10104 10105Thu Oct 30 14:33:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10106 10107 * aux/macros/check_mnttab_type.m4: MAJOR BUG fixed for non-nfs 10108 mount table entries. The code used to define the /etc/mnttab name 10109 for file systems based on physical media (disk, cdrom, floppy) to 10110 the generic name, rather than the OS specific name. For example 10111 autoconf searches for all these types of mount table entries for a 10112 floppy based file system: vfat pcfs pc msdos msdosfs fat. But if 10113 it found any, it hard-coded the mnttab name to "pcfs" rather than 10114 the actual name found! Same for ufs, cdfs, pcfs, tmpfs, lofs, 10115 nullfs, unionfs, and umapfs. 10116 10117 * aux/configure.in: also test for xfs (for newer Irix) when 10118 looking for mount type names, numbers, etc of a disk-based ufs. 10119 10120Sun Oct 26 19:32:57 1997 Erez Zadok <ezk@defiant.soscorp.com> 10121 10122 * amq/amq.c (main): use pmap_ping() to test if remote host is up. 10123 This works better on bsdi2 and bsdi3, because their portmapper 10124 does not appear to like forwarding operations (it is generaly 10125 insecure). 10126 10127Sat Oct 25 04:55:56 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10128 10129 ******************************************************************* 10130 *** Released am-utils-6.0a13 *** 10131 ******************************************************************* 10132 10133Fri Oct 24 05:04:37 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10134 10135 * conf/nfs_prot/nfs_prot_ncr2.h: added missing definition for 10136 struct datum typedef. 10137 10138 * conf/nfs_prot/nfs_prot_netbsd.h: corrected typedef for 10139 ypall_callback_fxn_t for netbsd. 10140 10141 * aux/macros/type_auth_create_gidlist.m4: hpux10.10 uses int for 10142 the 5th arg to authunix_create(), while before and after they used 10143 gid_t. 10144 10145 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): don't use 10146 clnt_create_timed() on older Solaris 2.3 systems that did not have 10147 it. 10148 10149 * conf/nfs_prot/nfs_prot_bsdi2.h: <msdosfs/msdosfsmount.h> is for 10150 kernel only on bsdi2, so do not include it. 10151 10152Fri Oct 24 00:29:42 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10153 10154 * hlfsd/stubs.c (nfsproc_readlink_2_svc): avoid logging repeated 10155 messages about resolution of mailboxes based on uid/gid. 10156 10157 * scripts/ctl-hlfsd.in: check for alternate password file in 10158 ${prefix}/etc/passwd and use it in hlfsd's startup. 10159 10160Thu Oct 23 22:48:50 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10161 10162 * hlfsd/homedir.c (hlfsd_getpwent): added support for -P 10163 passwdfile option. If hlfsd is started with -P passwdfile, then 10164 the passwdfile is read and parsed just as a standard unix 10165 passwd(4) file. Only the username, uid, and homedir fields are 10166 read and checked. All the rest are ignored. No NIS/netgroup 10167 support! 10168 10169 * hlfsd/hlfsd.c (main): check if hlfsd is run as root after 10170 parsing command line options, so that usage() can be printed when 10171 -h is invoked. 10172 10173Wed Oct 22 00:16:39 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10174 10175 * amd/nfs_start.c (mount_automounter): if autofs service listener 10176 fails to initialize it is OK if using a test amd. 10177 10178 * amd/opts.c (f_in_network): new nomadic function in_network(arg), 10179 which returns TRUE if 'arg' is any one of this host's networks. 10180 10181 * libamu/wire.c (getwire): rewritten parts of function, to store 10182 all networks names and numbers in the order of the interface (not 10183 in reverse). 10184 10185Mon Oct 20 01:59:25 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10186 10187 * aux/configure.in: don't add ops_ufs.o on AIX twice. My code 10188 would have worked had it not been due to AIX's buggy /bin/sh. 10189 10190 * doc/Makefile.am (EXTRA_DIST): include am-utils.dvi and 10191 am-utils.ps in the distribution sources. 10192 (html): generate html documentation for 10193 http://www.am-utils.org 10194 10195Sun Oct 19 12:35:49 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10196 10197 * conf/nfs_prot/nfs_prot_netbsd.h: override the definition of 10198 ypall_callback_fxn_t. The NetBSD team compiles all sources with 10199 gcc -Wall -Wmissing-prototypes -Wstrict-prototypes. 10200 10201 * amd/info_nis.c: allow for override of ypall_callback_fxn_t 10202 function typedef. 10203 10204 * libamu/xutil.c (amu_release_controlling_tty): new function to 10205 release the controlling tty in a clean and sane manner. No longer 10206 using setpgid() b/c it may not work. Uses setsid(), 10207 and ioctl() (in order). This new function is used in amd/amd.c 10208 and hlfsd/hlfsd.c. Also avoid setpgrp(), because it works on some 10209 systems, but on others it is the same as setpgid(). 10210 10211Sat Oct 18 23:42:40 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10212 10213 * aux/acconfig.h: check for nfs mount option 'fsname'. Code for 10214 it was in amd/ops_afs.c, amd/ops_nfs.c, and hlfsd/hlfsd.c, but 10215 never used, because the configure test for fsname flag wasn't 10216 used. This fixed a bug in HPUX 10, where syncer and manual mounts 10217 left blank lines in /etc/mnttab. 10218 10219 * aux/configure.in: check for nfs mount option 'fsname'. 10220 10221Fri Oct 17 13:30:27 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10222 10223 * amd/ops_afs.c (mount_toplvl): turn on 'ignore' option in nfs 10224 mount flags of toplvl mounts. Important esp. for HPUX 10. Now 10225 hpux-10 will mount amd's mounts points as 'ignore' (by df). 10226 10227 * aux/configure.in: check for NFS mount option 'ignore', useful in 10228 HPUX 10. 10229 10230Thu Oct 16 03:28:33 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10231 10232 * aux/macros/check_hide_mount_type.m4: hpux 10 should use "ignore" 10233 mount type and not NFS, for the amd mount points. 10234 10235 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): don't log 10236 an RPC timeout as an error, but just an info message. From 10237 Andreas Stolcke <stolcke@speech.sri.com> 10238 10239 * If the NFS server is down or does not support the portmapper 10240 call (such as certain Novell NFS servers) we mark it as version 2 10241 and we let the nfs code deal with the case that is down. If when 10242 the server comes back up, it can support NFS V.3 and/or TCP, it 10243 will use those. From christos@deshaw.com (Christos Zoulas). 10244 10245 * hlfsd/homedir.c (plt_print): various compile time cleanups to 10246 printfs that take a long, but pass an int to print. From 10247 christos@deshaw.com (Christos Zoulas). 10248 10249 * aux/macros/func_bad_yp_all.m4 (ac_cv_func_yp_all_clean,): new 10250 macro to determine if the OS has a bad yp_all(), based on the host 10251 OS name. So far only irix (all versions) have a bad yp_all, so 10252 they will use am_yp_all() instead (which is slower as it 10253 enumerates manually all of the map's entries). 10254 10255Thu Oct 16 03:14:37 1997 Erez Zadok <ezk@subzero.cs.columbia.edu> 10256 10257 * amd/info_nis.c (am_yp_all): code for a replacement yp_all that 10258 avoids using a file-descriptor leaking yp_all() on some systems 10259 like irix. 10260 10261Wed Oct 15 21:52:35 1997 Erez Zadok <ezk> 10262 10263 * fsinfo/fsinfo.h: avoid redefining yywrap incorrectly on DU-4.x 10264 systems using /usr/bin/flex. 10265 10266 * amd/conf_tok.l (yywrap): avoid redefining yywrap for systems 10267 that have a modified GNU flex which does define yywrap (DU-4.x). 10268 10269Fri Sep 26 14:25:29 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10270 10271 * conf/checkmount/checkmount_bsd44.c: include prototype. 10272 10273Fri Sep 26 01:26:24 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10274 10275 ******************************************************************* 10276 *** Released am-utils-6.0a12 *** 10277 ******************************************************************* 10278 10279Fri Sep 26 00:13:48 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10280 10281 * conf/nfs_prot/nfs_prot_irix6.h: completely turn off all autofs 10282 code in irix6 until it can be tested correctly 10283 10284 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): time out 10285 on clnt_create for 3 seconds, rather than wait for the much longer 10286 default. 10287 10288 * conf/nfs_prot/nfs_prot_aix4_2.h: port to powerpc-ibm-aix4.2.1.0. 10289 Includes NFS3, untested. 10290 10291Thu Sep 25 11:03:11 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10292 10293 * amd/ops_pcfs.c (mount_pcfs): fill in uid/gid fields of 10294 pcfs_args_t if they exist. 10295 10296 * amd/ops_cdfs.c (mount_cdfs): fill in ssector field of 10297 cdfs_args_t if it exists. 10298 10299 * new minor ports hppa1.1-hp-hpux10.10, hppa1.1-hp-hpux9.05, 10300 hppa1.1-hp-hpux9.07, m68k-hp-hpux9.00, and sparc-sun-sunos4.1.4. 10301 10302Wed Sep 24 00:48:05 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10303 10304 * doc/am-utils.texi (wire-test): updated documentation for the new 10305 option. 10306 10307 * wire-test/wire-test.8: updated man page for new option. 10308 10309 * wire-test/wire-test.c (main): added a test for various 10310 combinations of NFS proto/vers to a remote/local host. 10311 10312 * aux/macros/try_compile_anyfs.m4 (AC_TRY_COMPILE): include 10313 <isofs/cd9660/cd9660_mount.h> and <msdosfs/msdosfsmount.h> so that 10314 freebsd will correctly set mount options for pcfs and cdfs. 10315 10316 * amd/ops_pcfs.c (mount_pcfs): set mask field of pcfs_args to 10317 0777 (if field exists). 10318 10319 * aux/macros/try_compile_anyfs.m4 (AC_TRY_COMPILE): include 10320 <msdosfs/msdosfsmount.h> if available. 10321 10322 * minor new port: rs6000-ibm-aix4.1.4.0. 10323 10324 * libamu/mount_fs.c (mount_fs): fixed bug that caused HPUX not to 10325 write the "time" field in /etc/mnttab. 10326 10327 * conf/mtab/mtab_file.c (mnt_dup): fixed typo in macro names for 10328 detecting mnt_time field of mntent_t. 10329 10330 * libamu/mtab.c (mnt_free): fixed typo in macro names for 10331 detecting mnt_time field of mntent_t. 10332 10333Tue Sep 23 15:30:03 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10334 10335 * conf/mtab/mtab_file.c (lock): Use flock() in preference over 10336 fcntl() to lock the mtab file. 10337 10338Mon Sep 22 23:04:58 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10339 10340 * conf/transp/transp_sockets.c (get_nfs_version): define 10341 the try_again goto label only for NFS3. 10342 (pmap_ping): assume timeout failure of clnt_stat. 10343 10344 * libamu/xdr_func.c (xdr_groupnode, xdr_exportnode): cast to 10345 "groups *". 10346 10347Mon Sep 22 20:34:33 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10348 10349 * conf/transp/transp_sockets.c (pmap_ping): patch from Dan Riley 10350 <dsr@mail.lns.cornell.edu> to make sure that amd works with more 10351 secure portmappers that do not allow forwarding of RPC messages to 10352 other services. 10353 10354 * */Makefile.am: all source files should also depend on the new 10355 include/am_xdr_func.h header. 10356 10357 * include/am_xdr_func.h: new file as part of the code cleanup from 10358 Christos Zoulas <christos@deshaw.com>. 10359 10360 * Lots of fixes from Christos Zoulas <christos@deshaw.com> that 10361 involved missing prototypes, cleaned up ones, and removal of 10362 unused variables. 10363 10364 * libamu/xdr_func.c (xdr_mountres3): some code cleanup. A switch 10365 statement with only one case is unclean. 10366 10367Mon Sep 22 17:26:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10368 10369 * amd/ops_<FOO>fs.c (mount_<FOO>fs): initialize mntent_t fields to 10370 0 so that all fields are initialized to zero at first. This way 10371 SunOS 4.x and other systems don't get /etc/mtab entries with 10372 random integers for the fsck/freq fields. Patch from Andreas 10373 Stolcke <stolcke@speech.sri.com>. 10374 10375Mon Sep 22 00:34:19 1997 Erez Zadok <ezk@americas.psl.cs.columbia.edu> 10376 10377 * conf/nfs_prot/nfs_prot_sunos4.h: include <nfs/nfs_clnt.h> so 10378 that the important definition for HOSTNAMESZ will be found. 10379 10380 * amd/ops_afs.c (mount_toplvl): limit hostname size to HOSTNAMESZ 10381 (inside the nfs_args structure) if the system uses that macro. 10382 Otherwise systems like SunOS refuse to NFS mount long pathnames 10383 and result in ENAMETOOLONG errno's. 10384 10385Wed Sep 17 04:56:11 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10386 10387 * doc/am-utils.texi (Supported Platforms): specify new support for 10388 solaris 2.6, and hlfsd running on 2.5.1 too. 10389 10390Wed Sep 17 03:55:02 1997 Erez Zadok <ezk@amsterdam.psl.cs.columbia.edu> 10391 10392 * conf/mount/mount_svr4.c (mount_svr4): don't attemt an autofs 10393 mount if it is not supported or was turned off. 10394 10395Wed Sep 17 03:19:36 1997 Erez Zadok <ezk@americas.psl.cs.columbia.edu> 10396 10397 * conf/nfs_prot/nfs_prot_sunos4.h: fixed so that it will nfs mount 10398 again. Apparently at some previous release SunOS 4 supported was 10399 broken and all nfs mounts resulted in ESTALE. 10400 10401Wed Sep 17 00:26:25 1997 Erez Zadok <ezk@amsterdam.psl.cs.columbia.edu> 10402 10403 * conf/nfs_prot/nfs_prot_sunos5_6.h: nfs protocol headers for 10404 solaris 2.6. 10405 10406 * aux/macros/check_nfs_prot_headers.m4: added solaris 2.6 nfs 10407 protocol header selection. 10408 10409Sat Sep 13 14:31:51 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10410 10411 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): avoid 10412 infinite loop. 10413 10414Sun Sep 7 18:23:23 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10415 10416 ******************************************************************* 10417 *** Released am-utils-6.0a11 *** 10418 ******************************************************************* 10419 10420Fri Sep 5 11:55:10 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10421 10422 * amd/amd.c (main): if plock() succeeded, don't try to display 10423 errno message. Patch from Chris Metcalf 10424 <metcalf@catfish.lcs.mit.edu. 10425 10426Thu Sep 4 19:17:58 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10427 10428 * hlfsd/homedir.c (table_add): make sure duplicate passwd entries 10429 are ignored. Only the first entry should ever be used, because 10430 that's how lookup in passwd database works. 10431 10432 * conf/transp/transp_sockets.c (get_nfs_version): when determining 10433 if a remote host is up or down, use NFS v.2. Fix suggested by 10434 Enami Tsugutomo <enami@cv.sony.co.jp>. 10435 10436 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): new 10437 function to get the best possible NFS version, but also timeout 10438 faster than normal defaults, so remote hosts which are down can be 10439 detected in a reasonable time. 10440 (get_nfs_version): use the new "best" function. 10441 10442Tue Sep 2 00:41:00 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10443 10444 ******************************************************************* 10445 *** Released am-utils-6.0a10 *** 10446 ******************************************************************* 10447 10448Mon Sep 1 15:39:51 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10449 10450 * conf/transp/transp_tli.c (get_nfs_version): don't use 10451 clnt_tp_create_timed() on systems that don'e have it (Solaris 2.4 10452 and earlier). 10453 10454 * aux/configure.in: test for existence of clnt_tp_create_timed(), 10455 since Solaris 2.4 (and possibly earlier) do not have it. 10456 10457Mon Sep 1 15:23:18 1997 Erez Zadok <ezk@felix.psl.cs.columbia.edu> 10458 10459 * amd/ops_autofs.c (autofs_unmount_1_svc): only display rdevid 10460 field if it exists (solaris 2.4's autofs does not have it). 10461 10462Mon Sep 1 14:45:09 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10463 10464 * aux/macros/type_auth_create_gidlist.m4: a new test to determine 10465 the correct type to the 5th argument of authunix_create(). 10466 10467Mon Sep 1 03:44:32 1997 Erez Zadok <ezk@felix.psl.cs.columbia.edu> 10468 10469 * libamu/xdr_func.c (xdr_umntrequest): add test for autofs 10470 structure umntrequest, if it has the field rdevid. Seems Solaris 10471 2.4 and earlier didn't have it. 10472 10473Mon Sep 1 01:10:53 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10474 10475 * hlfsd/hlfsd.c (hlfsd_init): moved initialization upwards, so it 10476 can be done before primary process forks. 10477 (main): bug fix: wait a bit to give child a chance to initialize. 10478 Without this, hlfsd got into a busy infinite loop while, never 10479 completing the mount. 10480 10481 * amd/info_nis.c: patch from Jason Thorpe <thorpej@nas.nasa.gov> 10482 to make amd works when talking to NIS+ servers in NIS 10483 compatibility mode. 10484 10485Mon Sep 1 00:46:56 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10486 10487 * amd/mapc.c (MAX_CHAIN): increased maximum chain size to 1024. 10488 10489Sun Aug 31 20:20:40 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10490 10491 * amd/conf.c (gopt_fully_qualified_hosts): a new function to 10492 process another new global variable. 10493 10494 * amd/ops_nfs.c (make_nfs_auth): if a new global variable 10495 fully_qualified_hosts is on, use FQHN in RPC/NFS authentications. 10496 Patch from Chris Metcalf <metcalf@catfish.lcs.mit.edu>. 10497 10498 * amd/conf.c (process_last_regular_map): If the amd.conf file only 10499 has a [global] section (pretty useless IMHO), do not try to 10500 process a map that does not exist. 10501 10502 * scripts/amd.conf.5: fixed typos (repeated 'as' word). 10503 10504 * doc/am-utils.texi: MAJOR DOCUMENTATION REVISION COMPLETED!!! 10505 10506 * amd/conf.c (reset_cf_map): Bug fix. Reset 'tag' field of cfm 10507 structure, so it does not carry over from map entry to another. 10508 10509Sat Aug 30 18:39:21 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10510 10511 * amd/amd.c (main): fixed the meaning of the plock option. A bug 10512 caused it to be reversed. 10513 10514Sat Aug 30 15:13:18 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10515 10516 * hlfsd/stubs.c: don't initialize some statics here. They are 10517 better initialized in hlfsd_init_filehandles(). 10518 10519Fri Aug 22 14:47:16 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10520 10521 * amd/conf.c (gopt_show_statfs_entries): new function and a global 10522 amd.conf key show_statfs_entries. Defaults to 'no'. If 'yes', 10523 then all maps flagged as browsable will also show a count of the 10524 number of entries (keys) in that map. 10525 10526 * amd/nfs_subr.c (count_map_entries): new function to count number 10527 of entries in a map. Now used if browsable is turned on in a map, 10528 to return a count of available keys in a given map. 10529 10530 * hlfsd/stubs.c (eq_fh): use correct memcmp(). BUG fixed! hlfsd 10531 confused the file handles for ".", "..", and the symlink, causing 10532 mess. 10533 10534 * aux/macros/func_bad_memcmp.m4: new test, based on autoconf 2.12, 10535 but also defines HAVE_BAD_MEMCMP, so I avoid linkage conflicts 10536 with bad memcmp() in libc's (nextstep3). 10537 10538Thu Aug 21 17:38:41 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10539 10540 * aux/configure.in: check if autofs_args_t has a field named 10541 addr. Solaris has it for specifying the address of the daemon, 10542 but Irix does not. So how does irix tell the kernel the daemon's 10543 address? I suspect that it is hardcoded to "localhost" using a 10544 "private well-known port" (#define AUTOFS_PORT 2048). 10545 10546 * conf/nfs_prot/nfs_prot_linux.h: added missing autofs 10547 definitions. 10548 10549 * README.autofs: new file listing autofs support notes 10550 10551 * very preliminary autofs code working. Call it pre-alpha 10552 quality. 10553 10554Sun Aug 17 02:25:09 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10555 10556 * amd/conf.c (ropt_mount_type, gopt_mount_type): don't accept 10557 "autofs" if system does not support it. 10558 10559 * amd/amd.c (main): log am-utils version string (same as amd -v) 10560 at start of run. 10561 10562 * conf/transp/transp_sockets.c (get_nfs_version): in order to tell 10563 if a remote host is available, try to contact its portmapper and 10564 timeout if no answer is received in 3 seconds. 10565 10566Thu Aug 14 16:12:04 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10567 10568 * aux/macros/check_extern.m4 (pattern): use a simpler pattern for 10569 match for external function definitions. The function could span 10570 multiple lines, so only match the opening parenthesis, not the 10571 closing one too. 10572 10573 * aux/macros/os_cpp-flags.m4 (ac_cv_os_cppflags,): do NOT turn on 10574 posix mode for nextstep3. It is broken. 10575 10576 * amd/amd.c (init_global_options): run uname() only if 10577 <sys/utsname.h> and uname(2) exist. 10578 10579 * amd/rpc_fwd.c (fwd_packet): if remote host is down, the 10580 forwarding socket is null, so declare this an error. 10581 10582 * include/am_utils.h (AM_ERRNO_HOST_DOWN): find best errno to set 10583 for when a remote host is down. Try, in order, "host down", "host 10584 unreachable", "invalid argument". 10585 10586 * amd/ops_nfs.c (discard_fh): don't dereference a null pointer 10587 (happens when remote host is down, and fp->fh_fs is NULL). 10588 (prime_nfs_fhandle_cache): ditto, and set fs flags to !FSF_VALID 10589 and FSF_DOWN. 10590 10591 * amd/sched.c: nobody uses "union wait" any more, or so it 10592 appears, so clean up that code. 10593 10594 * conf/transp/transp_tli.c (get_nfs_version): if remote host is 10595 down, time it out faster than default (3 seconds). 10596 (get_mount_client): free netconfig entry when done with it. 10597 10598 * conf/nfs_prot/nfs_prot_nextstep.h: initial (and somewhat ugly) 10599 port to nextstep3 (m68k-next-nextstep3). 10600 10601 * fsinfo/Makefile.am (LDADD): needs to link with libamu in case 10602 system does not have strdup(). 10603 10604 * include/am_defs.h: complete external definition for getlogin() 10605 if needed. 10606 10607 * conf/transp/transp_tli.c (get_nfs_version): no need to keep 10608 static versout variable. 10609 10610 * amd/rpc_fwd.c (fwd_packet): if fwdto packet is null, remote 10611 server is probably down. Don't use sendto() in that case. 10612 10613 * buildall (default): run gmake if found, before trying plain 10614 make. GNU make is always preferable. 10615 10616Tue Aug 12 21:23:58 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10617 10618 * aux/macros/host_macros.m4: cleanup of os_version and os 10619 overrides. Solaris 2.5.1 for example will come up as solaris2 and 10620 2.5.1, rather than sunos5 and 5.5.1. Both can be overridden in 10621 the amd.conf file. 10622 10623Fri Aug 8 14:37:30 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10624 10625 ******************************************************************* 10626 *** Released am-utils-6.0a9 *** 10627 ******************************************************************* 10628 10629Thu Aug 7 00:52:14 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10630 10631 * conf/nfs_prot/nfs_prot_ncr2.h: new file, for NCR2 10632 (i486-ncr-sysv4.3.03) headers. Needed to complete missing stuff 10633 from <ndbm.h> and <sys/resource.h>. 10634 10635 * scripts/amd.conf.5: new map page. 10636 10637 * amd/info_hesiod.c: define extern for hesiod_resolve, since bsdi3 10638 does not. 10639 10640 * amd/amd.8: updated man page. 10641 10642 * amd/get_args.c (get_args): removed defunct -h option to amd. 10643 10644 * amq/amq.8: updated man page. 10645 10646 * amd/info_nisplus.c (nisplus_search): prototype fixes so Sun 10647 SparcCompiler CC won't complain. 10648 10649 * amd/info_hesiod.c (hesiod_search): small fixes to compile with 10650 hesiod-1.3, as per Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>. 10651 10652 * aux/macros/opt_ldflags.m4: new option added to configure 10653 --enable-ldflags, to specify -L option for configuring/compiling. 10654 The older one --enable-libs is now to be used only for -l options. 10655 10656 * amd/ops_nfs.c (mount_nfs_fh): bug fixed. Should initialize 10657 nc_protoname from nfs_proto if available for all TLI systems, not 10658 just those that have NFS V3. 10659 10660 * amd/info_ldap.c: ldap patches from Leif Johansson 10661 <leifj@matematik.su.se>, adding two new amd.conf ldap variables: 10662 ldap_cache_seconds and ldap_cache_maxmem. 10663 10664 * hlfsd/hlfsd.c (main): bug fixed. port number must be wrapped in 10665 htons(). 10666 10667Sun Aug 3 17:20:05 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10668 10669 * amd/nfs_start.c (mount_automounter): register amd with the rpc 10670 program number that may have been overridden by amd.conf. 10671 10672 * libamu/xutil.c (set_amd_program_number, get_amd_program_number): 10673 allow storing and retrieving alternate amd program numbers. 10674 10675 * amd/conf.c (gopt_portmap_program): new function to parse 10676 amd.conf entry portmap_program=1234. 10677 10678 * amq/amq.c (main): allow specifying an alternate rpc program 10679 number for amd via -P prognum. 10680 10681 * new amq RPC to get the process id of the running amd. This is 10682 used in ctl-amd to quickly find the pid of the amd that is to be 10683 killed. 10684 10685 * expanded shared libraries support. Using GNU libtool-1.0, 10686 am-utils now builds shared libraries on many platforms that have 10687 support for it and proper compilers/linkers. See "INSTALL" file 10688 for compatibility chart. 10689 10690Thu Jul 31 13:07:23 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10691 10692 * fsinfo/fsi_lex.l: removed code that was in support of very old 10693 versions of flex. No longer needed. 10694 10695Tue Jul 29 12:00:13 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10696 10697 * amd/amd.c (init_global_options): find the kernel architecture 10698 from uname() if possible. 10699 10700Mon Jul 28 03:53:59 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10701 10702 * new working port: i386-unknown-openbsd2.1 10703 10704Fri Jul 25 03:16:31 1997 Erez Zadok <ezk@felix.psl.cs.columbia.edu> 10705 10706 * working port: sparc-sun-solaris2.4. Had to fix fhandle_t from 10707 structure to actual char[], because the structure was passed to 10708 xdr_fhandle as data and not a pointer. Surprisingly, gcc 10709 -fpcc-struct-return did not help. 10710 10711 * conf/nfs_prot/nfs_prot_sunos5_4.h: special nfs protocol 10712 definitions for solaris 2.4 have to be different from 2.3, and 10713 different from 2.5. 10714 10715 * libamu/xdr_fhstatus.c (xdr_fhstatus): minor code cleanup. 10716 10717Thu Jul 24 16:22:39 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10718 10719 * conf/mount/mount_svr4.c (mount_svr4): use STREQ to compare mount 10720 types, not ==. Fix from Christos Zoulas <christos@deshaw.com>. 10721 10722 * mk-amd-map/mk-amd-map.8: man page taken from bsd44. 10723 10724Thu Jul 24 00:01:55 1997 Erez Zadok <ezk@moisil.cs.columbia.edu> 10725 10726 * conf/mount/mount_linux.c: made the nfs error mapping code into a 10727 small function. 10728 10729Wed Jul 23 16:11:49 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10730 10731 * conf/nfs_prot/nfs_prot_linux.h (NFS_ERROR_MAPPING): special 10732 error mappings from errno numbers to NFS errors. From Debian 10733 Linux. 10734 10735 * scripts/am-eject.in (fs): new script (taken from Debian Linux 10736 folks) to auto-unmount floppy/cd devices before ejecting them. 10737 10738 * fsinfo/wr_exportfs.c (write_exportfs): from Debian folks, pass 10739 '5' as second arg to show_area_being_processed. I'm not sure why. 10740 10741 * fsinfo/wr_atab.c (write_atab): from Debian folks, pass '5' as 10742 second arg to show_area_being_processed. I'm not sure why. 10743 10744 * conf/mount/mount_linux.c (parse_opts): as per Debian Linux, 10745 ensure that you have a buffer in *xopts to strcat onto. 10746 (mount_linux): fixed from Debian folks to ensure that NFS mount 10747 sockets are connected only for kernels prior to 1.3.10 (avoids 10748 hangs for multi-homed hosts). 10749 10750 * amd/mapc.c (make_entry_chain): from Debian folks: don't skip 10751 over amd map keys that have a prefix, and include the prefix in 10752 the returned readdir(). 10753 10754 * amd/info_passwd.c (passwd_init, passwd_search): format 10755 enhancements from the Debian Linux folks. They added 10756 - var0:=pw-prefix:=anydir 10757 - var1:=pw-rhost:=dom3.dom2.dom1 10758 - var2:=pw-user:=user 10759 - var3:=pw-home:=/anydir/dom1/dom2/dom3/user 10760 10761 * new ports: sparc-sun-solaris2.4 and sparc-sun-sunos4.1.1. 10762 10763 * amd/ops_afs.c (afs_retry): patches from Debian Linux. If 10764 afs_mount timed out, then explicitly forbid further retries after 10765 the timeout. (afs_bgmount): bug fix from Debian Linux. Timeout 10766 values (17 and 5) were mistakenly swapped. 10767 10768Wed Jul 23 15:53:25 1997 Erez Zadok <ezk@felix.psl.cs.columbia.edu> 10769 10770 * conf/nfs_prot/nfs_prot_sunos5_3.h: turn off non-existent NFS V.3 10771 support for Solaris 2.4 (the header files incorrectly define parts 10772 of the NFS V.3 protocol, but the kernel does not support it). 10773 10774Wed Jul 23 00:07:12 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10775 10776 * amd/info_hesiod.c: minor cleanup to use hes_init and hesiod_init 10777 for determining if using old or new hesiod libraries, 10778 respectively. 10779 10780 * amd/ops_nfs.c (mount_nfs_fh): If "noconn" option exists in NFS 10781 V.3 then use non-connected sockets (both TCP and UDP). Otherwise 10782 they cause hangs of mounts from multi-homed hosts when the return 10783 route is not the same as the outgoing route (esp. on NetBSD 10784 1.2.1). If "conn" option was supplied, then don't turn on the 10785 "noconn" mount option. Otherwise default to "noconn" mount 10786 option. 10787 10788 * aux/configure.in: better check for systems that need libgdbm and 10789 <ndbm.h> 10790 10791Tue Jul 22 04:02:05 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10792 10793 * hlfsd/hlfsd.c (main), amd/ops_afs.c (mount_toplvl): ensure that 10794 mounts are hidden from df(1) on systems that keep mount tables in 10795 kernel, such as osf1. 10796 10797Tue Jul 22 02:26:55 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10798 10799 ******************************************************************* 10800 *** Released am-utils-6.0a8 *** 10801 ******************************************************************* 10802 10803Mon Jul 21 21:33:19 1997 Erez Zadok <ezk@stone.mcl.cs.columbia.edu> 10804 10805 * hlfsd/hlfsd.c (main): bug fixed: forgot to set sin_family to 10806 AF_INET when hlfsd mounts itself, thus getting an errno "protocol 10807 family not supported". 10808 10809Mon Jul 21 20:46:59 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10810 10811 * verified that amd on NetBSD 1.2.1 (i386) works, but the OS 10812 itself is flaky. 10813 10814 * verified that amd AIX 3 works w/ the new readdir() code. 10815 10816Mon Jul 21 18:59:30 1997 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 10817 10818 * amd/mapc.c (maptypes): changed the default map caching type for 10819 nis and ndbm maps to "MAPC_ALL", so that all possible entries will 10820 be available to amd for browsable_dirs=yes. 10821 10822Mon Jul 21 18:04:16 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10823 10824 * amd/ops_afs.c (afs_readdir, afs_readdir_browsable): split 10825 afs_readdir into a browsable version and a non-browsable one. 10826 Fixed bugs that resulted in an infinite nfs_readdir loop on the 10827 localhost for some operating systems. 10828 10829Sat Jul 19 19:38:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10830 10831 * amd/ops_afs.c (afs_readdir): fixed up the browsable code to 10832 comply with nfs_readdir specs. It was returning all entries at 10833 once, even if there was not enough space in the RPC packet. Now, 10834 it sends a reasonably sized chunk, and sets static state to resume 10835 it for the next continuation RPC of readdir. 10836 10837 * amd/conf.c (set_conf_kv): fixed bug that resulted in the first 10838 regular map not getting all of the [global] options defaulted from. 10839 10840Fri Jul 18 00:45:12 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10841 10842 * amq/amq.c (main): fixed so that portmapper "ping" will only fail 10843 upon an RPC timeout 10844 10845 * scripts/ctl-{amd,hlfsd}.in (killproc): better method to find the 10846 amd/hlfsd process to kill. 10847 10848 * amd/ops_afs.c (mount_toplvl), hlfsd/hlfsd.c (main): code to 10849 determine how to avoid df from seeing amd's toplvl mounts. Moved 10850 from libamu/mount_fs.c and include/am_utils.h. Ensure that hlfsd 10851 is hidden from df. 10852 (mount_toplvl): fixed df types for irix. 10853 10854Thu Jul 17 21:59:45 1997 Erez Zadok <ezk@americas.psl.cs.columbia.edu> 10855 10856 * amq/amq.c (main): fixed bug that caused the 5 second timeout for 10857 TLI amq using udp to be ignored. 10858 (main): if amq cannot contact remote host's portmapper within 5 10859 seconds, timeout and fail faster than the default longer timeout 10860 (this is for non-TLI systems). 10861 10862Thu Jul 17 17:08:13 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10863 10864 * amq/amq.c (get_secure_amd_client): if amq cannot contact 10865 remote host's portmapper within 5 seconds, timeout and fail faster 10866 than the default TLI timeout of over 4 minutes. 10867 10868 * amd/am_ops.c (ops_showfstypes): added styles for new bsd44 10869 file systems nullfs, unionfs, and umapfs. 10870 (ops_show1): cleanup code and and reuse this function. 10871 (vops): empty placeholders for nullfs, unionfs, and umapfs. 10872 10873 * amd/ops_{nullfs, unionfs, umapfs}.c: 3 new empty templates for 10874 bsd44 style file systems. 10875 10876 * fsinfo/fsinfo.8: man page for fsinfo rewritten from bsd44 10877 sources. 10878 10879 * amd/conf_tok.l, fsinof/fsi_lex.c: undefine ECHO to avoid 10880 conflict with systems that define it in <sys/ioctl.h> and also 10881 define a conflicting one via lex. Newer versions of f/lex are ok. 10882 10883Wed Jul 16 00:17:45 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10884 10885 * amd/ops_nfs.c (mount_nfs_fh): fill in nfs_args' fields 10886 acdirmin/max and acregmin/max only if they exist. 10887 10888 * aux/configure.in: test for nfs_args fields acdirmin and 10889 acregmin. 10890 10891Tue Jul 15 17:24:09 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10892 10893 * aux/configure.in: commented out checking for MNT2_GEN_OPT_* for 10894 "nondev" and commented back in checking for "nodev". This was a 10895 typo. 10896 10897 * include/am_compat.h: more compatibility options: define "ro" 10898 mnttab option all the time. Define "overlay" as needed. Added 10899 more fillers of mnttab options (as per Daniel S. Riley 10900 <dsr@mail.lns.cornell.edu>), for acdirmax, acdirmin, acregmax, 10901 acregmin, noac, grpid, nosuid, and actimo. 10902 10903 * libamu/mount_fs.c (mnt_flags): fixed a typo in "ro" option as 10904 per dsr@mail.lns.cornell.edu (Daniel S. Riley). Then cleaned up 10905 the same code for other options in struct opt_tab. 10906 10907Mon Jul 14 22:36:37 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10908 10909 * amd/get_args.c (get_args): moved amd.conf file parsing to before 10910 the switching the default log/debug options. Suggested by 10911 dsr@mail.lns.cornell.edu (Daniel S. Riley). 10912 10913 * aux/update_build_version: new script to record the build version 10914 of amd, along with the rest of the info thet comes up with amd -v. 10915 10916Sun Jul 13 00:30:24 1997 Erez Zadok <ezk@decca.damtp.cam.ac.uk> 10917 10918 * aux/macros/os_cflags.m4: new macro, to add additional 10919 compilation options (also used during configuration), based on the 10920 OS and the compiler. Used for solaris-2.6, osf, and irix6. 10921 10922Fri Jul 11 10:15:11 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10923 10924 * amd/conf_tok.l, conf_parse.y: allow values of keys to include 10925 white spaces, if they are double-quoted (key="some value") 10926 10927 * amd/info_hesiod.c (hesiod_search): cleanup and minor bug fixes 10928 of hesiod from Danny Braniss <danny@cs.huji.ac.il>. 10929 10930Fri Jul 11 02:16:06 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10931 10932 ******************************************************************* 10933 *** Released am-utils-6.0a7 *** 10934 ******************************************************************* 10935 10936Thu Jul 10 12:19:25 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10937 10938 * include/am_defs.h: fill in extern definition of innetgr() in 10939 case system headers don't. 10940 10941 * aux/macros/path_prog_lex.m4 aux/configure.in: using macros that 10942 will show the full pathname to yacc/bison and f/lex. Some systems 10943 have older or bad versions of those and this way the user will 10944 know for sure what is being invoked. 10945 10946 * tasks: file populated with todo items. 10947 10948 * scripts/amd2ldif.in: Script to convert amd maps to plain text 10949 LDAP object files. Contributed by Leif Johansson 10950 <leifj@matematik.su.se>. 10951 10952 * aux/config.guess: added recognition for sun3's running 4.2bsd, 10953 from Tom Schmidt <tschmidt@micron.com>. Fixed one small typo. 10954 10955 * amd/conf.c: several variables that were local to a map, were 10956 also added to [global], where they apply to all maps. Each map 10957 can then individually override those defaults. Flags 10958 affected: browsable_dirs and mount_type. Options affected: 10959 map_type, map_options, and search_path. 10960 10961 * amd/amd.h: eliminated several global flags each of which took an 10962 int, in favor of one global flags variable used as a bit field. 10963 10964 * amd/amd.c (init_global_options): moved all global variables into 10965 a single struct amu_global_options, so it is easier to add new 10966 ones and/or identify existing ones. 10967 10968 * amd/get_args.c (get_args): removed unused amd -m option. 10969 10970 * amd/conf.c (gopt_cluster): added new amd.conf option for cluster 10971 name, same as amd -C. 10972 10973 * amd/info_ldap.c: LDAP info map functions from Leif Johansson 10974 <leifj@matematik.su.se>. 10975 10976 * amd/conf.c (gopt_ldap_base, gopt_ldap_hostports): put in global 10977 amd.conf options for ldap_base and ldap_hostports. 10978 10979 * amd/opts.c (f_netgrp): new amd map function netgrp(ARG) to test 10980 if the current host is in the ARG host netgroup. 10981 10982 * aux/configure.in: some systems replaced dbm in libc with GNU's 10983 libgdbm, so check for libgdbm, but only if dbm_open is not in 10984 libc already. This was a recommendation from Tom Schmidt 10985 <tschmidt@micron.com>. 10986 10987 * conf/nfs_prot/nfs_prot_sunos5_3.h: port to sparc-sun-solaris2.3 10988 completed. 10989 10990Wed Jul 9 18:14:59 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10991 10992 * port to sparc-unknown-netbsd1.2E done, not tested. Includes NFS 10993 V.3. 10994 10995Tue Jul 8 17:35:07 1997 Erez Zadok <ezk@elk.mcl.cs.columbia.edu> 10996 10997 * port to i386-unknown-freebsd3.0 done and working. Includes NFS 10998 V.3. 10999 11000 * aux/macros/check_nfs_fh_dref.m4: freebsd3 should use 11001 file handle dereferencing style similar to freebsd22. 11002 11003 * include/am_defs.h: need to include <net/if_var.h> before 11004 <netinet/if_ether.h> on freebsd3. 11005 11006 * conf/nfs_prot/nfs_prot_freebsd3.h: new protocol header additions 11007 for freeBSD 3.0. 11008 11009Tue Jul 8 16:53:41 1997 Erez Zadok <ezk@moisil.cs.columbia.edu> 11010 11011 * amd/info_nis.c (nis_reload): cast nis' callback function so 11012 picky compilers won't complain. 11013 11014 * libamu/xdr_mountres3.c (xdr_mountres3): make sure this function 11015 gets compiled only if the system has NFS V3 and does not have 11016 xdr_mountres3. 11017 11018Tue Jul 8 12:42:03 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11019 11020 * COPYING: put in some legal stuff in this file. 11021 11022Mon Jul 7 19:10:44 1997 Erez Zadok <ezk@prometheus.soscorp.com> 11023 11024 * NFS V3 now works under Irix5, thanks to patches from 11025 Andreas Stolcke <stolcke@speech.sri.com>. 11026 11027 * conf/mount/mount_irix5.c: sparate mount_irix.c into an irix5 11028 version and an irix6 version, since irix5's NFS V3 code is broken 11029 and hacky. 11030 11031 * amd/info_hesiod.c (hs_zone_transfer): minor fixes to buffer 11032 sizes for some hesiod queries. Patch from Danny Braniss 11033 <danny@cs.huji.ac.il>. 11034 11035Mon Jul 7 19:04:14 1997 Erez Zadok <ezk@glory.soscorp.com> 11036 11037 * amd/ops_nfs.c (mount_nfs_fh): fixed NFS V.3 support for bsdi3. 11038 11039Sun Jul 6 14:22:24 1997 Erez Zadok <ezk@glory.soscorp.com> 11040 11041 * aux/{configure.in,acconfig.h}: added checks for struct 11042 nfs_args's fields proto and sotype (bsdi3). 11043 11044 * amd/ops_nfs.c (mount_nfs_fh): added nfsv3 option to 11045 nfs_args.flags for bsdi3. Set field proto to 0. Set sotype field 11046 to SOCK_STREAM or SOCK_DGRAM. 11047 11048 * aux/macros/check_mount_style.m4: add case for bsdi3. 11049 11050 * amd/info_hesiod.c: got hesiod support for bsdi3. 11051 11052Sun Jul 6 11:14:47 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11053 11054 * aux/configure.in: look for hesiod on libc (bsdi3) 11055 11056 * amd/get_args.c (get_args): reformat usage so it fits in 80 11057 columns. 11058 11059 * scripts/ctl-amd.in: changed directory name for optional tftpboot 11060 map to /tftpboot/.amd. 11061 11062Sat Jul 5 17:46:45 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11063 11064 ******************************************************************* 11065 *** Released am-utils-6.0a6 *** 11066 ******************************************************************* 11067 11068Sat Jul 5 03:17:09 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11069 11070 * scripts/ctl-amd.in: include -T tag for tftpboot. 11071 11072 * new port: mips-sgi-irix5.3. Compiled with gcc, but NFS V3 code 11073 is broken and needs work on the specific nfs_args that irix5 uses 11074 for V3 mounts. 11075 11076Sat Jul 5 01:44:25 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11077 11078 * amd/get_args.c (get_args): new options amd -T tag. A map with 11079 tag=foo matching the -T tag will be processed. All untagged maps 11080 get processed all the time. 11081 11082Fri Jul 4 16:19:26 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11083 11084 * aux/configure.in: need to check for strcasecmp in libucb (ncr2) 11085 11086 * aux/macros/check_os_libs.m4: a new macro to set the usage of 11087 libnsl and libsocket based on the OS. 11088 11089 * libamu/mount_fs.c (mnt_flags): used MNTTAB_OPT_GRPID if it is 11090 defined (problem on osf4). 11091 11092 * conf/nfs_prot/nfs_prot_irix5.h: new file for irix5 headers. 11093 11094 * include/am_defs.h, aux/macros/try_compile_nfs.m4, 11095 aux/macros/mount_headers.m4: do include <sys/proc.h> because it 11096 failes on irix5. Rather, put in the individual 11097 conf/nfs_prot/nfs_prot_*.h headers. 11098 11099 * amd/conf.c: AIX3 doesn't like strdup() being passed a constant 11100 char*, so cast all strdup()'s args to a non-const char*. 11101 11102 * amd/mapc.c (root_newmap): don't try to strdup only a "const 11103 char *". 11104 11105Fri Jul 4 15:47:10 1997 Erez Zadok <ezk@americas.psl.cs.columbia.edu> 11106 11107 * conf/nfs_prot/nfs_prot_sunos4.h: added rpc/rpc.h and 11108 sys/errno.h. 11109 11110Thu Jul 3 17:49:00 1997 Erez Zadok <ezk@prometheus.soscorp.com> 11111 11112 * made sure am-utils compiles, links, and runs properly on Irix 11113 6.2 using "cc -32 -Wl,-woff," 11114 11115 * aux/macros/check_lib2.m4: a bug fix version to autoconf 2.12 11116 AC_CHECK_LIB. If OTHER-LIBRARIES are defined and used, then add 11117 them to $LIBS. 11118 11119 * aux/configure.in: some cleanup of which libraries are needed. 11120 Espectially ensure that libnsl is included only on Solaris, where 11121 so far it is the only system on which it is absolutely necessary. 11122 Also no longer need to include libc explicitly. 11123 11124 * amd/amd.c,wire-test/wire-test.c (main): convert IP address to 11125 network-long order before printing it. 11126 11127 * wire-test/wire-test.c (main): also check and report on the IP 11128 address of the local host, since some systems have bad versions of 11129 get_myaddress, or ones that conflict with other versions in 11130 multiple libraries (SunOS 4 and Irix especially). 11131 11132Wed Jul 2 18:19:02 1997 Erez Zadok <ezk@starblazers.soscorp.com> 11133 11134 * scripts/ctl-amd.in: don't use full pathname so killproc() works 11135 better. Also run bsd44 and irix style ps programs. 11136 11137 * aux/macros/check_lib_funcs.m4: bug fixed: used to define usage 11138 of library no matter if it was found or not. 11139 11140Wed Jul 2 02:11:48 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11141 11142 * aux/macros/check_mnt2_gen_opt.m4: turned back on the checking 11143 for M_* macros, but ensure that <sys/stream.h> is not included at 11144 all so it won't conflict with other M_* macros. 11145 11146Tue Jul 1 21:16:51 1997 Erez Zadok <ezk@mako.cs.columbia.edu> 11147 11148 * conf/mount/mount_irix.c (mount_irix): first arg to mount(2) on 11149 irix should be "spec" (host:/path), not the dir of the mnt point. 11150 11151 * amd/ops_afs.c (afs_lookuppn): bug in enable_default_selectors 11152 fixed. If on, it essentially ignored the setting in a 11153 selector-controlled /defaults if there were 2 or more entries in it. 11154 11155Tue Jul 1 12:23:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11156 11157 * scripts/ctl-{amd,hlfsd}.in (killproc): if failed to find process 11158 using BSD style ps, then try SVR4 style ps. 11159 11160 * include/am_utils.h (amuDebug): renamed Debug macro to amuDebug 11161 etc., to avoid conflicts with similar named macros in <ldap.h>. 11162 11163 * aux/configure.in, amd/info_ldap.c, etc.: put in all the autoconf 11164 support needed for LDAP. Now the code has to be written mostly in 11165 amd/info_ldap.c. 11166 11167 * Included additional patches from Andreas Stolcke 11168 <stolcke@speech.sri.com> to support using the best possible 11169 combination of NFS version (2,3) and protocol (udp,tcp) for any 11170 given host, since it appears that some Irix versions have NFS V3, 11171 but do not support TCP. 11172 11173 * scripts/ctl-amd.in: updated amd control script to look for and 11174 use amd.conf file. 11175 11176Tue Jul 1 00:28:23 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11177 11178 * amd/mapc.c (mapc_create): now, each map in the amd.conf can be 11179 initialized off of a different type, or default to cycling through 11180 all maps until one of them matches. 11181 11182Mon Jun 30 20:49:13 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11183 11184 * amd/ops_afs.c (afs_readdir): per-map browsing (readdir) done. 11185 if browsable_dirs=yes is set in the map section in amd.conf, that 11186 map will return all entries back to a readdir(2). 11187 11188Sun Jun 29 16:22:11 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11189 11190 * rudimentary amd.conf file support included. You may even 11191 override things like os=sos5, to get "backwards" compatibility with 11192 upl102. 11193 11194Sat Jun 28 13:35:02 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11195 11196 * amd/conf.c: new file to process amd.conf file. 11197 11198 * amd/get_args.c (get_args): new options -H to print help. 11199 11200 * moved enable_default_selectors to be amd.conf controlled, and 11201 not compiler controlled. 11202 11203 * amd/get_args.c (get_args): new options -F <conf-file> to parse an 11204 amd configuration file. 11205 11206Wed Jun 25 23:15:42 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11207 11208 * converted all files that used strcmp() == 0 or != 0 to using 11209 the STREQ() macro. 11210 11211Mon Jun 23 22:31:14 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11212 11213 * aux/macros/check_lib_funcs.m4: new M4 macro that can be used to 11214 search for any number of functions in any given library. 11215 11216Mon Jun 23 01:04:23 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11217 11218 * amd/mapc.c: Included patch from Leif Johansson 11219 <leifj@matematik.su.se> to ensure that systems without an RE 11220 library can compile. 11221 11222 * libamu/mount_fs.c (mount_fs): Included patch from Andreas 11223 Stolcke <stolcke@speech.sri.com>, to ensure that mount options on 11224 table are properly delimited by a comma. 11225 11226 * amd/ops_nfs.c (mount_nfs_fh): Included patch from Andreas 11227 Stolcke <stolcke@speech.sri.com>, to allow users to override the 11228 proto= and vers= mount options. 11229 11230Sun Jun 22 01:00:11 1997 Eric Dana (edana@ncr2.bgs.com) 11231 11232 * conf/nfs_prot/nfs_prot_svr4.h: port completed to 11233 i486-ncr-sysv4.3.03. Assorted source cleanups done. 11234 11235 * include/am_defs.h, aux/macros/mount_headers.m4: don't include 11236 mnttab.h if sys/mnttab.h was already included, because on ncr2, 11237 they contain conflicting entries for struct mnttab. 11238 11239Sat Jun 21 23:52:15 1997 Eric Dana (edana@ncr2.bgs.com) 11240 11241 * aux/macros/check_nfs_prot_headers.m4: added support for ncr2. 11242 11243Fri Jun 20 06:14:17 1997 Erez Zadok <ezk> 11244 11245 * amd/*.c: lots of 64-bit "ugly" ports like casts to long ints. 11246 11247 * aux/macros/struct_nfs_fh.m4: check for "struct nfssvcfh" because 11248 on DU-4.0 it is better than the next one to be picked (nfsv2fh_t). 11249 11250Wed Jun 18 18:59:49 1997 Erez Zadok <ezk@defiant.soscorp.com> 11251 11252 * aux/macros/struct_nfs_fh.m4 (AC_TRY_COMPILE_NFS): check for 11253 nfsv2fh_t before fhandle_t becasue on bsdi2.1 the former is 11254 better. 11255 11256Tue Jun 10 17:06:58 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11257 11258 * amd/rpc_fwd.c (fwd_packet): TLI bug fix. if fwdto socket is 11259 NULL, set the maxlen and len fields in netbuf to zero. 11260 11261Wed May 28 22:52:28 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11262 11263 * scripts/fix-amd-map.in (name): replace all matching patterns on 11264 line. 11265 11266Sun May 25 19:33:41 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11267 11268 ******************************************************************* 11269 *** Released am-utils-6.0a5 *** 11270 ******************************************************************* 11271 11272Sun May 25 13:37:24 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11273 11274 * amd/amq_subr.c (amqproc_getvers_1_svc): amq's RPC service 11275 procedure now returns the full string that amd -v returns. 11276 11277 * amd/get_args.c (get_version_string): new function to return 11278 complete version/info string so it could be used more flexibly. 11279 11280 * amd/am_ops.c (ops_showamfstypes, ops_showfstypes): put the list 11281 of Fs types into a string buffer, rather than a FILE*. 11282 11283 * amd/mapc.c (mapc_showtypes): put the list of map types into a 11284 string buffer, rather than a FILE*. 11285 11286Sun May 25 01:25:36 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11287 11288 * amd/get_args.c (get_args): amd -v also prints user who built 11289 amd, hostname built on, and date of configuration. 11290 11291Sat May 24 13:40:50 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11292 11293 * scripts/lostaltmail.conf-sample: sample lostaltmail 11294 configuration file. 11295 11296 * scripts/lostaltmail.in: new script lostaltmail used to redeliver 11297 "lost" mail that hlfsd redirected to a temp location because the 11298 primary home file system of the user was full. 11299 11300 * scripts/amd2sun.in: new script amd2sun. Used to convert Sub 11301 automount maps to amd maps. 11302 11303 * scripts/ctl-hlfsd.in: new script ctl-hlfsd. Used to start, 11304 stop, or restart hlfsd. 11305 11306 * scripts/expn.1: man page for expn command. 11307 11308 * scripts/ctl-amd.in: new script ctl-amd. Used to start, stop, or 11309 restart amd. 11310 11311 * scripts/expn.in: new script expn. Actually taken from David 11312 Muir Sharnoff <muir@idiom.com>. Used by hlfsd's mail re-delivery 11313 script. 11314 11315 * scripts/wait4amd.in: new script wait4amd added. Waits for amd 11316 to come up on a host, and then runs a command (rsh $hostname by 11317 default). 11318 11319 * scripts/Makefile.am: new directory now holds all shell/perl 11320 scripts that belong to am-utils. 11321 11322 * conf/mount/mount_linux.c (parse_opts): new parser for 11323 linux-specific mounts. Handles fs-type specific mount-options 11324 correctly. Currently implemented: msdos, iso9660. 11325 11326 * amd/ops_pcfs.c (pcfs_ops): don't timeout pcfs mounts by default 11327 (fix for linux). 11328 11329 * amd/ops_cdfs.c (cdfs_ops): don't timeout cdfs mounts by default 11330 (fix for linux). 11331 11332 * amd/mapc.c (make_entry_chain): fixed bug that resulted in amd 11333 core dumps upon "ls" of a mount point; an invalid pointer was 11334 being returned and dereferenced. 11335 11336 * port to Linux sparc working! 11337 11338 * hlfsd/homedir.c (hlfsd_diskspace): close file descriptor if 11339 failed to write test file, or else the fd will leak. 11340 11341Sun May 18 00:42:41 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11342 11343 * amd/info_hesiod.c (hs_strip_our_domain): use strcasecmp() 11344 instead of strcmp(). 11345 11346 * Port to Digital Unix 4.0 (OSF) done. 11347 11348 * hlfsd/hlfsd.c: renamed dirname to dir_name to avoid conflicts 11349 with dirname() function in <string.h> on OSF systems. 11350 11351 * fsinfo/fsi_util.c (set_ether_if): take out extern definition of 11352 inet_addr(). It should come from <arpa/inet.h> instead. 11353 11354 * conf/mtab/mtab_osf.c: fixed macros and added NFS V3 specs. 11355 11356 * include/am_utils.h: renamed FIRST/LAST to AM_FIRST/AM_LAST to 11357 avoid conflicts with DU 4.0 system header. 11358 11359Thu May 15 22:49:12 1997 Erez Zadok <ezk@subzero.cs.columbia.edu> 11360 11361 * libamu/mount_fs.c (mount_fs): pass along NFS version so I can 11362 determine if to include additional options in the mount table file 11363 entry (such as proto=tcp, and vers=3). 11364 11365Thu May 15 00:42:12 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11366 11367 * libamu/mount_fs.c (mount_fs): include NFS version number in the 11368 mount table options, as well as proto={tcp,udp}. 11369 11370Wed May 14 14:30:19 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11371 11372 * NFS V3 code ported to most other systems, so it compiles for V2 11373 and V3 NFS systems. 11374 11375 * NFS VERSION 3 support, first pass. Working for Solaris and 11376 using TCP. 11377 11378Sun May 11 01:14:29 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11379 11380 * amq/amq.c: many newline characters were missing from various 11381 stderr printfs. 11382 11383Sat May 10 13:09:06 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11384 11385 * conf/nfs_prot/nfs_prot_sunos5.h: protocol defintions for 11386 Solaris, which include NFS V3 support. 11387 11388 * conf/nfs_prot/nfs_prot_default.h: default NFS protocol headers. 11389 11390 * conf/transp/transp_{tli,sockets}.c (get_mount_client): use NFS 11391 protocol version while getting a mount client. 11392 11393 * amd/ops_nfs.c (mount_nfs_fh): set the mount types, mnttab types, 11394 file handle size, and proper file handle based on the correct NFS 11395 version number. 11396 11397 * conf/mount/mount_svr4.c (mount_svr4): support NFS3 mounts under 11398 Solaris and other SVR4 systems. 11399 11400 * amd/ops_nfs.c: store NFS file handle version and version 11401 specific handle in struct fh_cache. 11402 (got_nfs_fh): pick the correct RPC reply based on the NFS version 11403 of the server. 11404 (prime_nfs_fhandle_cache): figure out the right NFS file handle 11405 for a node, but now include NFS protocol version information. 11406 (call_mountd): set the correct version for the mount protocol, 11407 based on the NFS protocol version. 11408 (nfs_init): use the NFS protocol generic structure 11409 am_nfs_handle_t. 11410 11411 * include/am_utils.h: new structure am_nfs_handle_t to contain all 11412 possible versions of NFS file handles. 11413 11414 * amd/srvr_nfs.c (start_ping): ping program performs NFS version 11415 specific pings. 11416 (recompute_portmap): figure out the correct portmap version mount. 11417 (nfs_keepalive): call start_ping() with the correct NFS version. 11418 (find_nfs_srvr): if mount option "vers=" is given, use it. Get 11419 the NFS server version and verify that it is up. 11420 11421 * conf/transp/transp_{tli,sockets}.c (get_nfs_version): a new 11422 function to find the best NFS version for a particular host. 11423 11424 * libamu/amu.h: determine what is the highest version of NFS we 11425 should try. 11426 11427 * include/am_utils.h (NFS_VERSION3): added definition for NFS V3 11428 protocol number. 11429 Added field fs_version to struct fserver, so we can now store the 11430 server protocol version. 11431 11432Fri May 9 01:09:45 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11433 11434 * aux/macros/check_field.m4 (AC_MOUNT_HEADERS): map '.' (dot) into 11435 underscores too, so I can test for sub-fields. 11436 11437 * libamu/wire.c: use test that checks for sub-fields of struct 11438 ifreq. 11439 11440Sat May 6 10:20:17 2000 Erez Zadok <ezk@glory.soscorp.com> 11441 11442 * port to BSD/OS 3.0 completed! Many xdr_ functions were broken 11443 into smaller files. M4 macros fixed to test for existence of 11444 file systems using getvfsbyname(). 11445 11446 * amd/sched.c (sigchld): signal handler must waitpid() for all 11447 possible children. 11448 11449 * hlfsd/homedir.c: signal handler must waitpid() for all possible 11450 children. 11451 11452 * aux/macros/check_restartable_signals.m4: new macro to determine 11453 if need to reinstall signal handlers per OS is better than trying 11454 to figure these out based on system macros. 11455 11456Fri May 5 19:23:28 2000 Erez Zadok <ezk@glory.soscorp.com> 11457 11458 * amd/ops_nfs.c (mount_nfs_fh): set nfs_args_t version number. 11459 11460 * amd/ops_afs.c (mount_toplvl): set nfs_args_t version number. 11461 11462 * amd/ops_nfs.c (mount_nfs_fh): process nfs mount option resvport 11463 (must be supplied for bsdi 3.0) 11464 11465 * libamu/wire.c: use HAVE_FIELD_STRUCT_IFREQ_IFR_ADDR (and 11466 associated new macro) for determining the right way to compute the 11467 size of the interface structure. 11468 11469Fri Apr 11 15:56:13 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11470 11471 * aux/configure.in: need to include libc before libnsl if 11472 get_myaddress() is available because on irix libnsl has a buggy 11473 get_myaddress(). 11474 11475 * include/am_defs.h: make sure REINSTATE_SIGNAL_HANDLER is defined 11476 on Irix 6 (an SVR4 variant) 11477 11478Thu Mar 27 02:28:40 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11479 11480 ******************************************************************* 11481 *** Released am-utils-6.0a4 *** 11482 ******************************************************************* 11483 11484Wed Mar 26 21:15:36 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11485 11486 * amd/amq_subr.c (ok_security): turned off insecure code unless 11487 user explicitly runs configure --enable-amq-mount. 11488 11489 * hlfsd/hlfsd.c (main): use new protoypes dor create_nfs_service(). 11490 11491 * amd/nfs_start.c (mount_automounter): use code that separately 11492 creates the NFS and the amq service. Register tcp and udp 11493 services for amd. 11494 11495 * conf/transp/transp_*.c (create_amq_service): new function to 11496 separately create the amq service for amd. Simplified prototypes 11497 for create_nfs_service(). 11498 11499Wed Mar 19 20:40:56 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11500 11501 ******************************************************************* 11502 *** Released am-utils-6.0a3 *** 11503 ******************************************************************* 11504 11505Wed Mar 19 17:49:18 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11506 11507 * new port: rs6000-ibm-aix3.2.5 and rs6000-ibm-aix4.1.5.0. Lots 11508 of small changes to support these two. 11509 11510Wed Mar 19 14:33:30 1997 Erez Zadok <ezk@grande.cs.columbia.edu> 11511 11512 * conf/umount/umount_default.c (umount_fs): bug: unlock_mntlist() 11513 should run if MOUNT_TABLE_ON_FILE, not otherwise. 11514 11515Mon Mar 17 22:02:43 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11516 11517 * hlfsd/hlfsd.c (main): fill in fhsize field if exists 11518 (freebsd-2.2). 11519 11520 * amd/ops_{nfs,afs}.c (mount_toplvl): fill in fhsize field if 11521 exists (freebsd-2.2). 11522 11523Sat Mar 15 19:37:48 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 11524 11525 * new port: i386-unknown-freebsd2.2. FreeBSD 2.2 and higher 11526 changed the filehandle type in struct nfs_args from nfsv2fh_t to 11527 u_char. 11528 11529Sat Mar 14 10:11:03 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11530 11531 * SHARED LIBRARIES: too many changes to list individually. Now, 11532 libamu can be built as a shared library, and other programs link 11533 with it. 11534 11535Tue Mar 11 22:24:09 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11536 11537 * aux/macros/opt_shared.m4: new macro for setting options for 11538 building shared am-utils libraries. 11539 11540Sun Mar 9 19:17:46 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11541 11542 * fixmount/fixrmtab: cleaned up the script. 11543 11544 * fixmount/Makefile.am (EXTRA_DIST): adde $(sbin_SCRIPTS) so that 11545 fixrmtab gets distributed too. 11546 11547 * conf/nfs_prot/nfs_prot_bsdi2.h: added support for MOUNTPROC_DUMP. 11548 Added extern for xdr_mountlist(). 11549 11550 * aux/configure.in: trimmed down many tests for MNT2_GEN_OPT, 11551 MNT2_NFS_OPT, and MNTTAB_OPT that were not referenced anywhere in 11552 the sources. 11553 11554Sat Mar 8 00:23:58 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11555 11556 * fixmount/hlfsd ported to bsd44, hpux, and linux systems. 11557 11558 * aux/macros/check_fixmount_style.m4: add check for bsd44 systems. 11559 11560 * conf/fixmount/fixmount_default.c: use lockf() if flock() is 11561 unavailable. 11562 11563 * include/am_defs.h: include <string.h> even if don't have 11564 STDC_HEADERS defined (sunos4). 11565 (seteuid): define seteuid() to be setresuid() for systems that 11566 have but not the other (hpux). 11567 11568 * aux/macros/check_extern.m4: test should include <strings.h>. 11569 11570Tue Mar 4 17:16:52 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11571 11572 * lib/xutil.c (debug_option): moved from amd/getargs.c to this 11573 more proper file. 11574 11575 * include/am_utils.h: put in structure for debug options, for all 11576 progams to use. 11577 11578 * amd/get_args.c: moved structure for debug options out. 11579 11580Sun Mar 2 00:13:07 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11581 11582 * ported fixmount. 11583 11584 * lib/ualarm.c: replacement function for systems that don't have a 11585 ualarm(). 11586 11587 * ported fsinfo. 11588 11589Sun Mar 1 10:23:34 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11590 11591 * ported mk-amd-map. 11592 11593 * buildall: added -K option to buildall, to run mkconf. 11594 11595Fri Feb 28 01:10:25 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 11596 11597 ******************************************************************* 11598 *** Released am-utils-6.0a2 *** 11599 ******************************************************************* 11600 11601Thu Feb 27 13:58:59 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 11602 11603 * all *.[hcyl] files: add copyright line. 11604 11605 * aux/macros/check_mount_type.m4: test for mount type for 11606 linux-like systems, by checking for loadable or statically linked 11607 kernel filesystem modules. 11608 11609 * aux/macros/check_mnttab_type.m4: test for mount table entry 11610 for linux-like systems, by checking for loadable or statically 11611 linked kernel filesystem modules. 11612 11613 * aux/configure.in: pcfs filesystems can use vfat type (linux) 11614 11615 * aux/macros/check_fs_mntent.m4: test for filesystem existence for 11616 linux-like systems, by checking for loadable or statically linked 11617 kernel filesystem modules. 11618 11619 * conf/trap/trap_hpux.h: ugly hack added because of stupide HPUX 11620 9.0 header files. This should be removed when HPUX 9.0 is deemed 11621 defunct. 11622 11623 * aux/acconfig.h: set an undefined variable for having an extern 11624 to clnt_sperrno(). 11625 11626 * include/am_defs.h: define extern for clnt_sperrno() if needed. 11627 11628 * aux/configure.in: test for extern clnt_sperrno(). 11629 11630 * aux/macros/check_nfs_fh_dref.m4: HPUX's NFS fhandle dref is 11631 similar to irix. 11632 11633 * aux/macros/check_mount_style.m4: use mount helper on HPUX. 11634 11635 * aux/macros/check_mtype_type.m4: hpux's mount type is a char*, 11636 not integer (but may be mapped to one later). 11637 11638 * conf/mount/mount_hpux.c (mount_hpux): HPUX has confusing header 11639 files. They have mount(2) and vfsmount(2) which don't take same 11640 arguments, and they have string mount types MNTTYPE_* as well as 11641 integer types MOUNT_*. So I need this new mount function to map 11642 from string types to integer types for the vfsmount() function. 11643 11644 * conf/trap/trap_hpux.h (MOUNT_TRAP): instead of calling 11645 vfsmount(), call mount_hpux(). 11646 11647Thu Feb 27 03:34:14 1997 Erez "HWank1" Zadok <ezk@okeeffe.cs.columbia.edu> 11648 11649 * lib/mount_fs.c (mnt_flags): make sure SYNC option is on only if 11650 both MNTTAB_OPT_SYNC and MNT2_GEN_OPT_SYNC are defined. 11651 11652Thu Feb 27 00:26:00 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 11653 11654 * conf/nfs_prot/nfs_prot_hpux.h: NFS protocol definitions for 11655 hpux. 11656 11657 * include/am_defs.h: no need to include rpc/auth.h or rpc/clnt.h. 11658 11659 * aux/configure.in: no need to test for rpc/auth.h and rpc/clnt.h. 11660 11661 * buildall: added ability to configure using other shells than 11662 /bin/sh, on those systems where /bin/sh is buggy or limited 11663 (HPUX). 11664 11665 * aux/macros/struct_nfs_fh.m4: reinstated the macro but have it 11666 defined am_nfs_fh, and also test for plain typedef "nfs_fh". 11667 11668 * aux/acconfig.h: #undef am_nfs_fh, which is being defined by a 11669 reinstated macro. 11670 11671 * aux/configure.in: check for <nfs/export.h> 11672 11673 * include/am_defs.h: include <nfs/export.h> (HPUX) if exists. 11674 11675 * aux/macros/try_compile_nfs.m4: include <nfs/export.h> (HPUX) if 11676 exists. 11677 11678 * aux/macros/mount_headers.m4 (define): removed some non-working 11679 (on HPUX) code that attempts to recreate the fhandle_t rather than 11680 load it up from system headers. Also added some NFS protocol 11681 header inclusion. include <nfs/export.h> (HPUX) if exists. 11682 11683Wed Feb 26 00:32:35 1997 Erez "HWank1" Zadok <ezk@okeeffe.cs.columbia.edu> 11684 11685 * aux/macros/mount_headers.m4 (define): Use M4 changequote to 11686 ensure [] brackets are correctly used. 11687 11688 * aux/macros/expand_cpp_{string,hex,int}.m4: encapsulate 11689 multi-line M4 inclusions in []. 11690 11691Tue Feb 25 22:19:44 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 11692 11693 * conf/mtab/mtab_bsd.c (mnt_dup): use statfs field f_fstypename if 11694 it exists. 11695 11696 * aux/acconfig.h: HAVE_FIELD_STRUCT_STATFS_F_FSTYPENAME, new 11697 config.h macro for field f_fstypename of struct statfs. 11698 11699 * aux/configure.in: testing for field f_fstypename field of struct 11700 statfs (NetBSD). 11701 11702 * aux/acconfig.h: moved all of the "static" definitions out to a 11703 fixed file called include/am_defs.h. Added to all */Makefile.am 11704 files a dependency on am_defs.h. Created am_defs.h of course, and 11705 then added #include <amd_defs.h> to all of the source and header 11706 files that required it. 11707 11708Mon Feb 24 01:27:02 1997 Erez Zadok <ezk@defiant.soscorp.com> 11709 11710 * aux/acconfig.h: two more externals for xdr functions that may be 11711 implemented by libamu. 11712 11713 * conf/nfs_prot/nfs_prot_bsdi2.h: added missing RPC and XDR 11714 definitions. 11715 11716Sun Feb 23 15:25:26 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 11717 11718 * buildall (default): added -D option for turning on even stricker 11719 developer options. 11720 11721 * */Makefile.am: make sure @AMU_NFS_PROT_HEADERS@ is used to 11722 determine dependencies on optional NFS protocol headers. 11723 11724 * aux/acconfig.h: define and use HAVE_NFS_PROT_HEADERS as needed. 11725 11726 * aux/macros/check_nfs_prot_header.m4: new test to determine what 11727 NFS protocol headers to use. 11728 11729 * conf/nfs_prot/nfs_prot_{irix6,sunos4,bsdi2}.h: new headers to 11730 complete missing system headers for NFS protocol definitions. 11731 11732Sun Feb 16 15:58:42 1997 Erez "HWank1" Zadok <ezk@vir.cs.columbia.edu> 11733 11734 * amd/ops_nfs.c (mount_nfs_fh): encapsulated some more code in 11735 #ifdef's as needed. 11736 11737 * amd/ops_afs.c (mount_toplvl): make sure TIMEO/RETRANS code is 11738 suitable #ifdef'ed. 11739 11740 * include/am_compat.h: a couple more mnttab options 11741 (timeo/retrans) setting just in case. 11742 11743 * amd/autil.c (host_normalize): make sure hostent->h_name is 11744 passed a non-const char *. 11745 11746 * conf/mount/mount_linux.c (mount_linux): cleaned up a block of code. 11747 11748 * {lib,amq,amd}/*.c (many functions): cast xdr_entry to 11749 XDRPROC_T_TYPE. 11750 11751 * lib/nfs_prot_svc.c (nfs_program_2): cast xdr_entry to 11752 XDRPROC_T_TYPE. 11753 11754 * lib/nfs_prot_xdr.c (xdr_entry): cast xdr_entry to 11755 XDRPROC_T_TYPE. 11756 11757 * lib/wire.c (getwire): Make sure safe assignment from const to 11758 none is done. 11759 11760Sat Feb 15 19:38:51 1997 Erez "HWank1" Zadok <ezk@vir.cs.columbia.edu> 11761 11762 * aux/macros/expand_cpp_int.m4: new macro for expanding integers. 11763 11764 * aux/configure.in: added linux/fs.h support in configure and 11765 several M4 macros. 11766 11767 * conf/mount/mount_linux.c (mount_linux): use macro instead of 11768 "ugly" fixed hex number for mount() arguments. 11769 11770Sat Feb 15 02:09:47 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11771 11772 * amd/info_hesiod.c: removed macro HAVE_HS_ZONE_TRANSFER and 11773 turned all of its code always on. That code always seems to 11774 compile, as long as you have hesiod and libresolv. 11775 11776 * amd/mapc.c: removed macro HAVE_HS_ZONE_TRANSFER and turned all 11777 of its code always on. 11778 11779 * aux/configure.in: removed superfluous test for hs_zone_transfer 11780 function (will never find it because it is an amd-internal 11781 function). 11782 11783 * amd/mapc.c (maptypes): must used correct new name for am-utils' 11784 hesiod initialization function: hesiod_am_init. 11785 11786 * amd/info_hesiod.c (hesiod_am_init): renamed hesiod_init to 11787 hesiod_am_init so as not to conflict with libhesiod's 11788 hesiod_init() function. 11789 11790 * aux/configure.in: added test and explicit inclusion of 11791 libresolv.a for later resolution of library references with 11792 libhesiod. 11793 11794 * aux/macros/opt_cppflags.m4: new file. configure/compile C 11795 preprocessor flags. 11796 11797 * aux/macros/opt_libs.m4: new file. configure/compile library 11798 flags. 11799 11800 * Makefile.am (EXTRA_DIST_AUX): include two new macros 11801 opt_cppflags.m4 and opt_libs.m4. 11802 11803 * aux/configure.in: test for libhesiod needs to additional 11804 libresolv to link completely. Additional configuration time 11805 options added for setting initial CPPFLAGS and LIBS. 11806 11807Tue Feb 10 02:15:40 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11808 11809 ******************************************************************* 11810 *** Released am-utils-6.0a1 *** 11811 ******************************************************************* 11812 11813Thu Feb 6 02:55:19 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 11814 11815 * amd/info_ndbm.c (ndbm_search,ndbm_init): fixed the code so that 11816 it works on freebsd, where they map dbm_pagfno a non-existing 11817 macro on purpose, to force you to port the code to Berkeley DB. 11818 11819Fri Jan 31 01:35:09 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11820 11821 * amd/ops_afs.c (mount_toplvl): added a sleep(1) right before the 11822 actual mount_toplvl, to avoid some possible race conditions. 11823 11824Thu Jan 30 02:31:49 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11825 11826 * amd/rpc_fwd.c: removed all TLI (HAVE_T_OPEN) code. 11827 11828Wed Jan 29 18:25:07 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11829 11830 * lib/wire.c (getwire): removed HAVE_T_OPEN (TLI code) 11831 11832 * amd/amd.c (main): fix local address using htonl(). Free up 11833 buffers allocated by netdir_*() functions. 11834 11835Wed Jan 22 23:53:24 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11836 11837 * amd/fix-amd-map.in: new script that will convert old-style amd 11838 maps to new one. 11839 11840Tue Jan 21 01:18:16 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11841 11842 * FIRST AMD IN AM-UTILS FINALLY WORKS (mounts itself as toplvl, 11843 and replies back to simple nfs/link type mount queries). 11844 11845 * conf/mtab/mtab_svr4.c: reorganized the code in this file to be 11846 easier to read, and fixed a few bugs with un/setting the lock file 11847 descriptor. 11848 11849Wed Jan 8 15:27:49 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11850 11851 * amd/sched.c: removed HAS_SVR3_SIGNALS code to handle older 11852 signals in Svr3 systems. Only stellix ever used this. 11853 11854 * amd/rpc_fwd.c (fwd_reply): removed all code that was triggered 11855 by DYNAMIC_BUFFERS, since it was not in use. 11856 11857Tue Jan 7 00:45:59 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11858 11859 * amd/opts.c (eval_opts): removed AMD_COMPAT code. Amd no longer 11860 takes '=' sign as old selector. Fix your maps. 11861 (deslashify): removed APOLLO code that treated two '//' as one. 11862 11863Sun Jan 5 01:25:09 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11864 11865 * amd/ops_nfsx.c (nfsx_init): removed HARD_NFSX_ERRORS, code which 11866 was not used. It made any submount error fail the whole group. 11867 11868 * amd/ops_nfs.c (make_nfs_auth): removed code dependent on 11869 HAS_NFS_QUALIFIED_NAMES. 11870 (mount_nfs_fh): removed macro for NFS_ARGS_NEEDS_PATH, assuming it 11871 is never on. So code that was triggered by #ifndef 11872 NFS_ARGS_NEEDS_PATH (osf1, aix3, and bsd44 variants) may have to 11873 be fixed later. 11874 Removed all ULTRIX_HACK code. Ultrix is DEAD! 11875 removed all PRESET_AC code, which was only on for Linux to preset 11876 the attribute cache values (otherwise they default to zero). 11877 (nfs_umounted): revobed KICK_KERNEL code (IRIX systems). Will 11878 have to fixed up later. 11879 (mount_nfs_fh): removed code that was never included, which 11880 attempted to set the port on which amd's nfs mounts on. This 11881 isn't supported by the ping algorithm yet. In any case, it is all 11882 done in nfs_init(). 11883 11884 * amd/srvr_nfs.c (find_nfs_srvr), amd/ops_nfs.c (mount_nfs_fh): 11885 removed HAS_TCP_NFS code. The whole use of NFS V.3 with TCP or 11886 specially hacked NFS V.2 that uses TCP (BSD 4.4 variants) will 11887 have to be addressed later. 11888 11889 * amd/nfs_subr.c (nfsproc_getattr_2): removed all code dependent 11890 on PRECISE_SYMLINKS. 11891 11892 * amd/mapc.c (mapc_meta_search): removed code that depended on 11893 HAS_DEPOT. It is known buggy code. The whole DEPOT support needs 11894 to be rethought. 11895 (mapc_add_kv): ported code to use standard regular expression 11896 (regexp) library. 11897 11898 * amd/{map.c,ops_sfs.c,ops_ufs.c}: removed all code dependent on 11899 FLUSH_KERNEL_NAME_CACHE and the macro itself. 11900 11901Sat Jan 4 15:46:58 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11902 11903 * amd/map.c (exported_ap_alloc): removed all code triggered by 11904 SHRINK_EXPORTED_AP and the macro itself. 11905 11906 * amd/info_nis.c: removed HAS_NIS_RELOAD macro, and left the code 11907 in all the time. Assuming that there is always NIS realod 11908 available. 11909 (yp_all_fixed): removed code for BROKEN_YP_ALL. If your yp_all() 11910 function is broken such that it does not release filedescriptors 11911 it created, then you are hosed. Get a fix for yp_all from your 11912 vendor or switch operating systems. 11913 11914Tue Dec 31 15:34:36 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11915 11916 * amd/info_hesiod.c: renamed macro HAS_HESIOD_RELOAD to 11917 HAVE_HS_ZONE_TRANSFER. 11918 11919Mon Dec 30 17:33:23 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11920 11921 * amd/{nfs,host}_ops.cremoved INFORM_MOUNTD macro, so its code is 11922 always included. We should always try to inform the remove mount 11923 daemon of mounts we performed. If we want an option for this, it 11924 should be a run-time option. 11925 11926 * amd/host_ops.c: removed all that optionally did not make the 11927 directory mount points for amd. 11928 11929 * HOST_EXEC code removed from everywhere. There is no indication 11930 that it was used anywhere. If it needs to be used, then a 11931 run-time switch should control it. 11932 11933Thu Dec 26 00:06:52 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11934 11935 * amd/*_ops.c: removed all references to mntent_t's fields 11936 mnt_freq and mnt_passno, since they are no longe rused (and never 11937 have been). 11938 11939 * amd/am_ops.c: removed function sunos4_match, which was off 11940 anyway. This was one of the places where an '=' sign was allowed 11941 as an assignment operator (which is now ':='). 11942 11943 * amd/afs_ops.c (afs_bgmount): removed SUNOS4_COMPAT code which 11944 was off anyway. This was one of the places where an '=' sign was 11945 allowed as an assignment operator (which is now ':='). 11946 11947Tue Dec 24 01:53:52 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11948 11949 * amq/amq.c: ported to am-utils. Working. 11950 11951 * conf/mount/mount_svr4.c (mount_svr4): changed mount type on svr4 11952 to be string, as it should be (rather than a string mapped to int 11953 and back mapped to string). 11954 11955Sun Dec 22 13:26:05 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11956 11957 * lib/mount_fs.c (mount_fs): removed MNTINFO_PREF code. 11958 11959 * lib/umount_fs.c: split this into three files: default, osf, and 11960 bsd44, that are in conf/umount/umount_*.c. 11961 11962Thu Dec 19 17:33:46 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 11963 11964 * aux/configure.in, aux/aclocal.m4, aux/acconfig.h: added new 11965 macro to automatically figure out if an external definition for 11966 sys_errlist[] exists. 11967 11968 * lib/xutil.c (xfree): removed "#undef free" because it's not 11969 needed there. Any system that redefines free() needs help. 11970 11971 * conf/mtab/mtab_file.c (REWRITE_MTAB_IN_PLACE): removed code that 11972 was dependent on REWRITE_MTAB_IN_PLACE. It does not appear to be 11973 in active use anywhere. If added later, it should be a run-time 11974 configuration option. 11975 11976 * conf/mtab/mtab_mach3.c: removed code that was #ifdef'ed not to 11977 be MOUNT_TABLE_ON_FILE, since mach2 always stores its mount tables 11978 in a file in /etc. 11979 11980 * lib/util.c (str3cat): removed _AIX code. AIX should have a 11981 working realloc, or else find a cleaner solution to this. 11982 (mkdirs): removed SUNOS4_WORKAROUND code. This was to do a sync() 11983 after immediately making directories so that fsck will be able to 11984 fix the filesystem in the event of an immediate crash. This was 11985 because a bug in UFS which is fixed by now. 11986 11987 * lib/hutil.c (domain_strip): removed PARTIAL_DOMAINS triggered 11988 code. Does not appear to be on and used anywhere. 11989 (dofork): removed MACH3 code, b/c mach3 NFS bugs are fixed by now. 11990 11991 * lib/resvport.c: split the binding of reserved ports code to a 11992 separate file. A #define (HAVE_T_OPEN) separates the TLI (SVR4) 11993 from the BSD code. 11994 11995Thu Dec 19 02:08:35 1996 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 11996 11997 * lib/Makefile.am (amu_LIBADD): includs @LIBOBJS@ now, auto-filled 11998 in by automake and configure, for optional sources that need to be 11999 built as part of libamu.a. 12000 12001 * aux/aclocal.m4: Make sure AC_CHECK_MOUNT_STYLE adds mountutil.o 12002 to LIBOBJS. 12003 12004 * lib/memcmp.c (memcmp): new file added to replace a possible bad 12005 implementation of memcmp. 12006 12007Wed Dec 18 22:20:23 1996 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12008 12009 * converted the sources to use memset/memmove/memcmp instead of 12010 bzero/bcopy/bcmp. 12011 12012 * ran all sources through gnu Indent w/ options specified in 12013 aux/amindent. 12014 12015Wed Dec 11 22:19:29 1996 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12016 12017 * At this point the initial generation of config.h via autoconf and 12018 some preliminary makefiles via automake is done. I will not begin 12019 modifying sources, so it's a good time to document from here. 12020 12021Wed Dec 10 22:19:29 1996 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12022 12023 ******************************************************************* 12024 *** Initial ChangeLog Entry *** 12025 ******************************************************************* 12026