12009-03-20 Christos Zoulas <christos@zoulas.com> 2 3 * Fix largefile re-definitions 4 5 * Fix compilation error caused in previous patch 6 72009-02-19 Christos Zoulas <christos@zoulas.com> 8 9 * Add a synchronous unmount amq rpc that will wait for the remote 10 filesystem to be unmounted, or return an error. Enabled by amq -uu 11 122009-01-11 Erez Zadok <ezk@fsl.cs.sunysb.edu> 13 14 * amd/ops_udf.c: don't define functions/variables which may not be 15 used. 16 17 * amd/ops_tmpfs.c (mount_tmpfs): force gcc not to complain about 18 unused variables. 19 20 * config.guess.long: properly support Fedora Core. 21 222009-01-09 Christos Zoulas <christos@zoulas.com> 23 24 * Fix nfs mounts on linux 2.6.26 by explicitly initializing context. 25 26 * Treat an empty sublink as an unset sublink; this allows us to 27 say sublink:=; in a spec to override the default. (This produces 28 Bad selector error, but it works. XXX: We need to decide how to 29 unset a selector. I proposed an unset keyword a while ago). 30 312009-01-06 Christos Zoulas <christos@zoulas.com> 32 33 * re-renerate all generated files with newer versions of the 34 auto-tools. 35 36 * move INSTALL to INSTALL.am-utils to avoid conflicts 37 38 * fix incompatibilities with new m4 and new autoconf. 39 40 * add UDF filesystem support. 41 42 * fix NetBSD nfs file handle detection. 43 442009-01-02 Christos Zoulas <christos@zoulas.com> 45 46 * add nocasetrans, nojoliet, rrcaseins for cd9660 filesystems 47 482008-12-03 Christos Zoulas <christos@zoulas.com> 49 50 * allow ldap queries try a comma-separated list of servers given as: 51 52 ldap_hostports = host1:port1,host2,host3:port3 53 54 original patch from Florian Geyer 55 562008-09-19 Christos Zoulas <christos@zoulas.com> 57 58 * the auth_create gid on NetBSD is int 59 60 * deal with lossage from flex -P 61 62 * fix missing/incorrect prototypes 63 642008-09-17 Christos Zoulas <christos@zoulas.com> 65 66 * fix manual page section issues (sorting, non-existant) 67 68 * add missing forward declarations 69 70 * avoid null pointer derefs (coverity) 71 72 * more portable endian detection support 73 74 * implement tmpfs support 75 76 * use sizeof var instead of constant 77 78 * fix yyerror declaration and definition 79 80 * fix yy function renaming, and correct some renaming issues. 81 82 * work around automake < 1.9 issue where ylwrap is not being run 83 for a single yacc or lex file. 84 85 * NetBSD 86 - handle headers that need other headers to compile 87 - add exfs and tmpfs specific glue 88 - add options log, noatime, nocoredump, nodevmtime, softdep, 89 symperm, union 90 - NetBSD's new mount system call needs the size of the opaque 91 filesystem specific structure, but passing 0 for now works. 92 We would need to change a lot more code to pass the size from 93 the fs-specific calls, so for now punt. 94 - recvfrom takes socklen_t * on NetBSD 95 - handle newer NetBSD using statvfs 96 - NetBSD calls its ufs ffs 97 98 * Linux 99 - Most recent kernels have trouble with trying to parse the pid 100 hostname and do locking. What before was a silent failure, now 101 there is a warning printed and the mount is rejected. This is 102 the simplest fix: 103 (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=479884) 104 1052007-04-13 Erez Zadok <ezk@cs.sunysb.edu> 106 107 * amd/sun_map.c (sun_append_str): When translating '&' from Sun 108 automounter maps, replace it with "${key}" in the Amd map, not 109 with the value of the key at the time. This way '*' maps work 110 too. 111 112 * config.guess.long: don't use -q option to grep because some 113 systems don't support it. Bug fix for solaris. 114 1152007-03-11 Christos Zoulas <christos@zoulas.com> 116 117 * amd/opts.c (expand_op): Don't call xstrlcpy() to truncate a 118 string. It causes spurious xstrlcpy() syslog() errors. Use 119 memcpy() and explicitly terminate the string. 120 1212007-01-20 Erez Zadok <ezk@cs.sunysb.edu> 122 123 * updated copyright year to 2007 on all files. 124 1252006-12-27 Erez Zadok <ezk@cs.sunysb.edu> 126 127 * minor new port: ia64-hp-hpux11.23 128 129 * m4/macros/check_libwrap_severity.m4 (LIBS): also test if caller 130 needs to define rfc931_timeout. 131 132 * amd/sun2amd.c: define rfc931_timeout and allow/deny_severity for 133 libwrap. 134 135 * amd/amq_svc.c: some versions of libwrap require the caller to 136 define rfc931_timeout in addition to allow/deny_severity. 137 138 * amd/amfs_toplvl.c (amfs_toplvl_init): properly detect when 139 forced unmount functionality exists for all systems. 140 141 * libamu/mount_fs.c (compute_nfs_args): reset nfs_args_t->pathconf 142 only if field exists. 143 144 * conf/nfs_prot/nfs_prot_hpux11.h: prevent HPUX 11.23 from 145 including <tiuser> or <sys/tiuser> (TLI definitions are already 146 included from elsewhere). 147 148 * configure.in: detect nfs_args_t->pathconf field. 149 1502006-11-27 Erez Zadok <ezk@cs.sunysb.edu> 151 152 * doc/Makefile.am: properly publish html files using newer 153 text2html. 154 1552006-11-27 Erez Zadok <ezk@shekel.local> 156 157 * doc/Makefile.am: obfuscate emails in ChangeLog before it is 158 published on web site. 159 160 * obfuscate many more emails in the distro, esp. of files which get 161 posted on the am-utils web site. 162 1632006-11-26 Erez Zadok <ezk@shekel.local> 164 165 * minor new port: i386-apple-darwin8.8.1. 166 167 * doc/am-utils.texi: remove obvious URLs used by spammers, and 168 replace them with links to the am-utils web site, which uses PNG 169 images to obfuscate the actual email/mailman URLs. 170 1712006-10-30 Erez Zadok <ezk@cs.sunysb.edu> 172 173 * doc/am-utils.texi (Password maps): minor typo reported by 174 Christoph P. Kukulies. 175 1762006-10-26 Erez Zadok <ezk@cs.sunysb.edu> 177 178 * minor new port: i386-pc-linux-fc6. 179 180 * m4/macros/linux_headers.m4: handle newer Linux kernels which 181 removed UTS_RELEASE from <linux/version.h>. 182 1832006-10-25 Erez Zadok <ezk@cs.sunysb.edu> 184 185 * minor new ports: i386-pc-linux-centos4.4 and 186 powerpc-apple-darwin8.7.0. 187 188 * config.guess.long: recognize CentOS Linux. 189 1902006-06-20 Erez Zadok <ezk@cs.sunysb.edu> 191 192 * minor new port: i386-pc-solaris2.11-nexentaos (GNU/OpenSolaris). 193 194 * config.guess.long: recognize NexentaOS (GNU/OpenSolaris) 195 196 * config.guess, config.sub: updates from latest official GNU 197 distributions. 198 1992006-05-11 Erez Zadok <ezk@cs.sunysb.edu> 200 201 * Minor new ports: i386-unknown-freebsd6.1 (RELEASE), 202 powerpc-apple-darwin8.6.0, and i386-unknown-openbsd3.9. 203 2042006-05-10 Erez Zadok <ezk@cs.sunysb.edu> 205 206 * libamu/mount_fs.c (compute_nfs_attrcache_flags): fix signedness 207 problems on IRIX-6.5. 208 209 * conf/autofs/autofs_solaris_v1.c (xdr_umntrequest): fix 210 signedness problems on IRIX-6.5. 211 2122006-05-01 Erez Zadok <ezk@cs.sunysb.edu> 213 214 * configure.in: check if libc already includes dbm functionality 215 (as in FreeBSD 6), then don't bother to check specific libraries 216 such as libdbm, gdbm, etc. 217 2182006-04-21 Erez Zadok <ezk@cs.sunysb.edu> 219 220 * configure.in: detect G/DBM support via gdbm_compat library 221 (Debian 3.1). 222 223 * minor new port: powerpc-apple-darwin8.5.0 224 2252006-04-20 Erez Zadok <ezk@cs.sunysb.edu> 226 227 * scripts/amd.conf-sample, scripts/amd.conf.5, doc/am-utils.texi, 228 NEWS: document new nfs_allow_any_interface parameter. 229 230 * include/am_compat.h (INADDR_LOOPBACK): define INADDR_LOOPBACK if 231 not defined, since some systems don't have it. 232 2332006-04-20 Nick Williams <Nick.Williams@morganstanley.com> 234 235 * libamu/wire.c (is_interface_local): new boolena function to 236 determine if address represents any of the local interfaces. 237 (getwire): more properly check if address equals INADDR_LOOPBACK, 238 not if IFF_LOOPBACK is not (the latter isn't as correct). 239 240 * include/am_utils.h: extern for new is_interface_local() function. 241 242 * conf/transp/transp_{sockets,tli}.c: don't define INADDR_LOOPBACK 243 here but in am_compat.h 244 245 * amd/nfs_prot_svc.c (nfs_program_2): if 246 nfs_allow_any_interface=yes, then allow NFS packets from any local 247 interface (not just 127.0.0.1). 248 249 * amd/conf.c (gopt_nfs_allow_any_interface): implement the new 250 amd.conf parameter nfs_allow_any_interface. 251 252 * amd/amd.h (CFM_NFS_ANY_INTERFACE): define new global flag when 253 al interfaces are acceptable for local NFS packets. 254 2552006-04-18 Christos Zoulas <christos@zoulas.com> 256 257 * amd/opts.c: Add support for optionally specifying the hostname 258 to match against the netgroup in the netgrp and netgrpd selectors. 259 2602006-04-16 Erez Zadok <ezk@cs.sunysb.edu> 261 262 * libamu/mtab.c (hasmntval): fix inverted meaning of error from 263 hasmntvalerr(). 264 2652006-04-14 Erez Zadok <ezk@cs.sunysb.edu> 266 267 * libamu/mount_fs.c (compute_nfs_attrcache_flags): use new 268 hasmntvalerr() function to set attribute cache values only if they 269 were set (regardless whether they were set to zero or a non-zero 270 value). Before, we were unable to distinguish between an error to 271 parse an option, and a user who actually wanted to set an 272 attribute-cache value to 0. This now fixes an important 273 performance bug that Amd was turning off the attribute caches even 274 for regular (non-automounter) NFS mounts. 275 276 * libamu/mtab.c (hasmntvalerr): new function to set the value of 277 an option into an integer, but ONLY if that options was set and 278 parsed correctly. This function returns 1 on error, 0 on success 279 (instead of always setting the option value to 0). 280 (hasmntval): wrapper function around hasmntvalerr, which maintains 281 backwards compatibility (always sets option value to 0, even on 282 error to parse the option). 283 284 * amd/nfs_subr.c (fh_to_mp3): use long int printf format for 285 fhh_pid. 286 2872006-04-05 Christos Zoulas <christos@zoulas.com> 288 289 * amd/amfs_generic.c (amfs_lookup_mntfs): fix use-after-free bug 290 (Coverity). 291 2922006-03-27 Erez Zadok <ezk@cs.sunysb.edu> 293 294 * doc/am-utils.texi, scripts/{amd.conf.5,amd.conf-sample}: 295 document new nfs_retransmit_counter_toplvl and 296 nfs_retry_interval_toplvl global amd.conf parameters. 297 298 * amd/conf.c (gopt_nfs_retransmit_counter_toplvl, 299 (gopt_nfs_retry_interval_toplvl): parse amd.conf 300 nfs_retransmit_counter_toplvl and nfs_retry_interval_toplvl global 301 parameters. 302 303 * amd/amfs_toplvl.c (amfs_toplvl_mount): support setting toplvl 304 timeo/retrans parameters for Amd's toplvl mounts, separately from 305 all other UDP or NFS mounts. 306 307 * amd/amd.h: define a new timeo/retrans parameter for toplvl 308 mounts. 309 3102006-03-22 Erez Zadok <ezk@cs.sunysb.edu> 311 312 * minor new port: i386-pc-linux-suse10.1 (beta 8). 313 3142006-03-21 Christos Zoulas <christos@zoulas.com> 315 316 * amd/am_ops.c (merge_opts): Remove useless check found by 317 Coverity; xmalloc never returns NULL. 318 3192006-03-21 Erez Zadok <ezk@cs.sunysb.edu> 320 321 * minor new ports: i386-pc-linux-fc5. 322 323 * amd/info_ldap.c: as of Linux Fedora Core 5 (which comes with 324 openldap-2.3.9), the ldap.h headers deprecate several functions 325 used in this file, such as ldap_unbind. You get compile errors 326 about missing extern definitions. Those externs are still in 327 <ldap.h>, but surrounded by an ifdef LDAP_DEPRECATED. I am 328 turning on that ifdef at the top of info_ldap.c, under the 329 assumption that the functions may be deprecated, but they still 330 work for this (older?) version of the LDAP API. It gets am-utils 331 to compile, but it is not clear if it will work perfectly. 332 333 * libamu/xdr_func.c (xdr_am_mountres3_ok), amq/amq_xdr.c 334 (xdr_amq_mount_tree, xdr_amq_mount_tree_p, 335 xdr_amq_mount_info_list, xdr_amq_mount_tree_list), amq/amq.c 336 (show_mti), amd/amq_subr.c (xdr_amq_setopt, xdr_amq_mount_subtree, 337 xdr_amq_mount_tree, xdr_amq_mount_tree_list, xdr_amq_mount_tree), 338 libamu/xdr_func.c (xdr_am_mountres3_ok): use casing magic to stop 339 GCC-4.1 from complaining about "dereferencing type-punned pointer 340 will break strict-aliasing rules" here (but not elsewhere). 341 3422006-03-20 Christos Zoulas <christos@zoulas.com> 343 344 * libamu/wire.c: avoid potential dereferencing of a NULL pointer 345 (Coverity). 346 347 * hlfsd/homedir.c (delay): remove unnecessary check for NULL 348 pointer (Coverity). 349 350 * fsinfo/fsi_analyze.c (analyze_dkmounts, analyze_mounts, 351 analyze_mounts): avoid potential dereferencing of a NULL pointer 352 (Coverity). 353 354 * conf/transp/transp_sockets.c (create_amq_service): avoid 355 potential dereferencing of a NULL pointer (Coverity). 356 357 * amd/sched.c (sigchld): properly check for the end of the waiting 358 process list (Coverity). 359 360 * amd/mapc.c (mapc_create): initialize 'modify' to zero (Coverity). 361 362 * amd/autil.c (amfs_mkcacheref, am_unmounted): avoid potential 363 dereferencing of a NULL pointer (Coverity). 364 365 * amd/amfs_generic.c (amfs_lookup_mntfs): free def_opts before 366 reusing it (memory leak bug detected by Coverity). 367 (amfs_bgmount): avoid potential dereferencing of a NULL pointer 368 (Coverity). 369 370 * amd/am_ops.c (merge_opts): no need to check if newstr is NULL 371 (bug detected by Coverity). 372 3732006-03-08 Ion Badulescu <ionut@moisil.badula.org> 374 375 * amd/nfs_subr.c (mp_to_fh): fixed old-style filehandles--the pid 376 comparison was failing. 377 3782006-03-08 Erez Zadok <ezk@cs.sunysb.edu> 379 380 * configure.in: properly test for either <gdbm/ndbm.h> or 381 <gdbm-ndbm.h> (unfortunately, Autoconf will map both names to the 382 same $ac_cv_* variable name). Some systems support one header or 383 another. Patch inspired by work Debian did. 384 3852006-02-16 Daniel P. Ottavio <ottavio@vm.fsl.cs.sunysb.edu> 386 387 * amd/sum_map_tok.l: Fixed a bug in a regular expression that 388 prevented dashes in hostnames. This was posted in BZ by Thomas 389 A. Fine. 390 391 * README.sun2amd: Fixed a typo. Sentence mentions use of autofs 392 type when it should be host type. 393 3942006-01-04 Erez Zadok <ezk@cs.sunysb.edu> 395 396 * doc/am-utils.texi (auto_attrcache Parameter): revise discussion 397 to mention pros and cons of turning on/off this parameter, 398 including impact on Amd's performance, and ways to improve 399 performance while minimizing the window of vulnerability in which 400 kernel may return the wrong (cached) attributes. 401 4022006-01-02 Erez Zadok <ezk@cs.sunysb.edu> 403 404 * updated copyright year to 2006 on all files. 405 4062005-12-20 Erez Zadok <ezk@cs.sunysb.edu> 407 408 * include/am_utils.h, conf/transp/transp_tli.c (amu_svc_register, 409 register_autofs_service): use a consistent prototype for the 410 dispatch function of the autofs service de/registration functions. 411 4122005-12-03 Erez Zadok <ezk@cs.sunysb.edu> 413 414 * minor new ports: i386-unknown-netbsdelf2.1, 415 i386-unknown-netbsdelf3.0 (RELEASE), and i386-unknown-openbsd3.8. 416 4172005-12-02 Erez Zadok <ezk@cs.sunysb.edu> 418 419 * m4/macros/check_field.m4: remove double inclusion of msdosfs 420 headers, which are included in mount_header1.h (netbsd 2.1 doesn't 421 protect <msdosfs/msdosfsmount.h> which causes compile errors). 422 4232005-11-08 Erez Zadok <ezk@cs.sunysb.edu> 424 425 * minor new port: i386-unknown-freebsd6.0 (RELEASE) 426 4272005-10-26 Erez Zadok <ezk@cs.sunysb.edu> 428 429 * amd/amq_subr.c (amqproc_pawd_1_svc): repeatedly resolve path in 430 Amd, not in pawd (to avoid repeated network RPCs). 431 432 * amq/pawd.c (transform_dir): move repeated path resolution into Amd. 433 4342005-10-25 Erez Zadok <ezk@cs.sunysb.edu> 435 436 * amq/pawd.c (transform_dir): resolve path repeatedly until 437 finished. Bug fix from Jonathan Chen <jon+amd-at-spock.org>. 438 Added safety check to prevent infinite loops. 439 4402005-10-19 Erez Zadok <ezk@cs.sunysb.edu> 441 442 * doc/am-utils.texi (opts Option): document new pcfs options 443 longname, nowin95, shortname, user=N, group=N, mask=N, and 444 dirmask=N. 445 446 * amd/ops_pcfs.c (mount_pcfs): process new pcfs options longname, 447 nowin95, shortname, user=N, group=N, mask=N, and dirmask=N. 448 449 * include/am_compat.h: provide compatibility mnttab string names, 450 if needed, for pcfs mount options longname, nowin95, shortname, 451 user=N, group=N, mask=N, and dirmask=N. 452 453 * include/am_utils.h: extern for hasmntstr(). 454 455 * libamu/mtab.c (hasmntstr): new function to return the string 456 value following a mount option, up to the next comma-delimited 457 options. 458 459 * configure.in: check for mnttab and pcfs options longname, 460 nowin95, and shortname. 461 462 * Makefile.am (EXTRA_DIST_M4): distribute new macro 463 check_mnt2_pcfs_opt.m4. 464 465 * m4/macros/check_mnt2_pcfs_opt.m4: new macro to check for pcfs 466 mnttab and mount options. 467 4682005-10-18 Erez Zadok <ezk@cs.sunysb.edu> 469 470 * libamu/mount_fs.c (print_nfs_args): print nfs_args->addr 471 correctly, depending if it's a pointer or not. 472 473 * conf/sa_dref/sa_dref_*.h: for each NFS_SA_DREF macro, also 474 #define NFS_ARGS_T_ADDR_IS_POINTER if nfs_args->addr is a pointer 475 or an embedded structure, so we can tell how to print it. 476 477 * libamu/mount_fs.c (print_nfs_args): print nfs_args->addrlen 478 field, if it exists. 479 480 * configure.in: check for nfs_args->addrlen field. 481 482 * wire-test/wire-test.c (main), libamu/mount_fs.c 483 (print_nfs_args), fixmount/fixmount.c (inetresport, 484 clnt_create_timeout), amq/pawd.c (transform_dir), amq/amq.c 485 (main), amd/srvr_nfs.c (find_nfs_srvr), amd/autil.c 486 (amfs_mount): document that as per POSIX, we don't need to set the 487 sa_len/sin_len fields in struct sockaddr/sockaddr_in. The field 488 is used only internally in the kernel. See 489 www.awprofessional.com/articles/article.asp?p=169505&seqNum=2&rl=1 490 491 * fixmount/fixmount.c (inetresport): initialize sockaddr_in 492 structure before filling in some fields. 493 4942005-10-11 Erez Zadok <ezk@cs.sunysb.edu> 495 496 * doc/am-utils.texi (nfs_vers, nfs_proto parameters): clarify and 497 correct mistaken description of nfs_proto. 498 4992005-10-10 Erez Zadok <ezk@cs.sunysb.edu> 500 501 ******************************************************************* 502 *** Released am-utils-6.1a1 *** 503 ******************************************************************* 504 505 * README.sun2amd: revised. 506 5072005-10-09 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 508 509 * amd/info_nis.c (nis_search): Bug fix for bugzilla #428; make 510 sure that sun_entry2amd() is not called when yp_match() returns an 511 error, this is done by checking that 'res' is 0. Bug fix (same 512 BZ#); free the output allocated by yp_match() instead of freeing 513 the return value of sun_entry2amd(). 514 515 * amd/sun_map.c (sun_entry2amd): Fix a comment. 516 517 * README.sun2amd: Made a first pass at describing the status of 518 the sun2amd feature. 519 Moved the date. 520 5212005-10-09 Erez Zadok <ezk@cs.sunysb.edu> 522 523 * README.sun2amd: place holder. 524 525 * Makefile.am (EXTRA_DIST): distribute new README.sun2amd file. 526 5272005-10-07 Erez Zadok <ezk@cs.sunysb.edu> 528 529 * m4/macros/check_mnttab_type.m4: move the test for MOUNT_* to the 530 very end, after the test using getvfsbyname(). 531 532 * m4/macros/expand_run_string.m4: if the string value returned is 533 empty, consider it invalid. 534 535 * m4/macros/check_varargs_macros.m4: rewrite macro so it'll 536 try and compile the varargs test, not just cpp it. Some systems 537 pass the old cpp test, but not when you actually try to compile 538 the code (Tru64's cc). 539 540 * conf/autofs/autofs_solaris_v1.h: redefine 541 autofs_strdup_space_hack as a macro to str3cat(NULL,(s)," ",""). 542 This works everywhere and we avoid linking problems, inline 543 functions, etc. 544 545 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): remove 546 autofs_strdup_space_hack() function altogether. 547 548 * m4/macros/os_cflags.m4: remove hack that hardcodes pte_t=u_int. 549 550 * configure.in: test for <sys/immu.h> header. 551 Test for pte_t, but only on IRIX6 systems. 552 553 * Makefile.am (EXTRA_DIST_M4): distribute new type_pte_t.m4 file. 554 555 * m4/macros/type_pte_t.m4: new test for existence of pte_t 556 typedef, needed on some IRIX-6.5/gcc systems. 557 558 * m4/macros/header_templates.m4: add missing templates for 559 HAVE_EXTERN_GETDTABLESIZE, HAVE_EXTERN_GETWD, and 560 HAVE_EXTERN_UALARM. 561 562 * amd/info_exec.c (exec_map_open): break assignment from inside 563 conditional, to work around an IRIX-6.5 cc bug. 564 565 * amd/Makefile.am (amd_LDADD, sun2amd_LDADD): put libaminfo.a 566 before libamu.la. Some linkers (e.g., IRIX-6.5) incorrectly 567 complain about undefined symbols. 568 569 * fsinfo/fsi_util.c (set_ether_if), amd/map.c (unmount_mp), 570 libamu/xutil.c (expand_error), libamu/strutil.c (xsnprintf): avoid 571 comparison between signed and unsigned integers. 572 573 * conf/autofs/autofs_solaris_v1.h, conf/autofs/autofs_solaris_v1.c 574 (autofs_strdup_space_hack): move "space_hack" function from static 575 inline in header, into the only source file that needs it. This 576 is cleaner and also prevents linking problem with some compilers 577 that won't apply CPP macros inside static inline functions (for 578 the strl* functions). 579 580 * amq/pawd.c (find_mt, find_mlp): remove obsolete, inefficient 581 code. 582 (transform_dir): call the new, efficient amqproc_pawd_1() routine. 583 584 * amq/amq_clnt.c (amqproc_pawd_1): AMQPROC_PAWD wrapper routine. 585 586 * amq/amq.h (amqproc_pawd_1): extern for amq's AMQPROC_PAWD 587 wrapper routine. 588 589 * amd/amq_svc.c (amq_program_1): dispatch point for 590 amqproc_pawd_1_svc. 591 592 * amd/amq_subr.c (amqproc_pawd_1_svc): moved pawd's path-matching 593 functionality into Amd, where it can be done a lot more 594 efficiently. We don't have to construct and ship a whole export 595 tree from Amd to pawd. We just get a variable-length 596 xdr_wrapstring for the user's path, iterate over the entire export 597 list inside Amd, and return only a matched string if found 598 (otherwise we return "" to indicate that there was no match, and 599 let pawd printf the same string it sent over). 600 601 * amd/amd.h: extern for amqproc_pawd_1_svc, amd's service routine 602 the AMQPROC_PAWD RPC. 603 6042005-10-06 Erez Zadok <ezk@cs.sunysb.edu> 605 606 * ltmain.sh, m4/macros/libtool.m4: update to libtool-1.5.20. 607 Fixes Tru64 bugs when using ksh. 608 609 * amd/amfs_toplvl.c (amfs_toplvl_mount): break complex ifdef macro 610 into two sections, to workaround a C99 varargs-macro bug in 611 gcc-3.2.2 (RH9). 612 613 * libamu/wire.c (print_wires): convert argument-less xsnprintf to 614 xstrlcpy. 615 616 * include/am_utils.h: use new HAVE_C99_VARARGS_MACROS or 617 HAVE_GCC_VARARGS_MACROS to pass file name and line number to 618 xsnprintf/xvsnprintf. 619 620 * libamu/strutil.c (xsnprintf, xvsnprintf): if debugging is on, 621 then also print the source file name and line number that called 622 xsnprintf/xvsnprintf with a buffer that wasn't large enough (most 623 likely an am-utils bug). 624 625 * Makefile.am (EXTRA_DIST_M4): distribute new 626 check_varargs_macros.m4 file. 627 628 * configure.in: execute new AMU_VARARGS_MACROS test. 629 630 * m4/macros/check_varargs_macros.m4: new test to check what style 631 of variable-length argument macros, if any, does the 632 compiler/pre-processor supports. 633 634 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req) 635 conf/autofs/autofs_solaris_v1.c (autofs_mount_1_req), amd/opts.c, 636 amd/nfs_subr.c (nfsproc_lookup_2_svc), amd/nfs_start.c 637 (mount_automounter), amd/get_args.c (get_args), amd/amfs_toplvl.c, 638 amd/amfs_auto.c (amfs_auto_mount), amd/amd.h, amd/amd.c (main): 639 use sizeof() instead of fixed SIZEOF_* macros. 640 641 * libamu/strutil.c (xstrlcat, xstrlcpy), include/am_utils.h 642 (DEBUG): if debugging is on, then also print the source file name 643 and line number that called xstrl* with a buffer that wasn't large 644 enough (most likely an am-utils bug) 645 646 * include/am_compat.h (INADDR_NONE): define in a common location, 647 if OS doesn't have it, use 0xffffffffU which should work with any 648 ANSI compiler. 649 650 * fixmount/fixmount.c, libamu/wire.c: remove local definition of 651 INADDR_NONE. 652 653 * amd/amfs_toplvl.c (amfs_toplvl_mount), amd/amfs_auto.c 654 (amfs_auto_mount): use common SIZEOF_OPTS in definition and call 655 to autofs_get_opts. 656 657 * amd/amd.h (SIZEOF_OPTS): moved #define to common header. 658 6592005-10-06 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 660 661 * amd/opts.c (expand_op): Need to check BUFSPACE for env for 662 vlen+1. Likewise for cp and strlen(cp)+1. 663 664 * amd/amfs_toplvl.c (amfs_toplvl_mount) [HAVE_FS_AUTOFS]: Pass new 665 size argument to autofs_get_opts. 666 6672005-10-05 Erez Zadok <ezk@cs.sunysb.edu> 668 669 * amq/pawd.c (transform_dir): was using UDP only. Now will also 670 try TCP if UDP failed. Destroy client after use to avoid leftover 671 TCP sockets in the kernel. 672 673 * libamu/hasmntopt.c (amu_hasmntopt): increase size of MNTMAXSTR 674 from 128 to to 256, because some users have really long option 675 strings. Suggestion from jon+amd-at-spock.org. 676 677 * amd/opts.c (expand_op): should check BUFSPACE for vlen+1, not 678 just vlen. Bug discovered when started using xstrlcpy(). 679 680 * ALL: convert from using strcat to the safer xstrlcat, and from 681 strcpy to safer xstrlcpy. 682 6832005-10-04 Erez Zadok <ezk@cs.sunysb.edu> 684 685 * hlfsd/hlfsd.h: remove old fatalerror() and ERRM macros. 686 687 * hlfsd/hlfsd.c (fatalerror): new function instead of macro. 688 Easier to use xstrlcat in this new function. 689 690 * amd/amd.h, include/am_utils.h, amd/amd.c: moved 'hostd' extern 691 from am_utils.h to amd.h, and define its size as a macro that 692 could be passed to xstrl*(). 693 694 * ALL: convert from using sprintf to the safer xsnprintf. 695 696 * mk-amd-map/Makefile.am (LDADD): link with libamu to get 697 xsnprintf(). 698 699 * amd/amd.h, amd/amd.c, include/am_utils.h: moved pid_fsname 700 extern from am_utils.h to amd.h, and define its size as a macro 701 that could be passed to xsnprintf(). 702 7032005-10-02 Erez Zadok <ezk@cs.sunysb.edu> 704 705 * libamu/Makefile.am: use strutil.c, not util.c. 706 707 * libamu/strutil.c: rename from util.c to explain better purpose 708 of file. Move xvsnprintf and xsnprintf from xutil.c to this file. 709 710 * libamu/xutil.c: explain purpose of file. Move mkdirs/rmdirs 711 code from old util.c. 712 7132005-10-01 Erez Zadok <ezk@cs.sunysb.edu> 714 715 * m4/macros/header_templates.m4: templates for FFS. 716 717 * m4/macros/check_mnttab_type.m4: on BSD44 systems, check for file 718 system mount table name via the MOUNT_* mount(2) macros (because 719 BSD44 keeps the mount table in the kernel). 720 721 * configure.in: synchronise order of searching for mnttab entries 722 and mount names. The new order is "ext3 ext2 ffs ufs 4.2 4.3 4.4 723 efs xfs jfs ultrix" (which would prefer ffs on BSD44 instead of 724 ufs, and ext3 instead of ext2 on Linux). 725 726 * include/am_defs.h: include <sys/statvfs.h> if it exists. 727 728 * conf/nfs_prot/nfs_prot_netbsd1_4.h: NetBSD 3 has both statfs() 729 and statvfs(), but the latter is preferred, so #define to use 730 statvfs. 731 732 * configure.in: check for statfs(), statvfs(), and 733 <sys/statvfs.h>. 734 735 * config.guess.long: strip trailing '.' on "netbsdelf3.0." 736 (Beta). Workaround for bug in config.guess. 737 738 * config.{guess,sub}: update to latest versions. 739 7402005-09-30 Christos Zoulas <christos@zoulas.com> 741 742 * fsinfo/fsi_util.c (set_ether_if): use INADDR_NONE instead of 743 hard-coded value of -1. 744 745 * include/amq_defs.h (AMQ_STRLEN): increase default size from 2KB 746 to 16KB. We can afford it these days. 747 748 * libamu/strcasecmp.c (strcasecmp): use unsigned chars in 749 tolower() to avoid sign/size promotion bugs. 750 751 * libamu/xutil.c (switch_to_logfile): don't output to LOG_CONS by 752 default (it's unfriendly). If user really wants to, they can set 753 it in /etc/syslog.conf. 754 7552005-09-29 Erez Zadok <ezk@cs.sunysb.edu> 756 757 * amq/pawd.c (find_mt): if the auto mount type is used, pawd could 758 go into an infinite loop since the mt_directory and mt_mountpoint 759 fields are the same for auto mounts. Solution: ignore type auto 760 mounts, similar to toplvl. Bug fix from Jonathan Chen 761 <jon+amd@spock.org>. 762 763 * README.attrcache: document test-attrcache script. 764 765 * scripts/Makefile.am (noinst_SCRIPTS): build test-attrcache 766 script. 767 768 * configure.in: build scripts/test-attrcache script and chmod it 769 so it can be executed in place. 770 771 * scripts/test-attrcache.in: script to test the NFS attribute 772 cache using Amd. 773 7742005-09-26 Erez Zadok <ezk@cs.sunysb.edu> 775 776 * hlfsd/stubs.c (nfsproc_getattr_2_svc, nfsproc_lookup_2_svc, 777 nfsproc_readlink_2_svc, nfsproc_readdir_2_svc), hlfsd/hlfsd.c 778 (hlfsd_init): use new clocktime() function. 779 7802005-09-18 Erez Zadok <ezk@cs.sunysb.edu> 781 782 * README.attrcache: document netbsd's patchs to support noac. 783 784 * libamu/mount_fs.c (compute_nfs_attrcache_flags): cleanup the 785 code that sets the ac{reg,dir}{min,max} fields so it also sets the 786 appropriate nfs_args->flags such as MNT2_NFS_OPT_ACREGMIN. 787 788 * configure.in: check for nfs_args fields acregmax and acdirmax. 789 790 * README.attrcache: new file documenting in detail OS bugs 791 relating to attribute caching, which can affect Amd's reliability 792 under heavy load. 793 Update status of freebsd and openbsd. 794 795 * doc/Makefile.am: install README.attrcache file as attrache.txt 796 file on am-utils Web site. 797 798 * Makefile.am (EXTRA_DIST): include README.attrcache in distro. 799 800 * BUGS, NEWS, doc/am-utils.texi (auto_attrcache Parameter), 801 scripts/amd.conf.5, scripts/amd.conf-sample: document attribute 802 cache bugs on some OSs. 803 8042005-09-17 Erez Zadok <ezk@cs.sunysb.edu> 805 806 * libamu/xutil.c (clocktime): newly implemented routine. Uses 807 gettimeofday() each time to return a high-resolution clock time, 808 and does not "cache" the last time. Returns time in seconds, just 809 like the old implementation. If passed a non-null argument, will 810 fill it in with the current time in seconds+microseconds. 811 812 * libamu/xutil.c: remove actual declaration of clock_valid, and 813 another never-used declaration for xclock_valid. 814 815 * include/am_utils.h: remove defunct definition of clocktime() 816 macro and clock_valid variable. Add extern for new definition. 817 818 * libamu/mount_fs.c (mount_fs), hlfsd/homedir.c (homedir, 819 hlfsd_diskspace, hlfsd_getpwent, plt_reset, table_add), 820 hlfsd/hlfsd.c (main, hlfsd_init, reload, cleanup), 821 conf/mtab/mtab_mach3.c (open_locked_mtab), conf/mtab/mtab_file.c 822 (open_locked_mtab), amd/nfs_start.c (do_select, run_rpc), 823 amd/autil.c (host_normalize): remove defunct clock_valid. 824 825 * amd/nfs_subr.c (nfsproc_getattr_2_svc): Print microseconds for 826 node's mtime. 827 (fh_to_mp3): use new clocktime() to update mtime and get a better 828 time resolution. 829 830 * amd/mapc.c (mapc_reload_map): change prototype from returning 831 void to returning an int. If reloading was needed and succeeded, 832 return 1; else return 0. 833 (mapc_sync): update mtime of parent node if needed. This is a 834 CRITICAL FIX, to ensure that the kernel flushes its DNLC/dcache 835 when we run "amq -f" manually or when a map is reloaded. 836 837 * amd/map.c (new_ttl): update am_ttl and na_atime in one shot. 838 (init_map): use new clocktime(). 839 (unmount_mp): if the OS doesn't support a "symttl" option, then 840 update the mtime of the parent node using the clocktime(); but if 841 the time hasn't gotten changed because of rapid Amd accesses on 842 systems that don't have a micro-second NFS-client resolution, then 843 increment mtime by one arbitrarily (this could, on some systems 844 and under pathological cases, result in mtime's that are in the 845 future). 846 847 * amd/autil.c (forcibly_timeout_mp): MAJOR BUG FIX: force mtime 848 update of parent dir, to prevent DNLC/dcache from caching the old 849 entry, which could result in ESTALE errors, bad symlinks, and 850 more. 851 (am_mounted): record mount time, and update am_stats at the same 852 time, using the double-action redone clocktime() routine. 853 (am_mounted): update parent's mtime from that of the child. 854 (am_unmounted): when unmounting an entry, update mtime of parent 855 node. 856 857 * amd/amfs_generic.c (amfs_bgmount): now that clocktime() doesn't 858 remember it's last non-zero value, save it in a temporary variable 859 to avoid a TOCTOU problem (between an "if" and a "dlog"). 860 861 * libamu/xutil.c (show_time_host_and_name), 862 conf/autofs/autofs_linux.c (autofs_mounted, autofs_timeout_mp), 863 amd/srvr_nfs.c (nfs_keepalive_callback, nfs_keepalive_timeout) 864 (find_nfs_srvr), amd/rpc_fwd.c (fwd_alloc), amd/nfs_subr.c 865 (nfsproc_getattr_2_svc), amd/nfs_start.c (do_select, run_rpc), 866 amd/mapc.c (root_init), amd/map.c(map_flush_srvr, timeout_mp), 867 amd/info_ndbm.c (ndbm_init), amd/info_ldap.c (amu_ldap_rebind), 868 amd/info_file.c (file_open), amd/info_exec.c (fgets_timed, 869 exec_search), amd/clock.c (timeout, softclock), amd/autil.c 870 (forcibly_timeout_mp), amd/amfs_generic.c (amfs_retry, 871 amfs_bgmount, amfs_generic_mount_child), amd/amd.c (main): pass 872 NULL to clocktime(). 873 8742005-09-15 Erez Zadok <ezk@cs.sunysb.edu> 875 876 * amd/nfs_subr.c (nfsproc_getattr_2_svc): initialize 'retry', just 877 in case. 878 (fh_to_mp3): increment amd_stats.d_stale counter only if we are 879 actually returning ESTALE. 880 881 * amd/info_exec.c (exec_parse_qanswer), amd/info_file.c 882 (file_search_or_reload), amd/info_hesiod.c (hesiod_search), 883 amd/info_ldap.c (amu_ldap_search), amd/info_ndbm.c (search_ndbm), 884 amd/info_nis.c (nis_search), amd/info_nisplus.c (nisplus_search, 885 nisplus_search): don't dereference mnt_map->cfm which may be null 886 if we're not using an amd.conf file. 887 8882005-09-14 Erez Zadok <ezk@cs.sunysb.edu> 889 890 * libamu/xutil.c (unregister_amq): if failed to de-register Amd 891 from portmapper, report it under dlog (debugging), not as an 892 annoying plog that always shows up. 893 8942005-09-13 Erez Zadok <ezk@cs.sunysb.edu> 895 896 * mk-amd-map/mk-amd-map.c (read_file_file), libamu/util.c 897 (strsplit), libamu/hasmntopt.c (nextmntopt), amd/sun_map.c 898 (sun_entry2amd), amd/sun2amd.c (sun2amd_convert_convert), 899 amd/mapc.c (mapc_add_kv), amd/info_file.c (file_search_or_reload), 900 amd/info_exec.c (exec_parse_qanswer): cast isspace() and isascii() 901 arg to unsigned char, which is safer as per Christos. 902 903 * amd/sun_map.c (sun_entry2amd): isspace takes an int, not a char. 904 905 * configure.in: keep a dummy unused AM_PROG_LEX, because old 906 Automake (1.6.3) looks for it if you refer to LEX in your 907 Makefile.am files. Silly thing, fixed in newer versions of 908 Automake (1.9.2). 909 9102005-09-11 Erez Zadok <ezk@cs.sunysb.edu> 911 912 * Makefile.am (EXTRA_DIST_M4): add prog_{lex,yacc}.m4 to distro. 913 914 * configure.in: use new macros AMU_PROG_YACC and AMU_PROG_LEX. 915 916 * m4/macros/prog_yacc.m4: new macro to check if bison/yacc/byacc 917 exist, but exist with an error if none found. 918 919 * m4/macros/prog_lex.m4: new macro to check if f/lex exist, but 920 exit with an error if not found (am-utils requires f/lex). 921 9222005-09-07 Erez Zadok <ezk@cs.sunysb.edu> 923 924 * minor new port: powerpc-apple-darwin8.2.0. 925 926 * m4/macros/type_auth_create_gidlist.m4: Old macosx used "gid_t" 927 but all newer ones (10.4+) use int. 928 929 * m4/macros/type_recvfrom_fromlen.m4: Old macosx used "int" for 930 6th arg of recvfrom(), but all newer ones (10.4+) use socklen_t. 931 932 * minor new port: i386-pc-linux-deb3.1. 933 9342005-09-02 Erez Zadok <ezk@cs.sunysb.edu> 935 936 * conf/mount/mount_linux.c: If autoconf didn't find any disk-based 937 file system on this system (probably because /proc isn't mounted), 938 then provide some default definition for this file to compile. 939 9402005-08-28 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 941 942 * amd/sun_map.c (sun_entry2amd) : Wipe out any trailing white 943 spaces or '\n' before passing strings to the parser. 944 945 * amd/amd.h : oops, reverting bad changes 946 947 * amd/info_file.c : oops, reverting bad changes 948 949 * amd/mapc.c : oops, reverting bad changes 950 951 * amd/sun_map_parse.y : oops, reverting bad changes 952 9532005-08-27 Erez Zadok <ezk@cs.sunysb.edu> 954 955 * libamu/xutil.c: amd_program_number is a u_long now. 956 (unregister_amq): if pmap_unset failed to de-register Amd from the 957 portmapper, print an error message. 958 (get_amd_program_number): returns a u_long now. 959 (set_amd_program_number): take a u_long now. 960 961 * include/am_utils.h: get_amd_program_number() returns u_long now. 962 set_amd_program_number() takes a u_long now. 963 964 * amq/amq.c: amd_program_number is a u_long, not int. 965 966 * amd/nfs_start.c (mount_automounter): when registering Amd with 967 the portmapper (for Amq service), don't fail if just one of TCP or 968 UDP failed to register, but only if both transports failed. That 969 way Amq can still contact Amd using the transport that did 970 register correctly. However, now, if both transports failed to 971 register, then set amd_state to "Done" so it would shutdown 972 cleanly. 973 974 * conf/transp/transp_{sockets,tli{}.c (amu_svc_register): better 975 comments. 976 977 * libamu/xutil.c: debug_flags should always be initialized to 978 D_CONTROL (amq,daemon,fork). 979 (debug_option): allow setting initial immutable debug_flags via 980 amd.conf; afterward, prevent it (i.e., one tries it via "amq -D"). 981 982 * Makefile.am (DISTCLEANFILES): also remove amu_autofs_prot.h, 983 config.cache.old, and dbgcf.h on "make distclean". 984 (CLEANFILES): remove dbgcf on plain "make clean". 985 986 * amd/Makefile.am (DISTCLEANFILES): also remove ops_autofs.c on 987 "make distclean". 988 9892005-08-27 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 990 991 * amd/info_file.c (file_search_or_reload): Changed the key 992 variable that is passed to the sun_entry2amd. 993 994 * amd/mapc.c (mapc_add_kv): Add support for multiple entries 995 packed into one line. This is a workaround for handling Sun style 996 mounts that contains multiple entries on one line: "multi-mount 997 entries". The sun2amd conversion tools will convert such entries 998 into type:=auto and pack each of the auto-entries into one line 999 separated by '\n'. The mapc_add_kv function will now recognize 1000 such entries and add then. 1001 1002 * amd/sun2amd.c (sun2amd_convert): Add print statement that 1003 includes the line number during a parser failure. 1004 1005 * sun_map.c: Fix the AMD_MAP_PREF_KW definition. Fix spelling. 1006 (sun_mountpts2amd): removed this function 1007 (sun_hsfs2amd): added some more comments 1008 (sun_nfs2amd): moved support for multi-mount entries from this 1009 function to sun_multi2amd(). 1010 (sun_multi2amd): New function to handle multi-mount entries. This 1011 function will convert the Sun version to an Amd type:=auto. Each 1012 extra auto entry will be appended to the same line separated by a 1013 '\n'. 1014 (sun_entry2amd): Fixed a bug if-statement. This function now 1015 checks for multi-mount entries. 1016 1017 * amd/sun_map.h: Add a fstype member to the sun_mountpt struct. 1018 1019 * amd/sun_map_parse.y: Parser now supports fstype for multi-mount 1020 entries. 1021 1022 * amd/sun_map_tok.l: No longer print the line and column number 1023 when parsing. This is because the parser is handed strings not 1024 files. Therefore, the line number will always be 1. It is now up 1025 to the higher level tools to echo line information during error 1026 when they feed the parser. 1027 10282005-08-24 Erez Zadok <ezk@cs.sunysb.edu> 1029 1030 * configure.in: wrap all LDAP and HESIOD tests in test whether 1031 --with-OPT was used. 1032 10332005-08-20 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1034 1035 * amd/sun_map.c: Clean up #defines 1036 (sun_entry2amd) : Verify that the key and entry values passed are 1037 not NULL. Free the Sun entry struct when done. 1038 1039 * amd/sun_map.h: Add some "not implemented yet" comments to the 1040 map and mmap structures. 1041 1042 * amd/sun_map_parse.y: Removed automap include functionality, it 1043 will need to be re-implemented using a pre-processor. 1044 Clean up function calls. 1045 10462005-08-16 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1047 1048 * amd/sun2amd.c (sun2amd_convert): If the input line is too long 1049 don't return an error just null terminate and continue. Fix bug: 1050 the map key was not written. 1051 1052 * amd/sun_map.c: Add a new Amd device, and cdfs constant. 1053 (sun_locations2amd): Write the NFS type keyword 1054 for each host of the mount entry. Add a space between each mount 1055 location. 1056 (sun_hsfs2amd): New function to support hsfs to 1057 cdfs. 1058 (sun_nfs2amd): Don't write the nfs type here. Fix 1059 comments. 1060 (sun_entry2amd): Change function parameter var for 1061 clarity. Add support for hsfs. 1062 1063 * amd/sun_map_parse.y (sun_map_parse_read): Reset the entry list 1064 after it has been returned. 1065 10662005-08-16 Erez Zadok <ezk@cs.sunysb.edu> 1067 1068 * amd/get_args.c (get_args): initialize debug_flags if they've 1069 never been set. 1070 10712005-08-15 Erez Zadok <ezk@cs.sunysb.edu> 1072 1073 * amd/mapc.c (mapc_create): mapc find takes 4th arg, the mount 1074 point. Now, we can properly initialize the cfm structure of the 1075 mnt_map, so we can have access to the flags (e.g., SUN_MAP_SYNTAX) 1076 inside each info_*.c file. 1077 (mapc_find): takes 4rd arg (mntpt) and passes it to calls to 1078 mapc_create. 1079 (root_newmap): pass NULL as 4th arg (mntpt). 1080 1081 * amd/amfs_generic.c (amfs_parse_defaults): remove ugly hack to 1082 initialize map cfm structure (including flags) so late. 1083 1084 * amd/autil.c (amfs_mkcacheref): pass mount point as 4th arg to 1085 mapc_find. 1086 1087 * amd/amfs_root.c (amfs_root_mount): pass NULL as new 4th arg to 1088 mapc_find. 1089 1090 * amd/amd.h: extern for mapc_find changed to pass the mount point. 1091 1092 * libamu/xutil.c: debug_flags should be unsigned. 1093 (dbg_opt): fix comments for updated debug_flags, add "defaults". 1094 (debug_option): Don't allow "immutable" (D_IMMUTABLE) flags to be 1095 changed, because they could mess Amd's state and only make sense 1096 to be set once when Amd starts. Currently these immutable flags 1097 are "daemon," "fork," "amq," and "mtab." If Amd not compiled with 1098 debugging, set default "control" options (daemon,fork,amq). 1099 (unregister_amq): proper use of D_AMQ. 1100 1101 * include/am_utils.h: define new D_BASIC, D_CONTROL, D_DEFAULT, 1102 D_IMMUTABLE, and D_MASK. Updated definitions of D_ALL and D_TEST. 1103 debug_flags extern should be unsigned. 1104 1105 * scripts/amd.conf-sample (debug_options): mention new "defaults" 1106 option. 1107 1108 * scripts/amd.conf.5,doc/am-utils.texi: document new debug option 1109 "defaults" and properly explain the corrected meanings of 1110 "daemon," "fork," "amq," and their "no" inversions. Better 1111 explain "all" and "test" too. Correct default debug_mtab file to 1112 /tmp/mtab. 1113 1114 * hlfsd/stubs.c (nfsproc_readlink_2_svc): proper use of D_FORK. 1115 1116 * hlfsd/homedir.c (homedir): proper use of D_FORK. 1117 1118 * hlfsd/hlfsd.c (main, hlfsd_init, cleanup): proper use of 1119 D_DAEMON. 1120 1121 * amd/nfs_start.c (mount_automounter): proper use of D_AMQ. 1122 1123 * amd/amd.h (DEBUG_MNTTAB_FILE): change default to /tmp/mtab, 1124 which is more common on more systems (instead of /tmp/mnttab). 1125 1126 * amd/amd.c (main): properly use D_DAEMON. 1127 11282005-08-14 Erez Zadok <ezk@cs.sunysb.edu> 1129 1130 * libamu/xutil.c (xlog_opt): define new pseudo log_option named 1131 "defaults", which is an alias for "fatal,error,user,warning,info". 1132 1133 * scripts/amd.conf.5, doc/am-utils.texi, amd/amd.8: document new 1134 log_option "defaults". 1135 1136 * amq/amq.8: typo. Arg name for -D is "debug_options" not 1137 "log_options". 1138 1139 * libamu/xutil.c: make xlog_level static, and initialize it to 1140 XLOG_DEFAULT. 1141 (cmdoption): take unsigned int as flags argument, and print any 1142 errors as XLOG_ERROR (which cannot be turned off). 1143 (switch_option): remove old code which disallowed you from turning 1144 off flags that were set when Amd started up. Now, you can turn 1145 any log option on/off at start time or later on (via amq -x), 1146 other than the two mandatory options (fatal+error). 1147 1148 * include/am_utils.h (XLOG_*): remove unused XLOG_DEFSTR. Define 1149 XLOG_MASK to mask out unused flag bits. Define XLOG_DEFAULT to be 1150 what it was before (fatal + error + user + warning + info), but 1151 use the new mask. Remove extern's for xlog_level and 1152 xlog_level_init. Change extern for cmdoption() to take an 1153 unsigned flags argument. 1154 1155 * doc/am-utils.texi, amq/amq.8, scripts/amd.conf.5, amd/amd.8: 1156 document mandatory log options 1157 (fatal+error) which cannot be turned off and are always on by 1158 default. They must be on so that Amd can report crucial errors, 1159 including those related to setting flags on/off. 1160 1161 * hlfsd/hlfsd.c (main): remove hack to initialize log_options. 1162 1163 * wire-test/wire-test.c: remove reference to unused xlog_level. 1164 1165 * amd/mapc.c (mapc_create): 'alloc' flags variable should be 1166 unsigned. 1167 1168 * amd/get_args.c (get_args): no need for hack using 1169 xlog_level_init. 1170 1171 * amd/Makefile.am: separate sources common to amd and sun2amd into 1172 a special, locally-built only, static library called libaminfo.a. 1173 1174 * libamu/xutil.c (real_plog, xsnprintf): call new xvsnprintf() 1175 wrapper function. 1176 (xvsnprintf): new function which already gets a va_list. This was 1177 needed to avoid nesting va_list's (which apparently isn't 1178 allowed). 1179 1180 * include/am_utils.h: prototype for new xvsnprintf wrapper. 1181 1182 * configure.in: sinclude([vers.m4]) version number file. 1183 1184 * vers.m4: new file to separate version number out of 1185 configure.in, useful for nightly snapshot script to generate 1186 nightly version string. 1187 1188 * Makefile.am (EXTRA_DIST_M4): include vers.m4 in distro. 1189 11902005-08-14 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1191 1192 * amd/info_file.c: add key to sun_entry2amd()'s parameters 1193 1194 * amd/info_hesiod.c: add key to sun_entry2amd()'s parameters 1195 1196 * amd/info_ldap.c: add key to sun_entry2amd()'s parameters 1197 1198 * amd/info_ndbm.c: add key to sun_entry2amd()'s parameters 1199 1200 * amd/info_nis.c: add key to sun_entry2amd()'s parameters 1201 1202 * amd/info_nisplus.c: add key to sun_entry2amd()'s parameters 1203 1204 * amd/sun_map.c: New functions to support sun translation to amd. 1205 The function sun_entry2amd's parameters were expanded to include 1206 the key value. sun_entry_2amd() now returns NULL on error. 1207 1208 * amd/sun_map.h: Expand sun_entry2amd's parameters to include key 1209 value. 1210 1211 * amd/sun_map_parse.y: Change how file system types are parsed out 1212 of the list of options for each entry. The previous way was not 1213 working properly so now we just look for the 'fstype' keyword in 1214 each option. If it exists we copy its key value. 1215 Added some comments to sun_map_parse_read(). 1216 1217 * amd/amd.h: Added an extern from info_file.c called 1218 file_read_line(). Previously this function was static but is now 1219 used in sun2amd.c. 1220 1221 * amd/info_file.c: Changed the static function read_line() to a 1222 public function called file_read_line(). This function is now 1223 used in sun2amd.c 1224 1225 * amd/sun2amd.8: Filled in the contents of this man page. This is 1226 a conversion utility that converts Sun maps to Amd maps. 1227 1228 * amd/sun2amd.c: Implemented a working version of this utility. 1229 12302005-08-11 Erez Zadok <ezk@cs.sunysb.edu> 1231 1232 * amd/sun_map_parse.y: instead of using a custom FOO_alloc() 1233 function, use Amd's CALLOC(struct FOO) macro. 1234 1235 * amd/sun_map.h: remove extern definitions to functions no longer 1236 needed. 1237 1238 * amd/sun_map.c: removed superfluous *_alloc() functions, some of 1239 which caused conflicts with same-named symbols in the parser 1240 (since we rename 'yyalloc' to 'sun_map_alloc'). 1241 1242 * configure.in: keep AC_INIT on same line, for nightly snapshot 1243 build script. 1244 1245 * amd/Makefile.am: f/lex libraries are incompatible with multiple 1246 scanners, so don't link Amd with libl.a/libfl.a. 1247 12482005-08-10 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1249 1250 * amd/sun_map_tok.l: Clean up regular expression so HPUX stops 1251 whining. 1252 12532005-08-09 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1254 1255 * amd/sun_map_parse.y: Moved license below special yacc bracket to 1256 be portable with HPUX's yacc. Clean up externs. 1257 1258 * amd/sun_map_tok.l: Moved license below special lex bracket to be 1259 portable with HPUX's lex. Fixed definitions to allow for a 1260 non-flex lex to parse strings instead of files. Added some casts 1261 to strlcpy usage to silence warnings. Moved the % options because 1262 HPUX was complaining, 1263 12642005-08-08 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1265 1266 * amd/sun_map_tok.l: Applied some definition goop to handle the 1267 ECHO symbol that lex defines. This symbol causes problems on 1268 RedHat-EL-powerPC platforms. Replaced strncpy with strlcpy. 1269 Renamed the function sun_map_yyinput to sun_map_input. This 1270 function is a utility function that is not generated by lex. 1271 Therefore, the 'yy' may cause confusion. 1272 12732005-08-08 Erez Zadok <ezk@cs.sunysb.edu> 1274 1275 * amd/sun_map_tok.l: allocate more output slots so lex scanners 1276 don't run out of memory. 1277 1278 * amd/sun_map_parse.y: declare extern for sun_map_parse(). 1279 1280 * libamu/xutil.c (xsnprintf): ensure proper comparisons between 1281 signed and unsigned quantities. 1282 12832005-08-06 Erez Zadok <ezk@cs.sunysb.edu> 1284 1285 * libamu/util.c, amd/autil.c (strsplit): moved strsplit() function 1286 from Amd code to to libamu, so sun2amd could use it. 1287 1288 * amd/Makefile.am (sbin_PROGRAMS): build sun2amd binary and man 1289 page. 1290 (EXTRA_sun2amd_OBJECTS): sun2amd needs to link with all info_*.c files 1291 1292 * amd/sun2amd.8: placeholder for man page. 1293 1294 * amd/sun2amd.c: placeholder for C version of translator from Sun 1295 syntax maps to Amd maps. 1296 1297 * */*.[0-9]: include file name in nroff source comment. 1298 1299 * ALL: use '0' properly when assigning or passing it to functions. 1300 If in the context pointer, use NULL. If in the context of a 1301 single char (say within a string), the use '\0'. This is just to 1302 make the code clearer. 1303 1304 * m4/macros/header_templates.m4: template for HAVE_MAP_SUN. 1305 1306 * amd/mapc.c (maptypes): add placeholder for Sun-syntax map 1307 methods. 1308 1309 * amd/Makefile.am (EXTRA_amd_SOURCES): compile info_sun.c 1310 1311 * amd/info_sun.c: placeholder for meta info parser to get info 1312 from Sun automount-style /etc/auto_master, possibly following 1313 into multiple info services (via /etc/nsswitch.conf). 1314 1315 * libamu/xutil.c (xsnprintf): if vsnprintf truncated the output 1316 string to avoid an overflow, print an error. Include some code to 1317 break out any possible infinite loop between plog() and 1318 xsnprintf(). 1319 (real_plog): now we can use (carefully) xsnprintf() directly. 1320 1321 * amd/sun_map.[hc]: cleanup and formatting. 1322 1323 * amd/sun_map_parse.y: to match the literal string "fstype=" use 1324 double quotes, not single quotes. 1325 1326 * amd/get_args.c (get_args): call conf_parse() using conf_in. 1327 1328 * amd/amd.h: use renamed parser symbols (yyparse -> conf_parse; 1329 yyin -> conf_in). 1330 1331 * ylwrap: Enhance wrapper to avoid the #define hacks done by Gdb, 1332 and suggested by the Automake manual. This enhanced parser will 1333 prefix each conflicting yacc/lex symbol with a unique name 1334 produced from INPUT. For example, if INPUT is foo_parse.y, then 1335 yyparse() becomes foo_parse(). This requires that both your .l 1336 and corresponding .y files have the same prefix (e.g., foo_parse.y 1337 and foo_tok.l). 1338 1339 * amd/Makefile.am (BUILT_SOURCES): define which yacc/lex .h/.c 1340 source files are built automatically, and therefore should not be 1341 in the distro (IMHO), and should be cleaned upon "make clean". 1342 (amd_SOURCES): include new sun_map_parse.y and sun_map_tok.l files. 1343 1344 * ylwrap: new file needed because we have two parsers now. 1345 1346 * amd/sun_map_{parse.y,tok.l}: cleanup and formatting. 1347 13482005-08-06 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 1349 1350 * amd/Makefile.am: Added new files sun_map.h, sun_map.c, 1351 sun_map_parse.y, and sun_map_tok.l. These files add support for 1352 parsing Sun style maps. The yacc/lex files needed custom rules so 1353 they don't cause symbol conflicts with each other. 1354 1355 * amd/amd.h: Added "#define INFO_MAX_LINE_LEN" that specifies the 1356 line limit for info services. 1357 1358 * amd/info_exec.c: Replaced MAX_LINE_LEN with INFO_MAX_LINE_LEN 1359 1360 * amd/info_file.c: Replaced MAX_LINE_LEN with INFO_MAX_LINE_LEN, 1361 added support for parsing Sun style maps. The support for Sun 1362 maps is done using the sun_entry2amd() function. This function is 1363 called for each entry line that is read only when Sun parsing is 1364 enabled. For each entry line that is passed to the function a 1365 copy of the Amd equivalent is returned. 1366 1367 * amd/sun_map.h: new header file for Sun style map support 1368 1369 * amd/sun_map.c: new source file for Sun style map support, clean 1370 up comments, additional sun2amd conversion routines 1371 1372 * amd/sun_map_parse.y: new yacc file for parsing Sun style maps, 1373 fix copyright notice, put filename below license. 1374 1375 * amd/sun_map_tok.l: new lex file for parsing Sun style maps, fix 1376 copyright notice, put filename below license. 1377 1378 * amd/get_args.c: replace usage of strlcat with xstrlcat 1379 1380 * include/am_utils.h: added 'extern void xstrlcat()' 1381 1382 * libamu/util.c: Added a xstrlcat() function that wraps the 1383 syscall strlcat() so that string truncations can be logged. 1384 13852005-08-06 Erez Zadok <ezk@cs.sunysb.edu> 1386 1387 * amd/info_file.c (file_search, file_reload): pass mnt_map to 1388 file_search_or_reload. 1389 (file_search_or_reload): ensure that mnt_map is never NULL. 1390 1391 * amd/info_nis.c (nis_search): call sun_entry2amd() if 1392 sun_map_syntax=yes. 1393 1394 * amd/info_ldap.c (amu_ldap_search): call sun_entry2amd() if 1395 sun_map_syntax=yes. 1396 1397 * amd/info_hesiod.c (hesiod_search): call sun_entry2amd() if 1398 sun_map_syntax=yes. 1399 1400 * amd/info_ndbm.c (ndbm_search): pass mnt_map to search_ndbm. 1401 (search_ndbm): call sun_entry2amd() if sun_map_syntax=yes. 1402 1403 * amd/info_nisplus.c (nisplus_search): call sun_entry2amd() if 1404 sun_map_syntax=yes. 1405 1406 * amd/info_exec.c (exec_search): pass mnt_map to 1407 exec_parse_qanswer. 1408 (exec_parse_qanswer): call sun_entry2amd() if sun_map_syntax=yes. 1409 1410 * doc/am-utils.texi (sun_map_syntax Parameter): document new 1411 common parameter. 1412 1413 * scripts/amd.conf.5: selectors_in_defaults is a common parameter, 1414 not just [global]. Use consistent capitalization of Amd/Amq. 1415 Document new sun_map_syntax parameter. 1416 1417 * scripts/amd.conf-sample: properly list all of the parameters 1418 which are common to both the [global] and the per-map sections. 1419 (sun_map_syntax): example of new parameter. 1420 1421 * doc/am-utils.texi (Common Parameters): selectors_in_defaults is 1422 a common parameter, not just [global]. 1423 1424 * scripts/amd.conf-sample (sun_map_syntax): example of new flag. 1425 1426 * amd/conf.c ({ropt,gopt}_sun_map_syntax): new function to parse 1427 sun_map_syntax flag (global or per map). 1428 1429 * amd/amd.h (CFM_SUN_MAP_SYNTAX): new flag for users to say if the 1430 map uses Sun automounter syntax. 1431 1432 * cvs-server.txt: update instructions after branching 6.1-stable. 1433 14342005-08-02 Erez Zadok <ezk@cs.sunysb.edu> 1435 1436 ******************************************************************* 1437 *** Released am-utils-6.1.1 *** 1438 ******************************************************************* 1439 1440 * libamu/xutil.c (xsnprintf): "unsafe" alternative to vsnprintf is 1441 vsprintf, not sprintf. 1442 1443 * conf/umount/umount_osf.c (umount_fs): refer to proper formal 1444 parameter name. 1445 (umount2_fs): pass second arg to umount(). 1446 1447 * ALL: remove CVS ID and put actual file name in source. 1448 1449 * conf/autofs/*.[hc]: proper copyright headers. 1450 1451 * whitespace reformatting. Remove remaining '%W%' SCCS IDs. 1452 1453 * amd/mntfs.c (free_mntfs): don't discard the last reference to an 1454 mntfs that had been mounted already. It won't have the 1455 MFF_RESTARTED flag on, as it gets turned off after the entry is 1456 mounted, but it will have the MFF_RSTKEEP flag on. 1457 1458 * amd/autil.c (mf_mounted), amd/restart.c (restart_fake_mntfs): 1459 show the mntfs's flags. 1460 14612005-08-01 Erez Zadok <ezk@cs.sunysb.edu> 1462 1463 * conf/mtab/mtab_linux.c: removed unused code. Cleanup. 1464 (handler): removed this bad signal handler. 1465 (lock_mtab): Redhat's original code set a signal handler called 1466 "handler()" for all non-ALRM signals. The handler called 1467 unlock_mntlist(), plog'ed the signal name, and then exit(1)! 1468 Never, ever, exit() from inside a utility function. This messed 1469 up Amd's careful signal-handling code, and caused Amd to abort 1470 uncleanly only any other "innocent" signal 1471 (even simple SIGUSR1), leaving behind a hung Amd mnt point. That 1472 code should have at least restored the signal handlers' states 1473 upon a successful mtab unlocking. Anyway, that handler was 1474 unnecessary, because will call unlock_mntlist() properly anyway on 1475 exit. 1476 1477 * conf/mtab/mtab_{file,isc3,mach3,linux}.c (unlock_mntlist): dlog 1478 message that we're inside the unlock_mntlist function. 1479 1480 * amd/amd.c (main): use new setup_sighandler() for Amd's four main 1481 signals (INT, TERM, HUP, and CHLD). 1482 (main) Add SIGINT and SIGTERM to masked_sigs, used in 1483 nfs_start.c:do_select() for setjmp/longjmp code; the MASK was set 1484 to all four signals if !HAVE_SIGACTION, but only to HUP+CHLD if we 1485 HAVE_SIGACTION. So this change makes Amd behave consistently. 1486 1487 * include/am_utils.h: extern for new setup_sighandler(). 1488 1489 * libamu/xutil.c (setup_sighandler): new utility function to setup 1490 a single signal-handler regardless of what method is supported by 1491 this OS. 1492 (going_down): call unlock_mntlist() when exiting, to ensure that 1493 Amd will remove any leftover mtab lock files, if any. 1494 1495 * amd/restart.c (restart_automounter_nodes): cleanup function. 1496 1497 * minor new port: i386-pc-linuxoldld-deb3.1. 1498 1499 * configure.in: include <sys/types.h> before <linux/socket.h> to 1500 get the definition of size_t on Debian-3.1r0a. 1501 15022005-07-29 Erez Zadok <ezk@cs.sunysb.edu> 1503 1504 * amd/srvr_nfs.c (find_nfs_srvr): don't blindly copy the hostent 1505 IP address. First check if it differs from the existing one of 1506 the fserver, and copy only if it changed. If it did change, flush 1507 the fhandle cache to avoid a stale fhandle being reused. This 1508 allows Amd to detect IP address changes even for an fserver that 1509 lost one or more NFS pings, but not enough to be declared totally 1510 down. We handle the "totally down" fserver case in 1511 check_fs_addr_change(). 1512 1513 * amd/ops_nfs.c (nfs_umount), amd/sched.c (sched_task), 1514 amd/nfs_subr.c (nfs_quick_reply): code clarity. 1515 1516 * conf/mount/mount_linux.c (linux_nfs_error): dlog mappings of 1517 errnos to NFS errors. 1518 1519 * conf/umount/umount_linux.c (umount2_fs): cleanup code. Trying 1520 stat() seems doomed to hang at times, so don't try stat at all, 1521 because umount2() appears to be clever enough to never hang. 1522 15232005-07-25 Erez Zadok <ezk@cs.sunysb.edu> 1524 1525 * amd/amd.h (FSF_FORCE_UNMOUNT): new flag used to indicate that a 1526 particular fserver may need forced/lazy unmounts when it's mntfs's 1527 are unmounted. 1528 1529 * amd/ops_nfs.c (nfs_umount): a simple unmount returned EBUSY, and 1530 the user specified forced_unmounts=yes in amd.conf, and this 1531 fserver was flagged with FSF_FORCE_UNMOUNT, and the OS supports 1532 forced/lazy unmounts, then try forced/lazy unmounts. This should 1533 allow a hung mount point to be removed. 1534 1535 * amd/srvr_nfs.c (find_nfs_srvr): move away IP-address change 1536 detection code to its own function. 1537 (check_fs_addr_change): new function to detect if the IP address 1538 of a downed host has changed, and do various cleanups and fixups 1539 to try and recover as best from that situation (e.g., flushing 1540 various caches). Also set the FSF_FORCE_UNMOUNT flag for the 1541 fserver in question. 1542 (flush_srvr_nfs_cache): pass fserver as argument, so we can 1543 selectively flush the NFS cache for a single fserver (or all of 1544 them, if you pass NULL). 1545 1546 * libamu/xutil.c (switch_to_logfile): truncate a regular-file log 1547 file if user passed non-zero "truncate_log" flag. 1548 1549 * include/am_utils.h: switch_to_logfile() now takes a 3rd arg. 1550 1551 * amd/get_args.c (get_args): pass "truncate_log" flag as per 1552 amd.conf global settings. 1553 1554 * amd/conf.c (gopt_truncate_log): store global value of 1555 truncate_log flag. 1556 1557 * amd/amq_subr.c (amqproc_setopt_1_svc), hlfsd/hlfsd.c (main, 1558 reload): don't truncate log file when calling switch_to_logfile(). 1559 1560 * amd/amd.h (CFM_TRUNCATE_LOG): new flag. Fix comment typo. 1561 1562 * NEWS, doc/am-utils.texi (truncate_log Parameter), 1563 scripts/amd.conf.5, scripts/amd.conf-sample (log_file): document 1564 new truncate_log amd.conf parameter. 1565 1566 * amd/conf.c (gopt_forced_unmounts): check Linux kernel version 1567 and alert if your version may be too old for MNT_FORCE to work 1568 (before 2.4.0) or for MNT_DETACH to work (before 2.6.0). 1569 Otherwise it may be impossible to pin down the exact kernel 1570 version in which we should enable this feature. 1571 1572 * conf/umount/umount_linux.c (umount2_fs): if MNT_FORCE returned 1573 EBUSY, then don't try to stat(2) before MNT_DETACH because it 1574 could hang. 1575 15762005-07-21 Erez Zadok <ezk@cs.sunysb.edu> 1577 1578 * conf/umount/umount_linux.c (umount_fs): cleanup this function, 1579 breaking long "if" statements using "goto out". 1580 1581 * conf/umount/umount_{aix,bsd44,osf,default,linux}.c (umount_fs): 1582 call new utility function umount2_fs() as needed (EBUSY, EIO, or 1583 ESTALE). 1584 1585 * conf/umount/umount_{aix,bsd44,osf,default,linux}.c (umount2_fs): 1586 define a new utility function to invoke forcible/lazy unmounts 1587 without touching any mtab files. This separate utility function 1588 is useful because it can be called from elsewhere. 1589 1590 * amd/amfs_toplvl.c (amfs_toplvl_init): new function, called 1591 before Amd mounts toplvl mounts, which gives us a hook for cleanup 1592 of a previously dead Amd. In our case, if the user asked for 1593 forced_unmounts, and the OS supports it, then we try forced/lazy 1594 unmounts on any previous toplvl mounts. This is useful if a 1595 previous Amd died and left behind toplvl mount points (this Amd 1596 will clean them up!). WARNING: Don't use forced/lazy unmounts if 1597 you have another valid Amd running, because this code WILL force 1598 those valid toplvl mount points to be detached as well! 1599 1600 * amd/amfs_toplvl.c (amfs_toplvl_umount): don't unconditionally 1601 try forced/lazy unmounts because it will prevent a normal Amd from 1602 terminating and cleaning up properly (self-deadlocking: detached 1603 mounts hang the parent Amd on a stat). Since we already do 1604 unmounts in the background, then try a safer policy: after trying 1605 the normal unmounts a few times (5 sec), escalate and try forced 1606 unmounts a few times (5 more seconds), and if even that failed, 1607 then try the ultimate -- detached unmounts (which always succeed). 1608 This allows Amd to first try and shutdown cleanly, and gradually 1609 try more forcible ways to shutdown. On Linux, this procedure will 1610 cleanly shutdown Amd even if there are processes with their CWD on 1611 Amd's mount points (which normally result in EBUSY). 1612 16132005-07-20 Erez Zadok <ezk@cs.sunysb.edu> 1614 1615 * Makefile.am (EXTRA_DIST_CONF): add new umount_aix.c to distro. 1616 1617 * conf/umount/umount_aix.c: easier if AIX has its own unmount 1618 helper file. 1619 1620 * m4/macros/check_umount_style.m4: AIX needs its own unmount style 1621 file. 1622 1623 * doc/am-utils.texi (forced_unmounts Parameter): @xref -> @pxref. 1624 16252005-07-19 Erez Zadok <ezk@cs.sunysb.edu> 1626 1627 * conf/nfs_prot/nfs_prot_aix5_2.h: define compatible 1628 forced-unmount flag. 1629 1630 * conf/umount/umount_default.c (umount_fs): if regular umount got 1631 EBUSY, EIO, or ESTALE, then try forced unmount, if supported. Try 1632 umount2 (Solaris) or uvmount (AIX). 1633 1634 * conf/umount/umount_{bsd44,osf}.c (umount_fs): if default 1635 umount() failed with EIO or ESTALE, also try forced unmount. 1636 16372005-07-18 Erez Zadok <ezk@cs.sunysb.edu> 1638 1639 * amd/autil.c (amfs_mount), amd/amfs_toplvl.c 1640 (amfs_toplvl_umount): enable forced/lazy unmounts only if user 1641 asked for it (and dlog it). 1642 1643 * scripts/amd.conf.5: document new force_unmount global parameter. 1644 1645 * doc/am-utils.texi (forced_unmounts Parameter): document new 1646 global parameter. 1647 1648 * amd/conf.c (gopt_forced_unmounts): process forced_unmounts 1649 option (default "no"). Exit with an error if user specified the 1650 option as "yes" but configure couldn't find support for either the 1651 MNT_FORCE or MNT_DETACH flags. 1652 1653 * scripts/amd.conf-sample (forced_unmounts): example usage of new 1654 option. 1655 1656 * amd/amd.h (CFM_FORCED_UNMOUNTS): new flag for forced_unmounts 1657 option. 1658 1659 * m4/macros/header_templates.m4: templates for _DETACH and _FORCE. 1660 1661 * configure.in: check for generic u/mount options "detach" and 1662 "force". 1663 1664 * include/am_utils.h (UMOUNT_FS, umount_fs): new prototypes. 1665 Define AMU_UMOUNT flags for force, detach, and autofs. 1666 1667 * amd/amfs_toplvl.c (amfs_toplvl_umount): pass _FORCE and _DETACH 1668 unmount flags unconditionally. Pass them to UMOUNT_FS(). 1669 1670 * conf/nfs_prot/nfs_prot_linux.h: define MNT_FORCE and MNT_DETACH 1671 if needed, because some Linux systems don't define them 1672 (presumably because it would be too dangerous to expose these 1673 flags to users). 1674 1675 * amd/autil.c (amfs_mount): if mount(2) failed with ESTALE or EIO, 1676 then assume that we're in trouble, possibly because a previous 1677 mount is hung. So, first try to force a lazy unmount of the old 1678 mount. If the forced unmount worked, then try again to mount the 1679 desired file system. If the forced unmount failed, then don't 1680 retry: just return an error. 1681 1682 * amd/amfs_generic.c (amfs_generic_umount), amd/amfs_host.c 1683 (amfs_host_umount), amd/ops_cachefs.c (cachefs_umount), 1684 amd/ops_cdfs.c (cdfs_umount), amd/ops_efs.c (efs_umount), 1685 amd/ops_lofs.c (lofs_umount), amd/ops_nfs.c (nfs_umount), 1686 amd/ops_pcfs.c (pcfs_umount), amd/ops_ufs.c (ufs_umount), 1687 amd/ops_xfs.c (xfs_umount), conf/umount/umount_bsd44.c 1688 (umount_fs), conf/umount/umount_default.c (umount_fs), 1689 conf/umount/umount_linux.c (umount_fs), conf/umount/umount_osf.c 1690 (umount_fs): compute and use unmount specific flags. 1691 16922005-07-16 Erez Zadok <ezk@cs.sunysb.edu> 1693 1694 * configure.in: better help for users, if nfs_args can't be found. 1695 16962005-07-15 Erez Zadok <ezk@cs.sunysb.edu> 1697 1698 * BUGS: more details on AIX's need to install bos.net.nfs.adt 1699 before configuring am-utils (else configure cannot find struct 1700 nfs_args on AIX). 1701 17022005-07-10 Erez Zadok <ezk@cs.sunysb.edu> 1703 1704 * amd/srvr_nfs.c (find_nfs_srvr): flush NFS handle cache if the IP 1705 address of a down server had changed. 1706 1707 * amd/info_union.c (union_reload): use safer xsnprintf() routine. 1708 1709 * amd/srvr_nfs.c (find_nfs_srvr): check to see if the IP address 1710 of a named but down fserver changed (i.e., the previous IP address 1711 is no longer responding). If so, then reset the fserver to the 1712 new IP address, and set the fserver's flags such that the function 1713 will fall through to doing the usual NFS version/proto checks and 1714 pinging. (This should fix one case of bug #308.) 1715 1716 * conf/umount/umount_linux.c (umount_fs): warn if plain umount() 1717 failed, before we try to ignore any errors or try optional 1718 umount2(), possibly with forced/lazy unmount. 1719 (umount_fs): dlog when unmount succeeded. 1720 17212005-07-08 Erez Zadok <ezk@cs.sunysb.edu> 1722 1723 * conf/mount/mount_linux.c: add a couple more NFSv2 error codes 1724 that are compatible with NFSv3. 1725 17262005-07-07 Erez Zadok <ezk@cs.sunysb.edu> 1727 1728 * m4/macros/header_templates.m4: extern template for strlcat(). 1729 1730 * amd/get_args.c (get_version_string): use safer strlcat (or 1731 replacement strlcat). Use new wrapper xsnprintf() function, which 1732 will use the safer vsnprintf() if available, else default to plain 1733 sprintf. 1734 1735 * configure.in: check for existence of strlcat() and its extern, 1736 replacing with libamu/strlcat.c as needed. 1737 1738 * libamu/Makefile.am (EXTRA_DIST): add strlcat.c to distro. 1739 1740 * include/am_defs.h: optional strlcat() extern. 1741 1742 * include/am_utils.h: extern for new xvsnprintf(). 1743 1744 * configure.in: overdue new major libtool shlib version. 1745 Check for snprintf function and extern. 1746 17472005-07-06 Erez Zadok <ezk@cs.sunysb.edu> 1748 1749 * conf/nfs_prot/nfs_prot_aix4_3.h: cleanup struct 1750 aix4_nfs_args_bis. 1751 1752 * Makefile.am (EXTRA_DIST_CONF): include mount_aix3.c in 1753 distribution. 1754 1755 * conf/mount/mount_aix.c: mount style for aix 5.x and newer. 1756 1757 * conf/mount/mount_aix3.c: mount styles for aix 3.x/4.x. 1758 1759 * m4/macros/check_mount_style.m4: split mount styles for 1760 aix3.x/4.x and the newer (and better) aix 5.x code. 1761 17622005-07-05 Erez Zadok <ezk@cs.sunysb.edu> 1763 1764 * amq/pawd.c (getawd): avoid buffer overflow. Bug fix from Graeme 1765 Wilford <G.Wilford@surrey.ac.uk>. 1766 17672005-06-30 Erez Zadok <ezk@cs.sunysb.edu> 1768 1769 * amd/map.c (get_next_exported_ap): Avoid running off the end of 1770 the exported_ap[] array. Patch from jon+amd-at-spock.org. Fixed 1771 bug #301. 1772 17732005-06-25 Erez Zadok <ezk@cs.sunysb.edu> 1774 1775 * Makefile.am (EXTRA_DIST_CONF): distribute new mtab_linux.c. 1776 1777 * conf/mtab/mtab_linux.c (rewrite_mtab): variable declarations 1778 must come before C code. 1779 1780 * conf/mtab/mtab_linux.c: Linux-specific mount table hanlding 1781 that's safe (uses locks, handles symlinks to /proc/mounts, etc.). 1782 Patch from Red Hat, which they adapted from mtab_file.c. Minor 1783 fixes to this file. 1784 1785 * m4/macros/check_mnttab_style.m4: Use Linux-specific mount table 1786 handling. 1787 17882005-06-24 Erez Zadok <ezk@cs.sunysb.edu> 1789 1790 * conf/mount/mount_aix.c (mount_aix3): minor cleanup of filehandle 1791 copying code. 1792 17932005-06-23 Erez Zadok <ezk@cs.sunysb.edu> 1794 1795 * conf/nfs_prot/nfs_prot_hpux.h: add extern for h_errno, which may 1796 be missing from older hpux10 systems. 1797 1798 * configure.in: update bug-reporting address to list 1799 https://bugzilla.am-utils.org/ as well as the mailing list. 1800 1801 * Makefile.am (EXTRA_DIST_M4): distribute new type_rpcvers_t.m4 1802 macro. 1803 1804 * conf/transp/transp_tli.c (get_nfs_version): always use 1805 rpcvers_t, now that it'll be automatically discovered. 1806 1807 * configure.in: check for rpcvers_t type. 1808 1809 * m4/macros/type_rpcvers_t.m4: new macro to check for type of 1810 rpcvers_t (Some Solaris versions need it). 1811 1812 * conf/nfs_prot/nfs_prot_sunos5_8.h: don't define INADDR_NONE 1813 here, but in the actual source files that may need it. 1814 1815 * libamu/wire.c (INADDR_NONE): define INADDR_NONE if not defined 1816 already. 1817 1818 * include/am_defs.h: define extern for sleep(3) if needed. 1819 1820 * m4/macros/header_templates.m4: template for sleep(3) extern. 1821 1822 * configure.in: check for extern for sleep(3), which is missing 1823 from some old (and buggy) versions of gcc's fixinc'ed headers. 1824 1825 * conf/nfs_prot/nfs_prot_aix4_3.h: update definition of struct 1826 nfs_args from actual system headers. 1827 1828 * conf/mount/mount_aix.c (mount_aix3): fix name of aix4 "bis" 1829 structure. 1830 18312005-06-22 Erez Zadok <ezk@cs.sunysb.edu> 1832 1833 * BUGS: update Solaris information about use of f/lex and 1834 yacc/bison. 1835 18362005-06-20 Erez Zadok <ezk@cs.sunysb.edu> 1837 1838 * minor new port: i386-pc-linux-suse9.3. 1839 18402005-06-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1841 1842 * configure.in (linux/nfs_mount.h): Move __KERNEL__ definition up 1843 so u32 is available for <linux/sunrpc/msg_prot.h>. 1844 18452005-06-16 Erez Zadok <ezk@cs.sunysb.edu> 1846 1847 * amd/mapc.c (maptypes): move MAP_EXEC after MAP_FILE, because 1848 exec maps will always match when users use amd with command line 1849 args (not amd.conf). Using that legacy way, unfortunately, means 1850 that Amd will use it's hard-coded info-service search path, which 1851 doesn't work for everyone. It's much better to use amd.conf and 1852 specify what you want exactly. 1853 18542005-06-15 Erez Zadok <ezk@cs.sunysb.edu> 1855 1856 * minor new port: i386-pc-linux-fc4 (gcc4 catches more bugs). 1857 1858 * m4/macros/type_recvfrom_fromlen.m4: linux systems use unsigned 1859 int as the type of recvfrom()'s 6th argument. 1860 1861 * m4/macros/type_yp_order_outorder.m4: linux systems use unsigned 1862 int as the type of yp_order()'s 3rd argument. 1863 18642005-06-15 Erez Zadok <ezk@cs.sunysb.edu> 1865 1866 * scripts/amd.conf-sample (map_type): typo, said mount_type 1867 instead of map_type for the 'exec' example. 1868 18692005-06-11 Erez Zadok <ezk@cs.sunysb.edu> 1870 1871 ******************************************************************* 1872 *** Released am-utils-6.1 *** 1873 ******************************************************************* 1874 18752005-06-04 Erez Zadok <ezk@cs.sunysb.edu> 1876 1877 * amd/ops_nfs.c (mount_nfs_fh): set timeo/retrans mount options 1878 only if the user specified them in amd.conf or elsewhere. If they 1879 were not specified, don't do anything, which would let the OS use 1880 its own defaults. 1881 1882 * amd/get_args.c (get_args): negative timeo/retrans are "good" in 1883 that they represent uninitialized values (meaning to let the OS 1884 use it's default values). So only check if user specified a value 1885 equal to zero (invalid). 1886 1887 * amd/amd.h: define AMU_TYPE_NONE so we know when users didn't 1888 specify timeo/retrans at all. 1889 18902005-06-03 Erez Zadok <ezk@cs.sunysb.edu> 1891 1892 ******************************************************************* 1893 *** Released am-utils-6.1-rc7 *** 1894 ******************************************************************* 1895 1896 * m4/macros/os_cflags.m4 (CFLAGS): use custom-OS C flags for 1897 configuring, not just for building. That way the two phases 1898 (configure and compile) are in sync. This fixes getwire() on 1899 OSF/1 systems. 1900 1901 * conf/nfs_prot/nfs_prot_sunos5_8.h: define INADDR_NONE if not 1902 defined in system headers. 1903 19042005-06-01 Erez Zadok <ezk@cs.sunysb.edu> 1905 1906 * libamu/Makefile.am (EXTRA_DIST): remove alloca.c as it's no 1907 longer needed. 1908 19092005-05-28 Erez Zadok <ezk@cs.sunysb.edu> 1910 1911 * completed set of fixes for irix6.5. 1912 1913 * Minor new ports alpha-unknown-linux-gentoo1.4.16 1914 alphaev56-dec-osf4.0f, mips-unknown-linux-gentoo1.4.16, and 1915 sparc64-unknown-linux-gentoo1.4.16, and mips-sgi-irix6.5. Test 1916 those systems with both cc and gcc, where possible. 1917 1918 * include/am_xdr_func.h: remove trailing comma at end of enum 1919 list. 1920 1921 * m4/macros/os_cflags.m4: with gcc 3.4.3 on irix-6.5, we get pte_t 1922 undefined. So give it a dummy value. 1923 1924 * libamu/alloca.c: remove file from distro. 1925 1926 * configure.in: don't call AC_FUNC_ALLOCA any more. 1927 1928 * include/am_defs.h: remove header fixups for <alloca.h>, now that 1929 we don't need it. 1930 1931 * amd/amq_svc.c (amqsvc_is_client_allowed): rewrite function to 1932 avoid only use of alloca() in am-utils, and to use strdup 1933 explicitly. This way we can avoid using alloca, a feature that's 1934 not portable on various systems. 1935 1936 * amq/amq.c: remove unused lint/rcsid cruft. 1937 19382005-05-27 Erez Zadok <ezk@cs.sunysb.edu> 1939 1940 * conf/checkmount/checkmount_osf.c (fixmount_check_mount): add 1941 extra parentheses around assignments in "if" expressions (gcc 1942 complains). 1943 1944 * conf/nfs_prot/nfs_prot_osf4.h: add missing extern definitions 1945 for plock, hstrerror, getmntinfo, alloca, xdr_exportnode, and 1946 xdr_groups. 1947 1948 * configure.in: check for <linux/socket.h>, which, if found, 1949 appears to be preferable to <sys/socket.h>. Use it to find 1950 <linux/nfs_mount.h>. On some Linux systems 1951 (Gentoo), both exist but only one must be included, or else you 1952 get redefined structure errors. 1953 1954 * libamu/wire.c (is_network_member): check if masknum is 1955 INADDR_NONE, not "< 0" because it's an unsigned quantity. 1956 1957 * libamu/util.c (xstrlcpy): remove useless test for size_t < 0, 1958 because it's an unsigned quantity. 1959 19602005-05-26 Erez Zadok <ezk@cs.sunysb.edu> 1961 1962 ******************************************************************* 1963 *** Released am-utils-6.1-rc6 *** 1964 ******************************************************************* 1965 19662005-05-25 Erez Zadok <ezk@cs.sunysb.edu> 1967 1968 * conf/nfs_prot/nfs_prot_aix5_2.h: AIX 5.3 complains about 1969 missing definition of struct thread_credentials in <sys/vfs.h> 1970 but trying to bring that definition in drags a whole lot of other 1971 messy stuff. So just provide a dummy definition for this 1972 structure. 1973 19742005-05-24 Erez Zadok <ezk@cs.sunysb.edu> 1975 1976 * Makefile.am (EXTRA_DIST_M4): distribute m4/macros/libtool.m4. 1977 1978 * m4/macros/header_templates.m4: template for HAVE_EXTERN_MNTCTL. 1979 1980 * m4/macros/check_extern.m4: include <sys/vmount.h> on AIX 1981 systems, so we can find extern definition for mntctl(). 1982 1983 * conf/mtab/mtab_aix.c, conf/checkmount/checkmount_aix.c: only 1984 define an extern for mntctl() if needed. 1985 1986 * amd/ops_nfs.c (prime_nfs_fhandle_cache): never, ever, use C++ 1987 style comments in C code. Some C compilers don't accept it. 1988 1989 * amd/info_ldap.c (amu_ldap_init, get_ldap_timestamp): force cast 1990 of "time_t *ts" to u_long, to avoid complaints on AIX 5.2 with 1991 xlC. 1992 1993 * amd/get_args.c: rename symbol conf_file to amu_conf_file to 1994 avoid conflict with libldap.a from openldap-2.0.21 on AIX 5.2. 1995 Oh, when will people who develop libraries learn to always prefix 1996 their exported symbols with a library-specific name? 1997 1998 * configure.in: check for mntctl() extern on AIX systems. 1999 2000 * ltmain.sh: update from latest libtool-1.5.18, so we can properly 2001 build on AIX 5.2/5.3 with cc and with gcc. 2002 2003 * m4/macros/libtool.m4: update from latest libtool-1.5.18. This 2004 time, and from now on, we must include libtool.m4 from the libtool 2005 distribution itself. That way we ensure that we use an ltmain.sh 2006 that matches the appropriate libtool M4 macros. This makes 2007 am-utils no longer dependent on having libtool installed on a 2008 given system on which you run bootstrap. 2009 20102005-05-23 Erez Zadok <ezk@cs.sunysb.edu> 2011 2012 * minor new port: i386-pc-linux-deb3.0. 2013 20142005-05-22 Erez Zadok <ezk@cs.sunysb.edu> 2015 2016 * minor new ports: i386-unknown-netbsdelf2.0.2 and 2017 i386-unknown-openbsd3.7. 2018 20192005-05-20 Erez Zadok <ezk@cs.sunysb.edu> 2020 2021 * minor new ports: i386-pc-linux-gentoo1.4.16 and 2022 powerpc-unknown-linux-yellowdog2.3. 2023 2024 * include/{mount_headers2.h, am_defs.h}: safer setup before 2025 inclusion of <linux/nfs_mount.h>, which is broken on several 2026 systems. 2027 2028 * configure.in: test for <linux/nfs2.h>. Separate special test 2029 for <linux/nfs_mount.h> because we need to define __KERNEL__ for 2030 that test, as well as optionally define struct nfs2_fh for some 2031 systems (gentoo with 2.4 kernel, yellowdog 2.3, and others). 2032 2033 * config.guess.long: support Gentoo and Yellow Dog Linux distros. 2034 20352005-05-18 Erez Zadok <ezk@cs.sunysb.edu> 2036 2037 * minor new ports: i386-pc-linux-suse9.2 and 2038 i386-unknown-freebsd5.4. 2039 2040 * amd/nfs_subr.c: use NFS_FHSIZE, not FHSIZE. 2041 20422005-05-17 Erez Zadok <ezk@cs.sunysb.edu> 2043 2044 ******************************************************************* 2045 *** Released am-utils-6.1-rc5 *** 2046 ******************************************************************* 2047 2048 * amd/info_ldap.c (amu_ldap_init): change plog to dlog, to avoid 2049 sending annoying warning for a minor issue. 2050 20512005-05-17 Ion Badulescu <ionut@moisil.badula.org> 2052 2053 * amd/nfs_subr.c: check for NULL pointer before dereferencing it. 2054 20552005-05-16 Erez Zadok <ezk@cs.sunysb.edu> 2056 2057 * minor new ports: powerpc-apple-darwin7.9.0. 2058 2059 * m4/macros/host_macros.m4: if a NetBSD system, remove 'elf' part 2060 from OS name because it's no longer relevant. Also, don't include 2061 the major OS version number in the OS name because that's also 2062 unnecessary (and users can always use $osver in maps). 2063 2064 * amd/nfs_subr.c: use [1] for out-of-band pointer at the end of 2065 struct am_fh, because it's the most portable method. Bug fix 2066 suggestion from Dan Riley <dsr at mail.lns.cornell.edu>. Better 2067 fix from Ion Badulescu: use [FHSIZE-sizeof(u_int)] which is the 2068 actual size we use. 2069 2070 * amd/amfs_generic.c (amfs_lookup_mntfs): reset currently used 2071 def_opts to options given in -opts, appended with the /default 2072 options. Bug fix suggestion from Dan Riley <dsr at 2073 mail.lns.cornell.edu>. 2074 20752005-05-13 Erez Zadok <ezk@cs.sunysb.edu> 2076 2077 ******************************************************************* 2078 *** Released am-utils-6.1-rc4 *** 2079 ******************************************************************* 2080 20812005-05-11 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 2082 2083 * amd/amd.c (main) : fixed memory leak detected by valgrind 2084 2085 * amd/info_ldap.c (amu_ldap_init) : fixed memory leak detected by 2086 valgrind 2087 20882005-05-11 Erez Zadok <ezk@cs.sunysb.edu> 2089 2090 * m4/macros/{check_checkmount_style.m4, check_mnttab_style.m4, 2091 check_nfs_fh_dref.m4, check_nfs_prot_headers.m4, 2092 check_nfs_sa_dref.m4, check_umount_style.m4, os_cflags.m4}: check 2093 for "macosx" as valid OS string, so we compile properly on Darwin 2094 systems. 2095 2096 ******************************************************************* 2097 *** Released am-utils-6.1-rc3 *** 2098 ******************************************************************* 2099 2100 * rerun bootstrap to get a working configure script that actually 2101 checks for limits.h and dependent linux autofs/nfs headers. 2102 2103 * configure.in: remove redundant check for limits.h. 2104 21052005-05-09 Erez Zadok <ezk@cs.sunysb.edu> 2106 2107 ******************************************************************* 2108 *** Released am-utils-6.1-rc2 *** 2109 ******************************************************************* 2110 21112005-05-08 Erez Zadok <ezk@cs.sunysb.edu> 2112 2113 * amd/amfs_generic.c (amfs_lookup_mntfs): removed redundant use of 2114 old_def_opts variable. 2115 21162005-05-08 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 2117 2118 * amd/amfs_generic.c (amfs_lookup_mntfs) : Make sure when a map 2119 entry has a single dash '-', that the default options are reset. 2120 This functionality was somehow lost from earlier releases and 2121 reported by Dan Riley <dsr@mail.lns.cornell.edu>. 2122 21232005-05-05 Erez Zadok <ezk@cs.sunysb.edu> 2124 2125 * config.guess.long: detect SuSE Enterprise Server and call it 2126 "sles" not "suse". 2127 21282005-05-02 Erez Zadok <ezk@cs.sunysb.edu> 2129 2130 * doc/am-utils.texi (amd): document proper use of 2131 /etc/hosts.allow. Don't spawn a new Amd process because Amd will 2132 get confused if someone else waitpid's on its children (which 2133 often do important un/mount work). Issue reported by Francis 2134 Montagnac <Francis.Montagnac at sophia.inria.fr>. 2135 2136 * minor new ports: powerpc64-unknown-linux-rhel4, and 2137 powerpc64-unknown-linux-sles9. 2138 21392005-05-01 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 2140 2141 * amd/amfs_host.c (amfs_host_umount): We do not want to pass 2142 ENOENT as an error because if the directory does not exists our 2143 work is done anyway. 2144 2145 * conf/umount/umount_linux.c (umount_fs): If we are successful or 2146 there was an ENOENT, remove the mount entry from the mtab file. 2147 21482005-05-01 Ion Badulescu <ionut@moisil.badula.org> 2149 2150 * amd/nfs_subr.c: am_fh definition moved here from amd.h; 2151 restructured to better reflect its duality (old/new filehandles) 2152 (fh_to_mp3): fhh_gen is always used, even for new style f/h 2153 (mp_to_fh): ditto 2154 2155 * amd/amd.h: moved am_fh definition to nfs_subr.c (which is the 2156 only place where it's used) 2157 21582005-04-30 Erez Zadok <ezk@cs.sunysb.edu> 2159 2160 * m4/macros/host_macros.m4: use sw_vers on Apple machines to find 2161 out more appropriate OS name (macosx) and OS version (10.3.x) than 2162 uname(3) reports. 2163 21642005-04-29 Erez Zadok <ezk@cs.sunysb.edu> 2165 2166 * config.guess, config.sub, doc/texinfo.tex: updates from latest 2167 official GNU distributions. 2168 2169 * m4/macros/host_macros.m4: for macosx, change architecture value 2170 from "Power Macintosh" to "powerpc". 2171 2172 * libamu/util.c (xstrlcpy): format 'len' parameter as u_long, not 2173 int (it's a size_t). 2174 21752005-04-16 Erez Zadok <ezk@cs.sunysb.edu> 2176 2177 * scripts/amd.conf.5, doc/am-utils.texi (normalize_slashes 2178 Parameter), scripts/amd.conf-sample: document new 2179 normalize_slashes global configuration parameter. 2180 2181 * amd/opts.c (deslashify, normalize_slash): don't touch trailing 2182 slashes, even if multiples of them, if user said 2183 normalize_slashes=no in amd.conf. 2184 2185 * amd/conf.c (gopt_normalize_slashes): new function to record if 2186 to normalize slashes or not. 2187 2188 * amd/amd.h (CFM_NORMALIZE_SLASHES): new flag to decide if to 2189 normalize double-slashes or not ("yes" by default). 2190 2191 * amd/autil.c (am_mounted): pass TRUE when calling mf_mounted. 2192 This is the parent mntfs which does the mf->mf_fo 2193 (am_opts type), and we're passing TRUE here to tell mf_mounted to 2194 actually free the am_opts. 2195 2196 * amd/autil.c (mf_mounted): Be careful when calling free_ops and 2197 XFREE here. Some pseudo file systems like nfsx call this 2198 function, even though it would be called by the lower-level amd 2199 file system functions. nfsx needs to call this function because 2200 of the other actions it takes. So we pass a boolean from the 2201 caller (yes, not so clean workaround) to determine if we should 2202 free or not. If we're not freeing (often because we're called 2203 from a callback function), then just to be sure, we'll zero out 2204 the am_opts structure and set the pointer to NULL. The parent 2205 mntfs node owns this memory and is going to free it with a call to 2206 mf_mounted(mntfs,TRUE). 2207 2208 * amd/amd.h: pass flag to mf_mounted, to free or not to free the 2209 am_opts. 2210 2211 * amd/amfs_nfsx.c (amfs_nfsx_cont): call mf_mounted with FALSE to 2212 tell it not to free the am_opts, to avoid double free. 2213 2214 * include/am_defs.h: include limits.h if found. 2215 2216 * configure.in: check for limits.h. Check for certain Linux 2217 headers such as auto_fs.h after checking for limits.h, and include 2218 the latter if it exists, because some Linux headers depend on 2219 limits.h. This prevents warnings during configure time. 2220 22212005-04-12 Erez Zadok <ezk@cs.sunysb.edu> 2222 2223 * amd/amfs_toplvl.c (amfs_toplvl_mount): do NOT set retrans/timeo 2224 values from default global UDP settings, because it can cause 2225 unexpected timeouts in Amd on slow systems. The default that each 2226 OS provides for these toplvl NFS mounts should be OK, or else you 2227 can use the map_options entry. 2228 22292005-04-09 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 2230 2231 * amd/nfs_subr.c (mp_to_fh): Replace xstrlcpy with memcpy because the 2232 source buffer is treated more as a filehandle than a string. 2233 2234 * amd/nfs_subr.c (fh_to_mp3): Replace xstrlcpy with memcpy because the 2235 source buffer is treated more as a filehandle than a string. 2236 2237 * amd/opts.c (free_op): No longer need to assign pointer to NULL 2238 after XFREE. 2239 2240 * amd/opts.c (expand_op): Revert back to using strncpy() instead 2241 of xstrlcpy. The code is correct and relies on the semantics of 2242 strncpy. 2243 2244 * libamu/mount_fs.c (compute_nfs_args): Leave XXX warning that use 2245 of xstrlcpy in NFS_HN_DREF may corrupt a struct nfs_args, or 2246 truncate our concocted "hostname:/path" string prematurely if the 2247 nap->hostname field is ever less than 64 bytes long 2248 (MAXHOSTNAMELEN). 2249 2250 * libamu/util.c (xstrlcpy): Return immediately if len is 0 to 2251 avoid unnecessary work. Log an error and return if len is less 2252 than 0. 2253 22542005-04-07 Erez Zadok <ezk@cs.sunysb.edu> 2255 2256 * include/am_utils.h (XFREE): XFREE() should nullify the pointer 2257 even when compiling without debugging. It's safer this way. 2258 2259 * libamu/xutil.c (am_set_hostname), 2260 hlfsd/stubs.c (nfsproc_lookup_2_svc), 2261 fsinfo/fsinfo.c (fsi_get_args), 2262 fixmount/fixmount.c (is_same_host, remove_mount, main), 2263 conf/mtab/mtab_isc3.c (mnt_dup, mtab_of), 2264 conf/mount/mount_svr4.c (mount_svr4), 2265 conf/mount/mount_linux.c (setup_loop_device), 2266 conf/hn_dref/hn_dref_linux.h (NFS_HN_DREF), 2267 conf/hn_dref/hn_dref_isc3.h (NFS_HN_DREF), 2268 amd/opts.c (expand_op), 2269 amd/ops_nfs.c (mount_nfs_fh), 2270 amd/nfs_subr.c (fh_to_mp3, mp_to_fh), 2271 amd/amfs_host.c (amfs_host_mount), 2272 amd/am_ops.c (merge_opts): 2273 use the new xstrlcpy instead of strncpy. 2274 2275 * conf/checkmount/checkmount_{default,svr4}.c 2276 (fixmount_check_mount): document why NOT to use xstrlcpy. 2277 2278 * libamu/xutil.c: am_hostname need not be MAXHOSTNAMELEN+1 any 2279 more, just MAXHOSTNAMELEN. 2280 2281 * libamu/xutil.c (real_plog): use strlcpy (not xstrlcpy to avoid 2282 recursion, since xstrlcpy may use plog). 2283 2284 * libamu/util.c (xstrlcpy): truncating a string is serious. Use 2285 XLOG_ERROR not XLOG_WARNING. 2286 22872005-04-06 Erez Zadok <ezk@cs.sunysb.edu> 2288 2289 * include/am_utils.h: external definition for new xstrlcpy 2290 function. 2291 2292 * libamu/util.c (xstrlcpy): new function. Similar to strncpy, but 2293 uses strlcpy to guarantee that the resulting string is null 2294 terminated, and also warn if the resulting string was truncated. 2295 2296 * libamu/xutil.c (get_server_pid): move this function from util.c 2297 which is for general-purpose utilities. 2298 2299 * m4/macros/header_templates.m4: template for HAVE_EXTERN_STRLCPY. 2300 2301 * include/am_defs.h: provide extern definition for strlcpy, if 2302 needed. 2303 2304 * libamu/Makefile.am (EXTRA_DIST): include strlcpy.c in distro. 2305 2306 * configure.in: search for strlcpy and its extern. 2307 2308 * amq/pawd.c (find_mt): It only handles *some* filesystem types, 2309 so it breaks on direct xfs mounts for example. The fix (from 2310 Christos Zoulas) is simple: We need to exclude toplvl to avoid 2311 infinite recursion, but all other fs's are game. 2312 23132005-03-31 Erez Zadok <ezk@cs.sunysb.edu> 2314 2315 * amd/nfs_subr.c (fh_to_mp3): strncpy may not null terminate if 2316 copying exactly len bytes, so add null just to be safe. 2317 23182005-03-30 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 2319 2320 * amd/nfs_subr.c (fh_to_mp3): Increased the n of strncpy() 2321 to make sure it null terminates. 2322 23232005-03-29 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 2324 2325 * amd/nfs_subr.c (fh_to_mp3): Fix memset bug. In this case 2326 the memset can be removed because strncpy() should padd the 2327 buffer with NULLs anyway. 2328 23292005-03-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2330 2331 * include/am_defs.h: Clarify comment. 2332 23332005-03-21 Erez Zadok <ezk@cs.sunysb.edu> 2334 2335 * include/am_defs.h: undefine "GROUP" so Solaris 10 with gcc-2.96 2336 won't complain about a conflict for this definition between 2337 <rpcsvc/nis.h> and <sys/acl.h>. 2338 23392005-03-20 Erez Zadok <ezk@cs.sunysb.edu> 2340 2341 * amd/readdir.c (amfs_readdir_browsable): use %p, not %lx. 2342 2343 * libamu/mount_fs.c (print_nfs_args): print pointer with %p, not 2344 %lx. 2345 23462005-03-18 Erez Zadok <ezk@cs.sunysb.edu> 2347 2348 ******************************************************************* 2349 *** Released am-utils-6.1-rc1 *** 2350 ******************************************************************* 2351 23522005-03-18 Erez Zadok <ezk@cs.sunysb.edu> 2353 2354 * conf/transp/transp_tli.c (get_nfs_version): use proper type for 2355 versout on Solaris (rpcvcers_t). 2356 2357 * amd/mapc.c (mapc_showtypes): if last map type to print, don't 2358 append newline or comma to it. 2359 2360 * libamu/mount_fs.c (print_nfs_args): cast struct netbuf pointer 2361 to %lx because on Solaris 10 sparc gcc-3.4.3 complains about 2362 casting it to an int (size is different). 2363 2364 * configure.in, NEWS: prepare for 6.1-rc1 release. 2365 23662005-03-17 Erez Zadok <ezk@cs.sunysb.edu> 2367 2368 * scripts/amd2ldif.in, ldap.schema: fixes by Adam Morley 2369 <adam-at-gmi-dot-com> to synchronize what amd2ldif does vs. what 2370 the ldap.schema expects. 2371 2372 * amd/map.c (exported_ap_free): We're using a free-list data 2373 structure and re-using malloc'ed objects. So, to be safe, memset 2374 entire structure when it's freed, not just the pointer. 2375 (umount_exported): bug fix to on-exit code. Don't run 2376 am_unmounted() unless unmount_mp() didn't run, since the latter 2377 already calls am_unmounted(). This way we avoid a double-free 2378 bug. 2379 23802005-03-15 Erez Zadok <ezk@cs.sunysb.edu> 2381 2382 * tasks: updates. Executable maps is supported. NFSv4 and 2383 FreeBSD autofs isn't. 2384 2385 * Makefile.am (EXTRA_DIST): include FAQ in distro. 2386 2387 * doc/Makefile.am (alldocs): install README.lda and README.osx. 2388 2389 * FAQ: new file, better late than never. 2390 23912005-03-14 Erez Zadok <ezk@cs.sunysb.edu> 2392 2393 * scripts/amd2ldif.in: patch to add the amdMapName attribute to 2394 the amdMapTimestamp object when amd2ldif converts it. This is 2395 necessary if you are using type:=auto mounts and want those 2396 mountmaps looked up through LDAP. Patch from Jim Zajkowski 2397 <jim.zajkowski@gmail.com>. 2398 23992005-03-12 Erez Zadok <ezk@cs.sunysb.edu> 2400 2401 * minor new ports: i386-pc-linux-rhel4. 2402 2403 * minor new ports: powerpc-apple-darwin7.8.0. 2404 24052005-03-10 Erez Zadok <ezk@cs.sunysb.edu> 2406 2407 * amd/ops_nfs.c (prime_nfs_fhandle_cache): rearrange code so it's 2408 cleaner. 2409 2410 * ltmain.sh: upgrade from libtool-1.5.6. 2411 2412 * m4/macros/check_{fs_mntent,mnttab_type,mount_type}.m4: check for 2413 Linux 2.6 kernel modules, which have a .ko extension, not .o. Now 2414 we can properly detect which file systems exist on Linux 2.6 based 2415 systems (SLES9, RHEL4, Fedora, etc.). 2416 24172005-03-09 Erez Zadok <ezk@cs.sunysb.edu> 2418 2419 * m4/macros/host_macros.m4: find out what's the OS software 2420 distribution name, if any. 2421 2422 * m4/macros/header_templates.m4: template for DISTRO_NAME. 2423 2424 * amd/get_args.c (get_version_string): print again full_os, os, 2425 osver, and vendor (bug fix). 2426 (get_version_string): print distribution name, if known (e.g., 2427 rh9, suse8, etc.). 2428 2429 * amd/mapc.c (mapc_showtypes): wrap around list of supported map. 2430 24312005-03-08 Erez Zadok <ezk@cs.sunysb.edu> 2432 2433 * amd/map.c (umount_exported): when unmounting file systems on 2434 exit (when amd.conf global unmount_on_exit=yes), use unmount_mp() 2435 instead of unmount_node() because the latter always unmounts in 2436 the foreground, whereas the former unmounts in the bg/fg as 2437 needed. Unmounting always in the foreground has two problems: (1) 2438 if the unmount hangs, amd hangs, and (2) for type:=program, the 2439 unmount script is execve'd(!) thus replacing the main amd process, 2440 which never gets to finish up, leaving the amd mount points hung. 2441 2442 * NEWS: mention new feature of executable maps. 2443 2444 * AUTHORS: Acknowledge Erik Kline. 2445 2446 * scripts/amd.conf.5: document executable maps and 2447 exec_map_timeout parameter. 2448 2449 * scripts/amd.conf-sample: examples of an executable map and 2450 exec_map_timeout. 2451 2452 * m4/macros/header_templates.m4: template for HAVE_MAP_EXEC. 2453 2454 * doc/am-utils.texi: document Executable maps and exec_map_timeout 2455 parameter. 2456 2457 * amd/conf.c (gopt_exec_map_timeout): function to parse 2458 exec_map_timeout [global] parameter. 2459 2460 * amd/amd.h (AMFS_EXEC_MAP_TIMEOUT): define default executable map 2461 timeout to 10 seconds, and a global placeholder for the 2462 configurable value. 2463 2464 * amd/amd.c (init_global_options): initialize default executable 2465 map timeout. 2466 2467 * amd/Makefile.am (EXTRA_amd_SOURCES): include info_exec.c in 2468 tarball. 2469 2470 * configure.in: enable executable maps. 2471 2472 * amd/mapc.c: define executable map functions and behavior. 2473 2474 * amd/info_exec.c: executable map implementation from Erik Kline 2475 <ekline at ekline dot com>, modified, cleaned-up, and fixed. 2476 24772005-03-07 Erez Zadok <ezk@cs.sunysb.edu> 2478 2479 * amd/info_file.c (file_init_or_mtime): consolidate identical 2480 file_init and file_mtime into one function. 2481 24822005-03-05 Erez Zadok <ezk@cs.sunysb.edu> 2483 2484 * doc/am-utils.texi (Program Filesystem): if umount/unmount are 2485 not specified, Amd uses "umount ${fs}" by default. 2486 2487 * amd/amfs_program.c (amfs_program_match): if neither unmount nor 2488 umount parameters are specified, use the default userland umount 2489 program with "umount ${fs}". This way type:=program doesn't have 2490 to specify the umount program for basic unmounting actions. 2491 (amfs_program_init): save unmount program string in mf_private 2492 only if it's NULL, not based on mf_refc. 2493 2494 * configure.in: auto-detect name of userland unmount program. 2495 2496 * aux_conf.h.in (UNMOUNT_PROGRAM): macro for default userland 2497 unmount program. 2498 2499 * amd/ops_cachefs.c (cachefs_init): save unmount program string in 2500 mf_private only if it's NULL, not based on mf_refc. 2501 2502 * configure.in: don't "discover" inheritance file system any more, 2503 since we don't have the .c file for it. 2504 2505 * amd/get_args.c (get_version_string): hack to still show that we 2506 support the inherit file system in output of amd -v. 2507 25082005-03-05 Ion Badulescu <ionut@moisil.badula.org> 2509 2510 * amd/amfs_inherit.c: removed, dead code 2511 2512 * amd/Makefile.am, 2513 amd/am_ops.c, 2514 amd/amd.h, 2515 conf/autofs/autofs_linux.h, 2516 conf/autofs/autofs_solaris_v1.h, 2517 conf/autofs/autofs_solaris_v2_v3.h, 2518 m4/macros/header_templates.m4: removed references to amfs_inherit.c 2519 25202005-03-05 Erez Zadok <ezk@cs.sunysb.edu> 2521 2522 * amd/autil.c (am_mounted): completely rewrite the unmount 2523 no/timeout code to (1) make more sense for odd conditions, and (2) 2524 allow utimeout=N mount options to override FS_NOTIMEOUT default 2525 flags for disk-based file systems such as ufs, pcfs, cdfs, etc. 2526 2527 * libamu/mount_fs.c (mount_fs): use safer XFREE() not free(). 2528 2529 * conf/umount/umount_linux.c (umount_fs): strtok is destructive, 2530 so use strdup'ed string. 2531 2532 * conf/mount/mount_linux.c (parse_opts): strtok is destructive, so 2533 use strdup'ed string. 2534 25352005-03-04 Erez Zadok <ezk@cs.sunysb.edu> 2536 2537 * scripts/amd.conf.5, doc/am-utils.texi (cache_duration 2538 Parameter): clarify actual behavior: this Parameter affects 2539 initial mount timeout as well as the linear backoff what happens 2540 the initial failed EBUSY unmount. 2541 2542 * doc/am-utils.texi (opts Option): better explanation of 2543 utimeout=N mount pseudo-option. 2544 2545 * amd/amd.h (AM_TTL, AM_TTL_W): better comments, minor cleanup. 2546 25472005-03-02 Daniel P. Ottavio <dottavio@ic.sunysb.edu> 2548 2549 * AUTHORS: add Dan Ottavio. 2550 2551 * scripts/amd.conf.5: document new debug_mtab_file option. 2552 2553 * scripts/amd.conf-sample (debug_mtab_file): show example. 2554 2555 * doc/am-utils.texi (debug_mtab_file Parameter): document new 2556 option. 2557 2558 * conf/mtab/mtab_{file,mach3}.c (open_locked_mtab): if mtab file 2559 doesn't exist by the time Amd tries to exist, return a 0 rather 2560 than hang indefinitely. 2561 2562 * amd/conf.c (gopt_debug_mtab_file): new function to parse 2563 debug_mtab_file option. 2564 2565 * amd/amd.h: placeholder for debug_mtab_file string. 2566 Define default debug_mtab_file to "/tmp/mtab". 2567 2568 * NEWS: document new debug_mtab_file option. 2569 25702005-03-02 Erez Zadok <ezk@cs.sunysb.edu> 2571 2572 * conf/transp/transp_{sockets,tli}.c (amu_get_myaddress): when 2573 users want Amd's NFS service to bind to some arbitrary "localhost" 2574 address, show which address was actually resolved and bound to. 2575 25762005-03-01 Erez Zadok <ezk@cs.sunysb.edu> 2577 2578 * amd/srvr_nfs.c (start_nfs_pings): move code from elsewhere 2579 (update_nfs_pingval) that initializes the pinger, as well as turns 2580 it on/off as needed, and handles changing its value. This is to 2581 avoid races and other infinite-loop conditions that could result 2582 in ping storms. 2583 2584 * amd/srvr_amfs_auto.c (amfs_generic_find_srvr): when creating a 2585 new file server structure, default the ping value to AM_PINGER 2586 (30sec) and set the FSF_PING_UNINIT flag. 2587 2588 * amd/amd.h (FSF_PING_UNINIT): new flag to tell whether the NFS 2589 pinger had been initialized for a given file server. 2590 2591 * scripts/ctl-amd.in (stop): no need to check if 2592 /var/lock/subsys/amd file exists if you do an rm -f afterward. 2593 Ensure that proper return value is returned from script. 2594 2595 * NEWS, doc/am-utils.texi (opts Option): update meaning of ping=N 2596 so that if N=-1, pings are off; if N=0, pings are set to the 2597 default value (currently 30 seconds). 2598 25992005-02-28 Erez Zadok <ezk@cs.sunysb.edu> 2600 2601 * amd/nfs_prot_svc.c (nfs_program_2): on TLI system, try to call 2602 __rpc_get_local_uid to verify if the RPC call through the 2603 local host interface came from UID 0. 2604 2605 * configure.in: look for internal libnsl function 2606 __rpc_get_local_uid (seems to be available on all known TLI 2607 systems, Solaris and HP-UX 11). 2608 2609 * conf/transp/transp_tli.c (amu_svc_getcaller): unnecessary 2610 function for TLI systems (and it violated a array's bounds, 2611 discovered with libumem.so). 2612 (bind_resv_port, bind_resv_port_only_udp, get_autofs_address): 2613 just to be on the safe side, set struct t_bind's qlen field to non 2614 zero (64 by default). This value cannot be zero for TCP 2615 connections, and it's unclear if it's good to have it zero for UDP 2616 connections, so setting it to 64 is safer. 2617 26182005-02-27 Erez Zadok <ezk@cs.sunysb.edu> 2619 2620 * doc/am-utils.texi (opts Option, Keep-alives): update text on 2621 ping option. 2622 2623 * amd/srvr_nfs.c (update_nfs_pingval): new function to update NFS 2624 server ping values, turn them off, or re-enable them. 2625 (find_nfs_srvr): call update_nfs_pingval() as needed. 2626 2627 * hlfsd/hlfsd.c (reaper, cleanup): don't use exit(3) in a signal 2628 handler, but use _exit(2) instead. 2629 2630 * amd/amd.c (parent_exit): This signal handler is called during 2631 Amd initialization. The parent forks a child to do all the hard 2632 automounting work, and waits for a SIGQUIT signal from the child. 2633 When the parent gets the signal it's supposed to call this handler 2634 and exit(3), thus completing the daemonizing process. Alas, on 2635 some systems, especially Linux 2.4/2.6 with Glibc, exit(3) doesn't 2636 always terminate the parent process. Worse, the parent process 2637 now refuses to accept any more SIGQUIT signals -- they are 2638 blocked. What's really annoying is that this doesn't happen all 2639 the time, suggesting a race condition somewhere. 2640 (This happens even if I change the logic to use another signal.) 2641 I traced this to something which exit(3) does in addition to 2642 exiting the process, probably some atexit() stuff or other 2643 side-effects related to signal handling. Either way, since at 2644 this stage the parent process just needs to terminate, I'm simply 2645 calling _exit(2). Note also that the OpenGroup doesn't list 2646 exit(3) as a recommended "Base Interface" but they do list 2647 _exit(2) as one. This fix seems to work reliably all the time. 2648 2649 * scripts/wait4amd2die.in: change default to recognize that amd is 2650 down more quickly (check every 3 seconds instead of 5). 2651 26522005-02-26 Erez Zadok <ezk@cs.sunysb.edu> 2653 2654 * libamu/xutil.c (amu_release_controlling_tty): warn if closing 2655 stdin/stdout/stderr failed. No need for tempfd. 2656 2657 * scripts/ctl-{amd,hlfsd}.in: before running any real program in 2658 these shell scripts, chdir to "/" to avoid possible hangs with 2659 existing NFS mounts. This was causing ctl-amd's forked 2660 grand-child amd process to hang if restartable_mounts=no. Go 2661 figure. 2662 26632005-02-25 Erez Zadok <ezk@cs.sunysb.edu> 2664 2665 * minor new port ia64-unknown-linux-rhel4 2666 2667 * fsinfo/fsi_util.c (set_ether_if): avoid u_long casting to -1 2668 (RHEL4 gcc 3.4.3 ia64 compiler complains). 2669 26702005-02-24 Erez Zadok <ezk@cs.sunysb.edu> 2671 2672 * minor new port i386-unknown-freebsd6.0 (6.0-CURRENT-SNAP001). 2673 26742005-02-23 Erez Zadok <ezk@cs.sunysb.edu> 2675 2676 * minor new port: i386-pc-linux-rhel3. 2677 2678 * INSTALL: major update of the compatibility list. 2679 2680 * m4/macros/os_cflags.m4: set AMU_CFLAGS not AM_CFLAGS. 2681 26822005-02-22 Erez Zadok <ezk@cs.sunysb.edu> 2683 2684 * scripts/amd.conf.5, doc/am-utils.texi (preferred_amq_port): 2685 document new preferred_amq_port [global] option. 2686 2687 * scripts/amd.conf-sample (preferred_amq_port): example. 2688 2689 * include/am_utils.h: add preferred_amq_port to prototype. 2690 2691 * conf/transp/transp_tli.c (bind_preferred_amq_port): new function 2692 to bind the Amq RPC service for UDP and TCP to a preferred port 2693 (or to any port if preferred_amq_port==0). 2694 (create_amq_service): decide if to bind to RPC_ANYFD, or to a 2695 requested port. 2696 2697 * conf/transp/transp_sockets.c (create_amq_service): if 2698 preferred_amq_port is greater than 0, then bind to that port for 2699 both UDP and TCP. If preferred_amq_port==0, then bind to any 2700 port. 2701 2702 * amd/nfs_start.c (mount_automounter): pass global 2703 preferred_amq_port value to create_amq_service(). 2704 2705 * amd/conf.c (gopt_preferred_amq_port): new function to parse 2706 amd.conf value for preferred_amq_port. 2707 2708 * amd/amd.h: placeholder for preferred_amq_port. 2709 27102005-02-21 Erez Zadok <ezk@cs.sunysb.edu> 2711 2712 * conf/transp/transp_tli.c (bind_resv_port_only_udp): rename old 2713 bindnfs_port to a more proper name. This function binds the NFS 2714 service to a specified port, and only for UDP. 2715 2716 * conf/transp/transp_tli.c: cleanup some code, rename some 2717 functions, in preparation for RPC amq port specification code. 2718 27192005-02-19 Erez Zadok <ezk@cs.sunysb.edu> 2720 2721 * */Makefile.am: don't redefine CFLAGS or LDFLAGS; they are 2722 reserved for users to pass them on the command line. Instead, use 2723 autoconf's internal AM_CFLAGS and AM_LDFLAGS. 2724 2725 * depcomp, install-sh, missing, mkinstalldirs: update from latest 2726 versions of Automake 1.9.2. 2727 2728 * m4/macros/*.m4: properly quote AC_DEFUN'ed macro name, and fix 2729 regexp/patsubst M4 commands. Newer versions of autoconf (e.g., 2730 v2.59) complain about those. 2731 27322005-02-17 Erez Zadok <ezk@cs.sunysb.edu> 2733 2734 * amd/opts.c (f_xhost): if we don't have hstrerror, just print the 2735 value of h_errno. 2736 2737 * configure.in: include -lresolv if it defines the hstrerror() 2738 function and not already available in existing libraries. 2739 2740 * minor new port: powerpc-apple-darwin7.7.0. 2741 2742 * amd/nfs_subr.c (mp_to_fh): pathlen should be u_int because it is 2743 later compared against an unsigned quantity (complaint from gcc 2744 3.3 on SuSE 8.2) 2745 2746 * include/am_utils.h: remove unnecessary (and conflicting) extern 2747 for bind_resv_port2(), which is declared as static in 2748 transp_tli.c. 2749 2750 * doc/am-utils.texi, scripts/amd.conf.5, scripts/amd.conf-sample, 2751 NEWS: document four new amd.conf options: nfs_retry_interval_udp, 2752 nfs_retransmit_counter_udp nfs_retry_interval_tcp, and 2753 nfs_retransmit_counter_tcp. 2754 2755 * amd/ops_nfs.c (mount_nfs_fh): set timeo/retrans values based on 2756 wether nfs_proto was "udp" or "tcp". 2757 2758 * amd/amfs_toplvl.c (amfs_toplvl_mount): set retrans/timeo values 2759 from default UDP settings (because toplvl mounts are UDP for now). 2760 2761 * amd/get_args.c (get_args): use parameters to -t option to set 2762 both UDP and TCP timeo/retrans values. 2763 2764 * amd/conf.c: (gopt_nfs_retransmit_counter_udp, 2765 (gopt_nfs_retransmit_counter_tcp, gopt_nfs_retry_interval_udp 2766 (gopt_nfs_retry_interval_tcp): new functions to parse UDP and TCP 2767 retrans/timeo parameters separately. 2768 (gopt_nfs_retry_interval, gopt_nfs_retransmit_counter): if 2769 specified, use it to set defaults for both UDP and TCP. 2770 2771 * amd/amd.c (init_global_options): initialize default values of 2772 both UDP and TCP retrans/timeo values to -1. 2773 2774 * amd/amd.h (AMU_TYPE_{TCP,UDP,MAX}): define separate retrans and 2775 timeo values, one for udp mounts and another for tcp mounts. 2776 27772005-02-16 Erez Zadok <ezk@cs.sunysb.edu> 2778 2779 * README.osx: new file with some instructions for Mac OS-X users, 2780 courtesy Kevin Layer. 2781 2782 * amd/get_args.c (get_args): move call to switch_to_logfile() 2783 after processing -v, so we don't print "no logfile defined; using 2784 stderr" when we're about to print version info and exit anyway. 2785 2786 * minor new port: powerpc-ibm-aix5.3.0.0. 2787 2788 * hlfsd/hlfsd.c (main): rewrite code to avoid negative array 2789 references. 2790 2791 * conf/checkmount/checkmount_aix.c: remove extern definition for 2792 mntctl(), since AIX 5.3 has it in <sys/vmount.h>. 2793 2794 * amd/info_union.c (union_reload): rewrite code to avoid negative 2795 array references. 2796 2797 * amd/opts.c (split_opts, expand_op): rewrite code to avoid 2798 negative array references. 2799 2800 * conf/mtab/mtab_aix.c: remove extern definition for mntctl(), 2801 since AIX 5.3 has it in <sys/vmount.h>. 2802 2803 * libamu/xutil.c (real_plog): rewrite code to avoid negative array 2804 references. 2805 2806 * libamu/wire.c (is_network_member): rearrange code slightly to 2807 avoid negative array references (AIX 5.3 xlC 7.0 compiler 2808 complains about it). 2809 28102005-01-26 Erez Zadok <ezk@cs.sunysb.edu> 2811 2812 * doc/am-utils.texi (xhost Selector Function): document new 2813 selector function. 2814 2815 * amd/opts.c (f_xhost): new function for use when matching the 2816 "host" selector for the current host's name. This function will 2817 now match the primary host name as well as all known aliases 2818 (CNAMES) that gethostbyname() returns. This function now supports 2819 a new function selector called xhost(ARG); the old host==ARG 2820 selector is unharmed. 2821 28222005-01-17 Ion Badulescu <ionut@moisil.badula.org> 2823 2824 * NEWS: document the ability to restart old mount points 2825 2826 * amd/map.c (mount_auto_node): force the fileid of the 2827 root to be 1, so that it won't change between restarts; use the 2828 root filesystem's own methods instead of hard-coding the use of 2829 the default methods 2830 2831 * conf/transp/transp_tli.c (create_nfs_service): better cleanup on 2832 error conditions. 2833 (bind_resv_port2): allow the caller to request a certain port. 2834 2835 * conf/transp/transp_sockets.c (bind_resv_port): allow the caller 2836 to request a certain port. 2837 (create_nfs_service): better cleanup on error conditions. 2838 2839 * amd/restart.c (restart_automounter_nodes): new function, takes 2840 care of restarting automounter NFS mount points (autofs will come 2841 later). 2842 (restart): skip all automounter mount points. 2843 2844 * amd/nfs_subr.c (fh_to_mp3, mp_to_fh): new filehandle 2845 implementation: if the path to the node is shorter than sizeof(fh) 2846 chars (currently 32 chars for a NFSv2 fh), simply store it inside 2847 the fh. For longer paths, keep the old implementation. 2848 2849 * amd/nfs_start.c (mount_automounter): reorder things so that 2850 restarting the toplvl filesystems occurs before anything else (so 2851 that we can grab all the ports we need before we accidentally use 2852 them for something else). 2853 2854 * amd/mntfs.c (locate_mntfs): remove dead code; add special 2855 handling of restarted toplvl filesystems. 2856 2857 * amd/mapc.c (root_keyiter): fix up a comment. 2858 2859 * amd/map.c (path_to_exported_ap): new function, searches for and 2860 returns a node by the path to it. 2861 (get_root_nfs_fh): remove unnecessary fiddling with the root fh. 2862 2863 * config.guess.long: support Red Hat Enterprise Linux 2864 28652005-01-17 Erez Zadok <ezk@cs.sunysb.edu> 2866 2867 * libamu/util.c (rmdirs): prevent amd from logging 'Read-only 2868 filesystem' errors when the mount point has an ancestor (i.e. '/') 2869 that is mounted read-only. Patch from David Rage <rage@ucl.ac.uk>. 2870 28712005-01-17 Ion Badulescu <ionut@moisil.badula.org> 2872 2873 * conf/umount/umount_linux.c (umount_fs): Linux doesn't need the 2874 autofs space hack 2875 2876 * conf/umount/umount_default.c (umount_fs): there is no need for 2877 HAVE_LOOP_DEV, now that Linux has its own dedicated umount_linux.c 2878 28792005-01-17 Erez Zadok <ezk@cs.sunysb.edu> 2880 2881 * doc/am-utils.texi (Automatic Unmounting): document new umount2() 2882 behavior on Linux. 2883 2884 * conf/umount/umount_linux.c (umount_fs): new file. On Linux, if 2885 umount(2) failed with EIO or ESTALE, try umount2(2) with 2886 MNT_FORCE+MNT_DETACH. Based on patch from Christos Zoulas 2887 <christos@zoulas.com>. 2888 2889 * m4/macros/check_umount_style.m4: pick new linux umount style. 2890 2891 * Makefile.am (EXTRA_DIST_CONF): distribute new umount_linux.c 2892 file. 2893 28942005-01-16 Erez Zadok <ezk@cs.sunysb.edu> 2895 2896 * conf/nfs_prot/nfs_prot_aix{4_2,4_3,5_1,5_2}.h, 2897 m4/macros/struct_nfs_args.m4: minor cleanups for quicker execution 2898 of "nfs_args" test. 2899 29002005-01-13 Erez Zadok <ezk@cs.sunysb.edu> 2901 2902 * amd/get_args.c (show_usage): separate function to print usage 2903 string. 2904 (get_args) Call show_usage() from get_args when needed, then exit. 2905 2906 * amd/get_args.c (get_version_string): print also domain, host, 2907 and hostd. 2908 (get_args): print version string at the very end, after all other 2909 values had been initialized. Patch from Christos Zoulas 2910 <christos@zoulas.com>. 2911 2912 * conf/transp/transp_sockets.c (check_pmap_up, get_nfs_version), 2913 conf/transp/transp_tli.c (check_pmap_up): correct an inconsistency 2914 in timeouts in the RPC code between socket and TLI 2915 implementations. The clntudp_create timeout has a different 2916 meaning than the clnt_call timeout. Set the timeout of the create 2917 to 2 seconds which means retry if no answer in two seconds, and 2918 the timeout call to 6 seconds, which will give us consistently 2 2919 to 3 pings. This is useful on occasional network UDP loss where a 2920 single packet loss would wrongfully mark a server down. (The TLI 2921 code is the one that had the problem occurs.) Patch from Christos 2922 Zoulas <christos@zoulas.com>. 2923 2924 * libamu/mount_fs.c (compute_nfs_attrcache_flags): make sure code 2925 compiles even for systems that don't have the nfs_args 2926 ac{reg,dir}{min,max} fields. 2927 2928 * amd/amfs_toplvl.c (set_auto_attrcache_timeout): just to be safe, 2929 add "noac" if amd.conf option auto_attrcache was set to 0. This 2930 should hopefully make the compute_nfs_attrcache_flags patch even 2931 safer. 2932 2933 * libamu/mount_fs.c (compute_nfs_attrcache_flags): separate 2934 function to compute attribute-cache values. This function now 2935 computes attribute-cache flags for BOTH Amd's automount points 2936 (NFS) as well as any normal NFS mount that Amd performs. 2937 (compute_nfs_args, compute_automounter_nfs_args): call 2938 compute_nfs_attrcache_flags to figure out attribute-cache related 2939 flags. Patch from Christos Zoulas <christos@zoulas.com>. 2940 2941 * scripts/amd.conf-sample: show examples of new global options 2942 domain_strip and auto_attrcache. 2943 2944 * scripts/amd.conf.5: document new global options domain_strip and 2945 auto_attrcache. Add warning to auto_attrcache use in case of 2946 ESTALE. 2947 2948 * doc/am-utils.texi: minor cleanups and document new global 2949 options domain_strip and auto_attrcache. Add warning to 2950 auto_attrcache use in case of ESTALE. 2951 2952 * amd/conf.c (gopt_auto_attrcache): parse new global amd.conf 2953 option auto_attrcache. 2954 (gopt_domain_strip): parse new global amd.conf option 2955 domain_strip. Part of a patch from Christos Zoulas 2956 <christos@zoulas.com>. 2957 2958 * amd/autil.c (host_normalize): don't call domain_strip() 2959 unconditionally, but depend on the new global amd.conf flag 2960 domain_strip. 2961 2962 * amd/amfs_toplvl.c (set_auto_attrcache_timeout): new function to 2963 set attribute cache timeout value given other configured global 2964 defaults. 2965 (amfs_toplvl_mount): set automount point attribute cache option 2966 value to "noac" if attrcache=0, else set it to whatever 2967 set_auto_attrcache_timeout() returns. 2968 2969 * amd/amd.h (CFM_DOMAIN_STRIP, CFM_DEFAULT_FLAGS): flag to decide 2970 if to strip the domain from the host name or not, default options 2971 set to strip the domain. 2972 Store global value of automount attribute cache timeout value. 2973 2974 * amd/amd.c (init_global_options): add flag to record automount 2975 point attribute cache value. 2976 2977 * amd/amd.c (do_memory_locking): new function to encapsulate all 2978 of the memory-locking functionality, which was in main() before. 2979 Also added a call to madvise(), just in case. 2980 (main): call do_memory_locking() to pin process memory if amd.conf 2981 asked for it, but do so after the main Amd process daemonizes, 2982 because mlock/mlockall is not inherited by fork() by default. 2983 Slightly restructured patch from Jonathan Chen 2984 <jon+amd@spock.org>. 2985 2986 * configure.in: check for madvise(2). 2987 2988 * config.guess, config.sub: updates for latest official GNU 2989 versions. 2990 2991 * m4/GNUmakefile: update paths to "make update" 2992 29932005-01-12 Erez Zadok <ezk@cs.sunysb.edu> 2994 2995 * conf/nfs_prot/nfs_prot_hpux11.h: define an nfs_fh3 structure 2996 that's compatible for HPUX11 as well as NFSv3. 2997 2998 * include/am_defs.h: On AIX 5.2, both <resolv.h> and 2999 <arpa/nameser_compat.h> define MAXDNAME, if compiling with gcc 3000 -D_USE_IRS (so that we get extern definitions for hstrerror() and 3001 others). So undef MAXDNAME before it gets redefined. 3002 3003 * include/am_defs.h: Solaris 10 (build 72) defines GROUP_OBJ in 3004 <sys/acl.h>, which is included in many other header files. 3005 <rpcsvc/nis.h> uses GROUP_OBJ inside enum zotypes. So if you're 3006 unlucky enough to include both headers, you get a compile error 3007 because the two symbols conflict. Temp hack: undefine acl.h's 3008 GROUP_OBJ before including nis.h, because we don't need acl.h for 3009 am-utils. 3010 3011 * m4/macros/os_cflags.m4: turn -D_USE_IRS for AIX5+ so that 3012 certain extern definitions of resolver functions become available. 3013 3014 * amd/opts.c (expand_op): use #define for expand_error string 3015 because some compilers complain about the use of static const 3016 char[] inside a varargs function. 3017 3018 * minor new port i386-unknown-netbsdelf1.6.2. 3019 3020 * new port i386-unknown-netbsdelf2.0. 3021 3022 * minor port i386-unknown-freebsd5.3. 3023 3024 * libamu/mount_fs.c (compute_nfs_args): don't compare 3025 nap->maxgrouplist against NULL but against 0 directly, because on 3026 FreeBSD 4.3, NULL is defined is (void *)0 and gcc 3.4 complains 3027 about a type mismatch. 3028 3029 * minor port i386-pc-linux-fc3 (Fedora Core 3). 3030 30312005-01-11 Erez Zadok <ezk@cs.sunysb.edu> 3032 3033 * hlfsd/hlfsd.c (main): use sigsuspend() over sigpause(), because 3034 FC3 doesn't have proper extern definition for the defunct 3035 sigpause(). 3036 3037 * configure.in: look for sigsuspend(). 3038 30392005-01-01 Erez Zadok <ezk@cs.sunysb.edu> 3040 3041 * updated copyright year to 2005 on all files. 3042 30432004-11-29 Erez Zadok <ezk@cs.sunysb.edu> 3044 3045 * scripts/amd.conf.5: Small fixes to typos in man page, from 3046 Thomas Klausner <tk@giga.or.at>. 3047 30482004-10-22 Erez Zadok <ezk@cs.sunysb.edu> 3049 3050 * ldap.schema: add this file to distribution. 3051 30522004-09-15 Erez Zadok <ezk@cs.sunysb.edu> 3053 3054 * doc/am-utils.texi: fix old URLs. 3055 30562004-09-01 Erez Zadok <ezk@cs.sunysb.edu> 3057 3058 * conf/mtab/mtab_aix.c (read_mtab): avoid a race condition between 3059 multiple calls to mntctl(). Patch suggested by Michael van Elst 3060 <M.van.Elst@science-computing.de>. 3061 30622004-08-07 Erez Zadok <ezk@cs.sunysb.edu> 3063 3064 * doc/am-utils.texi (Program Filesystem): document how to get 3065 double slashes in Amd maps. 3066 3067 * amd/opts.c (normalize_slash): support escaped slashes, needed 3068 for SMB mounts. Use '\\\/\\\/' in a string to get a double slash. 3069 30702004-08-06 Erez Zadok <ezk@cs.sunysb.edu> 3071 3072 * amd/amfs_program.c (amfs_program_match): bug fix. Complain if 3073 both opt_unmount and opt_umount are missing, not when just one of 3074 them is missing. 3075 30762004-08-03 Erez Zadok <ezk@cs.sunysb.edu> 3077 3078 * amq/pawd.c (find_mt): recognize "linkx" type mounts. Patch from 3079 Hauke Fath <hauke@Espresso.Rhein-Neckar.DE>. Support "nfsx" while 3080 we're at it. 3081 3082 * doc/am-utils.texi: mention bugzilla. Fix broken URL HREF's. 3083 30842004-08-02 Erez Zadok <ezk@cs.sunysb.edu> 3085 3086 * amq/pawd.c (find_mt): recognize "host" type mounts. Patch from 3087 Dan Nelson <dnelson@allantgroup.com>. 3088 30892004-07-30 Erez Zadok <ezk@cs.sunysb.edu> 3090 3091 * doc/am-utils.texi, NEWS: minor typos fixed. 3092 30932004-07-30 Erez Zadok <ezk@play.cs.columbia.edu> 3094 3095 * include/am_xdr_func.h: cannot have field-less structure; put a 3096 dummy field in. 3097 3098 * conf/autofs/autofs_solaris_v2_v3.c (xdr_autofs_rddirargs): cast 3099 2nd arg of xdr_u_int to a u_int*, not int*. 3100 (autofs_mount_2_req): don't use C++ // comments. 3101 31022004-07-30 Erez Zadok <ezk@cs.sunysb.edu> 3103 3104 * m4/macros/{try_compile_anyfs,check_field}.m4: include 3105 <fs/msdosfs/msdosfsmount.h> if it exists. Part of a set of 3106 FreeBSD 5 patches from Martin Blapp <mb@imp.ch>. 3107 3108 * include/am_defs.h: include <fs/msdosfs/msdosfsmount.h> if it 3109 exists. 3110 3111 * amd/ops_pcfs.c (mount_pcfs): set pcfs_args_t.dirmask field to 3112 0777 by default. 3113 3114 * configure.in: check for pcfs_args_t.dirmask field. Check for 3115 existence of <fs/msdosfs/msdosfsmount.h>, new on FreeBSD 5. 3116 31172004-07-29 Erez Zadok <ezk@cs.sunysb.edu> 3118 3119 * minor new port: i386-pc-linux-fc2 (Fedora Core 2). 3120 3121 * amd/info_ldap.c (amu_ldap_rebind): don't use ldap_enable_cache() 3122 unless the function exists in libldap and the extern is in 3123 <ldap.h>. Recently, openldap removed the extern from ldap.h, but 3124 left the function in libldap, for binary compatibility; however 3125 ldap_enable_cache and related functions have been deprecated (and 3126 no longer listed in the header files), and therefore should be 3127 avoided. 3128 3129 * m4/macros/check_extern_ldap.m4: new macro to check for 3130 LDAP-specific externs. This is separate from check_extern.m4 so 3131 as to avoid breaking the general-purpose macro with LDAP-specific 3132 headers. 3133 3134 * m4/macros/header_templates.m4: extern template for new 3135 HAVE_EXTERN_LDAP_ENABLE_CACHE. 3136 3137 * configure.in: call new check_extern_ldap.m4 macro. 3138 3139 * Makefile.am (EXTRA_DIST_M4): distribute new check_extern_ldap.m4 3140 macro. 3141 3142 * config.guess.long: distinguish between redhat and fedora-core 3143 releases. 3144 31452004-07-23 Erez Zadok <ezk@cs.sunysb.edu> 3146 3147 * Minor new port i386-pc-linux-suse8.2: minor new port to SuSE 3148 8.2. This systems' latest GCC (gcc version 3.3 20030226 3149 prerelease) correctly caught a lot of possibly bad comparisons 3150 between signed and unsigned quantities. 3151 3152 * hlfsd/homedir.c (table_add, plt_search): changed first arg of 3153 both functions to u_int. 3154 3155 * hlfsd/hlfsd.h, hlfsd/hlfsd.c: change 'cache_interval' to u_int. 3156 Changed proto for plt_search arg to u_int. 3157 3158 * amq/amq.c (show_mi, main): change 'i' to u_int. 3159 3160 * amq/pawd.c (find_mlp): change 'i' to u_int. 3161 3162 * amd/srvr_nfs.c (find_nfs_srvr): change proto_nfs_version to 3163 u_int. 3164 3165 * amd/amd.h: change prototype of vreaddir and amfs_error_readdir 3166 to use u_int count parameter. 3167 3168 * amd/ops_TEMPLATE.c (foofs_readdir), amd/amfs_error.c 3169 (amfs_error_readdir): change 'count' parameter in proto to u_int. 3170 3171 * amd/amd.h: change proto of amfs_generic_readdir() to use u_int 3172 count parameter. 3173 3174 * amd/readdir.c (make_entry_chain): preflen should be u_int. 3175 (amfs_readdir_browsable): change 'count' to u_int. 3176 (amfs_generic_readdir): change 'count' to u_int. 3177 3178 * amd/amd.h: amu_global_options's portmap_program field should be 3179 u_long, not int (to match RPC conventions). Change am_fh's 3180 fhh_gen field to u_int, to match am_gen field in struct am_node. 3181 3182 * amd/conf.c (gopt_portmap_program): use atol() instead of atoi() 3183 to avoid size differences. 3184 3185 * conf/mount/mount_linux.c (find_unused_loop_device): cast to int 3186 to avoid comparison between chars and integers. 3187 3188 * libamu/mount_fs.c (get_hex_string): change 'i' to u_int to avoid 3189 comparisons between signed and unsigned integers. 3190 31912004-07-13 Erez Zadok <ezk@cs.sunysb.edu> 3192 3193 * minor new port: i386-pc-linux-suse9.1. 3194 3195 * include/am_defs.h: don't use __kernel_dev_t for dev_t on Linux, 3196 because SuSE wants __kernel_old_dev_t. Instead, just define it 3197 directly to what they both use: an unsigned short. 3198 31992004-05-27 Erez Zadok <ezk@cs.sunysb.edu> 3200 3201 * minor new port: i386-unknown-freebsd4.10 3202 32032004-04-29 Ion Badulescu <ionut@moisil.badula.org> 3204 3205 * amd/amfs_generic.c (amfs_lookup_one_mntfs): fix the creation of 3206 mountpoints for autofs-based sublinks the right way 3207 32082004-04-28 Ion Badulescu <ionut@moisil.badula.org> 3209 3210 Fixes for various memory management problems discovered by 3211 Rainer's purify run: 3212 3213 * conf/transp/transp_tli.c (check_pmap_up): zero out struct 3214 timeval before using; 3215 (get_nfs_version): ditto 3216 3217 * amd/map.c (umount_exported): make sure we don't try to free the 3218 same am_node multiple times, by setting its corresponding 3219 exported_ap slot to null 3220 3221 * amd/get_args.c (get_version_string): a static pointer is pretty 3222 pointless, make it automatic 3223 3224 * amd/conf.c (gopt_debug_options): remove unnecessary strdup(); 3225 (gopt_log_options): ditto 3226 (gopt_print_version): free version string after using it 3227 3228 * amd/autil.c (mf_mounted): free mntfs->mf_fo instead of leaking 3229 it 3230 3231 * amd/amfs_generic.c (amfs_lookup_one_mntfs): use the CALLOC macro 3232 (amfs_lookup_mntfs): free def_opts on return 3233 3234 * amd/amd.c (daemon_mode): zero out struct sigaction before using 3235 it; 3236 (main): ditto 3237 32382004-04-27 Ion Badulescu <ionut@moisil.badula.org> 3239 3240 * amd/amfs_generic.c (amfs_lookup_one_mntfs): force FS_MKMNT on 3241 the real mount of an autofs-based sublink 3242 32432004-04-25 Ion Badulescu <ionut@moisil.badula.org> 3244 3245 * amd/map.c (free_map_if_success): avoid dereferencing a pointer 3246 to potentially freed memory 3247 32482004-02-26 Erez Zadok <ezk@cs.sunysb.edu> 3249 3250 * minor new port: i386-unknown-freebsd5.2.1. 3251 32522004-01-30 Ion Badulescu <ion@guppy.limebrokerage.com> 3253 3254 * scripts/ctl-hlfsd.in: don't run hlfsd with -D fork 3255 32562004-01-25 Erez Zadok <ezk@cs.sunysb.edu> 3257 3258 * minor new port: sparc64-unknown-linux-deb3.0 3259 3260 * config.guess.long: recoognize Debian Linux. 3261 32622004-01-22 Erez Zadok <ezk@cs.sunysb.edu> 3263 3264 * conf/transp/transp_tli.c (amu_get_myaddress): use 3265 htonl(INADDR_LOOPBACK) and define INADDR_LOOPBACK if not already 3266 available. 3267 32682004-01-21 Erez Zadok <ezk@cs.sunysb.edu> 3269 3270 * wire-test/wire-test.c, hlfsd/hlfsd.c (main): pass NULL as second 3271 parameter to amu_get_myaddress(). 3272 3273 * conf/transp/transp_tli.c (amu_get_myaddress): resolve value of 3274 localhost_address amd.conf parameter, if defined (else default to 3275 HOST_SELF_CONNECT). 3276 Removed htonl() around socket address copying (I think it was 3277 wrong) since plog("My IP address is...") in amd.c was printing 3278 addresses wrong on Solaris x86.. 3279 3280 * conf/transp/transp_sockets.c (amu_get_myaddress): comment out 3281 old DEBUG code that warns if 127.0.0.1 isn't the same as what 3282 get_myaddress() reports. Add code to resolve value of 3283 localhost_address amd.conf parameter, if defined (else default to 3284 127.0.0.1). 3285 3286 * amd/conf.c (gopt_localhost_address): new function to parse 3287 amd.conf parameter localhost_address. 3288 3289 * amd/amd.h: global field to store amd.conf localhost_address 3290 parameter. 3291 3292 * amd/amd.c (main): call amu_get_myaddress with global option, 3293 which could have been set in amd.conf. 3294 3295 * NEWS, doc/am-utils.texi, scripts/amd.conf-sample, 3296 scripts/amd.conf.5: document new option localhost_address. 3297 32982004-01-20 Ion Badulescu <ionut@moisil.badula.org> 3299 3300 * amd/conf.c (gopt_nfs_allow_insecure_port): support function for 3301 the new "nfs_allow_insecure_port" amd.conf directive 3302 3303 * amd/nfs_prot_svc.c (nfs_program_2): complain about the insecure 3304 port and drop the request only if the "nfs_allow_insecure_port" 3305 option is not set in amd.conf 3306 3307 * doc/am-utils.texi (Global Parameters): documented the new 3308 amd.conf directive "nfs_allow_insecure_port" 3309 3310 * scripts/amd.conf.5 (nfs_allow_insecure_port): ditto 3311 3312 * scripts/amd.conf-sample (nfs_allow_insecure_port): added the 3313 "nfs_allow_insecure_port" directive 3314 33152004-01-20 Erez Zadok <ezk@cs.sunysb.edu> 3316 3317 * doc/am-utils.texi: amd-workers is defunct. 3318 33192004-01-19 Erez Zadok <ezk@cs.sunysb.edu> 3320 3321 * cvs-server.txt: updated instructions 3322 33232004-01-18 Erez Zadok <ezk@cs.sunysb.edu> 3324 3325 * minor new port: i386-unknown-freebsd5.2. 3326 33272004-01-05 Erez Zadok <ezk@cs.sunysb.edu> 3328 3329 * MIRRORS.{txt,html}: verify each mirror site, update to new 3330 locations (if found), and remove stale mirrors URLs. 3331 3332 * updated copyright year to 2004 on all files. 3333 33342004-01-03 Erez Zadok <ezk@cs.sunysb.edu> 3335 3336 * MIRRORS.txt: track status. 3337 3338 * Makefile.am (install-snapshot): new directory to install 3339 snapshots (now that am-utils home page is moved). 3340 33412004-01-02 Erez Zadok <ezk@cs.sunysb.edu> 3342 3343 * INSTALL, README.autofs: remove forced text-mode. 3344 3345 * doc/am-utils.texi: fix Amd book URL. 3346 3347 * Makefile.am (EXTRA_DIST): include new mirror files in tarball. 3348 3349 * AUTHORS, BUGS, README, README.y2k, configure.in, 3350 doc/am-utils.texi: revisions to use newer URLs for Web site, FTP, 3351 and mailing lists. 3352 3353 * MIRRORS.{html,txt}: updates. 3354 3355 * doc/Makefile.am: install mirror lists officially. 3356 33572004-01-01 Erez Zadok <ezk@cs.sunysb.edu> 3358 3359 * tasks: things to do after migrating ftp/Web sites. 3360 33612003-12-09 Erez Zadok <ezk@cs.sunysb.edu> 3362 3363 * fsinfo/fsinfo.8: fixed typo (unbalanced []) in man page. Bug 3364 report from Eric S. Raymond <esr@thyrsus.com>. 3365 33662003-11-18 Erez Zadok <ezk@cs.sunysb.edu> 3367 3368 * Makefile.am (EXTRA_DIST_M4): exclude removed file 3369 m4/macros/struct_nfs_fh3.m4 from distro. 3370 33712003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3372 3373 * libamu/xdr_func.c (xdr_am_nfs_fh3): Use AM_FHSIZE3 instead of 3374 FHSIZE3 (may be undefined). 3375 33762003-10-24 Ion Badulescu <ion@guppy.limebrokerage.com> 3377 3378 Compile fix for Solaris7 with LDAP: 3379 3380 * include/am_defs.h: moved the ldap headers before am_nfs_prot.h 3381 to facilitate using ldap types in it 3382 3383 * conf/nfs_prot/nfs_prot_sunos5_7.h: add a couple of ldap 3384 definitions that Sun left out of their headers 3385 33862003-10-24 Ion Badulescu <ionut@moisil.badula.org> 3387 3388 * conf/nfs_prot/nfs_prot_*.h: remove all NFSv3-related 3389 definitions, they are now defined globally 3390 3391 * libamu/xdr_func.c: unconditionally define all xdr functions 3392 needed for NFSv3, but with an am_ prefix to prevent namespace 3393 collisions 3394 3395 * amd/amfs_host.c, amd/ops_nfs.c, amd/srvr_nfs.c, 3396 libamu/mount_fs.c: added the am_ prefix to all 3397 structures and functions having to do with NFSv3 to prevent 3398 namespace collisions 3399 3400 * include/am_utils.h: moved definition of am_nfs_handle to ... 3401 3402 * include/am_xdr_func.h: ... here. Also define AM_FHSIZE3, 3403 am_nfs_fh3, AM_NFSPROC3_LOOKUP, am_nfsstat3, am_fhandle3, 3404 am_mountstat3, am_mountres3_ok, am_mountres3, am_filename3, 3405 am_diropargs3, am_LOOKUP3args, am_LOOKUP3resok, am_LOOKUP3resfail, 3406 am_LOOKUP3res here; remove cross-platform compile helper macros 3407 AMU_LOOKUP3RES_*. 3408 3409 * include/am_defs.h: include am_xdr_func.h before am_utils.h to 3410 provide definitions for NFS filehandles 3411 3412 * amd/amd.h: removed declaration for xdr_mountres3 3413 3414 * doc/am-utils.text: minor warning fix 3415 3416 * BUGS: document the autoconf warnings when trying to compile 3417 system header files in isolation 3418 34192003-10-23 Ion Badulescu <ionut@moisil.badula.org> 3420 3421 * m4/macros/struct_nfs_fh3.m4: removed, not needed 3422 3423 * configure.in: check if struct mounta has the optptr field; 3424 removed all NFSv3-related checks, we implement everything 3425 internally now 3426 3427 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mount_2_free): don't 3428 touch mnt->optptr unless HAVE_MOUNTA_OPTPTR is defined 3429 34302003-10-22 Ion Badulescu <ionut@moisil.badula.org> 3431 3432 * m4/macros/struct_nfs_fh3.m4: removed, not used anymore 3433 3434 * libamu/xdr_func.c (xdr_am_nfs_fh3): update xdr_am_nfs_fh3 3435 comments 3436 3437 * configure.in: don't check for xdr_nfs_fh3 and struct nfs_fh3, we 3438 always use our own 3439 34402003-10-22 Ion Badulescu <ion@guppy.limebrokerage.com> 3441 3442 * BUGS: document the limitations of bind mounts on Linux 3443 34442003-10-21 Ion Badulescu <ionut@moisil.badula.org> 3445 3446 * buildall: added support for -i (make install) 3447 34482003-10-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3449 3450 * NEWS: New minor port i386-pc-solaris2.10 (Solaris 10). 3451 * INSTALL: Mention its test status. 3452 34532003-10-16 Erez Zadok <ezk@cs.sunysb.edu> 3454 3455 * amd/ops_nfs.c (nfs_init): declare as static to match forward 3456 definition at top of file. 3457 3458 * conf/nfs_prot/nfs_prot_{hpux11, netbsd1_4,openbsd,aix5_2}.h: 3459 added missing definitions for LOOKUP3res, diropargs3, etc. 3460 34612003-10-15 Erez Zadok <ezk@cs.sunysb.edu> 3462 3463 * libamu/xdr_func.c (xdr_LOOKUP3res, xdr_am_nfs_fh3), 3464 libamu/mount_fs.c (compute_nfs_args), amd/ops_nfs.c 3465 (got_nfs_fh_mount, got_nfs_fh_webnfs, prime_nfs_fhandle_cache, 3466 webnfs_lookup), amd/amfs_host.c (fetch_fhandle): Attempt to 3467 cleanup some inconsistencies with how we treat NFSv3 file handles. 3468 Whenever we need to get data out of a filehandle given to us, we 3469 assume that it uses the OS's native fhandle structure 3470 (often struct nfs_fh3). When we store the fhandle data for our 3471 own use, however, we store it in one of two ways. The first, is 3472 that we use the system's default nfs_fh3 structure; the second is 3473 that we define out own struct am_nfs_fh3 in nfs_prot.h (and go 3474 through an elaborate autoconf song-and-dance to "discover" it as a 3475 native fh3 handle structure). It appears that we do the latter, 3476 instead of using the system's default fhandle structure, simply to 3477 avoid extra malloc's and free's, because whereas nfsv2's fhandle 3478 structure is a simple 32-byte buffer, nfsv3's fhandle structures 3479 often just define a "char *" for the fhandle data, and the caller 3480 must malloc/free the space inside as needed. Our code was never 3481 written with constructor/destructor callbacks for these nfsv3 3482 filehandles. Moreover, we carefully wrote our own am_nfs_fh3 3483 structure so IT JUST SO HAPPENS to align with most (hopefully all) 3484 of the fhandle structures for v3: first four bytes are the length 3485 fields and the next four bytes are the fhandle data. Sigh. 3486 Having this inconsistent use of v3 filehandles can be a real bear, 3487 because we simply cannot avoid using the system's default fhandle 3488 structure indirectly, through things like diropargs3 in 3489 xdr_diropargs3(), which has inside of it a reference to the 3490 system's default nfs_fh3 structure. ANYWAY, the current fix I've 3491 come up with is to generalize the way we dereference field names 3492 within the nfs_fh3 structure (whether ours or the system's) and 3493 the same for the system's LOOKUP3res structure. I'm not pleased 3494 with this fix; I'd rather we don't use our own am_nfs_fh3 3495 structure at all. 3496 3497 * libamu/xdr_func.c (xdr_am_nfs_fh3): always define this 3498 function if we have NFS3, because we often use our own, 3499 incompatible am_nfs_fh3 structure. 3500 3501 * include/am_xdr_func.h: We cannot use the native system's 3502 xdr_nfs_fh3 because we are defining our own incompatible 3503 am_hfs_fh3 structure for some systems. 3504 3505 * include/am_xdr_func.h: Define default values for field names of 3506 struct nfs_fh3 and LOOKUP3res. 3507 3508 * doc/am-utils.texi (debug_options Parameter): minor typo fixed. 3509 3510 * conf/nfs_prot/nfs_prot_freebsd3.h: FreeBSD uses different fields 3511 names for struct nfs_fh3 and LOOKUP3res, so override the default 3512 names here. 3513 3514 * configure.in: AMU_CHECK_FS_MNTENT(nfs3) test before 3515 AMU_STRUCT_NFS_FH3, because the latter depends on the former. 3516 3517 * amd/ops_nfs.c (prime_nfs_fhandle_cache): add {} to disambiguate 3518 and clarify if-the-else clauses. 3519 35202003-10-13 Ion Badulescu <ionut@moisil.badula.org> 3521 3522 * amd/get_args.c (get_version_string): change "Built by" to 3523 "Configured by", and add a new "Built by" line using the variables 3524 below 3525 3526 * m4/update_build_version (vers): add BUILD_USER, BUILD_HOST, and 3527 BUILD_DATE to build_version.h 3528 3529 * amd/mntfs.c (locate_mntfs): fix restarted filesystems: mf_fo 3530 must be initialized even for them, otherwise we lose opt_sublink 3531 (and perhaps other options as well). Report from Rainer Orth. 3532 3533 * amd/amfs_generic.c (amfs_bgmount): The fix for the mf_fo NULL 3534 pointer dereferencing was a bit too aggressive and could end up 3535 not processing the sublink option if the filesystem was already 3536 mounted. 3537 35382003-10-11 Ion Badulescu <ionut@moisil.badula.org> 3539 3540 Fix restarted filesystem by disabling the amfs_inherit filesystem 3541 and moving the restarting logic into the generic code. The old 3542 code is still there, will be removed sometime in the near future. 3543 3544 * amd/mntfs.c (locate_mntfs): disable amfs_inherit and simply 3545 return the pointer to the restarted filesystem 3546 (free_mntfs): check for the MFF_RESTART flag instead of the 3547 amfs_inherit ops 3548 3549 * amd/autil.c (mf_mounted): remove the MFF_RESTART flag once the 3550 filesystem is in use 3551 3552 * amd/amfs_nfsx.c (amfs_nfsx_init): only call fs_init() if the 3553 filesystem is not being restarted 3554 (amfs_nfsx_remount): if the filesystem is already mounted, 3555 short-circuit the code and just continue 3556 3557 * amd/amfs_generic.c (amfs_bgmount): only call fs_init() if the 3558 filesystem is not being restarted; remove hack that was used to 3559 work around an amfs_inherit problem 3560 35612003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3562 3563 Use WebNFS to obtain file handles for mount(2). 3564 3565 * NEWS: Document WebNFS support. 3566 3567 * configure.in: Check for public mount option. 3568 * include/am_compat.h (MNTTAB_OPT_PUBLIC): Define if missing. 3569 * doc/am-utils.texi (opts Option): Renamed webnfs to public, 3570 update description. 3571 3572 * amd/amd.h (FSF_WEBNFS): New mntfs flag. 3573 * include/am_utils.h (RPC_XID_WEBNFS): New XID type. 3574 3575 * amd/amfs_host.c (amfs_host_mount, amfs_host_umounted): Reject 3576 WebNFS mount/umount attempts. 3577 * amd/ops_nfs.c (got_nfs_fh_mount): Renamed from got_nfs_fh. 3578 (got_nfs_fh_webnfs): New function. 3579 (flush_nfs_fhandle_cache): Don't invalidate port for WebNFS servers. 3580 (prime_nfs_fhandle_cache): Likewise. 3581 Remove unconditional return of public file handle for WebNFS, but 3582 get NFS file handles via mountd or WebNFS instead. 3583 (webnfs_lookup): New function. 3584 (nfs_umounted): Don't inform mountd if MFF_WEBNFS. 3585 * amd/rpc_fwd.c (fwd_packet, fwd_reply): Send/receive WebNFS 3586 packets. 3587 * amd/srvr_nfs.c (recompute_portmap): Don't contact portmap for 3588 WebNFS servers. 3589 Mention host in info message. 3590 (find_nfs_srvr): Handle public mount option. 3591 Prefer NFSv3/tcp if the client supports it. 3592 Allow port mount option to override default or result from portmap 3593 lookup. 3594 3595 * libamu/xdr_func.c (xdr_diropargs3, xdr_filename3, 3596 xdr_LOOKUP3args, xdr_LOOKUP3res, xdr_LOOKUP3resfail, 3597 xdr_LOOKUP3resok, xdr_nfs_fh3, xdr_nfsstat3): New functions. 3598 * include/am_xdr_func.h: Declare them. 3599 * configure.in: Check for them. 3600 * conf/nfs_prot/nfs_prot_linux.h: Provide missing NFSv3 3601 definitions and types. 3602 36032003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3604 3605 Support IRIX 6 private mount option. 3606 3607 * configure.in (AC_CHECK_MNTTAB_OPTS): Check for private option 3608 name string. 3609 (AC_CHECK_MNT2_NFS_OPTS): Check for private NFS mount option (IRIX 6). 3610 * aux/macros/header_templates.m4 (MNTTAB_OPT_PRIVATE, 3611 MNT2_NFS_OPT_PRIVATE): Provide templates. 3612 * include/am_compat.h (MNTTAB_OPT_PRIVATE): Define if missing. 3613 * doc/am-utils.texi (opts Option): Document it. 3614 36152003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3616 3617 * doc/am-utils.texi (opts Option): Fix Tru64 UNIX name in proplist 3618 mount option. 3619 36202003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3621 3622 * libamu/mount_fs.c (compute_nfs_args) [HAVE_NFS_ARGS_T_FH_LEN]: 3623 Don't reference removed fh3. 3624 36252003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3626 3627 * NEWS: New minor port sparc-sun-solaris2.10 (Solaris 10). 3628 3629 * INSTALL: Mention test status of various ports. 3630 Describe IRIX 6 autofs status. 3631 36322003-10-09 Ion Badulescu <ionut@moisil.badula.org> 3633 3634 * NEWS: updated 3635 3636 * amd/amfs_generic.c (amfs_bgmount): don't use mf_fo until after 3637 we've done all the tests and we know we have a valid and mountable 3638 mntfs. Otherwise we could end up dereferencing null pointers. 3639 3640 * amd/amd.h: fixed a copy&paste comment bug 3641 3642 * amd/am_ops.c (ops_match): minor code cleanup 3643 3644 * doc/am-utils.texi: fixed various typos; added warning about the 3645 racy nature of nfsx; removed duplicated listing of debug options; 3646 added paragraph about signals supported by hlfsd; removed the long 3647 list of (maybe) supported platforms since it duplicates the list 3648 in INSTALL. 3649 36502003-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3651 3652 Simplify FD_SET etc. use. 3653 3654 * include/am_defs.h (FD_SET, FD_ISSET, FD_CLR, FD_ZERO): Provide 3655 if missing. 3656 (rpc_pending_now, run_rpc): Use them. 3657 * configure.in: Check for fds_bits field in fd_set. 3658 * amd/nfs_start.c (run_rpc): Use it. 3659 36602003-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3661 3662 Improve RPC XID handling. 3663 3664 * amd/rpc_fwd.c (fwd_packet, fwd_reply): Always log xid. 3665 Convert xid to/from host/network byte order. 3666 36672003-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3668 3669 Use NFS V2/V3 file handles instead of mount results. 3670 3671 * include/am_utils.h (am_nfs_fhandle): Use NFS V2/V3 file handles 3672 only, not MOUNTPROC_MNT results. 3673 * amd/amfs_host.c (fetch_fhandle): Use local variables to store 3674 MOUNTPROC_MNT results. 3675 * amd/autil.c (amfs_mount): Use new am_nfs_fhandle_t. 3676 * amd/ops_nfs.c (struct fh_cache): New member fh_status. 3677 (got_nfs_fh): Use local variables to store MOUNTPROC_MNT results. 3678 Store MOUNTPROC_MNT errors in fh_status. 3679 (prime_nfs_fhandle_cache): Get fh_error from fh_status. 3680 * hlfsd/hlfsd.c (main): Use new am_nfs_fhandle_t. 3681 * libamu/mount_fs.c (compute_nfs_args): Copy NFS V2/V3 file 3682 handles straight from new am_nfs_fhandle_t. 3683 36842003-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3685 3686 * amd/clock.c (CID_ALLOC): Remove unused argument. 3687 (timeout): Likewise. 3688 3689 * amd/ops_nfs.c (FHID_ALLOC): Remove unused argument. 3690 (prime_nfs_fhandle_cache): Likewise. 3691 (call_mountd): Use UDPMSGSIZE instead of magic constant. 3692 3693 * amd/rpc_fwd.c (XID_ALLOC): Remove unused argument. 3694 (fwd_packet): Likewise. 3695 Handle TLOOK error from t_rcvudata(). 3696 36972003-09-30 Ion Badulescu <ionut@moisil.badula.org> 3698 3699 * NEWS: updated 3700 3701 * libamu/mount_fs.c (mount_fs): don't try to recreate the mount 3702 point if the mount fails with ENOENT: in the best case we would be 3703 papering over a bug, and in the worst case we could cause a 3704 deadlock (with autofs). If there are races, they need to be 3705 exposed and fixed properly. 3706 3707 * conf/autofs/autofs_solaris_v1.h, 3708 conf/autofs/autofs_solaris_v2_v3.h, 3709 conf/autofs/autofs_linux.h: (AUTOFS_NFSX_FS_FLAGS): autofs 3710 semantics don't allow us to mount nfsx directly onto an autofs 3711 mountpoint, so disallow it 3712 3713 * amd/amfs_nfsx.c (amfs_nfsx_match): more restrictive sanity check 3714 to avoid trying to memmove(foo, bar, (unsigned)-1) due to invalid 3715 map entries... 3716 (amfs_nfsx_cont): amfs_retry does most of the cleanup work for us 3717 in the upper layer, so don't do anything else beside wakeup() on 3718 success 3719 (amfs_nfsx_remount): only create the mountpoints as we need them, 3720 avoids creating them on the wrong filesystem in the case of 3721 hierarchical mounts; fix crash-generating typo (m should really be 3722 mf and I swear I hate single-character variable names) 3723 3724 * amd/amfs_generic.c (amfs_cont): one more dlog 3725 (amfs_bgmount): amazingly enough, even foreground mounts can be 3726 backgrounded (in the case of nfsx), so account for this 3727 possibility and permit retries 3728 3729 * m4/macros/check_autofs_style.m4 (AMU_AUTOFS_PROT_HEADER): define 3730 and AC_SUBST it as ${top_builddir}/amu_autofs_prot.h 3731 3732 * amd/Makefile.am ($(amd_OBJECTS) $(EXTRA_amd_OBJECTS)): depend on 3733 @AMU_AUTOFS_PROT_HEADER@ 3734 37352003-09-29 Erez Zadok <ezk@urd.fsl.cs.sunysb.edu> 3736 3737 * minor new port mipsel-unknown-linux-rhPS2 (Linux on Sony 3738 PlayStation 2) 3739 3740 * amd/srvr_nfs.c (find_nfs_srvr): don't run code that expects 3741 "char protocols[]" unless MNTTAB_OPT_PROTO is defined. 3742 37432003-09-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3744 3745 Consolidate alloca support. 3746 3747 * amd/amq_svc.c: Move alloca support ... 3748 * include/am_defs.h: ... here. 3749 * amd/conf_parse.y: Remove alloca support. 3750 * fsinfo/fsi_gram.y: Likewise. 3751 37522003-09-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3753 3754 Handle Solaris 10. 3755 * m4/macros/check_nfs_prot_headers.m4 3756 (AMU_CHECK_NFS_PROT_HEADERS): Don't use wildcards for 3757 sunos5.[0-3], solaris 2.[0-3], there were no micro releases. 3758 Explicitly match sunos5*, solaris2* for Solaris 8 and beyond. 3759 3760 * m4/macros/os_cflags.m4 (AMU_OS_CFLAGS): Dont use wildcards for 3761 solaris2.[0-5], sunos5.[0-5], but explicitly handle Solaris 2.5 3762 micro releases to cope with Solaris 2.5.1. 3763 Explicitly match solaris2*, sunos5*. 3764 37652003-09-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3766 3767 * amd/amq_svc.c: Provide alloca prerequisites. 3768 3769 * conf/transp/transp_tli.c (register_autofs_service): Fix typo. 3770 37712003-09-23 Ion Badulescu <ion@opteron.tower-research.com> 3772 3773 * minor new port: x86_64-unknown-linux-rh2.9.5AS. (Red Hat 3774 Enterprise Linux 3.0 beta running on a 64-bit AMD64 platform) 3775 37762003-09-22 Ion Badulescu <ionut@buggy.badula.org> 3777 3778 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): compile fix 3779 37802003-09-19 Ion Badulescu <ionut@moisil.badula.org> 3781 3782 * amd/amfs_nfsl.c (amfs_nfsl_match): checking opt_fs is not always 3783 enough, we should lstat() the sublink if it's defined. 3784 (amfs_nfsl_ffserver): ditto 3785 (ALL): Removed some obsolete comments. The nfsl code is now little 3786 more than a very straight-forward switch between link and nfs. 3787 3788 * amd/amfs_link.c (amfs_link_match): more up-to-date explanation 3789 for the prepend-the-dot hack for type link; also, the sublink is 3790 already normalized and absolute, so take advantage of that 3791 3792 * amd/amfs_generic.c (amfs_lookup_one_mntfs): the sublink is 3793 already normalized and absolute, so take advantage of that 3794 3795 * amd/am_ops.c (ops_match): normalize the sublink here, early into 3796 the matching process 3797 3798 * amd/autil.c (am_mounted): be consistent and accept both 3799 "nounmount" and "noumount" as pseudo mount options (same as 3800 "unmount" and "umount" nearby) 3801 3802 * amd/Makefile.am (build_version.h): fixed dependencies (depends 3803 on amd_OBJECTS, not OBJECTS -- which doesn't even exist) 3804 38052003-09-19 Erez Zadok <ezk@dhcp8.fsl.cs.sunysb.edu> 3806 3807 * amd/amq_subr.c (amqproc_export_1_svc): force double casting to 3808 avoid gcc-3.3 complaints on Solaris 9 about "dereferencing 3809 type-punned pointer will break strict-aliasing rules". 3810 38112003-09-16 Ion Badulescu <ionut@moisil.badula.org> 3812 3813 * Released beta version 6.1b4 3814 38152003-09-15 Ion Badulescu <ionut@moisil.badula.org> 3816 3817 * doc/am-utils.texi (opts Option): removed documentation for old 3818 ignore_portmapper mount option, documented the new webnfs option 3819 3820 * NEWS: webnfs support 3821 3822 * amd/srvr_nfs.c (find_nfs_srvr): set MFF_WEBNFS if the "webnfs" 3823 (former "ignore_portmapper") mount option is present 3824 3825 * amd/ops_nfs.c (prime_nfs_fhandle_cache): generate a public 3826 filehandle (all zeros) if MFF_WEBNFS is set 3827 (nfs_umounted): don't talk to mountd if MFF_WEBNFS is set 3828 3829 * amd/amd.h (MFF_WEBNFS): new flag, obvious meaning 3830 38312003-09-13 Ion Badulescu <ionut@moisil.badula.org> 3832 3833 * amd/srvr_nfs.c: renamed np_xid to global_xid; sanitized the 3834 NPXID_ALLOC macro and renamed it to XID_ALLOC; renamed start_ping 3835 to create_ping_payload; renamed nfs_pinged to 3836 nfs_keepalive_callback; renamed nfs_timed_out to 3837 nfs_keepalive_timeout; renamed nfs_srvr_port to get_mountd_port; 3838 made ping_buf and ping_len arrays with one element for each 3839 supported nfs version 3840 3841 * amd/amd.h: renamed nfs_srvr_port() to get_mountd_port() 3842 3843 * amd/amfs_host.c (amfs_host_init): ditto 3844 3845 * amd/ops_nfs.c (call_mountd): ditto 3846 38472003-09-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 3848 3849 * BUGS: Mention fix for broken Solaris 8 <rpcsvc/autofs_prot.h> 3850 patches. 3851 38522003-08-31 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 3853 3854 * amd/autil.c (strealloc): don't call malloc_verify() unless it 3855 exists. 3856 3857 * configure.in: move "OPTION PROCESSING" section (opt_debug etc.) 3858 after we figure out PROG_CC and other compiler features, because 3859 some of the option processing macros need a compiler to function. 3860 3861 * libamu/xutil.c: don't define variables that won't be used unless 3862 mallinfo() and malloc_verify() exist. 3863 (real_plog): don't call checkup_mem unless 3864 mallocinfo() and malloc_verify() exist. 3865 (checkup_mem): don't define this function unless mallocinfo() and 3866 malloc_verify() exist. 3867 3868 * m4/macros/opt_debug.m4: check for functions malloc_verify and 3869 mallinfo in general libraries and then in libmapmalloc and 3870 libmalloc. These seem to have disappeared in FreeBSD 5.x. 3871 3872 * libamu/xutil.c (dxfree): print pointer using %p 3873 38742003-08-29 Erez Zadok <ezk@a-opendarwin.fsl.cs.sunysb.edu> 3875 3876 * configure.in: start 6.1b4-pre officially (belated) 3877 3878 * minor new port: i686-apple-darwin6.6 3879 38802003-08-27 Ion Badulescu <ionut@moisil.badula.org> 3881 3882 * conf/autofs/autofs_solaris_v1.c: convert relative targets to 3883 absolute paths when using lofs mounts 3884 3885 * conf/autofs/autofs_solaris_v2_v3.c: ditto 3886 3887 * conf/autofs/autofs_linux.c: ditto 3888 38892003-08-27 Ion Badulescu <ionut@buggy.badula.org> 3890 3891 * README.autofs: added a paragraph about the resource consumption 3892 of auto maps over autofs 3893 3894 * amd/amfs_generic.c (amfs_lookup_one_mntfs): moved the setting of 3895 the MFF_IS_AUTOFS flag from init_mntfs() to 3896 amfs_lookup_one_mntfs(), where it belongs 3897 3898 * amd/mntfs.c (init_mntfs): ditto 3899 39002003-08-27 Ion Badulescu <ion@guppy.limebrokerage.com> 3901 3902 * amd/ops_nfs.c (got_nfs_fh): make the error EACCES if we are 3903 denied a filehandle by the server (used to be EIO) 3904 39052003-08-27 Erez Zadok <ezk@a-bsdi42.fsl.cs.sunysb.edu> 3906 3907 * conf/nfs_prot/nfs_prot_bsdi3.h: support na_uid and na_gid. 3908 39092003-08-27 Ion Badulescu <ionut@moisil.badula.org> 3910 3911 * conf/autofs/autofs_linux.c (autofs_mount_succeeded): force 3912 daemon-initiated timeouts on autofs filesystems, since apparently 3913 they appear as "always busy" to the kernel-based expiration routine 3914 39152003-08-26 Ion Badulescu <ionut@buggy.badula.org> 3916 3917 * NEWS: updated 3918 3919 * conf/autofs/autofs_linux.h (AUTOFS_LINK_FS_FLAGS): remove 3920 FS_ON_AUTOFS 3921 (AUTOFS_LINKX_FS_FLAGS): ditto 3922 3923 * conf/autofs/autofs_solaris_v1.h (AUTOFS_LINK_FS_FLAGS): remove 3924 FS_ON_AUTOFS 3925 (AUTOFS_LINKX_FS_FLAGS): ditto 3926 3927 * conf/autofs/autofs_solaris_v2_v3.h (AUTOFS_LINK_FS_FLAGS): remove 3928 FS_ON_AUTOFS 3929 (AUTOFS_LINKX_FS_FLAGS): ditto 3930 3931 * amd/amfs_generic.c (amfs_lookup_one_mntfs): don't modify the 3932 original opt_fs, instead store the new mount point for autofs in a 3933 temporary variable and pass it around. Fixes a problem with the 3934 link side of nfsl. 3935 39362003-08-25 Ion Badulescu <ionut@moisil.badula.org> 3937 3938 * NEWS: updated 3939 3940 * amd/ops_nfs.c (prime_nfs_fhandle_cache): use get_mntfs_wchan to 3941 initialize the fh_wchan member of the cache entry 3942 (prime_nfs_fhandle_cache): use get_mntfs_wchan for the wchan_t 3943 argument of call_mountd() 3944 3945 * amd/map.c (free_map_if_success): use get_mntfs_wchan for the 3946 wchan_t argument of wakeup() 3947 3948 * amd/amfs_nfsx.c (amfs_nfsx_cont): use get_mntfs_wchan for the 3949 wchan_t argument of wakeup_task() and wakeup() 3950 3951 * amd/amfs_host.c (amfs_host_init): use get_mntfs_wchan for the 3952 wchan_t argument of nfs_srvr_port() 3953 3954 * amd/amfs_generic.c (ALL): use get_mntfs_wchan for the wchan_t 3955 argument of sched_task() and wakeup() 3956 (amfs_retry): minor cleanup 3957 (amfs_bgmount): call nfs_quick_reply on failure 3958 3959 * amd/sched.c (get_mntfs_wchan): new function which calls the 3960 member function get_wchan if defined, otherwise returns the mntfs 3961 pointer itself 3962 3963 * amd/amfs_inherit.c (amfs_inherit_get_wchan): new function, 3964 calls get_mntfs_wchan() on the inherited filesystem 3965 3966 * amd/amfs_*.c, amd/ops_*.c: initialize the new get_wchan member 3967 of the ops to 0 3968 3969 * amd/amd.h: new function type vget_wchan 3970 (struct mntfs): new member get_wchan which returns the waiting 3971 channel associated with the mntfs (normally itself) 3972 39732003-08-22 Ion Badulescu <ion@guppy.limebrokerage.com> 3974 3975 * conf/mount/mount_linux.c (parse_opts): minor cleanup 3976 3977 * conf/autofs/autofs_linux.c (autofs_handle_fdset): added missing 3978 break in case autofs_ptype_expire_multi 3979 39802003-08-22 Ion Badulescu <ionut@moisil.badula.org> 3981 3982 * conf/autofs/autofs_solaris_v1.h: undefine autofs support if 3983 autofs_args_t cannot be determined (hopefully fixes a reported 3984 IRIX 6.5.4 problem). 3985 3986 * conf/autofs/autofs_solaris_v1.c: wrap entire file in #ifdef 3987 HAVE_FS_AUTOFS / #endif (see above) 3988 3989 * conf/autofs/autofs_linux.h: undefine autofs support if the 3990 necessary header files are not found (fixes a reported RedHat 6.2 3991 Sparc problem). 3992 3993 * conf/autofs/autofs_linux.c: wrap entire file in #ifdef 3994 HAVE_FS_AUTOFS / #endif (see above) 3995 3996 * libamu/mount_fs.c (compute_nfs_args): only use MNT2_NFS_OPT_SOFT 3997 if autoconf detected it (fixes a reported RedHat 6.2 Alpha problem). 3998 3999 * amd/map.c (unmount_mp, unmount_exported): move the code that 4000 changes the fattr from NFLNK to NFDIR from unmount_mp to 4001 unmount_exported, it was causing troubles (ESTALE) after failed 4002 unmounts. This is still very very unclean, but it's the same as the 4003 old 6.0 code. 4004 40052003-08-22 Nick Williams <Nick.Williams@morganstanley.com> 4006 4007 * amd/info_ldap.c (amu_ldap_init): don't try to pass a null 4008 pointer as a string to plog, Solaris (and other OS's) don't like 4009 it and will dump core. 4010 40112003-08-13 Ion Badulescu <ion@guppy.limebrokerage.com> 4012 4013 * amd/amd.h: introduced two new types, wchan_t and opaque_t, as 4014 aliases of voidp. This makes reading the code easier on the eyes. :) 4015 4016 * ALL: replace various instances of voidp with wchan_t and 4017 opaque_t, as appropriate 4018 40192003-08-13 Ion Badulescu <ionut@nicu.badula.org> 4020 4021 * NEWS, configure.in: bumped version up to 6.1b4-pre 4022 40232003-08-13 Ion Badulescu <ionut@moisil.badula.org> 4024 4025 * Released beta version 6.1b3 4026 40272003-08-13 Ion Badulescu <ion@guppy.limebrokerage.com> 4028 4029 * conf/autofs/autofs_linux.c (autofs_mount_fs): HACK: always use 4030 symlinks for host mounts; assorted fixes for the symlink mode 4031 40322003-08-05 Ion Badulescu <ionut@moisil.badula.org> 4033 4034 * conf/umount/umount_default.c (umount_fs): enable space hack 4035 handling for autofs v1 4036 4037 * amd/map.c (get_first_exported_ap, get_next_exported_ap): new 4038 functions that facilitate iterating through the list of 4039 mountpoints 4040 4041 * amd/amfs_union.c (amfs_union_mounted): use get_first_exported_ap 4042 and get_next_exported_ap 4043 4044 * conf/autofs/autofs_solaris_v2_v3.c (autofs_unmount_2_req): ditto 4045 40462003-08-04 Erez Zadok <ezk@ulkesh.dyn.optonline.net> 4047 4048 * configure.in: check if system stores mount tables in files 4049 (usually in /etc), and configure couldn't find a definition for 4050 either struct mntent or struct mnttab. If so, abort configure 4051 because this could be a new/misconfigured system, or a bug in 4052 am-utils. 4053 40542003-08-04 Ion Badulescu <ionut@moisil.badula.org> 4055 4056 * conf/autofs/autofs_solaris_v2_v3.c (autofs_umount_fs): fix 4057 compile warning 4058 40592003-08-04 Ion Badulescu <ionut@buggy.badula.org> 4060 4061 * conf/autofs/autofs_linux.c (autofs_mount_fs): don't call 4062 ops->mount_fs() for an already mounted filesystem 4063 (autofs_umount_fs): only call ops->umount_fs() if we're holding 4064 the last reference to the filesystem 4065 4066 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): ditto 4067 (autofs_umount_fs): ditto 4068 4069 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mount_fs): ditto 4070 (autofs_umount_fs): ditto 4071 4072 * amd/amfs_generic.c (amfs_lookup_mntfs): remove the shortcut for 4073 already-mounted filesystems 4074 (amfs_cont): only release the autofs_fh if the filesystem is not 4075 mounted; add another comment about the NFS_SCALEDOWN hack 4076 (amfs_bgmount): if the mntfs is already mounted, skip just the 4077 filesystem initialization, but do call mount_node() 4078 4079 * amd/map.c (mount_node): always call autofs_mount_fs(), but only 4080 call ops->mount_fs() if the mntfs is not yet mounted 4081 (unmount_node): always call autofs_umount_fs(), but only call 4082 ops->umount_fs() if the refcount on the mntfs equals 1. 4083 40842003-08-02 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4085 4086 * conf/nfs_prot/nfs_prot_openbsd.h: include <ufs/ufs/ufsmount.h> 4087 here with the proper workarounds for openbsd3.3 (define MAXQUOTAS, 4088 define dummy struct netexport, and include <ufs/ufs/extattr.h> 4089 wrapped in _KERNEL). 4090 4091 * conf/nfs_prot/nfs_prot_freebsd3.h: include <ufs/ufs/ufsmount.h> 4092 here with the proper workarounds for freebsd5.1 (define dummy 4093 struct ufs_extattr_per_mount). 4094 4095 * conf/nfs_prot/nfs_prot_bsdi2.h: include <ufs/ufs/ufsmount.h> 4096 here with the proper workarounds for bsdi2 (define MAXQUOTAS and 4097 dummy struct netexport). 4098 4099 * include/mount_headers1.h: do not include <ufs/ufs/ufsmount.h> 4100 here, b/c every *BSD system has some sort of problem in including 4101 this header file, which includes ugly workarounds. Inclusion of 4102 this header was already moved out of am_defs.h (used to compile 4103 amd), but we forgot to move it out of mount_headers1.h (used to 4104 configure). The specific inclusion of ufsmount.h is now in the OS 4105 specific nfs_prot.h file. 4106 4107 * configure.in: if configure could not find any definition for 4108 "struct nfs_args", abort configure with an explanatory message. 4109 There's no point in continuing, as this could be a system bug, 4110 buggy am-utils, or a new system to which am-utils wasn't ported to 4111 yet. 4112 4113 * minor new port: i386-pc-solaris2.9 4114 41152003-08-01 Ion Badulescu <ionut@buggy.badula.org> 4116 4117 * doc/am-utils.texi (NFS-Link Filesystem): make the documentation 4118 match the code (as well as basic logic operations: the negation of 4119 'a or b' is 'not a and not b', not 'not a or not b') 4120 41212003-08-01 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4122 4123 * minor new port: i386-unknown-openbsd3.3. 4124 4125 * m4/macros/check_libwrap_severity.m4: new macro to check if 4126 libwrap includes the integer variables deny_severity and 4127 allow_severity, since some libwrap implementations do and others 4128 don't. The test tries to compile and run a simple empty main() 4129 program, then the same program while defining these two variables: 4130 comparing the results of the two tests, we can tell whether we 4131 should define NEED_LIBWRAP_SEVERITY_VARIABLES. 4132 4133 * Makefile.am (EXTRA_DIST_M4): distribute new macro 4134 check_libwrap_severity.m4. 4135 4136 * m4/macros/header_templates.m4: template for HAVE_LIBWRAP (which 4137 we must define explicitly since we've overridden the 4138 action-if-found in AC_CHECK_LIB(wrap). Also template for 4139 NEED_LIBWRAP_SEVERITY_VARIABLES. 4140 4141 * amd/amq_svc.c: if libwrap does not include the severity 4142 variables, then define and initialize them here. 4143 4144 * amd/Makefile.am (LIBS): explicitly include @WRAPLIB@ only for 4145 Amd binary. Other am-utils binaries don't need -lwrap. 4146 4147 * configure.in: if libwrap is found, only define it in @WRAPLIB@, 4148 so we don't automatically link every am-utils binary with -lwrap. 4149 Run test for existence of severity variables in libwrap. 4150 41512003-07-31 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4152 4153 * conf/nfs_prot/nfs_prot_openbsd.h: define struct fattr fields uid 4154 and gid. 4155 4156 * configure.in: move check for AC_CHECK_LIB(libwrap) as far down 4157 as possible because on modern tcpwrapper systems such as openbsd, 4158 the caller must provide two symbols: deny_severity and 4159 allow_severity, which determine the logging level of rejected and 4160 requested requests, respectively. If this check happens too 4161 early, then $LIBS includes -lwrap, which causes many subsequent 4162 tests that need to run a compiled program to fail with missing 4163 symbols. 4164 4165 * m4/macros/header_templates.m4: fix typo in template for 4166 readdirplus. 4167 4168 * configure.in: check for <ufs/ufs/extattr.h> (OpenBSD 3.3) 4169 4170 * minor new port: i386-unknown-netbsdelf1.6.1. 4171 4172 * configure.in: save state before system-specific tests are run. 4173 4174 * m4/macros/check_gnu_getopt.m4: do NOT abort ./configure just 4175 because the compiled test program failed to run. 4176 41772003-08-01 Ion Badulescu <ionut@buggy.badula.org> 4178 4179 * NEWS, README.autofs: updated 4180 4181 * libamu/mount_fs.c (mount_fs): added support for the space hack 4182 4183 * doc/am-utils.texi: mention than UFS/XFS/EFS/CacheFS filesystems 4184 are not expired by default; correct and expand the section 4185 describing the program filesystem 4186 4187 * conf/autofs/autofs_solaris_v2_v3.h (AUTOFS_*_FS_FLAGS): add 4188 FS_ON_AUTOFS for supported filesystems 4189 4190 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mount_fs): call 4191 mf->mount_fs() 4192 (autofs_umount_fs): call mf->umount_fs() 4193 4194 * conf/autofs/autofs_solaris_v1.h (autofs_strdup_space_hack): add 4195 prototype for malloc() 4196 (AUTOFS_*_FS_FLAGS): lose the FS_MKMNT flags, add FS_ON_AUTOFS for 4197 supported filesystems 4198 4199 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): add support 4200 for the space hack; call mf->mount_fs() 4201 (autofs_umount_fs): add support for the space hack; call 4202 mf->umount_fs() 4203 (autofs_mount_succeeded): add support for the space hack 4204 4205 * conf/autofs/autofs_linux.h: lose the FS_MKMNT flags, add 4206 FS_ON_AUTOFS for supported filesystems 4207 4208 * conf/autofs/autofs_linux.c (AUTOFS_MAX_VERSION): define to 4209 AUTOFS_MAX_PROTO_VERSION instead of hardcoding to 4 4210 (autofs_mounted): host mounts are now supported on all autofs 4211 versions, remove the hack to turn it off on v3 4212 (autofs_mount_fs): call mf->mount_fs(), create/remove mountpoints 4213 as needed 4214 (autofs_umount_fs): call mf->umount_fs(), remove mountpoints on 4215 success 4216 (ALL): use '#if AUTOFS_MAX_VERSION >= 4' instead of 4217 '#ifdef autofs_ptype_expire_multi' 4218 4219 * amd/map.c (mount_node): autofs_mount_fs() now calls 4220 mf->mount_fs() internally 4221 (unmount_node): autofs_umount_fs() now calls mf->umount_fs() 4222 internally 4223 4224 * amd/autil.c (am_mounted): minor cleanup 4225 4226 * amd/amfs_program.c (amfs_program_ops): added FS_MKMNT to 4227 nfs_fs_flags 4228 4229 * amd/amfs_generic.c (amfs_lookup_one_mntfs): use the FS_ON_AUTOFS 4230 flag instead of hardcoding filesystem types 4231 (amfs_bgmount): better mount_type logging 4232 4233 * amd/amd.h (FS_ON_AUTOFS): new flag which tells the code that 4234 this filesystem can be mounted directly onto an autofs mountpoint 4235 42362003-07-31 Ion Badulescu <ionut@buggy.badula.org> 4237 4238 * amd/amfs_nfsl.c (amfs_nfsl_umount): fix copy&paste error (was 4239 calling amfs_link_ops.umount_fs() for NFS filesystems) 4240 (amfs_nfsl_umounted): remove rmdirs() hack, it is now handled 4241 properly elsewhere 4242 (amfs_nfsl_ffserver): remove FS_MKMNT from mf_fsflags if we're 4243 using link (not NFS) 4244 42452003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4246 4247 * README.autofs: Correct IRIX spelling. 4248 AutoFS support exists only on IRIX 6. 4249 Update IRIX 6 status. 4250 4251 Allow AutoFS V1 support to compile on IRIX 6. 4252 * conf/autofs/autofs_solaris_v1.c (autofs_mount_1_req): Add 4253 SVCXPRT * arg. 4254 Remove superfluous \n from dlog messages. 4255 (autofs_unmount_1_req): Likewise. 4256 Switch to get_exported_ap. 4257 (autofs_program_1): Invoke handlers with additional transp arg. 4258 * conf/autofs/autofs_solaris_v1.h: Use autofs_args_t to define 4259 autofs_fh_t, struct auto_args doesn't exist on IRIX 6. 4260 4261 * conf/mount/mount_irix6.c (mount_irix) [HAVE_FS_AUTOFS]: Support 4262 AutoFS mounts. 4263 [HAVE_FS_LOFS]: Likewise for lofs mounts. 4264 4265 * conf/nfs_prot/nfs_prot_irix6.h (AUTOFS_CONFTYPE): Define. 4266 Don't disable AutoFS support any more. 4267 4268 * conf/transp/transp_sockets.c [HAVE_FS_AUTOFS && AUTOFS_PROG] 4269 (register_autofs_service): Define autofs_xprt. 4270 4271 * m4/macros/check_autofs_style.m4 (AMU_CHECK_AUTOFS_STYLE): Update 4272 Solaris 8+ comment to mention AutoFS V4. 4273 (irix6*): Enable AutoFS V1 support on IRIX 6. 4274 42752003-07-30 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4276 4277 * NEWS, doc/am-utils.texi, scripts/amd.conf.5: revised explanation 4278 of autofs_use_lofs. 4279 42802003-07-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4281 4282 * amd/ops_efs.c (efs_mount): Replace on_autofs arg with 4283 MFF_ON_AUTOFS flag. 4284 (efs_umount): Likewise. 4285 42862003-07-30 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4287 4288 * conf/umount/umount_bsd44.c (umount_fs): convert to new way of 4289 unmounting which takes autofs into account. 4290 42912003-07-30 Ion Badulescu <ionut@moisil.badula.org> 4292 4293 * ALL: renamed MFF_AUTOFS to MFF_IS_AUTOFS; removed mf_real_mount 4294 hack; pass a new on_autofs argument to mount/umount function, 4295 based on the MFF_ON_AUTOFS mntfs flag 4296 4297 * NEWS, README.autofs: updated 4298 4299 * scripts/amd.conf.5: document new option autofs_use_lofs 4300 4301 * scripts/amd.conf-sample (autofs_use_lofs): document new option 4302 4303 * m4/macros/check_autofs_style.m4 (am_utils_link_files): symlink 4304 the autofs header as amu_autofs_prot.h instead of slurping it into 4305 aux_conf.h 4306 4307 * libamu/mount_fs.c (mount_fs): removed old stub, renamed 4308 mount_fs2 to mount_fs, added new argument on_autofs 4309 4310 * doc/am-utils.texi (Direct Automount Filesystem): document 4311 problems with nfs direct mounts on modern kernels, document good 4312 autofs support for direct mounts on Solaris 4313 (autofs_use_lofs Parameter): document this new option 4314 (browsable_dirs Parameter): note that mount storms are avoided 4315 when using autofs 4316 4317 * conf/umount/umount_bsd44.c (umount_fs): removed old stub, 4318 renamed umount_fs2 to umount_fs 4319 4320 * conf/umount/umount_osf.c (umount_fs): removed old stub, 4321 renamed umount_fs2 to umount_fs, added new argument on_autofs 4322 4323 * conf/umount/umount_default.c (umount_fs): ditto as above; return 4324 an error on ENOENT instead of faking success 4325 4326 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req): much 4327 simplified, now only consults the map for existance of the key and 4328 returns success if key is found 4329 (autofs_mount_2_req): request symlinks if CFM_AUTOFS_USE_LOFS is 4330 not on; 4331 (autofs_mount_2_free): implemented 4332 (autofs_unmount_2_req): use get_exported_ap() instead of 4333 referencing export_ap directly 4334 (autofs_mount_succeeded): remove code for replying to lookup 4335 requests, now only mount requests can end up here 4336 (autofs_mount_failed): ditto 4337 4338 * conf/autofs/autofs_solaris_v1.h (AUTOFS_HOST_FS_FLAGS): removed 4339 FS_AUTOFS 4340 (AUTOFS_DIRECT_FS_FLAGS): added FS_DIRECTORY 4341 4342 * conf/autofs/autofs_solaris_v2_v3.h (AUTOFS_HOST_FS_FLAGS): removed 4343 FS_AUTOFS 4344 (AUTOFS_DIRECT_FS_FLAGS): added FS_DIRECTORY 4345 (AUTOFS_LINK_FS_FLAGS): added FS_MBACKGROUND 4346 4347 * conf/autofs/autofs_linux.c (autofs_bind_umount): new function, 4348 factored out of autofs_umount_fs() 4349 (autofs_mount_fs): renamed from autofs_link_mount() and expanded 4350 to deal with filesystems mounted indirectly (via lofs/bind 4351 mounts) on autofs and to observe the new CFM_AUTOFS_USE_LOFS flag 4352 (autofs_umount_fs): ditto, from autofs_link_umount() 4353 4354 * conf/autofs/autofs_solaris_v1.c (autofs_mount_fs): ditto 4355 * (autofs_umount_fs): ditto 4356 4357 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mount_fs): ditto 4358 * (autofs_umount_fs): ditto 4359 4360 * amd/opts.c: made fs_static static 4361 4362 * amd/ops_nfs.c: made nfs_init, nfs_match, nfs_mount, nfs_umount 4363 and nfs_umounted static 4364 (mount_nfs_fh): removed unnecessary arguments 4365 4366 * amd/ops_cachefs.c (cachefs_ops): use amfs_generic_find_srvr for 4367 the ffserver method, because using NULL causes problems 4368 4369 * amd/ops_cdfs.c (cdfs_ops): ditto 4370 4371 * amd/ops_efs.c (efs_ops): ditto 4372 4373 * amd/ops_lofs.c (lofs_ops): ditto 4374 4375 * amd/ops_pcfs.c (pcfs_ops): ditto 4376 4377 * amd/ops_ufs.c (ufs_ops): ditto 4378 4379 * amd/ops_xfs.c (xfs_ops): ditto 4380 4381 * amd/nfs_subr.c (fh_to_mp3, fh_to_mp, mp_to_fh): moved here from 4382 map.c 4383 4384 * amd/nfs_start.c: use get_exported_ap() instead of referencing 4385 exported_ap directly 4386 4387 * amd/mntfs.c (locate_mntfs): new function, factored out of 4388 find_mntfs 4389 (locate_mntfs): special-case FS_DIRECT filesystems: for direct 4390 mounts we will have two filesystems mounted on the same m/p 4391 (realloc_mntfs): removed the old EZK hack for failovers 4392 4393 * amd/map.c (get_exported_ap): new function that returns an 4394 exported_ap member by its index 4395 (root_node,exported_ap,exported_ap_size,first_free_map,last_used_map): 4396 made static 4397 (fh_to_mp3, fh_to_mp, mp_to_fh): moved to nfs_subr.c 4398 (get_root_ap): removed unused second argument 4399 (unmount_mp): moved the mk_fattr(NFDIR) here from umount_exported 4400 to catch more cases 4401 (mount_node): call autofs_mount_fs after ops->mount_fs for autofs 4402 nodes 4403 (unmount_node): call autofs_umount_fs before ops->umount_fs for 4404 autofs nodes 4405 4406 * amd/conf.c: new global option "autofs_use_lofs", takes yes/no 4407 values 4408 4409 * amd/autil.c (amfs_mount): take an extra argument (mf) 4410 (amfs_mount): call autofs_compute_mount_flags() for mounts 4411 directly on autofs m/p 4412 (am_unmounted): document and avoid the race between am_umounted() 4413 at shutdown time and amfs_cont() 4414 4415 * amd/amfs_union.c (amfs_union_mounted): use get_exported_ap() 4416 instead of referencing internal map variables directly 4417 4418 * amd/amq_subr.c (amqproc_export_1_svc): ditto 4419 4420 * amd/amfs_toplvl.c (amfs_toplvl_ops): removed FS_AUTOFS from 4421 nfs_fs_flags 4422 (amfs_toplvl_mount): pass extra argument (mf) to amfs_mount() 4423 (amfs_toplvl_umount): refuse to attempt the unmount if the 4424 mountpoint is not a directory 4425 4426 * amd/amfs_nfsx.c (amfs_nfsx_init): propagate the MFF_ON_AUTOFS 4427 flag into the nfs f/s at the bottom of the stack 4428 4429 * amd/amfs_nfsl.c: call nfs and link member functions through 4430 their respective am_ops structures, not directly 4431 4432 * amd/amfs_linkx.c (amfs_linkx_umount): new static stub 4433 4434 * amd/amfs_link.c: made amfs_link_mount() and amfs_link_umount() 4435 static functions 4436 (amfs_link_mount): removed call to autofs_link_mount() 4437 (amfs_link_umount): removed call to autofs_link_umount() 4438 4439 * amd/amfs_host.c (amfs_host_ops): removed FS_AUTOFS from 4440 nfs_fs_flags 4441 (do_mount): removed superfluous function arguments 4442 4443 * amd/amfs_direct.c (amfs_direct_ops): removed FS_AUTOFS from 4444 nfs_fs_flags 4445 4446 * amd/amfs_auto.c (amfs_auto_ops): removed FS_AUTOFS from 4447 nfs_fs_flags 4448 (amfs_auto_mount): pass extra argument (mf) to amfs_mount 4449 4450 * amd/amd.h (CFM_AUTOFS_USE_LOFS): new flag, tells amd whether to 4451 use lofs-mounts or symlinks when mounting on autofs 4452 (CFM_DEFAULT_FLAGS): added CFM_AUTOFS_USE_LOFS 4453 (VLOOK_LOOKUP): new flag, will merely check if a key exists 4454 (MFF_IS_AUTOFS): renamed from MFF_AUTOFS 4455 (MFF_ON_AUTOFS): new flag, tells amd if a f/s is mounted directly 4456 on an autofs m/p, or indirectly via a lofs mount/symlink 4457 (fh_to_mp2): macro expanded throughout the code and removed 4458 (mntfs): removed mf_real_mount hack 4459 (autofs_mount_fs): renamed from autofs_link_mount 4460 (autofs_umount_fs): renamed from autofs_link_umount 4461 (mount_lofs): exposed 4462 various other cleanups, functions/variables made static and removed 4463 4464 * aux_conf.h.in: removed @am_utils_autofs_style@, it is now 4465 included directly as amu_autofs_prot.h 4466 44672003-07-24 Erez Zadok <ezk@whitestar.dyn.optonline.net> 4468 4469 * doc/am-utils.texi, scripts/amd.conf.5: document that 4470 use_tcpwrappers is "yes" by default. 4471 4472 * amd/amd.c (init_global_options): set default global options. 4473 4474 * amd/amd.h (CFM_DEFAULT_FLAGS): define default options which 4475 are always on (plock and use_tcpwrappers). 4476 4477 * scripts/amd.conf-sample: reorganize values per option so default 4478 one is listed first. 4479 44802003-07-23 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4481 4482 * tasks: trim old stuff. Discuss new parser. 4483 4484 * amd/conf.c (set_conf_kv): initialize the very first map in conf 4485 file from global defaults. Bug fix which was introduced after 4486 conf.c code restructuring. 4487 44882003-07-18 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4489 4490 * m4/macros/header_templates.m4: template for 4491 HAVE_EXTERN_HOSTS_CTL. 4492 4493 * include/am_defs.h: define extern for hosts_ctl() if needed. 4494 4495 * configure.in (AMU_CHECK_EXTERNS): check for extern definition 4496 for libwrap's hosts_ctl() (FreeBSD 5.0 doesn't have it). 4497 4498 * m4/macros/check_extern.m4: include tcpd.h if it and libwrap exist. 4499 45002003-07-18 Erez Zadok <ezk@cs.sunysb.edu> 4501 4502 * hlfsd/hlfsd.h: redundant extern for mboxfile removed. 4503 4504 * amd/amq_svc.c (amq_program_1): only check for tcpwrappers if 4505 amd.conf global option use_tcpwrappers=yes. 4506 4507 * scripts/amd.conf.5, scripts/amd.conf-sample (use_tcpwrappers), 4508 doc/am-utils.texi (use_tcpwrappers Parameter): document new 4509 amd.conf global option. 4510 4511 * amd/conf.c (gopt_use_tcpwrappers): define a new amd.conf global 4512 option called use_tcpwrappers ("no" by default). 4513 4514 * amd/amq_svc.c (amqsvc_is_client_allowed): include tcpd/libwrap 4515 code only if both libwrap and tcpd.h exist. 4516 (amq_program_1): log warning when an Amq service client is denied, 4517 and a debug message when a client is allowed. 4518 4519 * amd/amd.h (CFM_USE_TCPWRAPPERS): define [global] amd.conf flag. 4520 (AMD_SERVICE_NAME): define AMD_SERVICE_NAME for tcpd/libwrap. 4521 4522 * include/am_defs.h: include tcpd.h if available and libwrap 4523 available. 4524 4525 * configure.in: check for tcpd.h. 4526 45272003-07-18 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4528 4529 * scripts/expn.1, amd/amd.8 amq/amq.8, fixmount/fixmount.8, 4530 hlfsd/hlfsd.8, scripts/expn.1: remove ".PD 0" nroff command 4531 because it removes useful spaces in between paragraphs. Based on 4532 smaller patch from Philippe Troin <phil@fifi.org>. 4533 45342003-07-17 Philippe Troin <phil@fifi.org> 4535 4536 * amq/amq.8: Document the libwrap/amd behavior. 4537 4538 * amd/amq_svc.c (libwrap_check_client): New function to validate 4539 an amq connection with libwrap. 4540 (amq_program_1): Call libwrap_check_client() and close the 4541 connection if libwrap does not allow it. 4542 4543 * configure.in: Check for the tcp wrappers library. 4544 45452003-07-17 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4546 4547 * amd/amq_subr.c (amqproc_mnttree_1_svc, amqproc_stats_1_svc, 4548 amqproc_getmntfs_1_svc, xdr_amq_mount_tree), hlfsd/hlfsd.c 4549 (hlfsd_init): cast pointers to void* before casting them to 4550 another type, to avoid gcc-3.3 -Wall warnings. 4551 4552 * fsinfo/*.[hc]: rename fsinfo function log() to fsi_log(), to 4553 avoid conflict with builtin function in gcc-3.3. 4554 45552003-07-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4556 4557 * scripts/amd.conf-sample: Remove obsolete comment. 4558 45592003-07-16 Erez Zadok <ezk@cs.sunysb.edu> 4560 4561 * amd/info_file.c (read_line): check for errors from fgets(). 4562 Although rare, they can occur upon disk or network failures. 4563 Patch from Nick Williams <Nick.Williams@morganstanley.com>. 4564 45652003-07-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 4566 4567 * BUGS (Solaris 8): Update patch revisions, mention old autofs 4568 patches, fix filenames and rpcgen command. 4569 45702003-07-15 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4571 4572 * doc/am-utils.texi (map_defaults Parameter): document new 4573 map_defaults option. 4574 4575 * scripts/amd.conf.5: document new map_defaults option. 4576 4577 * scripts/amd.conf-sample (map_type): show examples of new 4578 map_defaults option. 4579 4580 * amd/mapc.c (mapc_create): initialize mnt_map->cfm field to NULL. 4581 4582 * amd/get_args.c (get_args): call process_all_regular_maps(). 4583 4584 * amd/conf.c: keep head and tail of cfm list. 4585 (init_cf_map): reworked reset_cf_map. This one doesn't reset a 4586 globaly reused cfm, but rather just inherits [global] options. 4587 (set_conf_kv): just store global/map options without actually 4588 creating any mnt_map's. Essentially, we now parse the whole 4589 amd.conf file, and then try to process the maps one at a time. 4590 (process_one_regular_map): new function to process one map, just 4591 renamed from process_regular_map. 4592 (process_all_regular_maps): new exported function to process all 4593 maps. No need for hacky process_last_map(). 4594 (find_cf_map): new exported function to return a cf_map_t given a 4595 map's mount point (e.g., /home or /net). 4596 4597 * amd/amfs_generic.c (amfs_parse_defaults): find if amd.conf 4598 specificed a map_defaults for a given map. If so, use that 4599 instead of the /defaults that came from the map itself. Also 4600 restructure code a bit so it's not one huge long "if" statement. 4601 4602 HACK ALERT: there's no easy way to find out what the map mount 4603 point is at this point, so I am forced to initialize the 4604 mnt_map->cfm field here for the first time, upon the very first 4605 search for a /defaults entry in this map. This initialization is 4606 much better done in mapc_create(), but it's impossible to do that 4607 there with the current code structure. 4608 4609 * amd/amd.h: struct cf_map becomes linked list. struct mnt_map 4610 includes pointer to cf_map_t, amd.conf defaults and options for a 4611 given map. extern cleanups. 4612 46132003-07-15 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4614 4615 * amd/info_hesiod.c (hesiod_search): It's not possible to have a 4616 key such as ".access" in a hesiod map as that would imply a null 4617 node in the DNS tree. So a lookup for such a key must clearly 4618 fail. With the current info_hesiod.c it does (after calling 4619 hes{,iod}_resolve) but returns an error that confuses some 4620 programs - eg. apache. This patch shortcuts the process and just 4621 returns ENOENT for any key starting with ".". Patch submitted by 4622 by Mark Davies <mark@mcs.vuw.ac.nz>. 4623 4624 * include/am_utils.h (CALLOC): redefine macro to use xzalloc, not 4625 fsinfo's own xcalloc. 4626 4627 * fsinfo/fsi_util.c (xcalloc): remove redundant function. 4628 46292003-07-14 Erez Zadok <ezk@cs.sunysb.edu> 4630 4631 * include/am_compat.h (MNTTAB_OPT_XLATECOOKIE): The NetBSD 4632 xlatecookie NFS option doesn't work as MNTTAB_OPT_XLATECOOKIE is 4633 never defined. Define it as needed. Patch from Mark Davies 4634 <mark@mcs.vuw.ac.nz>. 4635 46362003-07-14 Ion Badulescu <lionut@gonzales.badula.org> 4637 4638 * BUGS (Note): document the Solaris 8 bug (the upgrade to autofs 4639 v4 without updating all the header files) 4640 46412003-07-13 Ion Badulescu <lionut@gonzales.badula.org> 4642 4643 * NEWS, tasks: updated 4644 4645 * amd/amfs_generic.c (free_continuation): free _all_ mntfs's in 4646 the am_mfarray, unconditionally 4647 (amfs_bgmount): call free_mntfs when we're done with a mntfs, call 4648 dup_mntfs when starting processing of a new one; make sure we 4649 always go through 'goto failed' for a failed mntfs; use the error 4650 code returned by autofs_get_fh() 4651 4652 * conf/autofs/autofs_linux.c (autofs_get_fh): return proper error 4653 codes in case of problems 4654 46552003-07-13 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4656 4657 * BUGS: Document buggy behavior of Solaris /usr/ccs/bin/lex. In 4658 short, use flex. 4659 46602003-07-13 Erez Zadok <ezk@a-hpux11.fsl.cs.sunysb.edu> 4661 4662 * fsinfo/fsi_lex.l, amd/conf_tok.l: allocate more output slots so 4663 lex scanners don't run out of mem. 4664 46652003-07-13 Ion Badulescu <lionut@gonzales.badula.org> 4666 4667 * amd/amfs_generic.c (amfs_lookup_mntfs): ditto as below for the 4668 special provision 4669 4670 * amd/mntfs.c (find_mntfs): compare the filesystem type 4671 (i.e. mf_ops) in addition to mf_info; the special provision 4672 mentioned below is really for any filesystem already mounted on 4673 our mount point, not just for inherited filesystems 4674 46752003-07-13 Erez Zadok <ezk@whitestar.dyn.optonline.net> 4676 4677 * doc/Makefile.am (install-html): build per-chapter HTML manual, 4678 as well as manual in one big HTML file. 4679 4680 * doc/am-utils.texi: Minor corrections. Ack Ion's autofs work. 4681 Ack maintainers. New section on How to get additionl info, 4682 including the Amd book. Correct stale URLs and Emails. 4683 4684 * amd/amd.8, amq/amq.8, amq/pawd.1, fixmount/fixmount.8, 4685 fsinfo/fsinfo.8, hlfsd/hlfsd.8, mk-amd-map/mk-amd-map.8, 4686 scripts/amd.conf.5, scripts/automount2amd.8, 4687 wire-test/wire-test.8: include references to info pages, proper 4688 authors, am-utils Web page, and amd book. 4689 46902003-07-13 Ion Badulescu <lionut@gonzales.badula.org> 4691 4692 * amd/mntfs.c (find_mntfs): re-add the check for mf_info, but with 4693 a special provision for inherited filesystems. This unbreaks the 4694 handling of parallel mounts 4695 4696 * amd/amfs_generic.c (amfs_lookup_mntfs): for restarted 4697 filesystems, there can be no alternative mntfs to try to mount 4698 46992003-07-13 Erez Zadok <ezk@cs.sunysb.edu> 4700 4701 * amd/amd.8: reference am-utils info page in amd man page, as per 4702 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>. 4703 4704 * fsinfo/fsinfo.h, fsinfo/fsinfo.c (fsi_get_args): don't use 4705 yywrap() if it doesn't exist. 4706 4707 * amd/conf_parse.y, amd/conf_tok.l, fsinfo/fsi_gram.y, 4708 fsinfo/fsi_lex.l: fixes to support old flex 2.5.4, as well as the 4709 newer flex 2.5.31 (beta development). These include resolving 4710 conflicts with yylineno, unput() vs. nounput(), etc. 4711 47122003-07-13 Ion Badulescu <lionut@gonzales.badula.org> 4713 4714 * amd/amfs_generic.c (amfs_cont): check for (am_error > 0) before 4715 calling assign_error_mntfs() 4716 (amfs_generic_mount_child): ditto 4717 4718 * amd/autil.c (assign_error_mntfs): move the check for 4719 (am_error > 0) up into the caller, it's less confusing that way 4720 4721 * tasks: some updates 4722 4723 * conf/transp/transp_tli.c (check_pmap_up): new function which 4724 detects if the remote portmapper is functional 4725 (amu_clnt_create_best_version): removed 4726 (get_nfs_version): use a much simplified version of the old 4727 amu_clnt_create_best_version(), based on clnt_create_vers() and 4728 its _timed() counterpart 4729 4730 * conf/transp/transp_sockets.c (check_pmap_up): new function which 4731 detects if the remote portmapper is functional 4732 (pmap_ping): deleted 4733 (get_nfs_version): removed calls to pmap_ping, already done by 4734 caller 4735 4736 * amd/srvr_nfs.c: call check_pmap_up() before continuing with 4737 get_nfs_version() 4738 4739 * amd/amfs_generic.c: updated a couple of log messages 4740 4741 * configure.in: detect clnt_create_vers and clnt_create_vers_timed; 4742 changed LIBTOOL versioning to 3:0:0 4743 47442003-07-12 Ion Badulescu <lionut@gonzales.badula.org> 4745 4746 * conf/autofs/autofs_linux.h (AUTOFS_HOST_FS_FLAGS): removed 4747 FS_AUTOFS because the host mount cannot be a top level mount 4748 (AUTOFS_DIRECT_FS_FLAGS): removed FS_AUTOFS because Linux autofs 4749 doesn't support direct mounts 4750 47512003-07-12 Erez Zadok <ezk@whitestar.dyn.optonline.net> 4752 4753 * amd/conf_parse.y, amd/conf_tok.l: pretty comments on # cpp 4754 macros. 4755 47562003-07-10 Ion Badulescu <ionut@buggy.badula.org> 4757 4758 * include/am_utils.h (dlog): improved version for gcc, using 4759 vararg macros 4760 4761 * amd/rpc_fwd.c (fwd_packet): unused variable when compiling 4762 without debugging 4763 47642003-07-10 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4765 4766 * include/am_utils.h (dlog): change the #define of non-debugging 4767 dlog to "nothing" so that all that'll be left behind is a list of 4768 args in parenthesis (arg,arg,...). GCC and other native C 4769 compilers seem OK with it, even if it doesn't optimize away the 4770 whole debugging line. 4771 4772 * ltmain.sh: was from libtool 1.4.2. updated to libtool 1.4.3, 4773 the latest on RH9 systems (but is not the latest libtool 4774 available). Stay with stable version in preparation for 6.1 4775 release. 4776 4777 * config.{guess,sub}, doc/texinfo.tex: update to latest off of 4778 ftp.gnu.org. 4779 47802003-07-09 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4781 4782 * amd/amfs_inherit.c (amfs_inherit_inherit): don't use // C++ 4783 style comments: breaks non-C++ compilers (like AIX xlC 6) 4784 47852003-07-02 Ion Badulescu <ionut@buggy.badula.org> 4786 4787 * doc/am-utils.texi (opts Option): document ignore_portmapper option 4788 4789 * conf/transp/transp_sockets.c (get_nfs_version): better 4790 protocol/version cycling while probing remote server; better log 4791 messages 4792 4793 * amd/srvr_nfs.c (start_ping): improved log message 4794 (find_nfs_srvr): always use requested nfs_version/nfs_proto; make 4795 sure we have a valid NFS port; start the server as "valid, down" if 4796 the remote portmapper tells us the NFS service is not running; 4797 implement the "ignore_portmapper" pseudo-mount option 4798 4799 * amd/rpc_fwd.c (fwd_packet): better debug messages 4800 4801 * amd/ops_nfs.c (got_nfs_fh): log a messages if a root fh is 4802 denied; call wakeup even if mountd call fails 4803 4804 * amd/amq_subr.c (xdr_amq_mount_info_qelem): use FSRV_ISUP/ISDOWN 4805 instead of checking the flags directly 4806 * amd/srvr_amfs_auto.c (free_srvr): ditto 4807 4808 * amd/amfs_generic.c (amfs_bgmount): refined some error/debug 4809 messages 4810 4811 * amd/amd.h (FSRV_ERROR): new macro 4812 (FSRV_ISDOWN, FSRV_ISUP): a server that doesn't exist (i.e. it's a 4813 local filesystem) is always up 4814 48152003-06-30 Erez Zadok <ezk@cs.sunysb.edu> 4816 4817 * amd/autil.c (am_mounted): set AMF_NOTIMEOUT if either unmount or 4818 umount options are present. 4819 4820 * doc/am-utils.texi (Program Filesystem): document alias options 4821 to unmount:=, umount:=. 4822 4823 * amd/opts.c (expansions): initialize opt_umount. 4824 (to_free): initialize opt_umount. 4825 4826 * amd/amfs_program.c (amfs_program_match): ensure that only one of 4827 umount:= or unmount:= options are specified, but that at least one 4828 of them is listed. 4829 4830 * amd/amd.h: support unmount:=XXX as well as umount:=XXX (too 4831 annoying in type:program, when one forgets the 'n' in "unmount"). 4832 They are two separate fields, so we can catch mistakes when 4833 someone tries to define both options. 4834 4835 * doc/am-utils.texi (Program Filesystem): explain that both mount 4836 and unmount options must be specified. Correct example to show 4837 both. 4838 48392003-06-25 Erez Zadok <ezk@cs.sunysb.edu> 4840 4841 * XXX: beginning of new amd.conf option map_defaults: will parse 4842 the option and set remember it in the right places. Need to 4843 document this and actually hook it up with the rest of the code. 4844 Any volunteers? :-) 4845 4846 * scripts/amd.conf-sample (map_defaults): example of map_defaults 4847 amd.conf option. 4848 4849 * amd/conf.c (reset_cf_map): initialize global and per-mount 4850 map_defaults. 4851 (gopt_map_defaults): parse global map_defaults. 4852 (process_regular_option,ropt_map_defaults): parse per-map 4853 map_defaults amd.conf option. 4854 4855 * amd/amd.h: a place to store global and per-mount map_defaults. 4856 4857 * BUGS: more notes about AIX 5.2 problems and how to overcome 4858 them. 4859 48602003-06-10 Erez Zadok <ezk@cs.sunysb.edu> 4861 4862 * doc/Makefile.am: force version.texi to be rebuilt regardless of 4863 maintainer mode. Silly Automake will not build version.texi if 4864 maintainer mode is off (this is hardcoded into the automake perl 4865 script!). According to the Automake maintainers, users should 4866 always build in CVS trees with maintainer-mode on; but what if I 4867 don't want to?! I don't want to distribute Makefiles with 4868 maintained rules in them to users. The Automake maintainers also 4869 say that "make dist" will rebuild version.texi no matter what. I 4870 find that not to be the case. It failed to run a "make" before 4871 "make dist" because version.texi doesn't exist! Chicken and Egg 4872 situation. So, until Automake deals with version.texi in a more 4873 flexible and friendly manner, I adapted a rule to build 4874 version.texi and inserted it in this Makefile.am. 4875 48762003-06-09 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4877 4878 * mk-amd-map/mk-amd-map.c (main): open temp db file using O_EXCL, 4879 next best thing to using mkstemp(). Patch from Hendrik Scholz 4880 <hscholz@raisdorf.net>. 4881 48822003-05-08 Ion Badulescu <ion@guppy.limebrokerage.com> 4883 4884 * libamu/mount_fs.c (compute_automounter_mount_flags): use 4885 MNT2_GEN_OPT_AUTOMNTFS if available; minor cleanup 4886 4887 * m4/macros/header_templates.m4: added template for 4888 MNT2_GEN_OPT_AUTOMOUNTED 4889 48902003-05-01 Ion Badulescu <ionut@nicu.badula.org> 4891 4892 * amd/ops_xfs.c (mount_xfs): compile fix (s/genflags/flags/) 4893 48942003-04-23 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4895 4896 * conf/transp/transp_sockets.c (create_amq_service): minor cpp 4897 directive indentation and commenting. 4898 48992003-04-22 Ion Badulescu <ionut@moisil.badula.org> 4900 4901 * conf/transp/transp_sockets.c (create_amq_service): Ugly *BSD fix 4902 for an RPC library DoS issue (original patch from Martin Blapp, 4903 massaged into something more digestable by me) 4904 49052003-04-14 Ion Badulescu <ionut@moisil.badula.org> 4906 4907 * conf/autofs/autofs_solaris_v2_v3.c: removed autofs_free_data(), 4908 left over from the recent cleanup 4909 49102003-04-13 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4911 4912 * doc/Makefile.am (DVIPS): use proper options for dvips. 4913 4914 * doc/am-utils.texi (opts Option): document new 'unmount' option, 4915 and better explain the 'nounmount' option. Also some misc options 4916 for better generation of html manual. 4917 4918 * doc/Makefile.am (install-html): support newer texi2html 4.0 4919 options, as older options were renamed or changed behavior. 4920 4921 * amd/autil.c (am_mounted): support new 'unmount' option, to allow 4922 all file system mounts to timeout and thus expire. This option is 4923 useful for removable local media such as CD-ROMs, USB drives, 4924 etc. so they can expire when not in use, and get unmounted (such 4925 drives can get work out when they keep spinning). Patch from 4926 Christos Zoulas <christos@zoulas.com> (originally from Koji 4927 Imada). 4928 49292003-04-10 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4930 4931 * configure.in: use AM_MAINTAINER_MODE, so maintainer-only rules 4932 do not get added to Makefiles by default (they are confusing to 4933 users who don't have autotools installed). 4934 49352003-04-09 Ion Badulescu <ion@guppy.limebrokerage.com> 4936 4937 * amd/mntfs.c (find_mntfs): revert the "change of philosophy" (see 4938 the 2001-05-23 entry) back to the 6.0 code 4939 49402003-04-04 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4941 4942 * libamu/xutil.c (switch_to_logfile): don't try to print logfile 4943 if it is null (strlen core dump on solaris). Bug report from John 4944 P. Rouillard <rouilj@ieee.org>. 4945 49462003-03-31 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4947 4948 * fsinfo/fsinfo.8: typo co-ordinate -> coordinate. Typo report 4949 from Perry E. Metzger" <perry@piermont.com>. 4950 49512003-03-25 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 4952 4953 * include/am_defs.h: Don't include malloc.h if stdlib.h exists, 4954 because modern systems (e.g., BSD) complain if you use malloc.h 4955 instead of stdlib.h. Let's hope there are no systems out 4956 there that need both. 4957 49582003-03-20 Erez Zadok <ezk@suse73.fsl.cs.sunysb.edu> 4959 4960 * minor new port: sparc64-unknown-linux-suse7.3. 4961 49622003-03-20 Erez Zadok <ezk@a-freebsd5.fsl.cs.sunysb.edu> 4963 4964 * minor new port: i386-unknown-freebsd5.0. 4965 4966 * configure.in: detect nfsclient/nfsargs.h. 4967 4968 * conf/nfs_prot/nfs_prot_freebsd3.h: include 4969 <nfsclient/nfsargs.h>, needed in FreeBSD 5.0. 4970 49712003-03-15 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 4972 4973 * amd/amd.8, amd/amd.8, fixmount/fixmount.8, hlfsd/hlfsd.8, 4974 scripts/amd.conf.5, scripts/expn.1: minor spell checking and 4975 extraneous space elimination. 4976 49772003-03-07 Ion Badulescu <ionut@buggy.badula.org> 4978 4979 * conf/autofs/autofs_linux.c (autofs_get_fh): don't leak file 4980 descriptors if limit exceeded 4981 (autofs_mounted): call autofs_get_mp(); init am_autofs_ttl 4982 (autofs_release_fh): release pending_mounts and pending_umounts 4983 queues 4984 (autofs_timeout_mp): update am_autofs_ttl instead of am_ttl 4985 4986 * amd/mntfs.c (init_mntfs): delete initialization of removed 4987 mf_autofs_fh 4988 (uninit_mntfs): delete call to autofs_release_fh() 4989 4990 * amd/map.c (init_map): init autofs_fh to 0, delete initialization 4991 of removed autofs_data 4992 (free_map): release autofs_fh after unmounting map; delete call to 4993 autofs_free_data() 4994 (umount_exported): call autofs_release_mp() prior to unmounting 4995 autofs f/s 4996 (unmount_mp): ditto 4997 (free_map_if_success): call autofs_get_mp() if unmounting fails 4998 (timeout_mp): use the dedicated am_autofs_ttl timeout for f/s-wide 4999 timeouts instead of the per-mountpoint am_ttl 5000 5001 * amd/autil.c (am_unmounted): release autofs_fh after unmounting 5002 autofs f/s 5003 5004 * amd/amfs_generic.c (amfs_cont): release autofs_fh if mounting 5005 autofs f/s fails; 5006 (amfs_bgmount): ditto 5007 5008 * amd/amd.h: moved autofs_fh from mntfs to am_node, since it's 5009 more related to the mount point than to the f/s mounted; 5010 added am_autofs_ttl to am_node, for running expirations on entire 5011 filesystems 5012 5013 * conf/autofs/autofs_*: autofs_get_fh() returns int instead of 5014 autofs_fh_t *; autofs_release_fh() now takes an am_node * parameter 5015 instead of autofs_fh_t *, in an effort to not deal with 5016 autofs-specific data structures outside autofs code; 5017 new methods autofs_get_mp() and autofs_release_mp(), which 5018 acquire/release autofs resources to allow clean unmount attempts; 5019 nuke autofs_data_t, never used 5020 5021 * amd/amd.h: prototypes for new and changed autofs functions 5022 50232003-03-07 Ion Badulescu <ion@guppy.limebrokerage.com> 5024 5025 * amd/nfs_subr.c (do_readlink): eliminate third argument, never used 5026 (nfsproc_getattr_2_svc): reorganize the code a bit 5027 5028 * amd/map.c (mk_fattr): take a nfsfattr * argument instead of an 5029 am_node * argument 5030 5031 * amd/amd.h: changed prototype for mk_fattr() 5032 5033 * amd/autil.c (am_unmounted): when remounting, use the parent 5034 node's lookup_child() and mount_child() operations, not the 5035 generic ones 5036 5037 * amd/amfs_generic.c (amfs_cont): minor code optimization 5038 50392003-03-06 Ion Badulescu <ion@guppy.limebrokerage.com> 5040 5041 * amd/amfs_auto.c: lots of renames and code moving: 5042 amfs_auto_match() -> amfs_generic_match(), moved to generic; 5043 amfs_auto_mkcacheref() -> amfs_mkcacheref(), moved to autil.c; 5044 amfs_auto_mounted() -> amfs_generic_mounted(), moved to generic; 5045 amfs_auto_umount() -> amfs_generic_umount(), moved to generic; 5046 free_continuation(): moved to generic, made static; 5047 assign_error_mntfs(): moved to autil.c; 5048 amfs_auto_cont() -> amfs_cont(), moved to generic, made static; 5049 amfs_auto_retry() -> amfs_retry(), moved to generic, made static; 5050 try_mount() + mount_node() -> mount_node(), moved to map.c 5051 amfs_auto_bgmount() -> amfs_bgmount(), moved to generic; 5052 amfs_parse_defaults(): moved to generic; 5053 amfs_auto_lookup_node() -> amfs_lookup_node(), moved to generic; 5054 amfs_auto_lookup_one_mntfs() -> amfs_lookup_one_mntfs(), in generic; 5055 amfs_auto_lookup_mntfs() -> amfs_lookup_mntfs(), moved to generic; 5056 amfs_auto_mount_child() -> amfs_generic_mount_child(), in generic; 5057 amfs_auto_lookup_child() -> amfs_generic_lookup_child(), in generic; 5058 next_nonerror_node(): moved to autil.c; 5059 amfs_auto_readdir() -> amfs_generic_readdir(), moved to readdir; 5060 amfs_auto_readdir_browsable() -> amfs_readdir_browsable(), in readdir; 5061 5062 * amd/amfs_toplvl.c: mount_amfs_toplvl() renamed to amfs_mount() 5063 and moved to autil.c 5064 5065 * amd/readdir.c, amd/amfs_generic.c: new files with stuff ripped 5066 out of amd/amfs_auto.c 5067 5068 * amd/amd.h: struct continuation moved to generic.c; prototypes 5069 for the renamed functions; NumChild renamed to NumChildren 5070 5071 * amd/map.c: collaped unmount_node_wrap() and unmount_node() into 5072 the latter 5073 5074 * amd/mapc.c: key_already_in_chain(): moved to readdir.c; 5075 make_entry_chain(): moved to readdir.c; 5076 5077 * amd/srvr_amfs_auto.c: find_amfs_auto_srvr() renamed to 5078 amfs_generic_find_srvr() 5079 5080 * amd/amfs_*.c: adjustments for the renames above 5081 5082 * amd/ops_*.c: low-level filesystems don't need a find_server() 5083 method 5084 5085 * amd/Makefile.am: added amfs_generic.c and readdir.c 5086 5087 * doc/am-utils.texi: minor clarification for auto maps 5088 50892003-03-06 Ion Badulescu <ion@guppy.limebrokerage.com> 5090 5091 * amd/amd.h: moved lots and lots of amd-only stuff here, from 5092 include/am_utils.h; changed task_fun, cb_fun and fwd_fun typedefs 5093 to be function typedefs, not pointer to function typedefs 5094 5095 * include/am_utils.h: see above 5096 5097 * amd/ops_nfs.c, amd/rpc_fwd.c, amd/sched.c: adjustments for 5098 function typedef changes 5099 51002003-03-05 Erez Zadok <ezk@cs.sunysb.edu> 5101 5102 * BUGS: record IBM's patch number for the AIX 5.2 NFS over IPv6 5103 bug. 5104 51052003-02-02 Erez Zadok <ezk@siamese.fsl.cs.sunysb.edu> 5106 5107 * NEWS: minor new port: ia64-unknown-linux-rh2.1AS 5108 51092003-01-31 Ion Badulescu <ion@console.limebrokerage.com> 5110 5111 * m4/macros/os_cflags.m4: rhapsody and darwin are the same 5112 5113 * amd/autil.c (mount_node): vastly simplified, just a wrapper now 5114 5115 * amd/amfs_inherit.c (amfs_inherit_mount): remove the am_mounted() 5116 hack, we now do it properly in the generic code 5117 5118 * amd/amfs_auto.c (amfs_auto_bgmount): get the autofs_fh _before_ 5119 forking the child; set and reset MFF_MOUNTING here, not in 5120 mount_node(), because the latter might be running in child 5121 context; call am_mounted() after a successful foreground mount 5122 51232003-01-29 Ion Badulescu <ionut@moisil.badula.org> 5124 5125 * configure.in: new flag --with[out]-ndbm; don't pull in libldap 5126 if building --without-ldap; look for the gdbm/ndbm.h header; make 5127 explicit the dependency between the ndbm headers and libraries; 5128 define NEW_DBM_H as the ndbm header that should be used 5129 5130 * include/am_defs.h: simply include NEW_DBM_H for ndbm stuff, 5131 instead of trying to second-guess configure 5132 5133 * m4/macros/header_templates.m4: new template for NEW_DBM_H 5134 5135 * m4/macros/check_map_funcs.m4: 5136 (ac_upcase_map_name): use the third argument correctly 5137 5138 * ltmain.sh: working version from libtool-1.4.2-7 5139 5140 * buildall: print the entire configure command, including extra 5141 arguments; pass each of the extra arguments separately, not 5142 commingled into one 5143 51442003-01-28 Ion Badulescu <ion@guppy.limebrokerage.com> 5145 5146 * include/am_utils.h (DEBUG_MNTTAB): define outside of #ifdef 5147 DEBUG; it is not used without DEBUG, but it is referenced at 5148 compile time. Bug report from John Kilburg <john@physics.unlv.edu>. 5149 (D_ALL): don't include D_XDRTRACE, too verbose and normally 5150 unnecessary 5151 51522003-01-28 Erez Zadok <ezk@cs.sunysb.edu> 5153 5154 * ltmain.sh, config.guess, config.sub, doc/texinfo.tex: updates 5155 from latest official GNU versions. 5156 51572003-01-25 Erez Zadok <ezk@cs.sunysb.edu> 5158 5159 * BUGS (Note): document AIX-5.1 NFS-client side bug (hangs in 5160 vmount). 5161 51622003-01-25 Ion Badulescu <ionut@moisil.badula.org> 5163 5164 * Released beta version 6.1b2 5165 51662003-01-24 Ion Badulescu <ionut@moisil.badula.org> 5167 5168 * amd/autil.c (am_unmounted): reset MFF_MKMNT from mf_flags when 5169 calling rmdirs() on mountpoint 5170 5171 * amd/amfs_auto.c (amfs_auto_bgmount): ditto 5172 5173 * amd/amfs_nfsl.c (amfs_nfsl_umounted): ditto 5174 5175 * doc/am-utils.texi (opts Option): "sftlookup" -> "softlookup" 5176 5177 * NEWS: "sftlookup" -> "softlookup" 5178 5179 * amd/ops_nfs.c (nfs_mount): "sftlookup" -> "softlookup", also 5180 check for "nosoftlookup" in combination with "soft" 5181 51822003-01-23 Ion Badulescu <ion@guppy.limebrokerage.com> 5183 5184 * m4/macros/check_nfs_fh_dref.m4: darwin/rhapsody is another 5185 freebsd22 derivative 5186 5187 * NEWS: updated for Darwin changes 5188 5189 * .cvsignore: added A.i386-apple-darwin6.0 5190 5191 * m4/macros/os_cflags.m4: add -D_P1003_1B_VISIBLE to cflags for 5192 Darwin 5193 51942003-01-23 Erez Zadok <ezk@cs.sunysb.edu> 5195 5196 * conf/mount/mount_aix.c (mount_aix3): clean back this file from 5197 all the debugging cruft that is no longer needed (and really was 5198 never needed in the first place). 5199 52002003-01-10 Erez Zadok <ezk@cs.sunysb.edu> 5201 5202 * scripts/test-amd.{misc,conf}: simple amd.conf and amd.misc 5203 (map) files for testing basic amd functionality such as whether it 5204 can mount its own mount NFS points. 5205 52062002-12-28 Ion Badulescu <ionut@moisil.badula.org> 5207 5208 * amd/srvr_nfs.c (start_nfs_pings): don't set FSF_PINGING if 5209 pings are disabled 5210 5211 * libamu/xdr_func.c (xdr_ftype): use a local enum_t variable 5212 instead of casting the pointer to (enum_t *) 5213 (xdr_mountstat3): ditto 5214 (xdr_nfsstat): ditto 5215 5216 * libamu/misc_rpc.c (make_rpc_packet): fix make_rpc_packet() on 5217 64-bit big-endian platforms, bug report from Bill Fenner 5218 <fenner@research.att.com> 5219 5220 * configure.in: increase library patchlevel 5221 5222 * libamu/xutil.c (amu_release_controlling_tty): close and reopen 5223 file descriptors 0,1,2 before calling setsid() 5224 52252002-12-27 Erez Zadok <ezk@cs.sunysb.edu> 5226 5227 * updated copyright year to 2003 on all files 5228 52292002-12-10 Erez Zadok <ezk@localhost.localdomain> 5230 5231 * rename "aux/" subdir into "m4/" so as to avoid problems with 5232 MS-DOS systems (where "AUX" is a reserved name). This required 5233 fixing numerous files. 5234 52352002-12-10 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 5236 5237 * configure.in: don't check for bad hasmntopt() function if 5238 hasmntopt() doesn't exist on the system, because we will replace 5239 it with our own version anyway. 5240 5241 * conf/transp/transp_sockets.c (amu_get_myaddress): use "%lx" in 5242 dlog because htonl() returns a u_long. 5243 52442002-12-10 Erez Zadok <ezk@localhost.localdomain> 5245 5246 * include/am_defs.h: use system's hasmntopt() only if it is found 5247 and it is not buggy. 5248 5249 * libamu/hasmntopt.c (nextmntopt): isspace() takes an int, not a 5250 char. 5251 5252 * amd/am_ops.c, amd/amfs_auto.c, amd/autil.c, amd/nfs_subr.c, 5253 amd/ops_cdfs.c, amd/ops_nfs.c, amd/srvr_nfs.c, libamu/hasmntopt.c, 5254 libamu/mount_fs.c, libamu/mtab.c: rename all uses of hasmntopt() 5255 to amu_hasmntopt(). Don't use hasmntopt() directly any more! 5256 5257 * aux/macros/func_bad_hasmntopt.m4: new M4 macro to test for a bad 5258 hasmntopt() function, which incorrectly finds the option "soft" in 5259 a string "hard,softlookup,ro". 5260 5261 * libamu/hasmntopt.c (hasmntopt): use 'const' on two args to 5262 hasmntopt(), to match what most systems use. 5263 5264 * aux/macros/header_templates.m4: template for HAVE_BAD_HASMNTOPT. 5265 5266 * configure.in: invoke test for bad hasmntopt() 5267 5268 * NEWS: minor new port, i386-pc-linux-rh8.0. 5269 Mention autofs-v4 on solaris9 works. 5270 5271 * bootstrap: remove any autom4te-*.cache directories, now that 5272 autoconf uses a version number for them. 5273 52742002-12-09 Ion Badulescu <ionut@moisil.badula.org> 5275 5276 Patches from Christos Zoulas: 5277 5278 -1- am_utils.h: add full prototypes 5279 -2- amfs_auto.c make functions static and add prototypes 5280 -3- map.c: kill double free 5281 -5- transp_sockets.c: add full prototypes 5282 52832002-12-09 Ion Badulescu <ionut@moisil.badula.org> 5284 5285 * NEWS: updated 5286 5287 * doc/am-utils.texi (opts Option): document sftlookup 5288 5289 * conf/autofs/autofs_solaris_v2_v3.c: compile fixes 5290 52912002-11-22 Erez Zadok <ezk@filer.fsl.cs.sunysb.edu> 5292 5293 * amd/info_ldap.c (amu_ldap_rebind): gopt.ldap_cache_seconds is 5294 %ld not %d. 5295 52962002-11-21 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5297 5298 * {amd,fsinfo}/Makefile.am: remove special rules for processing 5299 yacc/lex files, now that autoconf/automake properly handle them 5300 better (esp. now that bison 1.75 behaves differently than older 5301 bison versions). 5302 53032002-11-21 Erez Zadok <ezk@cs.sunysb.edu> 5304 5305 * config.guess.long: updated script so it will properly find the 5306 version number of the new Itanium 2 machines running "Red Hat 5307 Linux Advanced Workstation release 2.1AW (Derry)". The script now 5308 will report ia64-unknown-linux-rh2.1AW. 5309 53102002-11-20 Ion Badulescu <ionut@moisil.badula.org> 5311 5312 * amfs_auto_bgmount(): almost complete rewrite 5313 5314 * fixed amfs_inherit to do the right thing and not dereference 5315 freed mntfs'es 5316 5317 * #if 0'ed bogus code in fh_to_mp3() -- it is now done properly in 5318 amfs_autofs_lookup_child() 5319 5320 * release the autofs_fh only in one place 5321 5322 * remove the mountpoint only if mf_refc == 1 5323 5324 * print the mntfs type in free_mntfs() 5325 5326 * new pseudo-mount option 'sftlookup' which causes lookups to 5327 mounted shares from downed servers to return EIO; the default 5328 depends on whether the mount is 'hard' or 'soft' 5329 5330 * improved querying of supported NFS versions on the server -- 5331 don't even try if it's known to be down 5332 5333 * solaris autofs mount code moved to transp_{sockets,tli}.c 5334 5335 * incipient (non-functional) AIX autofs support 5336 53372002-11-11 Ion Badulescu <ion@guppy.limebrokerage.com> 5338 5339 * doc/am-utils.texi (Keep-alives): removed outdated info about not 5340 maintaining the state of TCP NFS servers 5341 53422002-11-04 Ion Badulescu <ion@guppy.limebrokerage.com> 5343 5344 * include/am_utils.h: prototype for ops_search() 5345 5346 * amd/am_ops.c (ops_search): new function for searching the right 5347 set of ops for a given filesystem type 5348 5349 * amd/restart.c (restart): cleanup and split into two functions in 5350 preparation for handling the restart of amd's own mount points 5351 (restart_fake_mntfs): new function, factored out from restart() 5352 53532002-11-04 Ion Badulescu <ionut@buggy.badula.org> 5354 5355 * amd/ops_cdfs.c (mount_cdfs): remove special code for loop device 5356 (cdfs_umount): ditto 5357 5358 * conf/mount/mount_linux.c (mount_linux): factor it out to 5359 mount_linux_nfs() and mount_linux_nonfs() 5360 (mount_linux_nonfs): generalize loop device support to all 5361 filesystems (not just cdfs); make it automatic for anything that's 5362 a regular file 5363 (parse_opts): deprecate the explicit "loop" mount option 5364 (do_mount_linux): minor cleanup 5365 5366 * conf/umount/umount_default.c (umount_fs2): release loop device 5367 on umount() 5368 53692002-11-03 Erez Zadok <ezk@cnm20> 5370 5371 * include/am_defs.h: moved #include of net/if.h above net/route.h, 5372 because on AIX 5.2 if.h is needed for route.h (let's hope it 5373 doesn't break things on other systems). 5374 5375 * include/am_defs.h: AIX 5.2 needs struct sigevent from signal.h 5376 to be defined, but I don't want to move the inclusion of signal.h 5377 this early into this file. Luckily, amd doesn't need the size of 5378 this structure in any other structure that it uses. So we 5379 sidestep it for now. 5380 5381 * conf/nfs_prot/nfs_prot_aix5_2.h: AIX 5.2 wants 'struct pathcnf', 5382 but I couldn't find its definition anywhere. Luckily, amd doesn't 5383 need the size of this structure in any other structure that it 5384 uses. So we sidestep it for now. 5385 53862002-11-02 Erez Zadok <ezk@cs.sunysb.edu> 5387 5388 * config.guess, config.sub, doc/texinfo.tex: updates from 5389 the latest GNU distributions (2002-09-05). 5390 53912002-10-30 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5392 5393 * conf/nfs_prot/nfs_prot_aix5_2.h: add more definitions from 5394 mount.h for NFSOPT_* and NFSMNT_*. 5395 Don't use typedefs that aren't found in system header files. 5396 53972002-10-30 Erez Zadok <ezk@cs.sunysb.edu> 5398 5399 * Makefile.am (EXTRA_DIST_CONF): distribute nfs_prot_aix5_2.h. 5400 5401 * conf/nfs_prot/nfs_prot_aix5_2.h: new file. 5402 5403 * aux/macros/struct_nfs_args.m4 (ac_cv_have_struct_nfs_args): look 5404 for "struct aux52_nfs_args". 5405 5406 * aux/macros/check_nfs_prot_headers.m4: define new header file for 5407 AIX 5.2. 5408 54092002-10-21 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5410 5411 * scripts/amd.conf.5 (ldap_proto_version): document in amd.conf 5412 man page. 5413 5414 * scripts/amd.conf-sample (ldap_proto_version): show example of use 5415 5416 * doc/am-utils.texi (ldap_proto_version Parameter): document new 5417 amd.conf option. 5418 5419 * amd/conf.c (gopt_ldap_proto_version): new conf function to 5420 support ldap_proto_version amd.conf parameter. 5421 5422 * amd/amd.h: field to hold LDAP protocol version. 5423 5424 * amd/amd.c (init_global_options): set default for 5425 ldap_proto_version. ldap_proto_version patch from George Ross 5426 <gdmr@dcs.ed.ac.uk> and Tim Colles <timc@inf.ed.ac.uk>. 5427 5428 * amd/info_ldap.c (amu_ldap_unbind): ignore SIGPIPE errors while 5429 unbinding from an LDAP server that may have been restarted. Fix 5430 from George Ross <gdmr@dcs.ed.ac.uk>. 5431 54322002-09-17 Ion Badulescu <ion@guppy.limebrokerage.com> 5433 5434 * remove all autoconf stuff added for sys_nerr 5435 5436 * amq/amq.c, libamu/xutil.c, hlfsd/hlfsd.c: always use strerror 5437 5438 * libamu/strerror.c: more explicit text for unknown errno's 5439 54402002-10-01 Erez Zadok <ezk@cs.sunysb.edu> 5441 5442 * include/am_defs.h: define "extern int sys_err" if needed. 5443 5444 * aux/macros/header_templates.m4: template for 5445 HAVE_EXTERN_SYS_NERR. 5446 5447 * hlfsd/hlfsd.h, libamu/xutil.c (expand_error), amq/amq.c 5448 (show_mi): remove "extern int sys_err" 5449 5450 * configure.in: execute test for "extern int sys_err" 5451 5452 * Makefile.am (EXTRA_DIST_AUX): distribute new extern_sys_err.m4 file. 5453 5454 * aux/macros/extern_sys_nerr.m4: new test to check for existence 5455 of "extern int sys_nerr" definition in system headers. 5456 54572002-09-17 Ion Badulescu <ion@guppy.limebrokerage.com> 5458 5459 * libamu/xutil.c (dbg_opt): bring comments in line with the code 5460 5461 * hlfsd/hlfsd.c (main): use amuDebug() instead of touching 5462 debug_flags directly 5463 5464 * amd/amd.c (main): don't init debug_flags, leave it as zero (no 5465 debugging by default) 5466 54672002-09-11 Ion Badulescu <ion@guppy.limebrokerage.com> 5468 5469 Debug code sanitization: 5470 5471 - amuDebug() becomes an expression, and explicit if() statements 5472 are added around it throughout the code 5473 - amuDebugNo() goes away (ugh!) 5474 - D_AMQ, D_DAEMON and D_FORK reverse their meaning 5475 - D_ALL contains only options that don't affect amd's functionality 5476 54772002-09-04 Ion Badulescu <ion@guppy.limebrokerage.com> 5478 5479 * amd/amfs_auto.c (free_continuation): avoid double-free'ing the 5480 mntfs if there was an error/timeout 5481 54822002-09-04 Ion Badulescu <ion@guppy.limebrokerage.com> 5483 5484 * amd/amfs_auto.c (amfs_auto_lookup_mntfs): use ereturn() instead 5485 of "return NULL" to signal an error to the upper layers 5486 (amfs_auto_mount): use strdup so the string can be free'd later on 5487 [Debian bug report from Matt Chapman <matthewc@cse.unsw.edu.au>] 5488 54892002-09-03 Ion Badulescu <ion@guppy.limebrokerage.com> 5490 5491 Patches from George Ross <gdmr@dcs.ed.ac.uk>: 5492 5493 * amd/amfs_auto.c (assign_error_mntfs): do not discard old mntfs, 5494 it will be done in free_continuation(); assorted debugging messages 5495 5496 * amd/srvr_nfs.c (nfs_timed_out): allocate a new XID on server 5497 timeout to avoid problems with late ping replies 5498 5499 * amd/mntfs.c (free_mntfs): sanity check for mf_refc; assorted 5500 debugging messages 5501 5502 * amd/map.c (unmount_node): more verbose debug message 5503 55042002-07-29 Ion Badulescu <ion@guppy.limebrokerage.com> 5505 5506 * amd/amfs_auto.c (amfs_auto_lookup_mntfs): prevent deferencing 5507 de-allocated memory in str3cat 5508 (amfs_auto_lookup_mntfs): check for buffer overflow 5509 55102002-07-11 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5511 5512 * scripts/expn.{1,in}: fixed typos as reported by Thomas Klausner 5513 <wiz@danbala.ifoer.tuwien.ac.at>. 5514 55152002-06-26 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5516 5517 * doc/Makefile.am (install-html): don't use locally hacked 5518 texi2html features. 5519 5520 * conf/transp/transp_sockets.c (amu_get_myaddress): Most modern 5521 systems should use 127.0.0.1 as the localhost address over which 5522 you can do NFS mounts. In the past we found that some NFS clients 5523 may not allow mounts from localhost. So we used get_myaddress() 5524 and that seemed to work. Alas, on some other systems, 5525 get_myaddress() may return one of the interface addresses at 5526 random, and thus use a less efficient IP address than 127.0.0.1. 5527 The solution is to hard-code 127.0.0.1, but still check if 5528 get_myaddress() returns a different value and warn about it. 5529 5530 * doc/am-utils.texi: don't use ':' in @cindex entries. 5531 55322002-06-25 Ion Badulescu <ion@guppy.limebrokerage.com> 5533 5534 * Released beta version 6.1b1 5535 55362002-06-24 Ion Badulescu <ionut@moisil.badula.org> 5537 5538 * aux/macros/struct_nfs_args.m4: added test for aix51_nfs_args 5539 5540 * conf/nfs_prot/nfs_prot_aix5_1.h: rename aix42_nfs_args to 5541 aix51_nfs_args, rename unknown fields to u<number>, add the 5542 unknown new field into the middle of the old 4.2 structure 5543 55442002-06-24 Ion Badulescu <ion@guppy.limebrokerage.com> 5545 5546 * include/am_compat.h: better test for struct netconfig 5547 (!HAVE_NETCONFIG_H && !HAVE_SYS_NETCONFIG_H) 5548 5549 * aux/macros/check_nfs_prot_headers.m4: added new header for aix5.1+ 5550 5551 * buildall: fix 'buildall -b' on hpux9 and aix5.1 5552 55532002-06-24 Ion Badulescu <ionut@buggy.badula.org> 5554 5555 * INSTALL: updated 5556 5557 * conf/autofs/autofs_solaris_v1.c (autofs_link_mount): compile fix 5558 (autofs_link_umount): ditto 5559 5560 * amd/mntfs.c (init_mntfs): don't use autofs if !amd_use_autofs 5561 55622002-06-23 Ion Badulescu <ionut@moisil.badula.org> 5563 5564 * conf/autofs/autofs_linux.c: compile fixes for autofs v3 5565 55662002-06-23 Ion Badulescu <ionut@moisil.badula.org> 5567 5568 * conf/autofs/autofs_solaris_v2_v3.c (autofs_mounted): no 5569 expirations needed; 5570 (autofs_timeout_mp): likewise 5571 5572 * conf/autofs/autofs_solaris_v1.c (autofs_mounted): no expirations 5573 needed; 5574 (autofs_timeout_mp): likewise 5575 5576 * conf/autofs/autofs_linux.c (autofs_mounted): set the first 5577 expiration interval 5578 5579 * amd/autil.c (am_mounted): call autofs_mounted here, instead of 5580 in mf_mounted() 5581 5582 * amd/amd.h (NEVER): moved here from map.c 5583 (autofs_mounted): change argument from mntfs* to am_node* 5584 55852002-06-23 Ion Badulescu <lionut@gonzales.badula.org> 5586 5587 * conf/autofs/autofs_linux.c (autofs_mounted): set the kernel 5588 timeout on the autofs mountpoint to cache_duration (gopt.am_timeo) 5589 (autofs_timeout_mp): don't update the ttl if we're going down 5590 5591 * amd/map.c (timeout_mp): don't call autofs_timeout_mp unless the 5592 timeout on that particular am_node has expired 5593 5594 * conf/autofs/autofs_linux.c (autofs_timeout_mp): really update 5595 the ttl, as per the comment (compilers are not very good at 5596 translating comments into code...) 5597 5598 * amd/amfs_auto.c (amfs_auto_lookup_one_mntfs): strdup am_path 5599 instead of opt_rfs into opt_fs for autofs, thus avoiding conflicts 5600 between link mounts pointing to the same target 5601 56022002-06-23 Ion Badulescu <lionut@gonzales.badula.org> 5603 5604 * conf/autofs/autofs_linux.c (send_fail, send_ready): new helper 5605 functions for sending messages back to the kernel 5606 (autofs_expire_one): initial implementation of the kernel-based 5607 expiration handler 5608 (autofs_handle_expire): call autofs_expire_one() 5609 (autofs_handle_expire_multi): ditto 5610 (autofs_umount_succeeded): search pending_umounts, send message 5611 back to the kernel 5612 (autofs_umount_failed): ditto 5613 (autofs_mount_succeeded): tell amd core not to expire autofs entries 5614 (autofs_timeout_mp): expiration function for autofs filesystems 5615 (autofs_timeout_mp_task): helper function for autofs_timeout_mp 5616 5617 * conf/autofs/autofs_linux.h: new struct autofs_pending_umount for 5618 keeping tracking of pending umounts 5619 (autofs_fh_t) rename pending to pending_mounts, add pending_umounts 5620 5621 * conf/autofs/autofs_solaris_v1.c (autofs_timeout_mp): stub 5622 5623 * conf/autofs/autofs_solaris_v2_v3.c (autofs_timeout_mp): stub 5624 5625 * amd/map.c (timeout_mp): call autofs_timeout_mp() for autofs 5626 filesystems 5627 5628 * amd/autil.c (mf_mounted): move here the call autofs_mounted() 5629 from amfs_auto_mounted(). 5630 56312002-06-22 Erez Zadok <ezk@whitestar.dyn.optonline.net> 5632 5633 * amd/nfs_start.c (mount_automounter): Security fix. if user sets 5634 -D noamq, don't even create listening socket. Suggestion by Ed 5635 Ravin <eravin@panix.com>. 5636 56372002-06-22 Ion Badulescu <lionut@gonzales.badula.org> 5638 5639 * hlfsd/homedir.c (homedir): use setgid() instead of setegid() 5640 5641 * ALL: #ifdef cleanups, unify some TLI/socket function prototypes 5642 56432002-06-22 Erez Zadok <ezk@whitestar.dyn.optonline.net> 5644 5645 * conf/nfs_prot/nfs_prot_netbsd1_4.h: minor port to support 5646 na_gid and na_uid. NetBSD patch from Jun-ichiro itojun Hagino 5647 <itojun@iijlab.net>. 5648 5649 * doc/am-utils.texi (Option): document xlatecookie mount option. 5650 5651 * libamu/mount_fs.c (compute_nfs_args): support "xlatecookie" 5652 NFS mount option. Patch from Matthias Scheler <tron@zhadum.de> 5653 for NetBSD. 5654 56552002-06-22 Ion Badulescu <ionut@edgar.badula.org> 5656 5657 * conf/autofs/autofs_solaris_v1.h: add FS_MBACKGROUND to 5658 AUTOFS_LINK_FS_FLAGS 5659 5660 * conf/autofs/autofs_solaris_v1.c: convert link mounts to lofs 5661 mounts in autofs_link_mount/umount 5662 56632002-06-22 Ion Badulescu <lionut@gonzales.badula.org> 5664 5665 * configure.in: check for devid inside struct umntrequest 5666 5667 * conf/autofs/autofs_solaris_v2_v3.c (xdr_umntrequest): handle the 5668 new umntrequest structure in v4. 5669 (autofs_unmount_2_req): ditto 5670 5671 * README.autofs: updated for Solaris 2.5/2.5.1 5672 56732002-06-22 Erez Zadok <ezk@whitestar.dyn.optonline.net> 5674 5675 * configure.in: only define LDAP/Hesiod if both the headers and 5676 the libraries exist, and the user didn't explicitly disable those 5677 maps. 5678 56792002-06-22 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5680 5681 * doc/am-utils.texi: fix typos. Can't use ":" in @cindex entries. 5682 56832002-06-22 Erez Zadok <ezk@whitestar.dyn.optonline.net> 5684 5685 * doc/am-utils.texi, scripts/amd.conf.5, scripts/amd.conf-sample, 5686 amd/amd.8, amd/get_args.c (get_args): document amd -A option. 5687 5688 * amd/get_args.c (get_args): support "amd -A arg" option to 5689 override the system's detected architecture. Patch from George 5690 Ross <gdmr@dcs.ed.ac.uk>. 5691 5692 * amd/info_ldap.c (amu_ldap_rebind): don't use ldap_enable_cache() 5693 if the system doesn't have it. 5694 5695 * configure.in: detect existence of ldap_enable_cache function, 5696 because it doesn't exist on Solaris 9's latest ldap libraries. 5697 5698 * amd/info_ldap.c: LDAP patches from George Ross 5699 <gdmr@dcs.ed.ac.uk>. Rework of old code, support for wildcards in 5700 LDAP queries, and an FD leak fix. 5701 57022002-06-22 Ion Badulescu <lionut@gonzales.badula.org> 5703 5704 * buildall: use ksh for configure on aix5.1; pass the extra 5705 arguments after "--" to configure, not to make 5706 5707 * Makefile.am: added nfs_prot_aix4_3.h to EXTRA_DIST_CONF 5708 5709 * conf/mount/mount_aix.c (mount_aix3): if the NFSv3 mount fails 5710 with EINVAL and we have MOUNT_TYPE_NFS3_BIS defined, retry the 5711 mount with the alternative nfs3_args structure 5712 5713 * conf/nfs_prot/nfs_prot_aix4_3.h: added alternative nfs3_args 5714 structure, similar to that in aix5.1, for a hack that tries to 5715 compensate for IBM's brain fart 5716 5717 * conf/nfs_prot/nfs_prot_aix5_1.h: new nfs_prot header for aix5.1+ 5718 5719 * aux/macros/check_nfs_prot_headers.m4: added new header for aix5.1+ 5720 5721 * BUGS: update for direct mounts on Linux; document the brokenness 5722 of /bin/sh on AIX 5.1 and HP-UX 9 5723 5724 * NEWS: aix5.1 port, aix4.3 workaround 5725 57262002-06-22 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5727 5728 * ltmain.sh: use libtool 1.4d, needed support for newer AIX. 5729 57302002-06-21 Ion Badulescu <ion@guppy.limebrokerage.com> 5731 5732 * aux/macros/check_autofs_style.m4: enable autofs_v2_v3 for 5733 all solaris2.6+, not just for 2.[6-8] 5734 5735 * conf/autofs/autofs_default.h: disable autofs if configure 5736 detects it 5737 57382002-06-21 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5739 5740 * aux/macros/with_addon.m4: correct M4 quoting. 5741 5742 * aux/macros/cache_check_dynamic.m4: correct M4 quoting. 5743 5744 * bootstrap: show version of autotools being used. Helps 5745 maintainer debugging. 5746 5747 * configure.in: new proper syntax for libtool and 5748 ansi2knr-filtering rules, required by autoconf 1.53 and higher. 5749 57502002-06-21 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 5751 5752 * aux/GNUmakefile: new search paths for "update" target. 5753 5754 * config.guess, config.sub, doc/texinfo.tex, ltmain: updates from 5755 the latest GNU distributions. 5756 57572002-06-11 Ion Badulescu <ion@guppy.limebrokerage.com> 5758 5759 * amd/amfs_auto.c (amfs_auto_lookup_child): split part of this 5760 function into the new amfs_auto_lookup_one_child function; return 5761 null if all ivecs failed to match 5762 57632002-05-30 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5764 5765 * config.guess.long: support SuSE version names in long 5766 config.guess format. 5767 57682002-05-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 5769 5770 * scripts/lostaltmail.in (vrfy_user): unlink temp files if too 5771 small. 5772 57732002-04-07 Ion Badulescu <ionut@moisil.badula.org> 5774 5775 * hlfsd/hlfsd.c (main): compile fix for --enable-debug=no 5776 57772002-03-29 Ion Badulescu <ionut@moisil.badula.org> 5778 5779 * README.autofs: solaris 2.5/2.5.1 info, other minor changes 5780 5781 * doc/am-utils.texi (History): document solaris 2.5+ support 5782 5783 * include/am_utils.h: new member in struct mntfs: mfs_real_mount; 5784 autofs_fs_flags becomes conditional of HAVE_AUTOFS_FS; new 5785 prototype for umount_fs2(); extra argument for UMOUNT_FS() 5786 5787 * hlfsd/hlfsd.c: use the new mount_fs2() and UMOUNT_FS() 5788 5789 * libamu/mount_fs.c (mount_fs): wrapper around the new mount_fs2() 5790 function; swap mntdir and real_mntdir as necessary for solaris 2.5 5791 autofs support 5792 5793 * conf/umount/umount_default.c (umount_fs2): swap mntdir and 5794 real_mntdir as necessary for solaris 2.5 autofs support 5795 5796 * conf/umount/umount_*.c (umount_fs): wrapper around the new 5797 umount_fs2() function 5798 (umount_fs2): new function which takes the real mountpoint as an 5799 extra argument 5800 5801 * conf/nfs_prot/nfs_prot_sunos5_5.h: allow autofs support to be 5802 compiled in 5803 5804 * conf/autofs/autofs_solaris_v1.h (autofs_strdup_space_hack): new 5805 function that appends a space at the end of a string (the famous 5806 "Autofs Space Protocol") 5807 5808 * conf/autofs/autofs_solaris_v1.c: almost complete reimplementation 5809 5810 * conf/autofs/autofs_*.h (AUTOFS_*_FS_FLAGS): add 5811 system-specific definitions for these macros 5812 5813 * conf/autofs/autofs_linux.c (create_autofs_service): remove hacks 5814 which are now handled properly by more generic code 5815 (autofs_link_umount): complain if umount_fs() fails, rmdir the 5816 mountpoint on success 5817 (autofs_umount_succeeded): remove the rmdirs() code, now handled 5818 by generic code 5819 (autofs_mount_succeeded): ditto 5820 5821 * amd/nfs_start.c (checkup): implement it as an emtpy stub if 5822 DEBUG is not defined 5823 (run_rpc): call autofs_add_fdset() after umount_exported() to 5824 avoid passing invalid file descriptors to select(); use plog() 5825 instead of perror() 5826 5827 * amd/mntfs.c (init_mntfs): initialize mf_real_mount from mp 5828 (uninit_mntfs): free mf_real_mount 5829 5830 * amd/autil.c (am_unmounted): don't remove the mount point if a 5831 remount is pending, also don't make the removal conditional on not 5832 being an autofs mount point 5833 5834 * amd/amfs_nfsx.c (amfs_nfsx_remount): call mkdirs() on 5835 mf->mf_real_mount instead of mf->mf_mount 5836 5837 * amd/amfs_nfsl.c, amd/amfs_nfsx.c: (amfs_nfsl_umounted): call 5838 rmdirs() on mf->mf_real_mount instead of mf->mf_mount 5839 5840 * amd/amfs_host.c (make_mntpt): change the third argument to be 5841 the mountpoint, not the entire mntfs structure 5842 (do_mount): takes real_mntdir as an extra argument 5843 5844 * amd/amfs_auto.c (amfs_auto_bgmount): move the creation of the 5845 mountpoint here from try_mount(), otherwise the change to mf_flags 5846 is lost for background mounts; remove the mountpoint if we created 5847 it and the mount fails 5848 (amfs_auto_lookup_mntfs): re-initialize mf->mf_real_mount using 5849 autofs_strdup_space_hack() if NEED_AUTOFS_SPACE_HACK is defined 5850 5851 * amfs_*.c, ops_*.c: initialize autofs_fs_flags using the 5852 AUTOFS_*_FS_FLAGS macro defined in the system-specific autofs 5853 header; UMOUNT_FS() takes mf->mf_real_mount as an extra argument; 5854 mount_fs() becomes mount_fs2() and takes mf->mf_real_mount as an 5855 extra argument 5856 5857 * amd/amd.h, amd/ops_nfs.c, amd/amfs_host.c: mount_nfs_fh takes 5858 the real mountpoint as an additional argument 5859 58602002-03-28 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5861 5862 * amd/ops_cdfs.c (mount_cdfs): correctly interpret error return 5863 values back from mount_fs(). Return correct error number from 5864 this function. 5865 5866 * conf/mount/mount_linux.c (do_mount_linux): cleanup loop mount 5867 cruft from this function, moved elsewhere. 5868 (mount_linux): prepare for loop-device mounts of ISO images. 5869 58702002-03-28 Ion Badulescu <ionut@buggy.badula.org> 5871 5872 * libamu/Makefile.am (EXTRA_DIST): added strerror.c 5873 5874 * libamu/strerror.c: strerror() implementation for systems lacking it 5875 5876 * doc/am-utils.texi (History): rewrote the history :) about autofs 5877 support 5878 5879 * conf/autofs/autofs_solaris_v2_v3.c: updated copyright; 5880 (autofs_unmount_2_req): minor cleanup 5881 (create_autofs_service): print log message 5882 (destroy_autofs_service): ditto 5883 5884 * conf/autofs/autofs_linux.c: updated copyright 5885 5886 * amd/nfs_start.c (mount_automounter): move the debug message into 5887 create_autofs_service() 5888 5889 * amd/amd.c (main): call destroy_autofs_service() before 5890 going_down(), not after 5891 5892 * configure.in: added strerror to AC_CHECK_FUNCS(); disable ldap 5893 if the ldap headers are not found 5894 58952002-03-28 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5896 5897 * amd/info_ldap.c: patch from "Sebastien Bahloul" 5898 <sebastien.bahloul@medasys.org> to fix a simple initialization bug 5899 and change "HE" to HE_ENT so as to compile on HPUX. 5900 59012002-02-26 Erez Zadok <ezk@t3.fsl.cs.sunysb.edu> 5902 5903 * conf/nfs_prot/nfs_prot_freebsd3.h (na_uid): freebsd4.5 uses nfs 5904 atttributes field named "uid". So #define na_uid to it. 5905 59062002-02-12 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5907 5908 * scripts/lostaltmail.in: don't verify user if -noverify option 5909 was turned on. fix comment typo. 5910 59112002-02-11 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 5912 5913 * amd/Makefile.am (TESTS): enable one test script, test1.sh. 5914 5915 * amd/test1.sh: re-commit simple test script. 5916 59172002-02-11 Ion Badulescu <ion@guppy.limebrokerage.com> 5918 5919 * Released snapshot 6.1a5 5920 5921 * NEWS: Solaris autofs readdir() support, Linux autofs sublink fix 5922 5923 * README: require newer auto-tools, update mailing list address 5924 5925 * README.autofs: major update 5926 5927 * configure.in: version changed to 6.1a5 5928 59292002-02-11 Ion Badulescu <ionut@moisil.badula.org> 5930 5931 * conf/autofs/autofs_linux.c (autofs_link_mount): don't do a 5932 stat() on the am_link if called from the parent amd, to prevent 5933 deadlocks 5934 5935 * amd/autil.c (am_unmounted): call amfs_link_ops.umount_fs if the 5936 fstype is not link but we have a sublink (Linux autofs needs this) 5937 (am_mounted): call amfs_link_ops.mount_fs if the fstype is not 5938 link but we have a sublink (Linux autofs needs this) 5939 5940 * amd/amfs_auto.c (amfs_auto_bgmount): print the real mountpoint, 5941 not the amd entry point 5942 59432002-02-09 Ion Badulescu <ionut@moisil.badula.org> 5944 5945 * conf/autofs/autofs_solaris_v2_v3.c (amd_rddirres): new custom 5946 structure for returning the results from readdir_2() 5947 (xdr_amd_putrddirres): renamed from xdr_autofs_putrddirres, 5948 changed to process our internal format (which is essentially the 5949 NFS readdir format) 5950 (xdr_autofs_getrddirres): not needed, deleted 5951 (xdr_amd_rddirres): renamed from xdr_autofs_rddirres, other 5952 changes to handle amd_rddirres instead of autofs_rddirres 5953 (autofs_lookup_2_req): return AUTOFS_NONE instead of 5954 AUTOFS_MOUNT_RQ, to prevent mount storms during ls -F 5955 (autofs_readdir_2_req): implemented 5956 (autofs_readdir_2_free): not needed, deleted 5957 (autofs_program_2): changes from autofs_rddirres to amd_rddirres 5958 (autofs_get_fh): changed initialization of the fh->map member, it 5959 now gets the mountpoint path because it makes it easier to 5960 implement readdir 5961 (autofs_release_fh): put #ifdef HAVE_AUTOFS_ARGS_T_ADDR around 5962 code touching fh->addr 5963 (destroy_autofs_service): new function, deregister the autofs 5964 service with the portmapper on exit 5965 5966 * conf/autofs/autofs_linux.c (autofs_handle_missing): update 5967 statistics 5968 (destroy_autofs_service): new stub 5969 5970 * amd/mapc.c (mapc_find): fixed indentation 5971 5972 * amd/map.c (find_ap_recursive): renamed from find_ap2(), made 5973 static 5974 5975 * amd/amd.h: removed prototype for find_ap2(), added prototype for 5976 destroy_autofs_service() 5977 5978 * amd/amd.c (main): call destroy_autofs_service() before going 5979 down 5980 59812002-02-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 5982 5983 * aux/macros/check_field.m4: need also a new version of 5984 AC_CHECK_MEMBERS (plural). 5985 59862002-02-06 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 5987 5988 * aux/macros/check_field.m4: include a fixed version of 5989 AC_CHECK_MEMBER. g/cc will fail to check a member if the .member 5990 is itself a data structure, because you cannot compare, in C, a 5991 data structure against NULL; you can compare a native data type 5992 (int, char) or a pointer. Solution: do what I did in my original 5993 member checking macro: try to take the address of the member. You 5994 can always take the address of anything. 5995 59962002-01-31 Erez Zadok <ezk@localhost.localdomain> 5997 5998 * remove old '%W%' SCCS IDs from all sources. 5999 60002002-01-21 Ion Badulescu <ionut@moisil.badula.org> 6001 6002 * conf/mount/mount_linux.c (mount_linux): fix breakage introduced 6003 by the loop device mount support. Linux mount takes a real string 6004 as the last argument, unless the mount type is NFS, NCP, or SMB. 6005 60062002-01-20 Erez Zadok <ezk@localhost.localdomain> 6007 6008 * hlfsd/hlfsd.h (HLFSD_VERSION): up version of hlfsd to 1.2, 6009 because we made some important changes. 6010 60112002-01-20 Ion Badulescu <lionut@gonzales.badula.org> 6012 6013 * include/am_utils.h (D_ALL): do not include D_MTAB and D_HRTIME 6014 by default 6015 6016 * NEWS: document latest changes 6017 6018 * amd/map.c (unmount_mp): same fix as for hlfsd, update the 6019 seconds field in mtime because Linux ignores the useconds field 6020 6021 * hlfsd/homedir.c: made some global vars static 6022 (plt_init): remove all trailing '/' chars from root's home; 6023 use root's home, not the username (silly bugfix) 6024 60252002-01-20 Ion Badulescu <lionut@gonzales.badula.org> 6026 6027 * hlfsd/homedir.c (homedir): don't special case uid 0 as having / 6028 as home; instead use the root account's home 6029 (plt_init): properly initialize root_home from the root account's 6030 home directory, or as "" if root doesn't exist 6031 (plt_reset): free root_home 6032 60332002-01-20 Erez Zadok <ezk@localhost.localdomain> 6034 6035 * hlfsd/stubs.c (nfsproc_{lookup,getattr}_2_svc): non-SYMTTL code. 6036 Increment seconds, not microseconds (which are ignored by NFS). 6037 Set symlink owner to euid. 6038 6039 * hlfsd/homedir.c (homedir): pass gid to this function, so we can 6040 also change the effective GID of the process writing to the user's 6041 home dir, as well as the group of the hlfsd symlink. 6042 (homedir): run setegid in the right places. 6043 60442002-01-15 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 6045 6046 * scripts/redhat-ctl-amd.in: refer to @sbindir@ not 6047 ${prefix}/sbin. 6048 6049 * scripts/ctl-{amd,hlfsd}.in: refer to @sysconfdir@ not 6050 ${prefix}/etc. Bug report from "A Braunsdorf" 6051 <ab@eas.purdue.edu>. 6052 60532002-01-13 Erez Zadok <ezk@localhost.localdomain> 6054 6055 * configure.in: only check for clock_gettime if --enable-debug was 6056 used. 6057 6058 * aux/macros/opt_debug.m4: define a cache variable to record value 6059 of debug option used. 6060 6061 * libamu/xutil.c (show_time_host_and_name): do not use 6062 clock_gettime unless debugging was compiled in. This way, if 6063 debugging is not compiled, we don't bother linking with librt, 6064 libpthread, and a whole lot of other libraries that aren't that 6065 necessary (esp. on Linux). 6066 60672002-01-12 Erez Zadok <ezk@wavy.dyn.optonline.net> 6068 6069 * doc/am-utils.texi (opts Option): document loop option. 6070 6071 * include/am_utils.h: each mounted file system (mntfs) should 6072 optionally store the loop device used in the field mf_loopdev. 6073 6074 * conf/nfs_prot/nfs_prot_linux.h: define HAVE_LOOP_DEVICE and some 6075 loop function extern definitions. For now this code is here 6076 because we only support loop devices on Linux. 6077 6078 * conf/mount/mount_linux.c: recognize "loop" as a valid iso9660 6079 mount option. 6080 (parse_opts): when skipping over unknown mount options, skip over 6081 "loop" (since it was given in amd map entry), but not over 6082 loop=/dev/loopX, because the latter will go into /etc/mtab. 6083 (do_mount_linux): override actual cdfs mounted device name 6084 because with loop devices you don't mount the .iso file directly, 6085 but the /dev/loopX device that was setup for it. 6086 (show_loop, is_loop_device, find_unused_loop_device, 6087 setup_loop_device, delete_loop_device): support code for loop 6088 devices. 6089 6090 * amd/ops_cdfs.c (mount_cdfs): pass loop device name to function. 6091 setup loop device before isofs mount, if "loop" option was given, 6092 before actual mount(2). 6093 (cdfs_mount): pass loopdev name to mount_cdfs(). 6094 (cdfs_umount): delete/unset loop device after a successful 6095 unmount, if a loop device was used. 6096 6097 * amd/mntfs.c (init_mntfs): initialize mf_loopdev to NULL. 6098 6099 * include/am_compat.h: If loop device (header file) exists, define 6100 mount table option MNTTTAB_OPT_LOOP. 6101 6102 * conf/nfs_prot/nfs_prot_linux.h: hack: define HAVE_LOOP_DEVICE 6103 here until we have a better way to detect /dev/loop devices. 6104 6105 * include/am_defs.h: include <linux/loop.h> if it exists. Define 6106 LARGEFILE support macros, possibly needed for loop devices. 6107 Redefine dev_t apropriately for loop devices. 6108 6109 * configure.in: check for <linux/loop.h>. 6110 61112002-01-10 Ion Badulescu <ion@guppy.limebrokerage.com> 6112 6113 * conf/mount/mount_linux.c (mount_linux): tcp _must_ have a timeo 6114 parameter 2 orders of magnitude larger than udp (patch from Trond 6115 Myklebust) 6116 61172002-01-09 Erez Zadok <ezk@localhost.localdomain> 6118 6119 * aux/macros/linux_headers.m4: properly [quote] a long string in 6120 m4 and use AC_MSG_WARN. 6121 6122 * ALL: put /* comments */ on #else/#endif lines everywhere. 6123 6124 * configure.in, aux/macros/with_addon.m4: due to limitation of 6125 AC_HELP_STRING, pass 2nd arg to AMU_WITH_ADDON, listing name of 6126 package for help string. 6127 6128 * doc/am-utils.texi (FSinfo): fixed various texinfo errors in the 6129 FSinfo section of the manual. 6130 (map_reload_interval Parameter): document new amd.conf global 6131 parameter. 6132 6133 * scripts/amd.conf.5 document new global option 6134 map_reload_interval. Sort entries for nfs_vers and nfs_proto 6135 alphabetically. 6136 6137 * amd/nfs_start.c (do_select): increment do_mapc_reload's value by 6138 global map_reload_interval value, not by fixed ONE_HOUR. 6139 6140 * amd/amd.c (main): increment do_mapc_reload's value by global 6141 map_reload_interval value, not by fixed ONE_HOUR. 6142 6143 * scripts/amd.conf-sample (map_reload_interval): usage example 6144 6145 * amd/amd.c (init_global_options): initialize map_reload_interval 6146 to 3600 seconds. 6147 6148 * amd/conf.c (gopt_map_reload_interval): support a new global 6149 amd.conf option map_reload_interval, to determine how often (in 6150 seconds) Amd should check if the map source has changed and then 6151 reload it it. This value was hard-coded to one hour, now it's the 6152 default if not otherwise specified. 6153 6154 * doc/am-utils.texi (plock Parameter): document plock=yes option 6155 as using mlockall(2) if found. 6156 6157 * scripts/amd.conf.5: document -S option as using mlockall(2) if 6158 found. 6159 6160 * include/am_defs.h: include <sys/mman.h> if it exists. 6161 6162 * configure.in: check for mlockall() function. Check for 6163 sys/mman.h. 6164 6165 * amd/amd.c (main): support mlockall() on systems that have it and 6166 don't have plock(3) for plock=yes. On systems that have both, 6167 will try plock() first and then mlockall(), until one of them (if 6168 any) succeeds. 6169 61702002-01-09 Erez Zadok <ezk@whitestar.dyn.optonline.net> 6171 6172 * aux/macros/opt_debug.m4, opt_cppflags.m4, opt_amu_cflags.m4, 6173 with_addon.m4 (ac_upcase): fix help string formatting using 6174 AC_HELP_STRING. 6175 6176 * amd/test1.sh: simple test script for "make check". Runs "amd 6177 -v". 6178 6179 * amd/Makefile.am (TESTS): add one simple test script, running 6180 "amd -v" and checking its return value. More tests can be added. 6181 6182 * aux/macros/linux_headers.m4: use AC_MSG_WARN directly. 6183 6184 * aux/macros/*.m4: avoid the cumbersome "changequote" M4 command. 6185 Instead, list bracketed regexp patterns in [[double brackets]]. 6186 6187 * aux/macros/header_templates.m4: remove all unnecessary 6188 HAVE_FIELD_* definitions, now that we're using autoconf's new 6189 AC_CHECK_MEMBERS. 6190 6191 * aux/macros/field_mntent_t_mnt_time_string.m4: don't call 6192 6193 * configure.in: use new syntax for AMU_CHECK_FIELD 6194 6195 * aux/macros/check_field.m4: use new and simpler macro 6196 AC_CHECK_MEMBERS. Change all sources to use HAVE_aggregate.member 6197 instead of HAVE_FIELD_aggregate.member. 6198 6199 * aux/amdgrep: simple utility script to egrep the am-utils sources 6200 for any pattern. 6201 6202 * aux/macros/{check_mnttab_style.m4, check_mount_style.m4, 6203 check_umount_style.m4, check_network_transport_type.m4}: use newer 6204 AC_LIBOBJ macros instead of modifying $LIBOBJS directly 6205 6206 * aux/macros/func_bad_memcmp.m4: redefine to use native 6207 AC_FUNC_MEMCMP, and then define HAVE_BAD_MEMCMP as needed. 6208 6209 * fsinfo/fsi_gram.y, amd/conf_parse.y: indent #pragma command so 6210 pre-ANSI C compilers will ignore it. 6211 6212 * conf/autofs/autofs_linux.c (autofs_link_mount): call s/getpgrp() 6213 correctly depending on whether it takes a void or a 0. 6214 6215 * configure.in: check if s/getpgrp() takes void or a 0. 6216 62172002-01-08 Erez Zadok <ezk@whitestar.dyn.optonline.net> 6218 6219 * configure.in: use the newer AC_CONFIG_LINKS instead of 6220 AC_LINK_FILES. 6221 6222 * aux/macros/check_autofs_style.m4, check_checkmount_style.m4, 6223 check_mnttab_style.m4, check_mount_style.m4, 6224 check_network_transport_type.m4, check_umount_style.m4, 6225 check_nfs_prot_headers.m4: removed backward compatible code for 6226 pre-autoconf-2.14. 6227 62282002-01-07 Erez Zadok <ezk@whitestar.dyn.optonline.net> 6229 6230 * doc/Makefile.am: define @SET_MAKE@ for AC_PROG_MAKE_SET macro, since 6231 this Makefile could explicitly chdir to other directories and run 6232 make there. 6233 (install-ps): use ${MAKE} with ${MFLAGS}. 6234 6235 * Makefile.am (EXTRA_DIST_AUX): distribute new package_*.m4 files. 6236 Define @SET_MAKE@ for AC_PROG_MAKE_SET macro, since this Makefile 6237 could explicitly chdir to other directories and run make there. 6238 (install-snapshot): use ${MAKE} ${MFLAGS}, not hardcoded "make". 6239 6240 * configure.in: call AC_PROG_MAKE_SET to check if make program 6241 defines $MAKE variable. 6242 6243 * amd/get_args.c (get_version_string): use new PACKAGE_* macros 6244 and also report the bug-reporting address. 6245 6246 * aux/macros/package_{name,version}.m4, header_templates.m4: using 6247 new PACKAGE_{NAME,VERSION,BUGREPORT} macros. 6248 6249 * aux/macros/name_bugreport.m4: simple macro to print out the 6250 bug-reporting address which was configured in AC_INIT. 6251 6252 * bootstrap: remove new autoconf messages about misuse of 6253 m4_patsubst and m4_regexp (internal GNU M4 macros). 6254 6255 * configure.in: remove old comment above AC_OUTPUT. 6256 Use AC_CONFIG_FILES and AC_OUTPUT separately. 6257 Fix AC_REVISION use. 6258 Add AC_COPYRIGHT. 6259 Use new style for AC_INIT, listing package name, version, and 6260 bug-reporting address. 6261 Call new AMU_PACKAGE_* macros. 6262 6263 * updated copyright year to 2002 on all files 6264 6265 * configure.in: using newly renamed am-utils macros (AMU_*) 6266 6267 * aux/macros/*.m4: renamed ALL am-utils specific macros so they 6268 start with AMU_*, not AC_*. That way it is easier to distinguish 6269 between macros that come with am-utils and those that are part of 6270 Autoconf or Automake. It helps to identify those am-utils macros 6271 that can be removed once there is generic support for them in a 6272 future version of Autoconf. 6273 6274 * bootstrap: run automake --copy 6275 remove autom4te.cache dir before rerunning autoconf 6276 62772001-12-13 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 6278 6279 * scripts/amd.conf.5: correct title to section 5, not 8. Correct 6280 reversed meaning of nfs_proto and nfs_vers parameters. Typos 6281 reported by Peter Breitenlohner <peb@mppmu.mpg.de>. 6282 62832001-12-02 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 6284 6285 * scripts/ctl-amd.in: run "test" or "[" in front of -x/-f 6286 6287 * scripts/ctl-hlfsd.in: run "test" or "[" in front of -x/-f 6288 62892001-12-02 Ion Badulescu <ionut@moisil.badula.org> 6290 6291 * hlfsd/homedir.c (plt_print): fix typo (s/plot/plog/) in 6292 non-mkstemp code 6293 6294 * scripts/ctl-amd.in: touch/remove /var/lock/subsys/amd to make RH 6295 happy 6296 6297 * scripts/ctl-hlfsd.in: ditto (for hlfsd) 6298 6299 * conf/mtab/mtab_file.c (rewrite_mtab): fchmod(644) the file we 6300 get from mkstemp(), otherwise samba becomes very unhappy (sigsegv) 6301 6302 * conf/mtab/mtab_mach3.c (rewrite_mtab): ditto 6303 63042001-11-29 Ion Badulescu <ion@guppy.limebrokerage.com> 6305 6306 * tasks: updated 6307 6308 * NEWS: document the fixed autofs fd leak 6309 6310 * amq/amq.8: better document the -f option 6311 63122001-11-29 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 6313 6314 * libamu/mount_fs.c (mnt_flags): same this as for nolock option 6315 handling, do for maxgrps. 6316 63172001-11-29 Ion Badulescu <ion@guppy.limebrokerage.com> 6318 6319 * conf/autofs/autofs_linux.c (hash_init): determine the max number 6320 of fd's at runtime, use it to dynamically scale the hash and list 6321 arrays 6322 (autofs_get_fh): sanity check, don't allow a pipe() fd greater 6323 than autofs_max_fds 6324 (autofs_release_fh): close our end of the pipe here (no clue why 6325 or when it got commented out) 6326 (autofs_mounted): set kernelfd to -1 after closing it 6327 63282001-11-28 Philippe Troin <phil@fifi.org> 6329 6330 * libamu/mount_fs.c (mnt_flags): Drop nolock from generic mount 6331 opts. 6332 (compute_nfs_args): Added nolock handling. 6333 Adapted from an original patch from Avery Pennarun <apenwarr@nit.ca>. 6334 63352001-11-27 Erez Zadok <ezk@a-hpux11i.fsl.cs.sunysb.edu> 6336 6337 * ported to ia64-hp-hpux11.20 using HP's ANSI/C compiler. 6338 Couldn't use bison/flex because of 32-bit vs. 64-bit binaries 6339 issues. Had to use HP's own yacc/lex. 6340 63412001-11-26 Erez Zadok <ezk@a-hpux11i.fsl.cs.sunysb.edu> 6342 6343 * */Makefile.am: don't use $(OBJECTS) directly because it is no 6344 longer automatically defined now that Automake has automatic 6345 dependency tracking (which I turn off). Instead, hard-code 6346 minimal dependencies on am-utils' header files to depend on 6347 PROG_OBJECTS (where PROG is the program name being built). This 6348 was discovered by using HP's non-GNU make program. 6349 6350 * amd/nfs_start.c (checkup): cast getpagesize() return val to 6351 long, to avoid conflicts in division of a long by an int (on 6352 hpux11i, with their ANSI/C compiler). 6353 6354 * INSTALL, doc/am-utils.texi: port updates 6355 6356 * minor new ports: ia64-hp-hpux11.20, i386-unknown-freebsd5.0, 6357 i386-unknown-freebsd4.4, i386-pc-linux-rh7.2, 6358 ia64-unknown-linux-rh7.1. 6359 6360 * include/am_defs.h: actually declare extern definition for 6361 xdr_callmsg() if it doesn't already exist. 6362 6363 * aux/macros/header_templates.m4: declare template for 6364 HAVE_EXTERN_XDR_CALLMSG. 6365 6366 * configure.in: check for extern definition for xdr_callmsg() 6367 because hpux11 has that function but a bad <rpc/xdr.h> header file 6368 that doesn't define it in the right place. 6369 6370 * libamu/mount_fs.c (print_nfs_args): cast ->rdev to u_long b/c 6371 on hpux11 its type is dev_t. 6372 6373 * conf/nfs_prot/nfs_prot_hpux11.h: don't support autofs on hpux11 6374 yet. 6375 63762001-11-16 Erez Zadok <ezk@fsl-gw.fsl.cs.sunysb.edu> 6377 6378 * buildall (Usage): separate $cnf_flags and $extra_cnf_flags due 6379 to /bin/sh limitations. 6380 6381 * bootstrap (cmd): turn back on --ignore-deps (this Automake may 6382 have problems) 6383 6384 * libamu/xutil.c: remove __attribute__ format_arg statement for 6385 expand_error() because this function, although taking a 6386 printf-like string, does not use it in a printf function; it only 6387 expands a non-printf amd-special syntax %m. 6388 63892001-11-14 Erez Zadok <ezk@fsl-gw.fsl.cs.sunysb.edu> 6390 6391 * conf/nfs_prot/nfs_prot_linux.h: define KERNEL_VERSION macro 6392 before using it because older Linux systems don't define this 6393 (e.g., Red Hat 4.2) 6394 63952001-11-13 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 6396 6397 * configure.in: convert to using autoconfig 2.52. Use new macros. 6398 AC_MSG_NOTICE for messages; AH_TOP and AH_BOTTOM to top and bottom 6399 parts of autogenerated config.h.in; increase autoconf 6400 pre-requisite to version 2.50; use AC_DISABLE_SHARED not 6401 AM_DISABLE_SHARED. 6402 6403 * aux/macros/cache_check_dynamic.m4: finally I can use the new 6404 $ECHO_N syntax in macros instead of $ac_n, since I'm using a new 6405 autoconf. Isn't it nice to be such forward looking and having 6406 placed a comment "XXX: use the next line for autoconf-2.14 and 6407 newer"... :-) 6408 6409 * aux/macros/save_state.m4: highlight message with ***'s 6410 6411 * aux/macros/host_macros.m4: use proper M4 quoting ([], not "") 6412 6413 * config.{guess,sub}: upated from latest prep ftp distributions 6414 6415 * depcomp, missing, mkinstalldirs: upated from latest Automake 1.5 6416 6417 * ltmain.sh: updated from latest Libtool 1.4.2 6418 6419 * bootstrap: finally, new autoconf doesn't print silly "AC_TRY_RUN 6420 called without default to allow cross compiling" warnings. And, 6421 it only took like 3+ years to fix this. But, now it has anoter, 6422 albeit less annoying warning (which the manual says to ignore): 6423 "AC_PROG_LEX invoked multiple times". 6424 When autoheader is run, don't treat the "all clear" message 6425 "config.h.in is update" as an error. 6426 6427 * ltconfig: removed. not needed with latest version of libtool 6428 6429 * aux/macros/header_templates.m4: replaces acconfig.h and defines 6430 all CPP macros we use in this package, including their 6431 accompanying C /* comments */. 6432 6433 * acconfig.h: removed. replaced by new autoconf system to generate 6434 header templates using AH_TEMPLATE macros and such. 6435 6436 * aux/macros/msg.m4: removed. Replaced with new macro 6437 AC_MSG_NOTICE 6438 6439 * Makefile.am (EXTRA_DIST_AUX): remove aux/macros/msg.m4. Add 6440 aux/macros/header_templates.m4 6441 6442 * configure.in: early, in host_macros.m4, I'm renaming silly linux 6443 $host_os names such as linux-gnu and lignux to plain "linux". 6444 Alas, RMS finally had his way and libtool will NOT recognize 6445 "linux" as a valid system, only "linux-gnu". Sigh. Rich, I know 6446 you're responsible to Linux's fame. Kudos to you and your 6447 cohorts. But please don't force the rest of us to use those ugly 6448 or long names. Solution: temporarily name $host_os to "linux-gnu" 6449 before calling the AC_PROG_LIBTOOL macro, then name it back to 6450 "linux". (That way I don't have to maintain my own version of 6451 ltmain.sh. 6452 6453 * buildall: force running configure -C (to create and use a local 6454 config.cache file). New default behavior for autoconf is NOT to 6455 use cache files. Yeah, that's gonna fly real well with am-utils, 6456 with its 700+ automatic tests. 6457 6458 * conf/mtab/mtab_mach3.c (rewrite_mtab): use mkstemp instead of 6459 mktemp, if the former is available. 6460 6461 * conf/mtab/mtab_file.c (rewrite_mtab): use mkstemp instead of 6462 mktemp, if the former is available. 6463 6464 * mk-amd-map/mk-amd-map.c (main): use mkstemp instead of mktemp, 6465 if the former is available. 6466 6467 * aux/macros/check_nfs_socket_connection.m4: AC_DEFINE calls must 6468 be on a separate line, as per new Autoconf manual, to avoid some 6469 Bourne Shell syntactical bizarreness. 6470 64712001-11-13 Erez Zadok <ezk@a-rh71i.fsl.cs.suunysb.edu> 6472 6473 * amd/amfs_auto.c (amfs_auto_readdir_browsable): cast to u_long, 6474 for IA64 Linux. 6475 64762001-11-12 Ion Badulescu <ionut@buggy.badula.org> 6477 6478 * libamu/mtab.c (hasmntval): strtol can return a non-NULL pointer 6479 pointing to '\0' on success, so we need to allow for it. This 6480 fixes the problem with rejecting numerical mount options if they 6481 are the last option in the string. 6482 6483 * configure.in: increased library patchlevel 6484 6485 * NEWS: document the parsing bug 6486 64872001-10-29 Ion Badulescu <ionut@moisil.badula.org> 6488 6489 * configure.in: bumped version up to 6.1a5-pre 6490 6491 * NEWS: fixed speeling mistaike 6492 64932001-10-29 Ion Badulescu <ionut@moisil.badula.org> 6494 6495 * released snapshot am-utils-6.1a4 6496 64972001-10-26 Ion Badulescu <ionut@moisil.badula.org> 6498 6499 These changes fix autofs support for sublinks. While it is not 6500 perfect by any means and is hardly better than non-autofs, at 6501 least it works. 6502 6503 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req): don't 6504 reply if the mount is in progress 6505 (autofs_mount_succeeded): handle both delayed lookups and mounts 6506 (autofs_mount_failed): ditto 6507 6508 * amd/amfs_auto.c (amfs_auto_lookup_mntfs): don't dispose of the 6509 original opt_fs if we have a sublink 6510 65112001-10-23 Ion Badulescu <ionut@moisil.badula.org> 6512 6513 * amd/amfs_auto.c (amfs_auto_lookup_mntfs): fixed silly typo (mf 6514 instead of new_mf) which was causing null pointer error when 6515 sublinks were being used 6516 65172001-10-22 Ion Badulescu <ionut@moisil.badula.org> 6518 6519 * README.autofs: updated 6520 6521 * NEWS: updated 6522 6523 * INSTALL: updated 6524 6525 * AUTHORS: added myself 6526 6527 * doc/am-utils.texi: updated 6528 6529 * conf/autofs/autofs_solaris_v2_v3.c (xdr_autofs_rddirargs): use 6530 xdr_u_int() and cast things to (int) to appease Solaris 2.7 compile 6531 (autofs_readdir_2_req): cast req->rda_offset to (int), same as 6532 above 6533 65342001-10-22 Ion Badulescu <ionut@moisil.badula.org> 6535 6536 Autofs direct mounts have been verified to work on Solaris2.[67]. 6537 6538 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req): 6539 retrieve the uid and gid from the lookup request 6540 (autofs_mount_2_req): skip the first char in the name (it's a 6541 leading '/') if this is a direct mount 6542 6543 * amd/amfs_direct.c (amfs_direct_ops): use amfs_auto_lookup_child 6544 and amfs_auto_mount_child for amfs_direct's methods 6545 6546 * amd/amfs_auto.c (amfs_auto_lookup_child): don't leak an am_node 6547 if the mntfs lookup fails 6548 65492001-10-21 Ion Badulescu <ionut@moisil.badula.org> 6550 6551 * include/am_utils.h (AMF_REMOUNT): new flag, marks the node as 6552 pending a remount 6553 (mntfs): new member mf_fsflags, holds a copy of the filesystem's 6554 fs_flags 6555 (am_ops): new member autofs_fs_flags, holds the filesystem's flags 6556 when mounted onto an autofs node; fs_flags renamed to nfs_fs_flags 6557 6558 * conf/autofs/autofs_linux.c (create_autofs_service): turn on 6559 FS_MKMNT for amfs_auto and FS_MBACKGROUND for amfs_link 6560 (autofs_umount_succeeded): don't rmdir the mountpoint if a remount 6561 is needed [lest the access that triggered the remount will fail] 6562 6563 * amd/mntfs.c (init_mntfs): copy the filesystem's nfs_fs_flags 6564 into mf_fsflags on initialization 6565 6566 * amd/autil.c (am_unmounted): start the remounting right away if 6567 the node is marked as needing a remount [fixes the Linux autofs 6568 deadlock when mount/unmount collide] 6569 6570 * amd/amfs_auto.c (amfs_auto_lookup_node): mark the node as 6571 needing a remount if a mount request comes in while we're 6572 unmounting it 6573 (amfs_auto_lookup_mntfs): copy the filesystem's autofs_fs_flags 6574 into mf_fsflags if this is an autofs node 6575 6576 * amd/amfs_*.c, amd/ops_*.c: added initialization for the new 6577 autofs_fs_flags member of am_ops 6578 65792001-10-20 Ion Badulescu <ionut@moisil.badula.org> 6580 6581 With these changes, Solaris 2.[67] autofs support is finally 6582 functional! 6583 6584 * conf/autofs/autofs_solaris_v2_v3.c (autofs_readdir_2_req): stub 6585 (autofs_readdir_2_free, xdr_autofs_rddirargs, xdr_autofs_putrddirres, 6586 xdr_autofs_getrddirres, xdr_autofs_rddirres): new functions 6587 (autofs_lookup_2_req): do an actual lookup here, and tell the 6588 kernel to create a symlink if necessary 6589 (autofs_mount_2_req): no need to am_autofs_data 6590 (autofs_program_2): enable AUTOFS_READDIR 6591 (autofs_link_mount): no code needed here 6592 (autofs_link_umount): return success 6593 (autofs_mount_succeeded): lstat real mount points; don't mark 6594 symlinks as NOTIMEOUT 6595 6596 * amd/mntfs.c (init_mntfs): mf_dev and mf_rdev don't exist anymore 6597 6598 * amd/map.c (init_map): init am_dev and am_rdev to -1 6599 (free_map): free am_mfarray and all mntfs's listed 6600 6601 * amd/autil.c (mf_mounted): move the lstat of the node to the 6602 autofs-specific code 6603 6604 * amd/amfs_link.c (amfs_link_ops): don't background symlink creation 6605 66062001-10-18 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6607 6608 * aux/macros/os_cflags.m4 (irix6*): Enforce N32 ABI/mips3 ISA with cc. 6609 * BUGS: Explain this. 6610 66112001-10-02 Erez Zadok <ezk@agora.fsl.cs.sunysb.edu> 6612 6613 * doc/am-utils.texi (redhat-ctl-amd): document new script. 6614 6615 * scripts/Makefile.am: build redhat-ctl-amd but do not install it. 6616 6617 * scripts/redhat-ctl-amd.in: new script, useful to correctly 6618 control Amd on Red Hat Linux systems. Script adapted from ctl-amd 6619 and Red Hat's own rc.d script. 6620 66212001-10-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 6622 6623 * conf/nfs_prot/nfs_prot_osf5.h: Renamed from nfs_prot_osf5_1.h. 6624 (MNT2_NFS_OPT_AUTO): Disable. 6625 * Makefile.am (EXTRA_DIST_CONF): Reflect new name. 6626 * aux/macros/check_nfs_prot_headers.m4: Use this file for all 6627 Tru64 UNIX V5 and up releases. 6628 66292001-09-24 Ion Badulescu <ionut@moisil.badula.org> 6630 6631 * include/mount_headers1.h (MFS): define as 1 instead of nothing, 6632 to fix compile problems on OS X (patch from Ahmon Dancy) 6633 6634 * aux/macros/try_compile_anyfs.m4 (MFS): ditto 6635 66362001-08-13 Erez Zadok <ezk@fsl-gw.fsl.cs.sunysb.edu> 6637 6638 * doc/am-utils.texi (in_network Selector Variable): document 6639 expanded syntax 6640 6641 * libamu/wire.c (is_network_member): support for network/netmask 6642 as well as network/bits syntax in in_network() 6643 66442001-08-11 Erez Zadok <ezk@a-linux64.fsl.cs.sunysb.edu> 6645 6646 * amq/amq.c (show_mti): print full four digits for year, and print 6647 it in MM/DD/YYYY format, not in YY/MM/DD format. 6648 66492001-08-11 Ion Badulescu <lionut@gonzales.badula.org> 6650 6651 * conf/autofs/autofs_solaris_v2_v3.c (autofs_lookup_2_req): 6652 initial attempt to do something useful -- but commented out for now 6653 (autofs_link_mount): create an action structure with a link 6654 request and pass it up 6655 (autofs_mount_2_req): pass the link request to the kernel 6656 (autofs_free_data): new helper function 6657 6658 * conf/autofs/autofs_linux.h: added definition for autofs_data_t 6659 6660 * conf/autofs/autofs_solaris_v2_v3.h: ditto 6661 6662 * amd/map.c (init_map): initialize am_autofs_data 6663 (free_map): call the autofs cleanup function if necessary 6664 6665 * include/am_utils.h (am_node): added private data and cleanup 6666 function for autofs 6667 6668 * tasks: removed some obsolete entries 6669 66702001-08-11 Erez Zadok <ezk@a-solaris8.fsl.cs.sunysb.edu> 6671 6672 * amd/map.c (free_map_if_success): run autofs_umount_failed() only 6673 if this mount node is of type autofs. 6674 66752001-08-11 Ion Badulescu <lionut@gonzales.badula.org> 6676 6677 * amd/amd.h: removed mf_array from struct continuation (moved into 6678 am_node) 6679 6680 * include/am_utils.h: removed VLOOK_LOOKUP; renamed vlookuppn to 6681 vlookup_child; added vmount_child; added mount_child to the fs_ops 6682 API; added prototypes for amfs_auto_mount_child and 6683 amfs_error_mount_child 6684 6685 * amd/map.c (init_map): initialize am_mfarray to 0 6686 6687 * amd/amfs_*, amd/ops_*: new API function mount_child, old API 6688 function lookuppn renamed to lookup_child 6689 6690 * amd/amfs_auto.c: renamed amfs_auto_lookuppn1 to 6691 amfs_auto_lookup_node; renamed amfs_auto_lookuppn2 to 6692 amfs_auto_lookup_mntfs; renamed amfs_auto_lookuppn3 to 6693 amfs_auto_mount_child; moved the freeing of the error mntfs in the 6694 newly allocated am_node from lookup_mntfs to mount_child; make 6695 sure lookup_child returns a negative error if the node needs to be 6696 mounted; removed the call to lookuppn3 from lookup_child 6697 6698 * amd/amfs_error.c: added stub implementations of 6699 amfs_error_lookup_child and amfs_error_mount_child 6700 6701 * amd/amfs_direct.c, amd/amfs_union.c, amd/map.c, amd/nfs_subr.c, 6702 conf/autofs/autofs_linux.c, conf/autofs/autofs_solaris_v2_v3.c: 6703 call both lookup_child and mount_child, instead of the old 6704 lookuppn API method 6705 67062001-07-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6707 6708 * amd/get_args.c (get_args): a better way to handle GNU and 6709 non-GNU getopts without strdup-ing the getopt string. 6710 67112001-07-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6712 6713 * amd/info_ldap.c (amu_ldap_rebind): The first time you called 6714 amu_ldap_init, aldh->ldap is not set. So when amu_ldap_rebind is 6715 called, this function is absolutely sure to return 0. Then 6716 amu_ldap_init return 0 without having opened any LDAP connection. 6717 This is not the correct behavior. 6718 (get_ldap_timestamp, amu_ldap_search): error to free an object 6719 ("entry") that is automatically freed by the library. Patch from 6720 Sebastien Bahloul <sebastien.bahloul@mangoosta.fr>. 6721 67222001-07-19 Ion Badulescu <ionut@moisil.badula.org> 6723 6724 * AUTHORS (variables): added Philippe Troin 6725 6726 * Makefile.am (EXTRA_DIST): added bootstrap 6727 6728 * include/am_compat.h (xfs_args_t): define as u_int if the 6729 filesystem is supported but we can't autodetect the type for 6730 xfs_args_t. This allows Linux to mount xfs filesystems. 6731 67322001-07-12 Philippe Troin <phil@fifi.org> 6733 6734 * doc/am-utils.texi: Added @dircategory Administration. 6735 67362001-07-12 Philippe Troin <phil@fifi.org> 6737 6738 * aux/macros/with_addon.m4: Created. Wrapper around AC_ARG_WITH 6739 with only the `yes' and `no' as possible answers. 6740 6741 * configure.in: Added support for disabling LDAP and HESIOD even 6742 if the supporting libraries are found. 6743 6744 * Makefile.am (EXTRA_DIST_AUX): Added with_addon.m4 macro file. 6745 67462001-07-12 Philippe Troin <phil@fifi.org> 6747 6748 * include/am_compat.h: Removed forced definition of MNTTAB_OPT_DEV 6749 if MNT2_GEN_OPT_NODEV was found. Actually, the dev= (SVR4) options 6750 and the linux nodev options are different beasts. 6751 6752 * conf/mount/mount_linux.c (opt_map): Removed the MNTTAB_OPT_DEV 6753 entry (not really necessary on linux). 6754 67552001-07-12 Philippe Troin <phil@fifi.org> 6756 6757 * amd/get_args.c (get_args): Prepend "+" to the getopt string if 6758 HAVE_GNU_GETOPT to avoid getting all options (even the ones after 6759 the first non-option argument) slurped in by GNU getopt. 6760 6761 * aux/macros/check_gnu_getopt.m4: Created. Defines HAVE_GNU_GETOPT 6762 if GNU/glibc getopt implementation is detected. 6763 6764 * configure.in: Added call to AC_CHECK_GNU_GETOPT. 6765 6766 * acconfig.h: Document HAVE_GNU_GETOPT. 6767 6768 * Makefile.am (EXTRA_DIST_AUX): Added check_gnu_getopt.m4 macro file. 6769 67702001-06-25 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6771 6772 * LSM.am-utils, NEWS, README.y2k, ChangeLog: make sure all 6773 am-utils URL references use www.am-utils.org, not the columbia 6774 URL. 6775 67762001-06-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 6777 6778 * conf/transp/transp_sockets.c (create_nfs_service): cast to 6779 u_long to ensure clean compile on freebsd5 and bsdi2. 6780 67812001-05-23 Ion Badulescu <ionut@moisil.badula.org> 6782 6783 WARNING: WORK IN PROGRESS 6784 6785 It works for me on Linux (both autofs and nfs mounts), for nfs and 6786 link, but I won't make any guarantees outside those. 6787 6788 * amd/mntfs.c (find_mntfs): reuse the mntfs only if both the mount 6789 point and the device/fileserver are the same. This is an important 6790 change of philosophy, watch out for memory leaks! 6791 6792 * amd/map.c (get_ap_child): helper function for 6793 amfs_auto_lookuppn, creates a new am_node for key fname, inits it, 6794 and inserts it into all necessary structures 6795 6796 * amd/amfs_auto.c (free_continuation): free unused mntfs's; don't 6797 free any of the removed fields 6798 (amfs_auto_lookuppn, amfs_auto_bgmount): split lookuppn into three 6799 subfunctions, including some code stolen from bgmount; lookuppn 6800 now generates an array of possible mntfs to try mounting, and 6801 bgmount will actually try to mount each of them. 6802 (amfs_auto_lookuppn[123]): the three new subfunctions for lookuppn 6803 (amfs_parse_defaults): new helper function for lookuppn 6804 68052001-05-19 Erez Zadok <ezk@kosh.dyn.optonline.net> 6806 6807 * conf/mount/mount_linux.c: typo: added comma after '0' element. 6808 68092001-05-19 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6810 6811 * conf/autofs/autofs_linux.c (AUTOFS_MAX_VERSION): allow using 6812 autofs-v4 again 6813 (autofs_get_opts): don't pass pgrp, the kernel will get it 6814 automatically anyway, not to mention that we were passing bogus 6815 data if amd was not daemonized. 6816 6817 * conf/mount/mount_linux.c (linux_nfs_error): don't special case 6818 the 0 result, just put it into the translation list 6819 68202001-05-19 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6821 6822 * conf/mount/mount_linux.c (linux_nfs_error): don't report success 6823 (0) as error (NE_IO)! 6824 68252001-05-18 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6826 6827 * amd/amfs_host.c (amfs_host_mount): don't fail the mount if at 6828 least one share is already mounted 6829 68302001-05-17 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6831 6832 * libamu/util.c (str3cat): updated comment 6833 6834 * include/am_utils.h: added VLOOK_LOOKUP and FS_DIRECT 6835 6836 * conf/autofs/autofs_linux.c (autofs_get_fh): removed obsolete comment 6837 (autofs_mounted): disable autofs support for host f/s if version < 4 6838 (create_autofs_service): turn on FS_MKMNT on auto f/s if using autofs 6839 (autofs_umount_succeeded): use rmdirs instead of rmdir 6840 (autofs_mount_failed): ditto 6841 6842 * amd/opts.c (expand_op): align the debugging messages 6843 6844 * amd/map.c (mount_auto_node): use am_node *mp instead of casting 6845 the void *arg; update the comment 6846 6847 * amd/autil.c (am_mounted): check the FS_DIRECT flag instead of 6848 comparing to &amfs_direct_ops 6849 (mount_node): ifs_mount doesn't exist, make note of it in the 6850 comment 6851 6852 * amd/amfs_direct.c (amfs_direct_ops): added FS_DIRECT to fs_flags 6853 6854 * amd/amfs_auto.c (amfs_auto_mount): removed the autofs hack to 6855 create the mountpoint directory for auto f/s; it is now handled in 6856 autofs_linux.c 6857 (amfs_auto_bgmount): renamed the mpe parameter to mp_error; 6858 renamed dont_retry to retry and reverted its meaning as well; 6859 moved the mp variable up one scope and made use of it throughout 6860 the function; 6861 (amfs_auto_readdir): whitespace 6862 (amfs_auto_readdir_browsable): whitespace, also some debugging 6863 6864 * amd/am_ops.c (vops): updated a comment 6865 6866 * .cvsignore: added A.i386-pc-linux-rh7.[01] 6867 68682001-05-01 Ion Badulescu <ionut@gonzales.dev.hydraweb.com> 6869 6870 * conf/mount/mount_linux.c: fixed stupid error in the linux 6871 nfs_errormap[], which was mapping ENOENT to success!!! 6872 68732001-04-28 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6874 6875 * BUGS: added info about the direct mount problems on Linux and 6876 about the kernel patches on www.am-utils.org. 6877 6878 * conf/autofs/autofs_solaris_v2_v3.c (autofs_unmount_2_req): 6879 removed obsolete comment 6880 6881 * amd/autil.c (forcibly_timeout_mp): always log a message when the 6882 forced unmount request is ignored 6883 (mf_mounted): don't lstat unless this is an autofs mount point, 6884 lest we deadlock 6885 6886 * amd/amfs_auto.c (amfs_auto_bgmount): don't gratuitously add 6887 MFF_MKMNT to the flags, it causes deadlocks later on when 6888 unmounting 6889 68902001-04-14 Erez Zadok <ezk@whitestar.dyn.optonline.net> 6891 6892 * COPYING: update copyright year 6893 6894 * amd/amfs_auto.c, amd/amfs_host.c, amd/amfs_nfsx.c, 6895 amd/amfs_toplvl.c, amd/amfs_union.c, amd/conf.c, amd/info_nis.c, 6896 amd/info_nisplus.c, amd/mapc.c, amd/nfs_subr.c, amd/ops_nfs.c, 6897 amd/rpc_fwd.c, amd/srvr_amfs_auto.c, amd/srvr_nfs.c, 6898 conf/autofs/autofs_solaris_v1.c, conf/mtab/mtab_file.c, 6899 conf/mtab/mtab_isc3.c, conf/mtab/mtab_svr4.c, 6900 conf/transp/transp_sockets.c, conf/transp/transp_tli.c, 6901 libamu/mount_fs.c, libamu/mtab.c: rewritten various dlog/plog 6902 messages for clarity, to avoid duplication, to better recognize 6903 what the message means and where it ran, and to fix typos. 6904 6905 * amd/nfs_subr.c (nfsproc_lookup_2_svc): moved trace message of 6906 function's name to the beginning of the function, before any other 6907 messages are logged. 6908 69092001-04-14 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6910 6911 * conf/mount/mount_linux.c (do_mount_linux): removed plog() of 6912 binary data 6913 69142001-04-05 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6915 6916 * include/am_defs.h: define NFSCLIENT, NFS, PCFS, LOFS, RFS, 6917 MSDOSFS, MFS and CD9660 to 1, so that both #if FOO and #ifdef FOO 6918 work (needed for MacOS X); removed duplicate definition of NFS. 6919 69202001-03-29 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6921 6922 * amd/amd.h, amd/amfs_auto.c, amd/conf.c, 6923 doc/am-utils.texi, 6924 scripts/amd.conf-sample, scripts/amd.conf.5: 6925 renamed selectors_on_default to selectors_in_defaults, 6926 kept the former as a deprecated option; 6927 renamed CFM_ENABLE_DEFAULT_SELECTORS to CFM_SELECTORS_IN_DEFAULTS; 6928 renamed gopt_selectors_on_default() to gopt_selectors_in_defaults() 6929 69302001-03-19 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6931 6932 * amd/amfs_toplvl.c, amd/amfs_auto.c, amd/srvr_nfs.c, 6933 include/am_utils.h: compile fixes for --enable-debug=no 6934 69352001-03-15 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6936 6937 * NEWS: updated 6938 6939 * README.autofs: updated 6940 6941 * conf/mount/mount_linux.c (linux_version_code): export the fn 6942 6943 * conf/nfs_prot/nfs_prot_linux.h: ditto 6944 6945 * conf/autofs/autofs_linux.c (create_autofs_service): verify the 6946 kernel version here, and turn off bind_works if the kernel is 6947 older than 2.4.0. 6948 (autofs_link_mount): don't touch bind_works here, it's useless 6949 b/c we're in a child process; remove the mountpoint directory if 6950 the bind mount fails 6951 6952 * amd/opts.c (eval_fs_opts): changed some annoying debugging plogs 6953 into dlogs 6954 6955 * conf/autofs/autofs_linux.c (autofs_link_mount): zero out the 6956 mntent struct before initializing it 6957 69582001-03-14 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 6959 6960 * conf/mount/mount_linux.c (parse_opts): added support for lofs 6961 (mount_linux): support lofs through bind mounts and/or FiST lofs 6962 6963 * scripts/ctl-hlfsd.in: search for /var/spool/mail in addition to 6964 /var/mail and /usr/spool/mail 6965 6966 * conf/nfs_prot/nfs_prot_linux.h (MS_BIND): add define for it, if 6967 kernel is newer than 2.4.0 6968 (MNTTYPE_LOFS): ditto 6969 6970 * conf/autofs/autofs_solaris_v2_v3.c (autofs_link_umount): new stub 6971 (autofs_lookup_failed): removed stub 6972 6973 * conf/autofs/autofs_linux.c (autofs_lookup_failed): moved up in 6974 the file, made static; 6975 (autofs_link_mount): activate MNT2_GEN_OPT_BIND code; use stat() 6976 and friends to determine if bind mounts can be used and to trigger 6977 further cascading mounts; return proper error codes 6978 (autofs_link_umount): distinguish between symlinks and bind mounts 6979 and handle both correctly 6980 (autofs_umount_succeeded): remove call to autofs_link_umount() 6981 6982 * amd/map.c (umount_exported): try to unmount all mount points on 6983 an autofs filesystem; this isn't really needed and will be removed 6984 when we start handling restarting autofs mounts 6985 6986 * amd/amfs_link.c (amfs_link_[u]mount): call autofs_link_[u]mount, 6987 if necessary 6988 6989 * amd/amfs_auto.c (amfs_auto_bgmount): fixed a bug that was 6990 causing the wrong mntfs to be selected when using autofs; removed 6991 call to autofs_link_mount() (moved where it belongs, in 6992 amfs_link.c) 6993 6994 * amd/amfs_link.c: added FS_MBACKGROUND to fs flags -- cleaner 6995 solution is needed, because background mounting is only necessary 6996 for linux autofs + bind mounts 6997 6998 * amd/amd.h: removed prototype for autofs_lookup_failed (internal 6999 static function for linux autofs); added prototype for 7000 autofs_link_umount 7001 7002 * configure.in: bump up library patchlevel 7003 70042001-02-28 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7005 7006 * aux/macros/check_mount_trap.m4, 7007 aux/macros/check_nfs_fh_dref.m4, 7008 aux/macros/check_nfs_prot_headers.m4, 7009 aux/macros/type_recvfrom_fromlen.m4, 7010 aux/macros/type_yp_order_outorder.m4: 7011 Fixed newer freebsd's fh type, expanded more aix3, osf2, hpux9 to 7012 aix[1-3], osf[1-3] and hpux[6-9]. 7013 70142001-02-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7015 7016 * check_mount_style.m4, check_mount_trap.m4, 7017 check_network_transport_type.m4, check_nfs_fh_dref.m4, 7018 check_nfs_prot_headers.m4, check_nfs_sa_dref.m4, 7019 check_nfs_socket_connection.m4, os_cflags.m4, 7020 type_yp_order_outorder.m4: small fixes to Ion's cleanup, and more 7021 cleanup (use [[0-1]] instead of M4 changequote commands). 7022 7023 * Makefile.am: removed unused conf/trap/trap_hpux11.h 7024 70252001-02-27 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7026 7027 * aux/macros/check_network_transport_type.m4, 7028 aux/macros/check_mount_style.m4, 7029 aux/macros/check_mount_trap.m4, 7030 aux/macros/check_network_transport_type.m4, 7031 aux/macros/check_nfs_fh_dref.m4, 7032 aux/macros/check_nfs_prot_headers.m4, 7033 aux/macros/check_nfs_sa_dref.m4, 7034 aux/macros/check_nfs_socket_connection.m4, 7035 aux/macros/os_cflags.m4, 7036 aux/macros/type_auth_create_gidlist.m4, 7037 aux/macros/type_recvfrom_fromlen.m4, 7038 aux/macros/type_yp_order_outorder.m4: 7039 Reworked the scripts, so that a new _unknown_ version of a known OS 7040 will use the option for the newest _known_ version of that OS. For 7041 example, when freebsd6 comes out, it will use the stuff for 7042 freebsd5, not the stuff for freebsd2. This makes configure more 7043 likely to succeed on new systems/versions. 7044 7045 * Makefile.am (EXTRA_DIST_AUX): added check_autofs_style.m4 (grr) 7046 70472001-02-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7048 7049 * Makefile.am (install-snapshot): use a different symlink target 7050 for the experimental snapshots. 7051 70522001-02-23 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7053 7054 * Makefile.am (EXTRA_DIST_CONF): include nfs_prot_darwin.h in 7055 distributions. 7056 70572001-02-22 Erez Zadok <ezk@earth.cs.columbia.edu> 7058 7059 * released snapshot am-utils-6.1a3 7060 7061 * amd/Makefile.am (EXTRA_amd_SOURCES): don't forget to distribute 7062 get_args.c 7063 70642001-02-21 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7065 7066 * libamu/mtab.c: added the functions hasmnteq and haseq to 7067 ease checks for non-numeric values in opt=value strings. 7068 Recoded hasmntval to qualify input as numeric, allow hex and 7069 octal strings on rhs of =, and log when the value is missing 7070 or invalid. 7071 7072 * conf/mount/mount_linux.c: revised mount_linux to use new 7073 hasmnteq function to extract type of non-nfs mounts, and added 7074 a log message to catch possible failure of strdup. 7075 7076 * amd/am_ops.c: revised merge_ops to use new haseq function 7077 7078 * amd/srvr_nfs.c: revised find_nfs_srvr to use hasmnteq to 7079 discover protocol setting. 7080 7081 * include/am_utils.h: added function prototypes for hasmnteq 7082 and haseq 7083 70842001-02-19 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7085 7086 * include/mount_headers2.h (_LINUX_NFS3_H): define it, to avoid 7087 pulling in unwanted declarations from 2.2.19pre and 2.4.1ac 7088 7089 * include/am_defs.h (_LINUX_NFS3_H): ditto 7090 7091 * conf/nfs_prot/nfs_prot_linux.h: whitespace, comments 7092 70932001-02-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7094 7095 * aux/macros/check_fs_mntent.m4 (ac_safe): remove debugging "echo" 7096 command. 7097 70982001-02-18 Erez Zadok <ezk@earth.cs.columbia.edu> 7099 7100 * aux/macros/mount_headers.m4, include/mount_headers[12].h: split 7101 mount_headers.h in two because one relative header (nfs_prot.h) 7102 file cannot be included inside another from the start directory of 7103 the first (it's relative to the directory of the first). 7104 71052001-02-09 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7106 7107 * AUTHORS: added Ahmon Dancy <dancy@franz.com> 7108 7109 * (all): added Darwin/Rhapsody/Apple OS X support from Ahmon Dancy 7110 7111 * aux/macros/mount_headers.m4: moved all the C code into a 7112 separate file, include/mount_headers.h; the effect is that 7113 configure goes down in size by a factor of 2.5! 7114 7115 * include/mount_headers.h: new file, with C code from 7116 aux/macros/mount_headers.m4 7117 71182001-02-01 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7119 7120 * conf/mount/mount_linux.c: made linux_nfs_error() more robust. 7121 71222001-02-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7123 7124 * released snapshot am-utils-6.1a2 7125 7126 * updated ltmain.sh and ltconfig from latest stable version of 7127 libtool-1.3.5 7128 71292001-02-01 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7130 7131 * conf/nfs_prot/nfs_prot_linux.h (nfs_error): moved the definition 7132 of nfs_error here, from mount_linux.c, so that it can actually be 7133 used. 7134 7135 * conf/mount/mount_linux.c: added unused errno 41 to the 7136 nfs_errormap array, lest the following errno's get shifted up by 7137 one! 7138 7139Sat Jan 13 00:04:38 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7140 7141 * amd/amd.h (autofs_lookuppn): Fixup whitespace. 7142 * amd/amfs_auto.c (amfs_auto_bgmount): Likewise. 7143 * amd/amfs_error.c: (amfs_error_match): Likewise. 7144 * amd/amfs_host.c (fetch_fhandle): Fixup whitespace. Remove 7145 unnecessary temporary variable. 7146 * amd/info_file.c (read_line): Likewise. 7147 (search_or_reload_file): Likewise. 7148 * amd/info_ldap.c (get_ldap_timestamp): Likewise. 7149 * amd/map.c (get_root_ap): Likewise. 7150 * amd/nfs_prot_svc.c: Likewise. 7151 * amd/ops_TEMPLATE.c (foofs_match, foofs_lookuppn, 7152 foofs_readlink, foofs_ffserver): Likewise. 7153 * amd/ops_autofs.c (autofs_bgmount): Likewise. 7154 * amd/ops_lofs.c (lofs_match): Likewise. 7155 * amd/ops_nfs.c (got_nfs_fh): Fixup whitespace. 7156 * amd/ops_xfs.c (xfs_match): Likewise. 7157 * amd/srvr_amfs_auto.c (srvrlog): Line break. 7158 * amd/srvr_nfs.c (got_portmap, call_portmap, nfs_pinged, 7159 nfs_srvr_port): Fixup whitespace. 7160 * conf/nfs_prot/nfs_prot_bsdi2.h: Likewise. 7161 * conf/nfs_prot/nfs_prot_hpux.h: Likewise. 7162 * conf/nfs_prot/nfs_prot_hpux11.h: Likewise. 7163 * conf/nfs_prot/nfs_prot_irix5.h: Likewise. 7164 * conf/nfs_prot/nfs_prot_irix6.h: Likewise. 7165 * conf/nfs_prot/nfs_prot_nextstep.h: Likewise. 7166 * conf/nfs_prot/nfs_prot_osf2.h: Likewise. 7167 * conf/nfs_prot/nfs_prot_osf4.h: Likewise. 7168 * conf/nfs_prot/nfs_prot_osf5_1.h: Likewise. 7169 * conf/nfs_prot/nfs_prot_sunos3.h: Likewise. 7170 * conf/nfs_prot/nfs_prot_sunos4.h: Likewise. 7171 * conf/nfs_prot/nfs_prot_ultrix.h: Likewise. 7172 * conf/transp/transp_tli.c (get_mount_client): Likewise. 7173 * hlfsd/nfs_prot_svc.c: Likewise. 7174 * include/am_defs.h (sys_errlist): Likewise. 7175 * include/am_utils.h (am_get_progname, am_get_hostname, 7176 amq_program_1): Likewise. 7177 (nfsxprt): Moved declaration. 7178 7179Fri Jan 12 23:31:45 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7180 7181 Removed support for amq -M. 7182 7183 * acconfig.h (ENABLE_AMQ_MOUNT): Removed. 7184 * aux/macros/opt_amq_mount.m4: Removed. 7185 * Makefile.am (EXTRA_DIST_AUX): Don't distribute 7186 opt_amq_mount.m4. 7187 * configure.in (AC_OPT_AMQ_MOUNT): Removed invocation. 7188 7189 * amd/amq_subr.c (ok_security, amqproc_mount_1_svc): Removed. 7190 * amd/amq_svc.c (amq_program_1): Removed amq -M support. 7191 * amq/amq.c (mount_map): Removed. 7192 (main): Removed -M option handling. 7193 Removed transport-type specific CLIENT creation. 7194 (get_secure_amd_client, amq_bind_resv_port, privsock): Removed. 7195 7196 * amq/amq.8: Removed -M documentation. 7197 * doc/am-utils.texi (Top-level Filesystem): Removed amq -M 7198 reference, but retain comment on mount -t amd. 7199 (Controlling Amd): Likewise. 7200 7201 * tasks: Removed this task. 7202 7203Fri Jan 12 23:18:26 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7204 7205 * conf/autofs/autofs_*.c: Bump copyright year to 2001. 7206 * hlfsd/hlfsd.h (HLFSD_VERSION): Likewise. 7207 7208 * aux/macros/check_autofs_style.m4: Renamed solaris[12] styles to 7209 solaris_v1, solaris_v2_v3 to reflect that these are AutoFS 7210 protocol version numbers, not solaris versions. 7211 * conf/autofs/autofs_solaris[12].[ch]: Renamed to 7212 autofs_solaris_{v1, 2_v3}.[ch] to reflect this. 7213 * Makefile.am (EXTRA_DIST_CONF): Likewise. 7214 7215 * aux/macros/check_autofs_style.m4: Use solaris2 style for both 7216 versions 2 and 3 of the AutoFS protocol. 7217 7218 Handle missing AUTOFS_POSTUNMOUNT, AUTOFS_POSTMOUNT (unnecessary 7219 with Solaris 8 mntfs). 7220 7221 * conf/autofs/autofs_solaris2.c (xdr_postumntreq, xdr_postumntres, 7222 xdr_postmountreq, xdr_postmountres, autofs_postunmount_2_req, 7223 autofs_postmount_2_req ): Don't define for version 3. 7224 (autofs_program_2): Don't handle AUTOFS_POSTUNMOUNT, 7225 AUTOFS_POSTMOUNT if missing. 7226 7227 * conf/nfs_prot/nfs_prot_sunos5_8.h: Enable AutoFS support. 7228 7229 * aux/macros/check_autofs_style.m4: Use empty autofs_default.[ch] 7230 files on systems without existing autofs port. 7231 * conf/autofs/autofs_default.[ch]: New files, empty. 7232 * Makefile.am (EXTRA_DIST_CONF): Distribute them. 7233 * INSTALL: With this change, Solaris 8 and Tru64 5.1 compile and 7234 link. 7235 72362001-01-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7237 7238 * Makefile.am (EXTRA_DIST): distribute new LDAP files. 7239 7240 * README.ldap, ldap-id.txt, ldap-id.ms: LDAP status information, 7241 proposed Schema, and internet draft. 7242 7243Fri Jan 12 22:27:07 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7244 7245 * Support Tru64 UNIX V5.1: 7246 7247 * conf/nfs_prot/nfs_prot_osf5_1.h: New file. 7248 7249 * Makefile.am (EXTRA_DIST_CONF): Distribute it. 7250 7251 * aux/macros/check_nfs_prot_headers.m4: Tru64 UNIX V5.1 has 7252 AutoFS, need to disable it until a port exists. 7253 7254 * INSTALL, doc/am-utils.texi (Supported Platforms): Mention new 7255 minor port. 7256 72572001-01-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7258 7259 * ALL: bump copyright year to 2001. 7260 72612001-01-05 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7262 7263 * acconfig.h: correct comments for NODEV/NONDEV mount options 7264 7265Fri Jan 5 05:12:02 2001 Erez Zadok <ezk@subzero.cs.columbia.edu> 7266 7267 * libamu/xdr_func.c: removed ugly casts to "groups*", now that 7268 irix6's nfs_prot.h is fixed. 7269 7270 * conf/nfs_prot/nfs_prot_irix6.h: copied relevant parts of 7271 <rpcsvc/mount.h> here so we don't have to include this header. 7272 72732001-01-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7274 7275 * conf/nfs_prot/nfs_prot_irix6.h: redefine "groups" typedef to 7276 struct groups, not the pointer to this struct. 7277 7278 * include/am_xdr_func.h: prototype should take "groups *" as 2nd 7279 arg. 7280 7281 * libamu/xdr_func.c (xdr_groupnode, xdr_exportnode): change 7282 casting of second arg of xdr_groups to "groups *". It's only 7283 needed for irix6, due to problems with xdr_groups on that platform. 7284 (xdr_groups): prototype should take "groups *" as 2nd arg. 7285 7286 * conf/nfs_prot/nfs_prot_aix*.h: correct xdr_groups extern 7287 definition. Report from Ahmon Dancy <dancy@franz.com>. 7288 72892000-12-06 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7290 7291 * include/am_defs.h: force non-inclusion of <linux/fs.h> via 7292 <linux/auto_fs.h> 7293 7294 * conf/autofs/autofs_linux.c (autofs_mounted): rename 7295 AUTOFS_MIN_PROTO_VERSION to AUTOFS_MIN_VERSION (leftover from 7296 previous commit) 7297 7298 * configure.in: fixed libtool version 7299 73002000-12-02 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7301 7302 * doc/am-utils.texi (opts Option): document lock/nolock 7303 73042000-12-02 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7305 7306 * conf/autofs/autofs_linux.h: added struct autofs_pending_mount; 7307 modified autofs_fh_t to have a linked list of autofs_pending_mount; 7308 added some support for autofs4 7309 7310 * conf/autofs/autofs_linux.c: use a linked list for pending 7311 request, to allow for handling multiple simultaneous request; 7312 incipient non-functional support for autofs4; incipient 7313 non-functional support for bind-mounting 7314 7315 * amd/amd.c (main): print a warning if PROCLOCK is requested but 7316 the O/S doesn't support it 7317 7318 * libamu/mount_fs.c (mnt_flags): allow the use of the "nolock" 7319 option 7320 7321 * include/am_defs.h: don't include <linux/fs.h> on a glibc2 7322 system; include <linux/auto_fs4.h> if it exists, instead of 7323 <linux/auto_fs.h> 7324 7325 * include/am_compat.h: define the "nolock" mnttab option if the 7326 NONLM NFS mount option is defined 7327 7328 * acconfig.h: added MNT2_NFS_OPT_NONLM, MNT2_GEN_OPT_BIND 7329 7330 * configure.in: added detection of the NONLM Linux NFS mount 7331 option; added a clarification for the library versioning rules and 7332 increased the minor level; added detection of <linux/auto_fs4.h> 7333 and the MS_BIND generic mount option 7334 73352000-11-29 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7336 7337 * Enabled Solaris 2.7 autofs support (tested, works) 7338 7339 * Updated NEWS, README.autofs 7340 7341 * Updated Makefile's, make dist is now fixed 7342 7343 * Fixed potential memory leak in map.c 7344 7345 * Fixed autofs style detection for solaris 2.[67] 7346 7347 * Added a few casts in autofs_solaris2.c, needed on Solaris 2.7 7348 73492000-11-28 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7350 7351 More Solaris 2.[67] work in progress: 7352 7353 * changed the API for the mount/umount methods: fmount/fumount are 7354 gone, and mount/umount now take two arguments (am_node and mntfs) 7355 7356 * changed the semantics of the MFF_AUTOFS flag: MFF_AUTOFS now 7357 means the mntfs is a filesystem of type autofs, and AMF_AUTOFS 7358 means the am_node is a node on a filesystem of type autofs. 7359 7360 * renamed nfs_program_2_transp to current_transp so it can be used 7361 with autofs 7362 7363 * renamed quick_reply() to nfs_quick_reply() 7364 7365 * added two more autofs methods: autofs_umount_failed() and 7366 autofs_compute_mount_flags() -- it turns out that on sol2.6 the 7367 autofs mounts MUST be overlay'ed 7368 7369 * moved the autofs_mount_succeeded() into am_mounted() 7370 7371 * made amd *not* timeout autofs mounts -- the kernel will do it 7372 for us 7373 7374 * store dev and rdev of a mounted filesystem in the mntfs 7375 structure, to help autofs 7376 7377 * moved the rmdirs() call from uninit_mntfs() to am_umounted(), to 7378 prevent deadlocking with autofs 7379 7380 * amd/Makefile.am: shuffled things around to make 7381 update_build_version be the last thing that runs 7382 73832000-11-27 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7384 7385 * split amd/ops_autofs.c into conf/autofs/autofs_<system>.c files 7386 and made configure create a symlink to the appropriate one 7387 7388 * moved the xdr autofs functions from libamu/xdr_func.c into the 7389 system-specific conf/autofs/autofs*.c 7390 7391 * added some more experimental code to the sol2.6 autofs support, 7392 but it's by no means functional 7393 73942000-11-27 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7395 7396 * libamu/wire.c (getwire_lookup): truncate the hostname to 7397 MAXHOSTNAMELEN characters. 7398 73992000-11-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7400 7401 * include/am_utils.h (MAXHOSTNAMELEN): if not defined, set this to 7402 256 bytes, not 64. Suggestion form Kris Kennaway 7403 <kris@FreeBSD.org>. 7404 74052000-11-26 Erez Zadok <ezk@dmath5.geometrie.tuwien.ac.at> 7406 7407 * configure.in (AC_CHECK_MNT2_NFS_OPTS): check for NFS mount 7408 options kerb, rdirplus, readdirsize, and xlatecookie 7409 (NetBSD-1.5K). 7410 7411 * acconfig.h: recognize NFS mount options rdirplus, readdirsize, 7412 and xlatecookie (NetBSD-1.5K) 7413 74142000-11-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7415 7416 * amd/srvr_nfs.c: comment on NFS proto search order. 7417 7418 * libamu/xutil.c (real_plog): don't try to write the last byte of 7419 the fmt buf. security suggtion from NetBSD: Thomas Klausner 7420 <wiz@danbala.ifoer.tuwien.ac.at> 7421 74222000-11-22 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7423 7424 * amd/amfs_auto.c (amfs_auto_bgmount): removed the initialization of 7425 fattr.na_fileid, it is now done in map.c when the map is initialized 7426 7427 * amd/map.c (init_map): initialize fattr.na_fileid to am_gen, not 7428 to 0, to avoid cache aliasing problems on Linux (and to follow the 7429 NFS spec!) 7430 74312000-11-22 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at> 7432 7433 * libamu/mount_fs.c (mount_fs): avoid using extra limited-size buf 7434 (security) 7435 7436 * libamu/xutil.c, fsinfo/fsinfo.h, include/am_utils.h: use 7437 __attribute__, __format__, and __printf__ for GCC string auditing. 7438 7439 * wire-test/wire-test.8: this is not a section 8L man page. 7440 7441 * libamu/xutil.c (expand_error): don't use sys_nerr on systems 7442 that support strerror(). 7443 (dplog): fmt is const 7444 (plog): fmt is const 7445 (real_plog): fmt is const. use new expand_error function with its 7446 new return value. be more careful about running off the end of 7447 char[] fixed size buffers. 7448 7449 * libamu/wire.c (getwire): fix alignment error on alpha using an 7450 extra automatic storage variable ifrpool. 7451 7452 * hlfsd/hlfsd.c (fatal): use proper printf style to plog. 7453 7454 * fsinfo/fsinfo.c (find_username): getlogin() returns a const. 7455 7456 * fsinfo/fsi_util.c (error, lerror, lwarning, fatal, log): use 7457 vfprintf. 7458 7459 * fsinfo/fsi_lex.l (yyerror): use vfprintf. 7460 7461 * fixmount/fixmount.8: this is not a section 8L man page. 7462 7463 * doc/am-utils.texi (Hesiod maps): fixed typo. 7464 7465 * amd/sched.c (do_task_notify): typo in comment. 7466 7467 * amd/opts.c (expand_op): expand_error[] is a const char *. 7468 7469 * amd/amd.c (main): use proper printf style to plog. 7470 74712000-11-22 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7472 7473 * libamu/mount_fs.c (mnt_flags, compute_nfs_args): recognize 7474 proplist mnttab flag. Bug fix from Wolfram Klaus 7475 <klaus@physik.fu-berlin.de>. 7476 74772000-11-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7478 7479 * updated config.guess, config.sub, and doc/texinfo.tex from 7480 mirrors 7481 7482 * Makefile.am (update): proper updating of config.* and texinfo 7483 from mirrors. 7484 7485 * aux/macros/check_nfs_prot_headers.m4: newer netbsd systems 7486 reports their system name as "netbsdelf" in config.guess. 7487 74882000-11-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7489 7490 * doc/am-utils.texi (opts Option): document new mount option 7491 "proplist" 7492 7493 * include/am_compat.h: define amd mount option "proplist" if the 7494 system doesn't recognize it, but the NFS bit flag exists. 7495 7496 * configure.in, acconfig.h: recognize/support "proplist" NFS mount 7497 option in Amd, useful under DU-4.0 to process ACLs over NFS 7498 mounts. 7499 75002000-11-10 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7501 7502 * conf/mount/mount_linux.c (mount_linux): removed unnecessary 7503 rsize/wsize defaults -- performance killers on 2.2.18+ and 2.4.0+ 7504 75052000-10-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7506 7507 * scripts/am-eject.in: accept "cdrom" and "floppy" as arguments. 7508 75092000-11-05 Ion Badulescu <ionut@moisil.dev.hydraweb.com> 7510 7511 Too many changes to list them here. Here's a high level 7512 description: 7513 7514 * Forward-ported the Linux fixes from 6.0.5pre 7515 7516 * Got rid of a mountain of #ifdef DEBUG, replaced with smart 7517 header-file #ifdef's 7518 7519 * and, the grand finale: initial Solaris 2.6 autofs 7520 support. Compiles, mounts, gets requests; all the 7521 infrastructure is in place to actually implement the calls. Linux 7522 autofs might be a bit broken, but only compile-time so it'll be 7523 easy to fix. 7524 75252000-11-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7526 7527 * MIRRORS (Note): added a mirror at ufl.edu 7528 75292000-10-11 Erez Zadok <ezk@lorien.dev.hydraweb.com> 7530 7531 * amq/amq.8: synchronize Amq's options with reality 7532 7533 * amq/amq.c (main): synchronize Amq's usage() string with reality 7534 75352000-10-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7536 7537 * scripts/ctl-amd.in: add targets condrestart (redhat) and 7538 reload. 7539 75402000-10-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7541 7542 * scripts/lostaltmail.in (vrfy_user): ensure that MAILDIR is 7543 defined. 7544 75452000-09-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7546 7547 * amd/opts.c (backslash): Bell char (ASCII 007) should be \g, not 7548 \a. 7549 75502000-09-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7551 7552 * include/am_utils.h: removed unused field opt_autopref 7553 7554 * amd/opts.c: removed unused variable $autopref 7555 75562000-09-05 Erez Zadok <ezk@aladdin.dev.hydraweb.com> 7557 7558 * conf/mtab/mtab_svr4.c (lockfile): function not needed unless 7559 MOUNT_TABLE_ON_FILE is defined. 7560 mtlckname static var is onlyneeded if MOUNT_TABLE_ON_FILE. 7561 (update_mnttab_fields): only needed if MOUNT_TABLE_ON_FILE. 7562 75632000-09-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7564 7565 * buildall (Usage): typo in usage string 7566 75672000-08-25 Erez Zadok <ezk@lynn.soscorp.com> 7568 7569 * conf/mount/mount_linux.c (mount_linux): MNT2_NFS_OPT_VER3 may 7570 is no defined on older Linux systems (kernel 2.0.36) 7571 75722000-08-19 Erez Zadok <ezk@earth.cs.columbia.edu> 7573 7574 * scripts/amd.conf.5: correct swapped descriptions for ldap_base 7575 and ldap_hostports. 7576 7577 * doc/am-utils.texi: correct swapped descriptions for ldap_base 7578 and ldap_hostports. 7579 7580 * scripts/amd.conf-sample: swap examples for ldap_base and 7581 ldap_hostports. 7582 75832000-08-13 Erez Zadok <ezk@earth.cs.columbia.edu> 7584 7585 * scripts/amd.conf-sample: -O is CLI equivalent to "os" 7586 amd.conf parameter 7587 75882000-07-30 Erez Zadok <ezk@earth.cs.columbia.edu> 7589 7590 * scripts/amd.conf-sample (nfs_retransmit_counter): correct 7591 meaning and use of parameter 7592 75932000-07-23 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7594 7595 * doc/am-utils.texi: updated URLs to www.am-utils.org. 7596 75972000-07-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7598 7599 * doc/am-utils.texi (Supported Platforms): document osf4.0f 7600 76012000-06-19 Erez Zadok <ezk@vir.cs.columbia.edu> 7602 7603 * doc/am-utils.texi (dollar Selector Variable): document 7604 ${dollar}. 7605 7606 * amd/opts.c: special new variable ${dollar} which expands into a 7607 literal '$' sign. Otherwise there is no way to include a literal 7608 dollar symbol in an amd map. 7609 76102000-06-11 Ion Badulescu <ib42@moisil.cs.columbia.edu> 7611 7612 * amd/opts.c (eval_selectors): don't deref opt after it's been 7613 XFREE'd 7614 76152000-06-11 Erez Zadok <ezk@earth.cs.columbia.edu> 7616 7617 * amd/opts.c: move mount_type expansion until later in the list, 7618 so common variable are "hit" first. 7619 76202000-06-11 Ion Badulescu <ib42@moisil.cs.columbia.edu> 7621 7622 * amd/opts.c (split_opts, eval_selectors): split old function 7623 eval_opts into two, one that only splits non-selectors and 7624 assigns the values to fs_static, and one that only evaluates 7625 selectors; also simplified the rather obfuscated logic inside 7626 these functions 7627 (expand_op): made it take a char * instead of a structure from 7628 which it was using only one field (a char *). Also now returns a 7629 char * instead of modifying said structure in place 7630 (expand_opts): deal with the change above 7631 (expand_selectors): renamed from expand_key 7632 (expand_options): new function, expands non-selectors; it's the 7633 complement of expand_selectors, both of which are just wrappers 7634 around expand_op() 7635 (eval_fs_opts): use the new split_opts, eval_selectors to allow 7636 using options (like ${rhost}) in selectors 7637 76382000-06-11 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7639 7640 * config.guess.long: munge config.guess' output so that intel 7641 linux appears as i386-pc-linux 7642 7643Fri Jun 9 16:06:56 2000 Erez Zadok <ezk@defiant.dev.hydraweb.com> 7644 7645 * conf/nfs_prot/nfs_prot_bsdi2.h: getifaddrs() on bsdi2 is broken. 7646 Don't use it. 7647 76482000-06-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 7649 7650 * amd/mapc.c (maptypes): Change default allocation mode to 7651 MAPC_INC where reload support is missing to avoid warning in 7652 mapc_create(). 7653 76542000-06-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7655 7656 * conf/nfs_prot/nfs_prot_sunos5_5.h: turn off autofs support for 7657 solaris 2.5 until a full port can be done. 7658 76592000-06-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7660 7661 * Makefile.am, aux/GNUmakefile: fix maintainer rules to update 7662 config.* and texinfo.tex files. 7663 7664 * amd/nfs_subr.c (nfsproc_getattr_2_svc): Don't conditionalize the 7665 mtime update of the symlinks on the SYMTTL option, but rather 7666 delay unmount of what was looked up using am_timeo_w. Patch from 7667 Nick Williams <Nick.Williams@msdw.com>. As Nick says "Basically: 7668 during unmount, increment the parent dir's mtime (fixes 7669 people doing amq -u). During stat, increase the TTL (to fix bad-luck 7670 timeouts), but leave the mtime alone." 7671 7672 (nfsproc_lookup_2_svc, nfsproc_readlink_2_svc, unlink_or_rmdir, 7673 nfsproc_readdir_2_svc): correctly update d_drops stats for amq -s. 7674 Patch from Nick Williams <Nick.Williams@msdw.com>. 7675 7676 * amd/map.c (unmount_mp): update mtime of amd symlink to further 7677 reduce the chances of race conditions between unmounting and 7678 looking up an entry again. Patch from Nick Williams 7679 <Nick.Williams@msdw.com>. 7680 7681 * README: updated instructions 7682 7683 * bootstrap: remove log file before existing 7684 76852000-06-06 Erez Zadok <ezk@aladdin.dev.hydraweb.com> 7686 7687 * configure.in: no longer using aux/ subdir. don't force autoconf 7688 2.14. comment out (but leave explanation) everything that's needed 7689 for autoconf 2.14, so for now it works with autoconf-2.13, but the 7690 code is ready for 2.14 when it is released. Similar changes to 7691 make code work with automake-1.4, until the next release comes 7692 out. 7693 7694 * libamu/Makefile.am: include definitions that are required in 7695 automake 1.4, but won't be necessary when the next release of 7696 automake comes out (see XXX comments). 7697 7698 * cache_check_dynamic.m4, check_checkmount_style.m4, 7699 check_mnttab_style.m4, check_mount_style.m4, 7700 check_network_transport_type.m4, check_nfs_prot_headers.m4, 7701 check_umount_style.m4: use symlink creation code that works for 7702 both autoconf 2.13 and 2.14 (when the latter comes out). 7703 7704 * bootstrap: new script for maintainers to run to update autoconf, 7705 automake, and libtool related files. Has the same effect as 7706 "buildall -K". 7707 7708 * removed dependencies on CVS versions of autoconf, automake, and 7709 libtool, especially the modified automake I had. This is so that 7710 maintainers could built the auto* files out of the latest released 7711 GNU autoconf, automake, and libtool. However, without my nice 7712 patches to automake, many files that used to live in the aux/ 7713 subdir now were moved to the top level source directory: acconfig.h, 7714 acinclude.m4, aclocal.m4, aux_conf.h.in, config.guess, 7715 config.guess.long, config.h.in, config.sub, configure.in, depcomp, 7716 install-sh, ltconfig, ltmain.sh, missing, and mkinstalldirs. Also 7717 texinfo.tex and mdate-sh moved from aux/ dir to doc/ dir. 7718 77192000-06-05 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7720 7721 * cvs-server.txt: instructions for maintainers to access the CVS 7722 server for am-utils. 7723 77242000-06-03 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7725 7726 * amd/restart.c (restart): grr.. passing around initialized 7727 structures is *really* bad habit. memset(mo, 0) so at least we can 7728 test for NULL pointers... 7729 77302000-06-02 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7731 7732 * amd/am_ops.c (ops_match): changed XLOG_USER messages about 7733 merging addopts options to the more appropriate XLOG_INFO. Patch 7734 submitted by Tom Schmidt <tschmidt@micron.com>. 7735 7736 * config.{guess,sub}: make sure chmod'ed a+rx. Updated from 7737 latest GNU copies. 7738 77392000-05-30 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7740 7741 * aux/configure.in: bump up the version to 6.1a2 7742 77432000-05-29 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7744 7745 * released snapshot am-utils-6.1a1 7746 77472000-05-29 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7748 7749 * amd/ops_autofs.c (autofs_mounted): retrieve the autofs protocol 7750 version and store it in the fh 7751 (autofs_get_opts): support protocol version 4 7752 7753 * amd/mntfs.c (uninit_mntfs): clear the autofs fh pointer after 7754 releasing it 7755 7756 * conf/transp/transp_sockets.c (amu_svc_getcaller): cast result of 7757 svc_getcaller() to sockaddr_in, to appease glibc 2.2 7758 7759 * amd/amfs_auto.c (amfs_auto_bgmount): if the filesystem wants 7760 autofs handling and the parent is already handled by autofs, 7761 handle this filesystem as well 7762 (amfs_auto_mount): create the mountpoint for an autofs mount 7763 (amfs_auto_umount): do a real UMOUNT_FS() call for autofs mounts 7764 7765 * include/am_utils.h (FS_AUTOFS): new flag signalling that the 7766 filesystem wants autofs handling; toplvl, auto, host and direct 7767 have this flag, at least for now 7768 77692000-05-28 Erez Zadok <ezk@mulberry.mcl.cs.columbia.edu> 7770 7771 * doc/am-utils.texi (Network Filesystem Group): minor typos 7772 77732000-05-28 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7774 7775 * amd/autil.c (am_unmounted): check mp->am_parent before dereferencing 7776 7777 * amd/srvr_nfs.c (find_nfs_srvr): if NFS_SCALEDOWN, force 7778 version=2 and proto=udp and try again 7779 7780 * amd/ops_nfs.c (prime_nfs_fhandle_cache): take an explicit mntfs 7781 instead of a voidp; handle the NFS_SCALEDOWN case by removing the 7782 cached server entry and re-querying the server 7783 7784 * amd/amfs_toplvl.c (amfs_toplvl_mount): removed ugly if 7785 statement, assign mnttype from the fs-specific mf_ops->fs_type 7786 instead 7787 7788 * amd/amfs_nfsx.c (amfs_nfsx_init): call fs_init() only if it's 7789 defined; 7790 (amfs_nfsx_remount): removed superfluous check for fmount_fs -- it 7791 always exists 7792 (amfs_nfsx_umount): removed the hacked am_node -- umounted() now 7793 takes an mntfs; call umounted() only if it's defined 7794 7795 * amd/amfs_auto.c: removed amfs_auto_umounted and moved its 7796 functionality into am_umounted(). 7797 (amfs_auto_cont): Linux hack: if we got an EINVAL, mark the mntfs 7798 as needing an "NFS scaledown" and retry the operation 7799 7800 * amd/amfs_*.c: changed all fmount/fumount functions to 7801 mount/umount and made them take an am_node instead of an 7802 mntfs. This is a first step towards an amfs/ops API separation. 7803 7804 * amd/{amfs,ops}_*.c: changed the umounted() function to take an 7805 mntfs instead of an am_node 7806 78072000-05-28 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7808 7809 * amd/amfs_toplvl.c (mount_amfs_toplvl): init error to 0 to shut 7810 up gcc 7811 7812 * aux/macros/check_hide_mount_type.m4: revert to the 6.0 version 7813 which always defines HIDE_MOUNT_TYPE 7814 7815 * amd/ops_autofs.c (autofs_mounted): remove MFF_AUTOFS 7816 initialization -- now done in init_mntfs() 7817 7818 * amd/mntfs.c (init_mntfs): init mf_flags to MFF_AUTOFS if we are 7819 mounting an autofs-style map 7820 7821 * amd/*.c: use the MFF_AUTOFS flag instead of doing a costly STREQ 7822 7823 * amd/amfs_toplvl.c (mount_amfs_toplvl): MTYPE_TYPE is not 7824 necessarily a string type, so handle the nfs/autofs separation 7825 differently 7826 7827 * amd/amfs_auto.c (amfs_auto_bgmount): removed initialization of 7828 opt_mount_type (now done in ops_match()) 7829 7830 * amd/am_ops.c (ops_match): need to initialize opt_mount_type if 7831 it's not initialized yet 7832 78332000-05-27 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7834 7835 * libamu/wire.c (getwire_lookup): handle calling irs_gen_acc with 7836 one or two arguments (bsdi3 vs. bsdi4) 7837 78382000-05-27 Ion Badulescu <ib42@chestnut.mcl.cs.columbia.edu> 7839 7840 * libamu/xutil.c (amu_release_controlling_tty): removed an unused 7841 variable from the previous patch 7842 78432000-05-26 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7844 7845 * aux/macros/check_autofs_style.m4: fixed substitution for default 7846 case 7847 7848 * libamu/xutil.c (amu_release_controlling_tty): close standard 7849 file descriptors, re-open them as /dev/null 7850 7851 * include/am_defs.h: don't try to include both <ndbm.h> and 7852 <db1/ndbm.h>, it really doesn't work 7853 78542000-05-16 Ion Badulescu <ib42@earth.cs.columbia.edu> 7855 7856 * hlfsd/stubs.c (nfsproc_lookup_2_svc): added code to update mtime 7857 on lookup if MNT2_NFS_OPT_SYMTTL is not defined (copied from 7858 getattr). This fixes the problem introduced by the Linux nfsv3 7859 patches. 7860 78612000-05-12 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7862 7863 * Makefile.am (EXTRA_DIST_CONF): added conf/autofs/autofs_linux.h 7864 78652000-05-10 Ion Badulescu <ib42@earth.cs.columbia.edu> 7866 7867 * amd/ops_autofs.c (autofs_handle_fdset): call 7868 autofs_lookup_failed instead of autofs_mount_failed, if the name 7869 is not in the map 7870 (autofs_umount_{succeeded,failed}): pass the actual mount point, 7871 not its parent, as it's needed for clean-up; 7872 7873 * amd/autil.c (am_unmounted): notify autofs that the umount 7874 succeeded 7875 7876 * amd/amfs_link.c (amfs_link_[u]mount): autofs link notification 7877 moved elsewhere 7878 78792000-05-09 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7880 7881 * amd/amfs_auto.c (amfs_auto_bgmount): initialize opt_mount_type 7882 if necessary; 7883 (amfs_auto_mounted): test if opt_mount_type is NULL first 7884 (amfs_auto_mount): revert earlier change 7885 7886 * amd/ops_autofs.c (autofs_mount_failed): remove autofs directory 7887 if mount failed 7888 78892000-05-09 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7890 7891 * amd/ops_autofs.c (autofs_link_mount): use am_link as target 7892 7893 * amd/map.c (unmount_mp): release file handle for autofs f/s about 7894 to be unmounted; this leak was preventing the unmount altogether 7895 7896 * amd/amfs_auto.c (amfs_auto_umount): removed autofs-specific 7897 code, was broken 7898 (amfs_auto_bgmount): nfs mounts + sublinks is a valid combination, 7899 handle it 7900 79012000-05-07 Ion Badulescu <ib42@moisil.cs.columbia.edu> 7902 7903 * Merged changes from stable branch 7904 79052000-04-30 Erez Zadok <ezk@beetle.mcl.cs.columbia.edu> 7906 7907 * include/am_defs.h, aux/macros/mount_headers.m4, 7908 aux/macros/try_compile_anyfs.m4: include linux/kdev_t.h and 7909 linux/list.h before including linux/fs.h, and define __KERNEL__ 7910 for those two headers. All of this to get a couple of definitions 7911 that are needed in the new struct vfsmount. 7912 7913 * aux/configure.in: look for <linux/kdev_t.h> and <linux/list.h>. 7914 7915 * include/am_defs.h, aux/macros/mount_headers.m4: avoid conflicts 7916 between linux/in.h. and netinet/in.h (linux-2.3.99-pre6), by 7917 defining _LINUX_IN_H so it doesn't get included. 7918 79192000-04-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7920 7921 * minor new ports: i686-pc-linux-gnu-rh6.2, 7922 i386-unknown-freebsdelf3.4, i586-pc-linux-gnu-rh6.2. 7923 79242000-04-03 Erez Zadok <ezk@vir.cs.columbia.edu> 7925 7926 * aux/acconfig.h: move all #undef macros above @TOP@, so they can 7927 be recognized by pickier autoconf. 7928 79292000-04-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7930 7931 * aux/macros/cache_check_dynamic.m4 (ac_tmp): use correct echo -n 7932 or \c. 7933 79342000-03-25 Erez Zadok <ezk@beetle.mcl.cs.columbia.edu> 7935 7936 * include/am_defs.h: ditto 7937 7938 * aux/macros/{mount_headers,try_compile_anyfs}.m4: force 7939 non-inclusion of <linux/string.h>. Breaks build on newer 2.3 7940 kernels. 7941 79422000-02-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 7943 7944 * doc/am-utils.texi (Amq -w option): document new amq -w option. 7945 7946 * amq/amq.8: document new amq -w option. 7947 7948 * amq/amq.c: disable last remains of insecure amq -M code. 7949 (main): add amq -H option to show usage. 7950 (main): new amq -w option, translates getpwd() into an amd path. 7951 79522000-02-25 Ion Badulescu <ionut@moisil.cs.columbia.edu> 7953 7954 * libamu/util.c (get_server_pid): new function 7955 7956 * hlfsd/hlfsd.c (main): make use of HIDE_MOUNT_TYPE 7957 7958 * conf/transp/transp_sockets.c: removed create_autofs_service 7959 7960 * conf/mount/mount_linux.c: added autofs mount options; split 7961 mount_linux into two functions, itself and do_mount_linux 7962 7963 * aux/macros/check_hide_mount_type.m4: better failover 7964 7965 * aux/configure.in: changed version to 6.1a1; added 7966 AC_CHECK_AUTOFS_STYLE 7967 7968 * aux/aux_conf.h.in: added @am_utils_autofs_style@ 7969 7970 * amd/opts.c: added "mount_type" option 7971 7972 * amd/ops_autofs.c: ifdef-ed out solaris code; moved all autofs 7973 variables in here; split create_autofs_service into sun and linux 7974 specific functions 7975 7976 * amd/nfs_start.c: removed autofs-specific variables 7977 7978 * amd/map.c (get_root_nfs_fh): renamed root_fh to get_root_nfs_fh 7979 (get_root_ap): renamed root_ap to get_root_ap 7980 7981 * amd/amfs_toplvl.c (amfs_toplvl_ops): replaced 7982 amfs_toplvl_mounted with amfs_auto_mounted 7983 (mount_amfs_toplvl): moved code around, added autofs handling 7984 (amfs_toplvl_mounted): removed 7985 7986 * amd/amfs_nfsl.c (amfs_nfsl_ops): removed amfs_auto_fu?mount, 7987 replaced with amfs_nfsl_u?mount 7988 7989 * amd/amfs_linkx.c (amfs_linkx_ops): removed amfs_auto_fumount, 7990 replaced with amfs_link_umount 7991 7992 * amd/amfs_link.c (amfs_link_ops): removed amfs_auto_fu?mount, 7993 replaced with amfs_link_u?mount 7994 7995 * amd/amfs_direct.c (amfs_direct_ops): changed "mounted" function 7996 from amfs_toplvl_mounted to amfs_auto_mounted 7997 7998 * all: added autofs hooks throughout the code 7999 8000 * amd/am_ops.c (vops): autofs_ops doesn't belong in here, removed 8001 8002 * README.autofs: linux status update 8003 80042000-02-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8005 8006 * minor new port: alphaev6-dec-osf5.0 8007 8008 * doc/am-utils.texi (Supported Platforms): hpux-11 supports NFSv3, 8009 but only for UDP. 8010 8011 * released snapshot am-utils-6.0.4s3 8012 8013 * conf/nfs_prot/nfs_prot_hpux11.h: support NFSv3 in hpux-11. Note 8014 that hpux-11 NFSv3 supports UDP only, and trying TCP locks up the 8015 kernel! Must set nfs_proto=udp in amd.conf [global]. 8016 8017 * aux/config.guess.long: set and export PATH separately. DU5 8018 /bin/sh doesn't like setting it on the command line in a 8019 back-tick'ed `script`. 8020 80212000-02-24 Ion Badulescu <ionut@moisil.cs.columbia.edu> 8022 8023 * Makefile.am: removed struct_nfs_mount_data.m4 8024 8025 * aux/macros/struct_nfs_mount_data.m4: deleted 8026 8027 * aux/acconfig.h: removed definition for HAVE_NFS_MOUNT_DATA 8028 8029 * aux/configure.in: removed check for struct nfs_mount_data 8030 80312000-02-24 Ion Badulescu <ib42@beetle.mcl.cs.columbia.edu> 8032 8033 * amd/amfs_auto.c (amfs_auto_bgmount): changed log message to 8034 avoid having 'failed' in a message not indicating a failure 8035 (amfs_auto_lookuppn): ditto 8036 8037 * amd/ops_autofs.c (autofs_bgmount): ditto 8038 (autofs_lookuppn): ditto 8039 80402000-02-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8041 8042 * added .cvsignore files into the CVS repository. 8043 8044 * remove files which can be regenerated: .in, configure, some 8045 files in aux/, and more. 8046 80472000-02-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8048 8049 * doc/am-utils.texi (nfs_vers/nfs_proto): description of two 8050 parameters was reversed. Reported by Paul Jenner 8051 <p.jenner@eim.surrey.ac.uk>. 8052 80532000-02-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8054 8055 * released snapshot am-utils-6.0.4s2 8056 8057 * amd/mntfs.c (realloc_mntfs): don't fallback on certain ops such 8058 as inherit, error, and toplvl (failover code). 8059 8060 * amd/conf.c (gopt_nfs_vers, gopt_nfs_proto): two new (documented) 8061 global options in amd.conf: one to set the NFS version globally 8062 (i.e., nfs_vers=2), and one to set the NFS protocol globally 8063 (i.e., nfs_proto=udp). 8064 8065 * amd/mntfs.c (realloc_mntfs): attempt to fix the failover code, 8066 so when a matching mount entry failed, try the next one. 8067 80682000-02-15 Erez Zadok <ezk@moisil.cs.columbia.edu> 8069 8070 * amd/amfs_auto.c: a new debug option "readdir" to trace the 8071 progress of the browsable_dirs code. 8072 8073 * conf/mount/mount_linux.c (mount_linux): ensure that the new 8074 linux NFSv3 code works for v2-only machines. 8075 80762000-02-14 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8077 8078 * aux/configure.in: cleanup unused dnl entries. 8079 8080 * conf/mount/mount_linux.c (parse_opts): typo: check for string 8081 equality, not string inequality for pcfs and cdfs. 8082 8083 * aux/acconfig.h: look for MNT2_NFS_OPT_INTR as well. 8084 8085 * libamu/mount_fs.c (compute_mount_flags): check for INTR and 8086 NOINTR options as well (intr was never passed to linux mount 8087 syscall). 8088 80892000-02-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8090 8091 * released snapshot am-utils-6.0.4s1 8092 8093 * aux/GNUmakefile: buildall -k (for maintainers) temporarily now 8094 ignores autoconf warnings: "The macro `AC_OUTPUT_COMMANDS' is 8095 obsolete". It is harmless but annoying, and will be fixed when 8096 autoconf and automake in their respective CVS trees are working 8097 and in sync again. 8098 8099 * scripts/amd.conf.5: document -D hrtime,xdrtrace 8100 8101 * all man pages: update copyright to 2000. 8102 8103 * doc/am-utils.texi: update copyright to 2000. 8104 8105Wed Feb 9 14:22:31 2000 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8106 8107 * include/am_utils.h (D_XDRTRACE): Define. 8108 (D_TEST): Disable here. 8109 8110 * libamu/xutil.c (dbg_opt): Handle it. 8111 8112 * doc/am-utils.texi (-D-Option): Document it. 8113 8114 * libamu/xdr_func.c: Use it instead of D_TRACE. 8115 8116 * include/am_utils.h (D_HRTIME): Define. 8117 8118 * doc/am-utils.texi (-D-Option): Document it. 8119 8120 * libamu/xutil.c (show_time_host_and_name): Print high-resolution 8121 timestamp if available and activated. 8122 8123 * aux/configure.in (clock_gettime): Check for it in -lrt and 8124 -lposix4. 8125 8126 * hlfsd/hlfsd.c (mnttab_file_name): Initialize to MNTTAB_FILE_NAME 8127 if defined, even for some systems with in kernel mount tables. 8128 81292000-02-08 Ion Badulescu <ionut@moisil.cs.columbia.edu> 8130 8131 * aux/macros/mount_headers.m4: remove #if 0 around linux/nfs.h to 8132 allow compiles against libc5 8133 8134 * aux/macros/check_mnttab_type.m4: avoid detecting nfs3 under 8135 linux when the kernel doesn't support it 8136 8137 * include/am_compat.h: add workaround for linux efs 8138 81392000-02-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8140 8141 * aux/configure.in: test for ANSI C compiler (before AC_C_CONST). 8142 Comment out unused AC_STRUCT_ST_RDEV (which is obsolete anyway). 8143 81442000-02-07 Ion Badulescu <ionut@moisil.cs.columbia.edu> 8145 8146 * libamu/mount_fs.c (compute_nfs_args): turn on VER3 option for 8147 nfs (linux NFSv3). 8148 8149 * include/am_defs.h: avoid reinclusion of some header files under 8150 linux. 8151 8152 * conf/nfs_prot/nfs_prot_linux.h: support NFSv3. 8153 8154 * conf/mount/mount_linux.c (mount_linux): support nfs mount 8155 (implementation) version 4 for NFSv3. 8156 8157 * aux/macros/try_compile_nfs.m4: use AC_MOUNT_HEADERS. 8158 8159 * aux/macros/mount_headers.m4: don't include <linux/fs.h> (may 8160 need to fix the code on other linux machines). 8161 8162 * aux/macros/check_mnttab_type.m4 (ac_safe): ditto. 8163 8164 * aux/macros/check_fs_mntent.m4 (ac_safe): check for nfs3 option 8165 under linux (depends on ac_cv variable, is that a good idea?) 8166 8167 * added NFSv3 support for linux 8168 8169 * aux/{configure.in,acconfig.h}: new option ver3 8170 8171 * aux/macros/mount_headers.m4: commented out inclusion of 8172 linux/fs.h, it's not needed on rh61 (and actually generates 8173 conflicts), we should see if it's still needed on libc5 systems 8174 8175 * aux/macros/try_compile_nfs.m4: use AC_MOUNT_HEADERS rather than 8176 try to have its own (out of date) list of headers and ifdef's and 8177 ... 8178 81792000-02-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8180 8181 ******************************************************************* 8182 *** Released am-utils-6.0.3 *** 8183 ******************************************************************* 8184 81852000-02-06 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8186 8187 * conf/mount/mount_default.c: dummy empty file to work around a 8188 limitation of automake (it looks for LIBBOBJS in aclocal.m4 and 8189 processes them even if they are optional, enclosed in if/else). 8190 81912000-01-29 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8192 8193 * released snapshot am-utils-6.0.3s5 8194 81952000-01-25 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8196 8197 * update to use latest version of autoconf, automake, and libtool. 8198 8199 * aux/GNUmakefile (depcomp): "make update" should also update the 8200 depcomp script. 8201 8202 * Makefile.am (EXTRA_DIST_AUX): include depcomp in distribution. 8203 8204 * aux/configure.in: use renamed AC_CHECK_AMU_FS. 8205 8206 * aux/macros/check_amu_fs.m4: renamed macro name and file name to 8207 say AMU_FS, not AM_FS. 8208 8209 * aux/acconfig.h: renamed HAVE_AM_FS_* to HAVE_AMU_FS_* because 8210 latest version of autoconf doesn't handle it (bug in 2.14a) 8211 8212 * aux/configure.in: require version 2.14 of autoconf. 8213 8214 * amd/mapc.c (mapc_reload_map): more fixes from Nick Williams. 8215 8216 * doc/am-utils.texi (Automount Filesystem): document type:=auto 8217 map browsability option. 8218 8219 * amd/mapc.c (make_entry_chain): patch from Steven Danz 8220 <sdanz@awc.kc.noaa.gov> to allow browsable auto maps. 8221 82222000-01-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8223 8224 * released snapshot am-utils-6.0.3s4 8225 8226 * amd/mapc.c (mapc_reload_map): fixes to sync maps even if they 8227 are set to mapcache:=sync. Fix from Nick Williams 8228 <Nick.Williams@msdw.com>. 8229 82302000-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8231 8232 * released snapshot am-utils-6.0.3s3 8233 8234 * minor port to i386-unknown-netbsd1.4.1 8235 8236 * amd/nfs_subr.c (nfsproc_getattr_2_svc): patch from Nick Williams 8237 <Nick.Williams@msdw.com> to fix (or reduce the incidence of) stale 8238 file handles when doing rapid mounts and umounts in succession 8239 such as "ls /vol/foo ; amq -u /vol/foo ; ls /vol/foo" 8240 82412000-01-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8242 8243 * minor port to i386-pc-bsdi4.1. 8244 82452000-01-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8246 8247 * libamu/wire.c (getwire_lookup): pass NULL as conf_file (2nd) 8248 argument to irs_gen_acc(), which was changed in bsdi 4.1. 8249 82502000-01-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8251 8252 * amd/get_args.c (get_args): don't use MNTTAB_FILE_NAME for 8253 systems with in-kernel mount tables unless this macro is defined 8254 (Solaris 8). 8255 82562000-01-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8257 8258 * ALL: bump copyright year to 2000. 8259 82601999-12-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8261 8262 * conf/mount/mount_svr4.c (mount_svr4): optionstr exists on 8263 solaris 7, but should not be used unless MAX_MNTOPT_STR also 8264 exists (solaris 8). 8265 8266 * doc/am-utils.texi (opts Option): document new mount option: 8267 optionstr. 8268 8269Fri Dec 10 01:31:53 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8270 8271 * conf/trap/trap_svr4.h (MOUNT_TRAP): Pass mount option string to 8272 mount_svr4(). 8273 (mount_svr4): Adapt prototype. 8274 * conf/mount/mount_svr4.c (mount_svr4): Pass them to kernel so 8275 they are evaluated and show up in Solaris 8 in-kernel mnttab. 8276 8277 * aux/configure.in: Check for new Solaris 8 MS_OPTIONSTR mount(2) 8278 option. 8279 * aux/acconfig.h (MNT2_GEN_OPT_OPTIONSTR): Provide template. 8280 82811999-12-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8282 8283 * released snapshot am-utils-6.0.3s2 8284 82851999-12-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8286 8287 * doc/am-utils.texi (opts Option): document noexec and nomnttab 8288 (new to Solaris 8). 8289 8290 * Makefile.am (EXTRA_DIST_CONF): include nfs_prot_sunos5_8.h in 8291 distribution. 8292 8293 * applied fixes from Rainer Orth for Solaris 8. 8294 8295 * libamu/wire.c (getwire): increment the cp pointer in the loop 8296 body, because the ioctl() inside the "for" loop will overwrite the 8297 ifr structure, thus not detecting all of the interfaces. Bug 8298 reported and fixed by Amitha Perera <perera@cs.rpi.edu>. 8299 8300Thu Dec 9 19:09:38 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 8301 8302 * conf/mtab/mtab_svr4.c (unlockmnttab, lockmnttab): No-ops if 8303 MOUNT_TABLE_ON_FILE. 8304 8305 * amd/get_args.c (get_args): Initialize mnttab_file_name even for 8306 in-kernel mount table. conf/mtab/mtab_svr4.c (read_mtab) depends 8307 on a non-NULL value. 8308 8309 * amd/info_ldap.c (get_ldap_timestamp): Don't peek into opaque 8310 LDAP structure to get error code, but use it directly. 8311 (amu_ldap_search): Likewise. 8312 8313 * conf/nfs_prot/nfs_prot_sunos5_7.h: Rip superfluous and wrong 8314 ldap support. 8315 * conf/nfs_prot/nfs_prot_sunos5_8.h: Likewise. 8316 8317 * conf/nfs_prot/nfs_prot_sunos5_8.h: New file, doesn't typedef 8318 nfsstat, already in <nfs/nfs.h>. 8319 * aux/macros/check_nfs_prot_headers.m4: Use it for all Solaris 8320 versions beyond 7. 8321 Allow for micro versions of SunOS 5.[67]. 8322 8323 * aux/configure.in: Check for new Solaris 8 Beta Refresh 8324 MS_NOMNTTAB mount(2) option. 8325 * aux/macros/check_mnttab_location.m4: Use it to test for 8326 mntfs-based in-kernel mnttab. 8327 8328 * aux/macros/os_cflags.m4: Treat Solaris 8 and higher like 2.6/7. 8329 8330 * aux/macros/check_fs_headers.m4: Revert test for duplicate 8331 objects. 8332 * aux/macros/check_fs_mntent.m4: Likewise 8333 8334 * aux/macros/HEADER: Fixed typo. 8335 8336 * include/am_defs.h: Likewise. 8337 83381999-12-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8339 8340 * aux/macros/*.m4: prepare for hpux-12 (assume same as hpux-11) 8341 83421999-11-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8343 8344 * BUGS: document glibc-2.1 nis file descriptor leak in yp_bind. 8345 8346 * amd/info_ldap.c (string2he): updated function which does not 8347 corrupt strings when called more than once. Patch from 8348 JOHANN.PFEFFERL.JP@germany.agfa.com. 8349 83501999-11-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8351 8352 * MIRRORS (Asia): two new mirrors in Japan. 8353 83541999-11-10 Erez Zadok <ezk@kosh.cs.columbia.edu> 8355 8356 * doc/am-utils.texi: document new variables for ${uid} and ${gid}. 8357 8358 * amd/nfs_subr.c (nfsproc_lookup_2_svc): find the uid/gid of the 8359 last lookup from the RPC credentials. 8360 8361 * aux/configure.in: upped version-info to 4:0:2 because I've added 8362 a new interface to libamu. 8363 8364 * libamu/misc_rpc.c (getcreds): moved function from hlfsd to here, 8365 so it can be used by amd. 8366 8367 * amd/opts.c: new variables ${uid} and ${gid}. 8368 83691999-10-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8370 8371 * scripts/ctl-amd.in: add "status" command that tells you if amd 8372 is running on not (same output as RedHat scripts). 8373 Added start_msg and stop_msg targets as they are used on HPUX. 8374 reported by Jon Peatfield <J.S.Peatfield@damtp.cam.ac.uk>. 8375 83761999-10-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8377 8378 * released snapshot am-utils-6.0.3s1 8379 83801999-10-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8381 8382 * amd/amd.c (main): On AIX you must lower the stack size using 8383 ulimit() before calling plock. Otherwise plock will reserve a lot 8384 of memory space based on your maximum stack size limit. Since it 8385 is not easily possible to tell what should the limit be, I print a 8386 warning before calling plock(). See the manual pages for 8387 ulimit(1,3,4) on your AIX system. 8388 8389 * include/am_defs.h: define default extern for vsnprintf() 8390 8391 * aux/configure.in: check for extern definition for vsnprintf() 8392 83931999-10-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8394 8395 * amd/amfs_auto.c (amfs_auto_bgmount): patch from Nick Williams 8396 <njw@ms.com>. SYMPTOMS: 'occasionally' sublinks do not point to 8397 the correct location, but to the top level of the mountpoint and 8398 an (error-hook) is seen being mounted in the log file. This causes 8399 things to Go Wrong(TM). 8400 CAUSE: When evaluating two locations which are requested 8401 'practically simultaneously', and the two locations resolve to the 8402 same NFS mountpoint (but different sublinks), the later request 8403 will be "deferred" and retried after wakeup when the first mount 8404 succeeds. To do this, it rewinds the options location string to 8405 re-evaluate the location when the mount is retried. However, it 8406 shouldn't rewind the options for two reasons: (a) the semantics of 8407 the map language say you shouldn't and (b) the NFS mount reference 8408 is not reset at the same time, meaning that on the retry it will 8409 have an options structure out-of-sync with the mount 8410 structure. The "shortcut" code when retrying the mount sees the 8411 mount structure is already filled in and does not fully evaluate 8412 the options structure.... so if the first location is not the one 8413 which ties in with the mountpoint (see ordering in the 8414 recreate-by), you're now well messed up. 8415 8416 * BUGS: mention aix4.3 plock() bug (memory usage blows up and 8417 plock fails) 8418 84191999-10-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8420 8421 * aux/GNUmakefile: certain files should be copied if they are 8422 newer, not also if they are bigger: install-sh, ltconfig, 8423 ltmain.sh, mdate-sh, missing, mkinstalldirs, and texinfo.tex. 8424 8425 * minor new port: i586-pc-linux-gnu-rh6.1 (RedHat Linux 6.1) 8426 84271999-10-05 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8428 8429 * aux/macros/check_nfs_prot_headers.m4: prepare for OSF-5. 8430 8431 * aux/macros/check_nfs_fh_dref.m4: prepare for Tru64, aka OSF-5. 8432 84331999-09-30 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8434 8435 ******************************************************************* 8436 *** Released am-utils-6.0.2 *** 8437 ******************************************************************* 8438 84391999-09-27 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8440 8441 * conf/mount/mount_linux.c (mount_linux): print the updated mount 8442 flags. 8443 8444 * doc/am-utils.texi: document $full_os and $vendor. 8445 8446 * scripts/amd.conf-sample: examples of $full_os and $vendor. 8447 8448 * scripts/amd.conf.5: document $full_os and $vendor. 8449 8450 * amd/conf.c: add support for $full_os and $vendor. 8451 84521999-09-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8453 8454 * doc/am-utils.texi (netgrp Selector Function): don't give 8455 examples with old single '=' assignment variable. Use foo:=bar. 8456 8457 * amd/amfs_auto.c (amfs_auto_bgmount): corectly indent long 8458 comment describing this complex function. 8459 8460 * doc/Makefile.am (alldocs): do install-ps last (because distiller 8461 is slow) and install-html next to last (because texi2html is also 8462 slow). 8463 8464 * amd/amd.8: Major fixes to the description of the option -t 8465 timeout.retransmit. 8466 8467 * doc/am-utils.texi: better description of "trace" debug option. 8468 amd -H (not -v) shows log_options and debug_options. Major fixes 8469 to the description of amd -t timeout.retransmit, and the amd.conf 8470 parameters nfs_retransmit_counter and nfs_retry_interval. 8471 8472 * scripts/amd.conf.5: better description of "trace" debug option. 8473 amd -H (not -v) shows log_options and debug_options. Major fixes 8474 to the description of the parameters nfs_retransmit_counter and 8475 nfs_retry_interval. 8476 84771999-09-25 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8478 8479 * doc/am-utils.texi (Automount Filesystem): cache:= is not a mount 8480 option, but a mount map option. 8481 8482 * libamu/xutil.c (switch_to_logfile): log the name of the log file 8483 we switched into, after the log file had been [re]opened. 8484 84851999-09-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8486 8487 * amd/mapc.c (mapc_reload_map): count and show the number of times 8488 a map was reloaded. Only reload a map if its modify-time was 8489 updated. But amq -f forced a reload no matter what. 8490 8491 * amd/amd.h: new flag to struct mnt_map to count number of times a 8492 map was reloaded. 8493 8494 * amd/mapc.c (mapc_reload_map): attempt to reload the map without 8495 losing current data by reloading into a temp copy, and switching 8496 the hashes round only if the reload was successful. Patch from Jon 8497 Peatfield <J.S.Peatfield@damtp.cam.ac.uk>. 8498 (mapc_sync): mapc_reload_map() always succeeds. 8499 85001999-09-22 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8501 8502 * amd/info_ldap.c (amu_ldap_rebind): don't busy-loop trying to 8503 rebind to an LDAP server forever. Try up to 10 times. 8504 8505 * fsinfo/fsi_lex.l (yyerror): rework code that will never happen 8506 8507 * released snapshot am-utils-6.0.2s2 8508 8509 * aux/configure.in: bumped library version-info to 3:2:1, since 8510 some libamu code got changed. 8511 8512 * libamu/xutil.c (real_plog): use vsnprintf, not vsprintf, which 8513 is better and more secure. Fix from "David O'Brien" 8514 <obrien@NUXI.com>. 8515 8516 * aux/configure.in: check for vsnprintf. 8517 85181999-09-21 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8519 8520 * aux/macros/linux_headers.m4: use AC_MSG_ERROR. 8521 8522 * aux/macros/opt_{cppflags,ldflags,libs,amu_cflags}.m4: the ARG is 8523 not optional. Make sure ARG is supplied else flag an error. 8524 85251999-09-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8526 8527 * minor port i386-unknown-freebsdelf3.3 8528 8529 * released snapshot am-utils-6.0.2s1 8530 85311999-09-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8532 8533 * aux/configure.in (AC_CHECK_FUNCS): check for getitimer(). 8534 8535 * include/am_defs.h: extern definition for getitimer(). 8536 8537 * aux/configure.in: use AC_CHECK_EXTERNS. Look for getitimer() 8538 extern. 8539 8540 * aux/macros/check_extern.m4: define a simple AC_CHECK_EXTERNS 8541 that calls AC_CHECK_EXTERN in a loop. This saves repeated code in 8542 configure. 8543 8544 * aux/macros/type_auth_create_gidlist.m4: AIX 4.x systems use 8545 'int' as the 5th arg to authunix_create(). 8546 8547 * aux/macros/type_recvfrom_fromlen.m4: all AIX 4.x systems use a 8548 size_t for the 6th arg of recvfrom(). 8549 8550 * aux/macros/os_cflags.m4: define _XOPEN_EXTENDED_SOURCE for 8551 aix4.x systems. 8552 8553 * libamu/mount_fs.c (print_nfs_args): cast some values to int, to 8554 avoid gcc -Wall errors. 8555 8556 * scripts/expn.in: use sockaddr_in(), not pack() to correctly fill 8557 in a struct sockaddr_in. On Solaris x86 hosts, using pack() 8558 results in byte-misaligned values. Bug fix from Jeffrey C Honig 8559 <jch@BSDI.COM>. 8560 8561 * libamu/mount_fs.c (compute_automounter_mount_flags): turn on 8562 automntfs (ignore on bsdi-4.1) flag. 8563 (compute_automounter_nfs_args): ditto. 8564 8565 * aux/acconfig.h: add new flag for automntfs (ignore) 8566 8567 * aux/configure.in: check for new automntfs flag (bsdi-4.1). 8568 85691999-09-14 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8570 8571 * MIRRORS: added new site in Germany. Updated status of umn.edu 8572 and ferginc.com, who may no longer be mirroring am-utils. 8573 85741999-09-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8575 8576 ******************************************************************* 8577 *** Released am-utils-6.0.1 *** 8578 ******************************************************************* 8579 85801999-09-08 Erez Zadok <ezk@cs.columbia.edu> 8581 8582 * aux/macros/mount_headers.m4: bsdi-2.1 needs MAXQUOTAS and struct 8583 netexport defined. 8584 8585 * aux/macros/try_compile_anyfs.m4: bsdi-2.1 needs MAXQUOTAS and 8586 struct netexport defined. 8587 85881999-09-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8589 8590 * aux/macros/check_field.m4 (ac_upcase_var_name): include 8591 <ifaddrs.h> so we can detect fields within struct ifaddrs. 8592 8593 * libamu/wire.c (getwire): bsdi-2.1 uses a second arg to 8594 getifaddrs() and struct ifaddrs has no ifa_next field. 8595 8596 * aux/configure.in: check if 'struct ifaddrs' has a field 8597 ifa_next. 8598 8599 * include/amq_defs.h (AMQ_STRLEN): double size of amq string 8600 length to 2048 bytes. 8601 8602 * conf/nfs_prot/nfs_prot_netbsd1_4.h: include several more nfs 8603 header files and ufs/ufs/ufsmount.h. Bug reported by <Christos 8604 Zoulas> christos@zoulas.com. 8605 8606 * aux/macros/try_compile_anyfs.m4: include <ufs/ufs/ufsmount.h>. 8607 Bug reported by <Christos Zoulas> christos@zoulas.com. 8608 8609 * aux/macros/mount_headers.m4: include <ufs/ufs/ufsmount.h> 8610 86111999-09-06 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8612 8613 * libamu/xutil.c (expand_error): use strerror if available instead 8614 of sys_errlist. Bug reported by <Christos Zoulas> 8615 christos@zoulas.com. 8616 8617 * hlfsd/hlfsd.c (fatal): use strerror if available instead of 8618 sys_errlist. 8619 8620 * amq/amq.c (show_mi): use strerror if available instead of 8621 sys_errlist. 8622 8623 * aux/macros/check_nfs_prot_headers.m4: make sure netbsd1.4 8624 nfs_prot header is used for any future (1.5 etc.) netbsd systems. 8625 8626 * amq/pawd.c (find_mt): check for type nfsl as well. Fix from 8627 "Andrew J. Korty" <ajk@purdue.edu> 8628 86291999-08-29 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8630 8631 * doc/am-utils.texi (Supported Platforms): updates for redhat 8632 systems. 8633 8634 * INSTALL: updates for redhat systems. 8635 8636 * libamu/wire.c (getwire_lookup): spell "succeeded" correctly 8637 86381999-08-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8639 8640 * scripts/ctl-amd.in: sleep 1 second between killing amd and 8641 restarting it, because amq may respond that amd is down, where in 8642 fact it is still trying to unmount itself after unmapping itself 8643 from the portmapper. 8644 8645 * aux/config.guess.long: new script to print long version of 8646 config.guess output. 8647 8648 * buildall (host_alias): use long version of config.guess. 8649 86501999-08-27 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8651 8652 * scripts/ctl-{amd,hlfsd}.in: update RH tags for start/stop 8653 scripts. 8654 86551999-08-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8656 8657 * released snapshot am-utils-6.0.1s11 8658 8659 * libamu/xutil.c (expand_error): make sure expanding the string 8660 with textual version of errno doesn't overrun the 1024 bytes 8661 buffer. 8662 (real_plog): null terminate msg, just in case. 8663 8664 * amq/amq.c (main): don't getopt -M option and don't process it 8665 unless ENABLE_AMQ_MOUNT is on. 8666 8667 * amd/amq_svc.c (amq_program_1): all code that relates to amq -M 8668 is conditional on #ifdef ENABLE_AMQ_MOUNT. 8669 8670 * amd/amq_subr.c: remove amqproc_mount_1_svc() function invoked 8671 when amq -M code is disabled. Not taking any chances. 8672 86731999-08-23 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8674 8675 * released snapshot am-utils-6.0.1s10 8676 8677Sun Aug 22 16:18:59 1999 Erez Zadok <ezk@subzero.cs.columbia.edu> 8678 8679 * libamu/wire.c (getwire_lookup): if getnetbyaddr failed (e.g., on 8680 128.59.16.0), try to shift the network out of zeros (e.g., 8681 128.59.16) and try again. Irix 6.4 requires short network 8682 numbers. 8683 86841999-08-22 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8685 8686 * libamu/wire.c (getwire_lookup): correctly compute subnet using 8687 netmask. 8688 8689 * libamu/mount_fs.c (compute_automounter_nfs_args): require that 8690 Amd's own NFS mounts use reserved ports (if possible). IP packet 8691 security fix from Jeffrey C Honig <jch@BSDI.COM>. 8692 8693 * conf/transp/transp_tli.c (create_autofs_service): use correct 8694 autofs_port. IP packet security fix from Jeffrey C Honig 8695 <jch@BSDI.COM>. 8696 8697 * conf/transp/transp_sockets.c (bindnfs_port): remove unnecessary 8698 function. IP packet security fix from Jeffrey C Honig 8699 <jch@BSDI.COM>. 8700 (create_nfs_service): use bind_resv_port() directly. ensure that 8701 privileged ports are used. IP packet security fix from Jeffrey C 8702 Honig <jch@BSDI.COM>. 8703 8704 * amd/nfs_prot_svc.c (nfs_program_2): verify that requests come 8705 from reserved ports and from a local IP address. IP packet 8706 security fix from Jeffrey C Honig <jch@BSDI.COM>. 8707 8708 * amd/amq_subr.c (ok_security): use IPPORT_RESERVED, instead of 8709 hard-coded 1024. IP packet security fix from Jeffrey C Honig 8710 <jch@BSDI.COM>. 8711 (amqproc_mount_1_svc): provide information on the caller making an 8712 amq -M request. IP packet security fix from Jeffrey C Honig 8713 <jch@BSDI.COM>. 8714 8715 * amd/map.c (free_map_if_success): If the program doing an unmount 8716 of a program filesystem fails, amd tries to interpret the return 8717 code as an errno. Fix from Jeffrey C Honig <jch@BSDI.COM>. 8718 8719 * amd/info_nis.c (determine_nis_domain): don't always print 8720 warning about NIS domain name not being set, even if NIS is not in 8721 use. 8722 87231999-08-21 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8724 8725 * amd/info_ldap.c (get_ldap_timestamp): initialize variable err. 8726 (amu_ldap_search): initialize variable err. 8727 87281999-08-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8729 8730 * libamu/wire.c: written using getifaddrs() for BSD systems, 8731 contributed by BSDI, Jeffrey C Honig <jch@BSDI.COM>). 8732 87331999-08-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8734 8735 * include/am_utils.h (SALLOC): a simple macro to allocate N bytes. 8736 8737 * aux/configure.in: check for irs.h and ifaddrs.h. 8738 Increase libamu.so --version-info to 3:1:1 since we've changed the 8739 source code for the library. 8740 Check for getifaddrs() function. 8741 87421999-08-14 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8743 8744 * libamu/mount_fs.c (print_nfs_args): print fields namlen and 8745 bsize if they exist. 8746 8747 * conf/mount/mount_linux.c (mount_linux): set nfs_args_t->namlen 8748 and ->bsize fields correctly, if those fields exist. This is a 8749 bug in that amd neglected to set these fields, but told the 8750 kernel it is mounting the nfs_args_t structure using mount version 8751 3 (which requires both bsize and namlen fields). 8752 8753 * aux/configure.in: test for two new nfs_args_t fields (used on 8754 newer linux with mount versions 2 and 3): bsize and namlen. 8755 8756 * doc/am-utils.texi (netgrpd Selector Function): document new 8757 selector function. 8758 8759 * amd/opts.c (f_netgrpd): new amd map function netgrpd(ARG) to 8760 test if the current host (fully-qualified name) is in the ARG host 8761 netgroup. The netgrp() function uses the short form of a host 8762 name. Patch from Christophe Kalt <Christophe-Kalt@deshaw.com>. 8763 8764 * doc/am-utils.texi (automount2amd): document new script. 8765 8766 * scripts/Makefile.am: create, install, and distribute 8767 automount2amd perl script and its man page. 8768 8769 * scripts/automount2amd.8: new man page for automount2amd. 8770 8771 * scripts/automount2amd.in: new file, contributed a in 1993 by 8772 Mike Walker <mike@tab00.larc.nasa.gov>. Fixed to use addopts for 8773 any automount map options specified. 8774 87751999-08-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8776 8777 * released snapshot am-utils-6.0.1s9 8778 87791999-08-09 Erez Zadok <ezk@beetle.mcl.cs.columbia.edu> 8780 8781 * amd/amfs_auto.c (DOT_DOT_COOKIE): set the NFS cookie of '..' to 8782 1. 8783 (amfs_auto_readdir): use DOT_DOT_COOKIE instead of (u_int)~0. 8784 (amfs_auto_readdir_browsable): use DOT_DOT_COOKIE instead of 8785 (u_int)~0. 8786 8787 * amd/mapc.c (make_entry_chain): NFS cookies should be 8788 monotonically increasing, because Linux 2.3 expects that, even 8789 though it is not in the spec (RFC-1094) for NFS V2. 8790 87911999-08-06 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8792 8793 * aux/macros/check_lib_funcs.m4: removed unused macro. 8794 8795 * aux/macros/linux_headers.m4: new macro to ensure that linux 8796 kernel headers match running kernel version. 8797 8798 * aux/acconfig.h: define HOST_HEADER_VERSION so we can check if 8799 amd is configured on linux hosts that run one kernel but have 8800 headers for a different version. 8801 8802 * amd/info_nis.c (nis_isup, nis_search, nis_init): fixes for the 8803 logic which uses nis_isup and has_yp_order. Make sure it is used 8804 correctly , esp. for NIS+ in NIS-compatibility mode. Bug fix from 8805 Peter Breitenlohner <peb@mppmu.mpg.de>. 8806 8807 * include/am_defs.h: fix conflicts on linux 2.2 systems with older 8808 libc5. Bug fix from Peter Breitenlohner <peb@mppmu.mpg.de>. 8809 8810 * scripts/lostaltmail.in: use sockaddr_in(), not pack() to 8811 correctly fill in a struct sockaddr_in. On Solaris x86 hosts, 8812 using pack() results in byte-misaligned values. 8813 88141999-08-02 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8815 8816 * conf/mtab/mtab_aix.c (mnt_dup): add support for nfs3 8817 mounting, as per Dale Talcott <aeh@quest.cc.purdue.edu>. Also use 8818 better macros for case statement. 8819 8820 * conf/nfs_prot/nfs_prot_sunos5_7.h: don't include ldap structures 8821 unless ldap is actually available. 8822 8823 * use updated config.guess and config.sub. Use newer automake 8824 that fixes problems with distributing optional libamu files 8825 (clnt_sperrno.c, hasmntopt.c, strcasecmp.c, strdup.c, strstr.c, 8826 and ualarm.c) 8827 88281999-07-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8829 8830 * minor port i386-unknown-openbsd2.5 8831 88321999-07-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8833 8834 * minor ports to freebsdelf 3.[0-2] and 4.0 completed 8835 8836 * aux/macros/check_nfs_prot_headers.m4: support freebsdelf 8837 8838 * aux/macros/check_nfs_socket_connection.m4: support freebsdelf 8839 88401999-06-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8841 8842 * released snapshot am-utils-6.0.1s8 8843 88441999-06-23 Erez Zadok <ezk@beetle.mcl.cs.columbia.edu> 8845 8846 * include/am_defs.h: avoid various header conflicts on 8847 RedHat/Linux 6.0 and kernels 2.2.10 or newer. 8848 8849 * aux/configure.in: look for <db1/ndbm.h> (RedHat/Linux 6.0 and 8850 kernel 2.2.10) 8851 8852 * amd/amfs_program.c (amfs_program_exec): make sure logfp is 8853 initialized dynamically to stderr if needed. 8854 8855 * libamu/xutil.c (dplog): make sure logfp is initialized 8856 dynamically to stderr if needed. 8857 (plog): ditto. 8858 8859 * amd/amfs_program.c (amfs_program_exec): set logfp to stderr if 8860 not initialized. 8861 8862 * libamu/xutil.c: don't initialize logfp statically to stderr, 8863 because on RedHat/Linux 6.0 (kernel 2.2.10) stderr can no longer 8864 be manipulated like a variable. 8865 8866 * include/am_defs.h: avoid more conflicts between <linux/fs.h> and 8867 <sys/mount.h> on 2.2 linux kernels. 8868 include <db1/ndbm.h> as needed (RedHat/Linux 6.0) 8869 88701999-04-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8871 8872 * all Makefile.am: use AMU_NFS_PROT_HEADER (not *_HEADERS) 8873 8874 * aux/macros/check_nfs_prot_headers.m4 (AMU_NFS_PROT_HEADER): 8875 renamed AC_SUBST name from *_HEADERS to *_HEADER so that automake 8876 won't attempt to add it to the header files to distribute. 8877 88781999-04-19 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8879 8880 * aux/GNUmakefile: invoke aclocal with new --altdir flag. 8881 88821999-04-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8883 8884 * minor new port: i386-unknown-netbsd1.4 (ALPHA) 8885 8886 * aux/macros/check_field.m4: no need to include <cdfs/cdfsmount.h> 8887 and <isofs/cd9660/cd9660_mount.h> because they are also included 8888 from MOUNT_HEADERS. Causes multiple inclusion of unprotected 8889 headers on netbsd-1.4_ALPHA. 8890 88911999-04-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8892 8893 * aux/macros/extern_sys_errlist.m4 (pattern): netbsd-1.4_ALPHA's 8894 sys_errlist extern doesn't end with []. 8895 8896 * aux/macros/check_nfs_prot_headers.m4: netbsd 1.4 support. 8897 88981999-04-11 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8899 8900 * newer automake wants texinfo.tex to be in aux/ not doc/ 8901 89021999-03-30 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8903 8904 * amd/conf_parse.y: alloca support. 8905 8906 * fsinfo/fsi_gram.y: alloca support. 8907 8908 * libamu/Makefile.am (libamu_la_LIBADD): compile alloca.o if 8909 needed. 8910 8911 * aux/configure.in: test for alloca support. Needed because bison 8912 generates parsers that use alloca, and hpux9 does have alloca and 8913 its /bin/cc doesn't support it builtin (the way gcc does). 8914 8915 * libamu/alloca.c: new file, needed on hpux9 with /bin/cc. Taken 8916 verbatim from bison-1.25. 8917 8918 * include/am_defs.h: fixed typo #errir -> #error 8919 8920 * released snapshot am-utils-6.0.1s7 8921 8922 * README.y2k: more information about am-utils' compatibility, from 8923 Paul Balyoz <pbalyoz@sedona.ch.intel.com>. 8924 8925 * scripts/lostaltmail.in (Splice_in_resent_headers): ensure Y2K 8926 compliant format. Patch from Paul Balyoz 8927 <pbalyoz@sedona.ch.intel.com> 8928 8929 * doc/am-utils.texi (Supported Platforms): hpux10.20 could have 8930 nfs v.3 support (with some vendor patches), but it is turned off. 8931 8932 * aux/macros/os_cflags.m4: use ansi compiler options on hpux. 8933 8934 * conf/nfs_prot/nfs_prot_hpux.h: Turn off NFS V.3 support to avoid 8935 confusing am-utils. 10.20 with some patches has incomplete 8936 support. Patch from Jon Peatfield 8937 <J.S.Peatfield@damtp.cam.ac.uk>. 8938 89391999-03-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8940 8941 * minor port i386-pc-bsdi4.0.1 8942 89431999-03-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8944 8945 * doc/am-utils.texi (Supported Platforms): add forgotten listing 8946 for powerpc-linux. 8947 89481999-03-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8949 8950 * scripts/amd.conf.5: fix typo. From Jeffrey C Honig 8951 <jch@BSDI.COM>. 8952 8953 * doc/am-utils.texi: document iso9660 options norrip, gens, and 8954 extatt. 8955 (opts Option): documented dumbtimr and noauto options. From 8956 Jeffrey C Honig <jch@BSDI.COM>. 8957 8958 * include/am_compat.h: define default strings for options norrip, 8959 gens, and extatt. 8960 8961 * amd/ops_cdfs.c (mount_cdfs): support options norrip, gens, and 8962 extatt. 8963 8964 * aux/macros/mount_headers.m4: also include 8965 <isofs/cd9660/cd9660_mount.h> as needed. 8966 8967 * aux/configure.in: check for isofs mount options for bsdi4: 8968 norrip, gens, and extatt. Reported by Jeffrey C Honig 8969 <jch@BSDI.COM>. 8970 8971 * aux/macros/check_mnt2_cdfs_opt.m4: check for ISOFSMNT_* flags 8972 (bsdi4). 8973 89741999-03-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8975 8976 * conf/nfs_prot/nfs_prot_freebsd3.h: ditto. 8977 8978 * conf/nfs_prot/nfs_prot_bsdi3.h: include <ufs/ufs/ufsmount.h>, 8979 for bsdi4, as per Jeffrey C Honig <jch@BSDI.COM>. 8980 89811999-03-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 8982 8983 * get latest copies of config.guess, config.sub, ltconfig, and 8984 ltmain.sh from libtool-1.2f. 8985 8986 * all Makefile.am: don't use continuation lines (using \) for 8987 short lists of files. 8988 8989 * libamu/Makefile.am (DISTCLEANFILES): make distclean should 8990 remove mountutil.c, mtabutil.c, transputil.c, and umount_fs.c. 8991 Reported by Jeffrey C Honig <jch@BSDI.COM>. 8992 8993 * fixmount/Makefile.am (DISTCLEANFILES): make distclean should 8994 remove checkmount.c. Reported by Jeffrey C Honig <jch@BSDI.COM>. 8995 8996 * Makefile.am (DISTCLEANFILES): make distclean should remove 8997 amu_nfs_prot.h, config.cache.old, and dbgcf.h. Reported by 8998 Jeffrey C Honig <jch@BSDI.COM>. 8999 90001999-03-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9001 9002 * released snapshot am-utils-6.0.1s6 9003 90041999-03-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9005 9006 * INSTALL: document freebsdelf. 9007 9008 * doc/am-utils.texi (Supported Platforms): document freebsdelf. 9009 90101999-03-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9011 9012 * minor new ports: i386-unknown-freebsdelf3.1 and 9013 i386-unknown-freebsdelf4.0 9014 9015 * aux/macros/check_nfs_prot_headers.m4: freebsd4 support. 9016 9017 * aux/macros/check_nfs_socket_connection.m4: freebsd4 support. 9018 9019 * aux/macros/check_nfs_fh_dref.m4: freebsd4 support. 9020 9021 * amd/opts.c (eval_opts): changed log level of "executing 9022 negated..." message from USER to INFO, as per Guntram Wolski 9023 <gwolsk@sei.com>. 9024 90251999-02-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9026 9027 * */Makefile.am (LDADD): force linking against an installed 9028 libamu.{a,so}. 9029 9030 * doc/am-utils.texi (addopts Option): document remopts interaction 9031 with addopts. 9032 9033 * amd/am_ops.c (ops_match): if addopts are specified, apply them 9034 to the value of remopts as well as opts. 9035 9036 * amd/ops_nfs.c (mount_nfs_fh): tell users when remopts are used. 9037 90381999-02-05 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9039 9040 * released snapshot am-utils-6.0.1s5 9041 9042 * conf/mount/mount_linux.c (mount_linux): set default nfs_args 9043 options for ac{reg,dir}{min,man} as per the mount-2.8a package, 9044 but only if noac option was not used. 9045 90461999-02-05 Erez Zadok <ezk@retro.cs.columbia.edu> 9047 9048 * conf/mount/mount_linux.c (mount_linux): print nfs_args again 9049 since it was updated. 9050 (mount_linux): use 4KB for NFS rsize/wsize on 2.1.0 linux kernels 9051 and newer. Bug was found by Neil Conway 9052 <nconway.list@ukaea.org.uk> 9053 90541999-02-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9055 9056 * released snapshot am-utils-6.0.1s4 9057 90581999-02-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9059 9060 * amq/amq.c (main): don't list -M as a valid amq option unless 9061 configure'd with --enable-amq-mount. 9062 9063Wed Feb 3 18:11:18 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9064 9065 * amd/nfs_start.c (amd_use_autofs): Define. 9066 (mount_automounter): Create autofs service listener only if 9067 necessary to avoid unnecessary clashes with e.g. automountd. 9068 9069 * amd/amd.h (amd_use_autofs): Declare. 9070 9071 * amd/conf.c (gopt_mount_type): Set amd_use_autofs. 9072 (ropt_mount_type): Likewise. 9073 90741999-02-02 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9075 9076 * aux/macros/check_mnt2_nfs_opt.m4:: ditto 9077 9078 * aux/macros/check_mnt2_cdfs_opt.m4: ditto 9079 9080 * aux/macros/check_mnt2_gen_opt.m4: ditto 9081 9082 * aux/macros/check_mnttab_opt.m4: new macro in this file to loop 9083 over AC_CHECK_MNTTAB_OPT. Reduces size of configure script a lot. 9084 9085 * conf/nfs_prot/nfs_prot_netbsd1_3.h: include nfs/rpcv2.h, 9086 nfs/nfs.h and nfs/nfsmount.h if they exist. Patch from 9087 christos@zoulas.com (Christos Zoulas). 9088 9089 * amd/info_hesiod.c: some forward declarations. Patch from 9090 christos@zoulas.com (Christos Zoulas). 9091 90921999-01-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9093 9094 * libamu/mount_fs.c (compute_nfs_args): don't turn on/off noconn 9095 option if it was already in that state. Patch from David 9096 Wolfskill <dhw@whistle.com>. 9097 90981999-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9099 9100 * aux/configure.in: automake nowadays supports LTLIBOBJS (but not 9101 LTALLOCA yet). Substitute value of LIBTOOL_DEPS for libtool 9102 rebuild make rules. 9103 9104 * Makefile.am: new rules to remake libtool (maintainers only) 9105 9106 * amd/amfs_toplvl.c (mount_amfs_toplvl): print generic mount flags 9107 if -D trace was used. 9108 91091999-01-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9110 9111 * buildall: all if statements should have an else clause because 9112 of Ultrix's /bin/sh. 9113 91141999-01-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9115 9116 * amq/amq.c: removed dummy variables. 9117 9118 * amq/pawd.c: removed dummy variable.s 9119 9120 * fixmount/fixmount.c (usage): removed dummy variables. 9121 9122 * fsinfo/fsinfo.c: removed dummy variables. 9123 9124 * hlfsd/hlfsd.c: removed dummy variables. 9125 9126 * wire-test/wire-test.c: removed dummy variables. 9127 9128 * mk-amd-map/mk-amd-map.c: removed dummy variables. 9129 9130 * doc/texinfo.tex: updates from GNU mirror. 9131 9132 * aux/GNUmakefile (../doc/texinfo.tex): new rule to update 9133 doc/texinfo.tex from GNU mirror. 9134 9135 * released snapshot am-utils-6.0.1s3 9136 9137 * Makefile.am (install-snapshot): better snapshot and new 9138 install-snapshot and test-snapshot rules (maintainer). 9139 9140 * amd/info_ldap.c (amu_ldap_init): don't run STREQ if one of the 9141 args may be NULL. 9142 Some dlog() entries were not enclosed in #ifdef DEBUG. Fix from 9143 Bill Paul <wpaul@ctr.columbia.edu> 9144 91451999-01-13 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9146 9147 * check for experimental generic 'ignore' mount flag on freebsd3. 9148 9149 * Update library -version-info to 3:0:1 (will result in 2.1.0 .so 9150 version, which is backwards compatible with older versions.) Only 9151 one new interface was added to libamu. 9152 9153 * amd/amfs_toplvl.c (mount_amfs_toplvl): add generic mount flags 9154 that are specific to automounter mounts. 9155 9156 * aux/configure.in: update libamu.so age and revision since a new 9157 interface was added to libamu/mount_fs.c 9158 (compute_automounter_mount_flags). 9159 9160 * libamu/mount_fs.c (compute_automounter_mount_flags): new 9161 function to compute generic mount flags that are specific to mount 9162 points only. 9163 9164 * aux/{configure.in,acconfig.h}: add support for generic mount 9165 entry ignore option. 9166 9167 * released snapshot am-utils-6.0.1s2 9168 9169 * amd/info_ldap.c (get_ldap_timestamp): dlog format fixes. 9170 9171 * libamu/mount_fs.c (print_nfs_args): solaris 2.7 changed format 9172 of knc_semantics from u_long to u_int. 9173 9174 * aux/macros/check_mount_style.m4: freebsd3 no longer needs a 9175 special mount helper. 9176 91771999-01-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9178 9179 * aux/macros/check_nfs_prot_headers.m4 (AMU_NFS_PROT_HEADERS): 9180 amu_nfs_conf.h should always be found in $top_builddir. 9181 9182Tue Jan 12 00:05:42 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9183 9184 * conf/nfs_prot/nfs_prot_sunos5_7.h (MNTTAB_TYPE_AUTOFS): Undefine 9185 to avoid wrong reports from show_fstypes. 9186 9187 * conf/nfs_prot/nfs_prot_irix5.h (MNTTAB_TYPE_XFS): Likewise. 9188 9189 * conf/nfs_prot/nfs_prot_hpux11.h (MNTTAB_TYPE_NFS3): Likewise. 9190 9191Tue Jan 12 00:05:42 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9192 9193 * BUGS (mips-dec-ultrix4.3): Update Ultrix caveats. 9194 9195Tue Jan 12 00:05:42 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9196 9197 * hlfsd/homedir.c (delay): Cast child to long, adapt format. 9198 (hlfsd_getpwent): Likewise for pw_uid. 9199 9200 * amd/info_nis.c (nis_init): Cast order to unsigned long, adapt 9201 format. 9202 9203 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): Cast 9204 tv_sec to int to match format. 9205 (get_nfs_version): Cast nfs_version, NFS_VERSION to int to match 9206 formats. 9207 9208 * amd/amfs_program.c (amfs_program_exec): Cast ptr difference to 9209 long, adapt format. 9210 9211 * include/am_defs.h: Handle __attribute__ if available. From 9212 GNU fileutils 4.0 lib/errors.h. 9213 9214Mon Jan 11 13:46:44 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9215 9216 * libamu/mount_fs.c (print_nfs_args): Cast sizeof() to int to 9217 match format. 9218 9219 * hlfsd/stubs.c (nfsproc_getattr_2_svc): Cast uid, gid to long, 9220 adapt format. 9221 (nfsproc_lookup_2_svc): Likewise. 9222 (nfsproc_readlink_2_svc): Likewise for userid, groupid. 9223 9224 * hlfsd/nfs_prot_svc.c (nfs_program_2): Cast args to int to match 9225 format. 9226 9227 * hlfsd/homedir.c (homedir): Cast uid, child to long, adapt 9228 format. 9229 9230 * amd/info_hesiod.c (hesiod_search): Cast m, pval, tp to unsigned 9231 long, adapt format. 9232 9233 * amd/ops_nfs.c (find_nfs_fhandle_cache): Cast fh_wchan to 9234 unsigned long, adapt format. 9235 (got_nfs_fh): Likewise. 9236 (prime_nfs_fhandle_cache): Cast fh_nfs_version to int to match 9237 format. 9238 (call_mountd): Likewise, mnt_version also. 9239 (mount_nfs_fh): Likewise. 9240 9241 * amd/ops_autofs.c (autofs_program_1): Cast args to int to match 9242 format. 9243 (autofs_unmount_1_svc): Cast ur->devid, ur_rdevid, ur->next to 9244 unsigned long, adapt formats. 9245 (autofs_bgmount): Cast opt_fs to unsigned to, adapt format. 9246 (autofs_bgmount): Use long format to match arg. 9247 (autofs_lookuppn): Removed superfluous arg. 9248 9249 * amd/srvr_nfs.c (start_ping): Cast nfs_version to int to match 9250 format. 9251 (got_portmap): Likewise for port. 9252 (recompute_portmap): Likewise for fs->fs_version, mnt_version. 9253 (find_nfs_srvr): Likewise for nfs_version. 9254 9255 * amd/sched.c (sched_task): Cast wchan to unsigned long, adapt 9256 format. 9257 9258 * amd/nfs_start.c (checkup): Cast ptr difference to long, next_mem 9259 to unsigned long, adapt format. 9260 Cast tvv.tv_sec to int to match format. 9261 9262 * amd/nfs_prot_svc.c (nfs_program_2): Cast args to int to match 9263 format. 9264 9265 * amd/map.c (root_fh): Cast pid to long, adapt format. 9266 (timeout_mp): Cast time_t to long, adapt format. 9267 9268 * amd/clock.c (reschedule_timeouts): Use long format, cast time_t 9269 arg. 9270 9271 * amd/amfs_host.c (fetch_fhandle): Cast nfs_version to int to 9272 match format. 9273 (amfs_host_fmount): Likewise. 9274 (amfs_host_umounted): Likewise. Removed superfluous arg. 9275 9276 * amd/amfs_auto.c (amfs_auto_bgmount): Cast pointer to unsigned 9277 long, adapt format. 9278 (amfs_auto_bgmount): Use long format, cast time_t arg. 9279 (amfs_auto_lookuppn): Removed superfluous arg. 9280 9281 * amd/amd.c (main): Cast geteuid() result to long, adapt format. 9282 9283 * conf/transp/transp_sockets.c (get_nfs_version): Cast nfs_version 9284 to int to match format. 9285 9286 * include/am_utils.h: Declare plog, dplog as printf-like. 9287 9288 * conf/mount/mount_irix6.c (mount_irix): Print type as char *. 9289 9290Mon Jan 11 13:46:44 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9291 9292 * amd/info_hesiod.c (hesiod_isup): New function. 9293 * amd/mapc.c (maptypes): Add it. 9294 92951999-01-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9296 9297 * released snapshot am-utils-6.0.1s1 9298 92991999-01-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9300 9301 * ALL: bump copyright year to 1999. 9302 9303Fri Jan 8 15:24:15 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9304 9305 * aux/macros/check_mtype_type.m4: Ultrix uses an int mount type, 9306 too. 9307 9308 * aux/macros/check_mtype_printf_type.m4: Adapt corresponding 9309 printf type. 9310 9311Fri Jan 8 15:24:15 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9312 9313 * aux/acconfig.h: Removed HAVE_AM_FS_AUTOFS, unused. 9314 9315 * conf/nfs_prot/nfs_prot_irix6.h: Likewise. 9316 9317 * conf/nfs_prot/nfs_prot_sunos5_6.h: Likewise. 9318 9319 * conf/nfs_prot/nfs_prot_sunos5_7.h: Likewise. 9320 9321 * Makefile.am (EXTRA_DIST_DIRS): Removed, not needed by current 9322 automake. 9323 9324Thu Jan 7 02:55:18 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9325 9326 * aux/configure.in (AM_PROG_YACC): Replaced by AC_PROG_YACC, not 9327 in current automake. 9328 9329Thu Jan 7 02:55:18 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9330 9331 * doc/am-utils.texi: Added some missing inter-punctation after 9332 @xref, or use @pxref/@ref as appropriate. Spotted by makeinfo 9333 from texinfo 3.12b. 9334 93351999-01-07 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9336 9337 * doc/texinfo.tex: updated off of latest GNU mirror. 9338 93391999-01-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9340 9341 * doc/am-utils.texi (Supported Platforms): update platforms that 9342 support NFS v.3. Nicer postscript printing on double-sided pages. 9343 9344 * amd/info_hesiod.c: add extern definition for hesiod_init() 9345 93461999-01-01 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9347 9348 ******************************************************************* 9349 *** Released am-utils-6.0 *** 9350 ******************************************************************* 9351 93521998-12-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9353 9354 * conf/nfs_prot/nfs_prot_sunos5_7.h: support ldap in solaris 2.7. 9355 93561998-12-27 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9357 9358 * conf/nfs_prot/nfs_prot_bsdi3.h: don't use reserved ports on 9359 bsdi4 for NFS V3/nfs mounts. 9360 93611998-12-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9362 9363 * using latest libtool (1.2e + patches), now supporting shared 9364 libraries on many more systems. Also using latest autoconf and 9365 automake (unreleased GNU CVS'd versions.) 9366 9367 * minor new ports: hppa2.0w-hp-hpux11.00, 9368 i386-unknown-netbsd1.3.3, mips-sgi-irix6.5. 9369 9370 * fsinfo/fsinfo.h (yywrap): define it for systems (osf4) that 9371 have /usr/bin/flex but not libfl. 9372 93731998-12-24 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9374 9375 * lots of code cleanup, to make sure libamu.so does not use 9376 undefined symbols. Some system's shared libraries cannot handle 9377 that. 9378 93791998-12-23 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9380 9381 * include/am_defs.h: only defined seteuid extern if function also 9382 exists and is not superceded by setresuid (hpux). 9383 9384 * amd/ops_autofs.c (autofs_bgmount, autofs_lookuppn): put explicit 9385 braces to avoid confusion with nested if-then-else clauses. 9386 9387 * aux/config.{sub,status}, aux/{ltmain.sh,ltconfig,mkinstalldirs: 9388 updated from latest versions. 9389 93901998-12-22 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9391 9392 * minor new port: i386-pc-bsdi4.0 9393 9394 * conf/nfs_prot/nfs_prot_bsdi3.h: add missing hesiod header 9395 definitions for bsdi4. 9396 9397 * {amd,fsinfo}/Makefile.am: force path to .y/.l files, because 9398 some make programs (bsdi4) do not support VPATH correctly. 9399 94001998-12-16 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9401 9402 * conf/mount/mount_aix.c: minor code cleanup 9403 9404 * aux/configure.in: check for extern definition to xdr_groups. 9405 94061998-12-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9407 9408 * minor new port: powerpc-ibm-aix4.3.1.0 9409 9410 * aux/macros/*.m4: updates for aix 4.3 9411 94121998-12-14 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9413 9414 * minor new port: i386-unknown-openbsd2.4 9415 9416 * aux/configure.in: don't check for xfs on openbsd because 9417 openbsd-2.4 introduces a new file system named xfs, but different 9418 than Irix's XFS. Sigh. 9419 9420 * minor new port: i386-unknown-freebsd2.2.8 9421 94221998-12-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9423 9424 * amd/amfs_nfsl.c (amfs_nfsl_ffserver): use case insensitive host 9425 name match. Bug fix from Douglas K. Rand" <rand@aero.und.edu>. 9426 94271998-11-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9428 9429 * scripts/ctl-amd.in: wait4amd2die runs in the stop action, to 9430 avoid race conditions when shutting down systems running amd. 9431 9432 * Makefile.am: add a dist-hook to change modes of the directories 9433 in the tar file so they are not world writable. 9434 9435 * conf/nfs_prot/nfs_prot_freebsd3.h: turned on NFSv3 support, 9436 since it is now finally defined in the header files and 9437 (hopefully) stable. 9438 9439 * amd/srvr_nfs.c (find_nfs_srvr): allow overriding if nfsv2 option 9440 is specified in mount options. freebsd patches from David 9441 O'Brien. 9442 9443 * amq/amq.c (main), fixmount/fixmount.c (main), hlfsd/hlfsd.c 9444 (main), fsinfo/fsinfo.c (fsi_get_args), hlfsd/hlfsd.c (main), 9445 amd/get_args.c (get_args): posix: use -1 to check for return from 9446 getopt() (not EOF), as per posix. 9447 9448 * amd/amq_subr.c (xdr_amq_mount_tree_node): patches from "David 9449 O'Brien" <obrien@NUXI.com>, from the FreeBSD source tree. Use 9450 real variable whose pointer is on the stack for decoding a long 9451 int. 9452 94531998-11-11 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9454 9455 * scripts/ctl-{amd,hlfsd}.in: include comments useful for redhat's 9456 chkconfig utility. 9457 94581998-11-10 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9459 9460 * released snapshot am-utils-6.0b2s3 9461 9462 * conf/transp/transp_sockets.c (create_nfs_service): remove C++ 9463 style comments. 9464 94651998-11-04 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9466 9467 * released snapshot am-utils-6.0b2s2 9468 9469 * created CVS package 9470 9471 * amd/nfs_subr.c (nfsproc_lookup_2_svc): try to avoid a race 9472 condition between unmounting and re-mounting an entry, by 9473 increasing the ttl of a looked up entry before unmounting it. 9474 Patch from Mike Mitchell <mcm@unx.sas.com>. 9475 9476 * All files: spell comments and strings. 9477 94781998-11-03 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9479 9480 * aux/configure.in: look for yp_all in libnsl only if yp_all not 9481 already found elsewhere (in libc or other default libraries). 9482 This is so RedHat 5.1 systems could find yp functions in libnsl, 9483 but also so AIX 4.2.1 will NOT include libnsl, because the latter 9484 has broken nis functionality that also exists and works ok in libc. 9485 94861998-10-29 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9487 9488 * amd/amd.c (main): bug fix: swapped arguments to kill(2). Fix 9489 from Danny Rathjens <dkr@cs.fiu.edu>. 9490 94911998-10-28 Erez Zadok <ezk@spruce.mcl.cs.columbia.edu> 9492 9493 * released snapshot am-utils-6.0b2s1 9494 94951998-10-27 Erez Zadok <ezk@spruce.mcl.cs.columbia.edu> 9496 9497 * aux/macros/*.m4: support bsdi4 as bsdi3. 9498 9499 * aux/macros/os_ldflags.m4: enable detection of LDAP on solaris 9500 2.7 (libraries located in /usr/lib/fn). This is off until Sun 9501 includes LDAP header information. 9502 95031998-10-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9504 9505 ******************************************************************* 9506 *** Released am-utils-6.0b1 *** 9507 ******************************************************************* 9508 95091998-10-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9510 9511 * mk-amd-map/mk-amd-map.c (main): use perror not strerror. 9512 (main): set return type to int if no ndbm maps. 9513 9514 * include/am_defs.h: avoid conflicts with <sys/mount.h> in 2.1 9515 kernels. 9516 95171998-10-18 Erez Zadok <ezk@london.mcl.cs.columbia.edu> 9518 9519 * A.i386-unknown-netbsd1.3.2/amu_nfs_prot.h: trim down and cleanup 9520 for netbsd 1.3.2. 9521 95221998-10-17 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9523 9524 * aux/configure.in: check for yp_all in libnsl, b/c redhat 5.1 9525 systems put NIS functions there. 9526 9527 * mk-amd-map/mk-amd-map.c: patch from "David O'Brien" 9528 <obrien@NUXI.com> merged in. Use POSIX -1 return code from 9529 getopt(), not EOF. Use .db extentions for systems that use it, 9530 instead of .{pag,dir}. 9531 95321998-10-15 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9533 9534 * wire-test/wire-test.c, hlfsd/hlfsd.c, fixmount/fixmount.c, 9535 amd/amd.c (main): avoid overrunning hostname buffer. Bug fix from 9536 "David O'Brien" <obrien@NUXI.com>. 9537 9538 * scripts/amd.conf.5: minor typo reported by "David O'Brien" 9539 <obrien@NUXI.com> in .TH section of man page. 9540 9541 * amd/info_nis.c (am_yp_all): don't leak key-val entries. Patch 9542 from Thomas Richter <richter@chemie.fu-berlin.de>. 9543 95441998-10-12 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9545 9546 * doc/am-utils.texi (Program Filesystem): minor typo fixed as per 9547 Andreas Stolcke <stolcke@speech.sri.com>. 9548 9549 * minor new ports: sparc64-unknown-linux-gnu, i386-pc-solaris2.7, 9550 and sparc-sun-solaris2.7. 9551 9552 * conf/mount/mount_freebsd3.c (mount_freebsd3): freebsd 3.0 is now 9553 a 4.4lite kernel, and somethings were removed, such as 9554 INITMOUNTNAMES. 9555 9556 * amd/ops_autofs.c (autofs_lookuppn): don't leak memory while 9557 processing /defaults. Free temporary opts. Patch from 9558 dsr@mail.lns.cornell.edu (Daniel S. Riley) 9559 9560 * amd/amfs_auto.c (amfs_auto_lookuppn): don't leak memory while 9561 processing /defaults. Free temporary opts. Patch from 9562 dsr@mail.lns.cornell.edu (Daniel S. Riley) 9563 9564 * conf/mtab/mtab_osf.c (read_mtab): patch from 9565 dsr@mail.lns.cornell.edu (Daniel S. Riley) not to access 9566 uninitialized memory on Digital Unix. 9567 95681998-10-09 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9569 9570 * aux/macros/{check_mtype_type,check_mtype_printf_type}.m4: most 9571 systems now use "char *" as their mount type. 9572 95731998-10-08 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9574 9575 * amd/conf.c (gopt_map_type, ropt_map_type): check if map type 9576 exists. 9577 9578 * amd/mapc.c (mapc_type_exists): function to test if a map of 9579 certain type exists. 9580 95811998-10-08 Erez Zadok <ezk@horatio.mcl.cs.columbia.edu> 9582 9583 * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4, 9584 include/am_defs.h: Avoid a conflict in definitions of ntohl/htonl 9585 in RH-5.1 sparc64 between <netinet/in.h> and 9586 <linux/byteorder/generic.h> (2.1 kernels). 9587 95881998-09-28 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9589 9590 * aux/macros/func_bad_yp_all.m4 (ac_cv_func_yp_all_clean): RedHat 9591 5.1 systems with glibc glibc-2.0.7-19 or below leak a UDP socket 9592 from yp_all(). 9593 95941998-09-25 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9595 9596 * conf/mount/mount_linux.c (parse_opts): check for pcfs support 9597 only if autoconfigured. 9598 95991998-09-18 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9600 9601 * Makefile.am (EXTRA_DIST): distribute README.yk2 file. 9602 9603 * README.y2k: explain y2k compliance status of am-utils. 9604 96051998-09-16 Erez Zadok <ezk@iguana.mcl.cs.columbia.edu> 9606 9607 * amd/amfs_host.c (fetch_fhandle, amfs_host_fmount, 9608 amfs_host_umounted): clnt_sperrno() may return a const. 9609 9610Sat Aug 8 23:28:32 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9611 9612 * aux/configure.in: check for <nfs/nfsmount.h>, as per Christos 9613 Zoulas. Turned on checking for mount options: async, synchronous, 9614 deadthresh, leasterm, nqnfs, and readahead. 9615 9616 * amd/info_nis.c: patch from christos@zoulas.com (Christos Zoulas) 9617 to include prototype definition for nis_isup(). 9618 9619Sun Jul 19 18:50:10 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9620 9621 * hlfsd/stubs.c (getcreds): force sscanf arg to u_long. 9622 9623Tue Jul 14 20:34:25 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9624 9625 * released snapshot am-utils-6.0a17s1 9626 9627Wed Jul 8 21:49:15 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9628 9629 * aux/macros/host_macros.m4: all x86 hosts should have $arch be 9630 i386, not i[456]86. 9631 9632Tue Jul 7 18:55:09 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9633 9634 * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4, 9635 include/am_defs.h: include <linux/posix_types.h> before 9636 <linux/fs.h> because on redhat 5.1, there is a bug (misuse) of 9637 headers in <socketbits.h> (it defines _LINUX_TYPES_H instead of 9638 __KERNEL_STRICT_NAMES). 9639 9640 * aux/configure.in: check for <linux/posix_types.h> because it is 9641 need for RedHat 5.1. 9642 9643Wed Jun 17 00:05:33 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9644 9645 * scripts/Makefile.am (EXTRA_DIST): have fixrmtab generated from 9646 .in as well, so it doesn't get removed by make clean. 9647 9648Tue Jun 16 22:00:15 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9649 9650 * aux/macros/{check_fs_mntent.m4, check_mnttab_type.m4, 9651 check_mount_type.m4}: redhat 5.1 puts some modules in 9652 /lib/modules/preferred/. 9653 9654Wed May 13 16:33:57 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9655 9656 * amd/ops_autofs.c (mount_autofs): cast pid to long. 9657 9658Tue Apr 28 15:12:36 1998 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9659 9660 * conf/nfs_prot/nfs_prot/nfs_prot_irix6.h, 9661 conf/nfs_prot/nfs_prot_sunos5_6.h: Undef MNTTAB_TYPE_AUTOFS too to 9662 avoid amd/am_ops.c (show_fstypes) from erroneously claiming 9663 support. 9664 9665Fri Apr 24 23:02:11 1998 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9666 9667 * libamu/xutil.c (get_syslog_facility): Don't use LOG_DAEMON 9668 unconditionally, may be missing on Ultrix V4.3. 9669 9670Thu Apr 23 20:24:33 1998 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 9671 9672 * conf/nfs_prot/nfs_prot_sunos5_4.h (MNTTYPE_CACHEFS): Define, 9673 missing from <sys/mntent.h>. 9674 9675 * conf/mtab/mtab_ultrix.c: Need separate inclusion of <sys/fs_types.h> 9676 without KERNEL defined here. 9677 9678 * aux/macros/mount_headers.m4: Need to include <ufs/ufs_mount.h>, 9679 <cdfs/cdfs_mount.h>, <cdfs/cdfsmount.h> so autoconfiguration of 9680 ufs_args_t, cdfs_args_t fields and cdfs mount options can succeed. 9681 9682 * amd/ops_ufs.c (mount_ufs): Removed obsolete comment. 9683 9684 * ChangeLog: Fixed confusing linebreaks from ChangeLog imports. 9685 Removed purely local (and obsolete) entry. 9686 9687Thu Apr 23 00:22:17 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9688 9689 ******************************************************************* 9690 *** Released am-utils-6.0a16 *** 9691 ******************************************************************* 9692 9693Wed Apr 22 01:20:39 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9694 9695 * aux/macros/check_mount_style.m4: define freebsd3 mount style. 9696 9697 * aux/macros/check_mount_trap.m4: new mount trap for freebsd3. 9698 9699 * aux/macros/check_mtype_printf_type.m4, 9700 aux/macros/check_mtype_type.m4 (ac_cv_mtype_type,): freebsd3 (as 9701 of snapshot 3.0-980311-SNAP) uses char * types for mount(2), not 9702 integers, but I'll keep them as integers and do the mapping in 9703 conf/mount/mount_freebsd3.c 9704 9705 * minor new port to i386-pc-bsdi3.1. 9706 9707 * minor new port to i386-unknown-netbsd1.3.1. 9708 9709 * amd/opts.c: new option addopts:=ARG, which smartly merges ARG 9710 options with whatever the /default ones for a key are. This 9711 allows adding or overriding /default options individual keys. 9712 9713 * amd/am_ops.c (ops_match): strdup/malloc string assigned to 9714 opt_opts because it'll get free()'d upon next use. 9715 (merge_opts): new function to merge two sets of options. 9716 (ops_match): if addopts option exist, append and merge it to the 9717 current default options. 9718 9719Tue Apr 21 12:54:59 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9720 9721 * wire-test/wire-test.c (main): use dynamically allocated returned 9722 string with list of interfaces. 9723 9724 * amd/get_args.c (get_version_string): allocate enough space for 9725 header version string and a list of network interfaces of any 9726 length. 9727 9728 * libamu/wire.c (print_wires): return dynamically allocated string 9729 containing list of networks. Must be dynamic because some sites 9730 had potentially dozens of network interfaces. Patch from Matthew 9731 Crosby <mcrosby@ms.com> slightly modified. 9732 9733Mon Apr 20 00:37:20 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9734 9735 * conf/nfs_prot/nfs_prot_irix5.h: underfine MNTTYPE_XFS because 9736 irix 5.3 does not have full header definitions for it. 9737 9738 * fsinfo/fsi_lex.l (yywrap): define yywrap if needed, and 9739 undefined it when not needed (similar to amd/conf_tok.l) 9740 9741 * hlfsd/hlfsd.h (ROOTID, SLINKID, INVALID): reduced maximum size 9742 of these to unsigned short (because uid_t on some linux systems is 9743 small). 9744 9745 * released snapshot am-utils-6.0a16s10 9746 9747 * doc/am-utils.texi (opts Option): documented resvport mount 9748 option. 9749 9750Sun Apr 19 18:17:03 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9751 9752 * doc/am-utils.texi (-D-Option): document behavior of -D info and 9753 especially what it does to hesiod (turn on RES_DEBUG). 9754 9755 * scripts/amd.conf.5: document info debugging option. 9756 9757 * libamu/xutil.c (dbg_opt): parse info debugging option. 9758 9759 * include/am_utils.h (D_INFO): define new trace option. 9760 9761 * Makefile.am (EXTRA_DIST): include list of official mirrors in 9762 distribution. 9763 9764 * libamu/wire.c (SIZE): in the simple case, just compute 9765 sizeof(struct ifreq). 9766 9767Sun Apr 19 16:30:35 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9768 9769 * amd/amd.c (daemon_mode): set a temporary secure umask(0022) 9770 before writing log file and restore it afterwards. Patch from 9771 Donald Buczek <buczek@MPIMG-Berlin-Dahlem.MPG.DE>. 9772 9773 * amd/get_args.c (get_args): 9774 9775 * doc/am-utils.texi (-F Option), amd/amd.8: mention that amd.conf 9776 file specified by -F is always processed last. 9777 9778 * amd/amd.c (daemon_mode): do not fclose(stdout) so that the fd 9779 won't be reused. Allows startup script to redirect stdout. Patch 9780 from Donald Buczek <buczek@MPIMG-Berlin-Dahlem.MPG.DE>. 9781 9782 * libamu/xutil.c (switch_to_logfile): compare logfile name and 9783 syslog string with correct length. Patch from Donald Buczek 9784 <buczek@MPIMG-Berlin-Dahlem.MPG.DE>. 9785 9786 * amd/restart.c (restart): correctly inherit existing NFS V.3 9787 mounts upon restart. Patch from Donald Buczek 9788 <buczek@MPIMG-Berlin-Dahlem.MPG.DE>. 9789 9790Sat Apr 18 19:01:19 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 9791 9792 * using libtool 1.2 and automake 1.3 (with my patches). 9793 9794 * aux/macros/opt_am_cflags.m4, */Makefile.in: rename AM_CFLAGS to 9795 AMU_CFLAGS to avoid conflicts with automake-1.3. 9796 9797Sun Apr 5 23:09:08 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9798 9799 * converted to using libtool-1.2. 9800 9801Tue Mar 10 16:52:09 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9802 9803 * fsinfo/fsi_analyze.c (fixup_required_mount_info): replaced silly 9804 for loop (ITER) which used to run only to initialize the variable 9805 dd once and then break; with a simple assignment. 9806 9807 * hlfsd/hlfsd.h: cleanup so it compiles with Solaris 9808 /opt/SUNWspro/bin/cc, and use gid_t not int. 9809 9810 * amd/mapc.c (mapc_sync): don't dereference pointer (so it 9811 compiles with Solaris /opt/SUNWspro/bin/cc) 9812 9813Sun Mar 8 15:54:22 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9814 9815 * aux/config.{guess,sub}: used from gcc-2.8.1. 9816 9817Sat Mar 7 15:33:27 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9818 9819 * released snapshot am-utils-6.0a16s9 9820 9821 * INSTALL, doc/am-utils.texi (Supported Platforms): updated names 9822 based on new output of new config.guess. 9823 9824 * aux/config.{sub,guess}: used newer versions from gcc-2.8.0. 9825 9826 * amd/amd.8,doc/am-utils.texi: document correct usage of default 9827 /etc/amd.conf file. 9828 9829 * fixmount/fixmount.c (inetresport,privsock): use some more 9830 portable code from amq/amq.c. 9831 9832 * amd/get_args.c (get_args): use default /etc/amd.conf file only 9833 if no arguments had been passed to amd. 9834 9835 * fixmount/fixmount.c (clnt_create_timeout): use tli/socket code 9836 ala amq/amq.c so that fixmount will work on both types of systems. 9837 9838 * amq/amq.c (main): do no close tcp socket before running udp try, 9839 because we're not sure if it was opened at all. 9840 9841 * mips-dec-ultrix* port merged in and cleaned up. 9842 9843 * aux/configure.in: up minor shared library revision number, since 9844 it has changed enough. 9845 9846 * hlfsd/hlfsd.c (main): don't check for overlay mount option here, 9847 as it is now done in compute_nfs_args(). Remove ultrix specific 9848 code also because it was moved to compute_nfs_args(). 9849 9850 * conf/mount/mount_svr4.c: removed DEBUG_MOUNT_SVR4 code, now that 9851 we have more generic code in print_nfs_args(). 9852 9853 * libamu/mount_fs.c (print_nfs_args): print maxlen of 9854 nfs_args.addr, and also syncaddr (which is mostly NULL). Print 9855 struct knetconfig from nfs_args->knconf. 9856 9857 * aux/macros/mount_headers.m4 (define): do not check for ufs/cdfs 9858 headers here, but in try_compile_anyfs.m4. 9859 9860 * aux/macros/type_ufs_args.m4: move test for struct ufs_specific 9861 (for ultrix) here from its own macro. 9862 9863 * aux/macros/type_cdfs_args.m4: move test for struct iso_specific 9864 (for ultrix) here from its own macro. 9865 9866 * amd/ops_nfs.c (mount_nfs_fh): no need to run code again checking 9867 for overlay mount option. Remove code which checks for overlay 9868 option, as it is now done in compute_nfs_args(). 9869 9870 * libamu/mount_fs.c (compute_mount_flags): move here code which 9871 checks for overlay mount option which was in amd/amfs_toplvl.c: 9872 mount_amfs_toplvl(). 9873 9874Wed Feb 7 15:35:51 1998 Rainer Orth <ro@xayide.TechFak.Uni-Bielefeld.DE> 9875 9876 * The following are Rainer's ChangeLog entries for his ultrix 9877 port, added manually. -Erez. 9878 9879 * merged Ultrix port with am-utils 6.0 a16s5: amd/ops_afs.c 9880 (mount_toplvl) -> amd/amfs_toplvl.c (mount_amfs_toplvl) 9881 9882 * include/am_defs.h: include cdfs specific mount headers 9883 avoid duplication definition of gt_names[] in <sys/fs_types.h> (Ultrix) 9884 9885 * include/am_compat.h: define several mount options corresponding 9886 to mount flags: pgthresh, hard (nfs), defperm, nodefperm, 9887 noversion, rrip (cdfs), nocache, quota, sync (generic) removed 9888 duplicate MNTTAB_OPT_RO definition 9889 9890 * aux/macros/try_compile_anyfs.m4: include Ultrix specific 9891 ufs/cdfs mount headers 9892 9893 * aux/macros/mount_headers.m4: include several Ultrix/Digital UNIX 9894 specific mount headers 9895 9896 * aux/macros/check_{fs_mntent, mount_type}.m4: check for GT_* 9897 mount types in mount headers (Ultrix) 9898 9899 * aux/configure.in: Ultrix/Digital UNIX specific checks: new 9900 headers, mount structures and fields, filesystem and mount types, 9901 mount flags 9902 9903 * aux/acconfig.h: placeholders for new mount options: quota 9904 (generic), ro (nfs), defperm, nodefperm, noversion, rrip (cdfs) 9905 cdfs, nfs, ufs mount structure fields new ufs, cdfs mount 9906 structures 9907 9908 * amd/ops_ufs.c (mount_ufs): Ultrix stores generic mount flags in 9909 ufs_args.ufs_flags and has ufs specific pgthresh option 9910 9911 * amd/ops_cdfs.c (mount_cdfs): handle Ultrix/Digital UNIX specific 9912 CDFS mount flags and options 9913 9914 * amd/ops_afs.c (mount_toplvl), amd/ops_nfs.c (mount_nfs_fh), 9915 hlfsd/hlfsd.c (main): store generic mount flags in 9916 nfs_args.gfs_flags, handle separate NFS ro flag 9917 9918 * aux/macros/{check_mnt2_cdfs_opt, struct_iso_specific, 9919 struct_ufs_specific}.m4: new files; check for Ultrix specific 9920 mount structures 9921 9922 * conf/trap/trap_ultrix.h: arg 3 to mount(2) is rwflag 9923 9924 * aux/macros/type_auth_create_gidlist.m4 (ultrix*): 9925 AUTH_CREATE_GIDLIST_TYPE is int (not short == gid_t) from a 9926 comment in <rpc/auth.h> 9927 9928 * include/am_defs.h: #define KERNEL to avoid definition of 9929 gt_names[] conf/mtab/mtab_ultrix.c: #include <sys/fs_types> before 9930 <config.h> to force single definition here 9931 9932 * libamu/mount_fs.c (compute_nfs_args): Ultrix support for 9933 nfs_args.gfs_flags moved to callers store mount options in 9934 nap->optstr 9935 9936 * include/am_defs.h: fix _am_mntent mnt_{type, opts} field 9937 descriptions 9938 9939 * aux/macros/mount_headers.m4, aux/macros/try_compile_nfs.m4: 9940 include <rpc/rpc.h> before AMU_NFS_PROTOCOL_HEADER for svc_req 9941 definition in prototypes 9942 9943 * aux/macros/mount_headers.m4: include <sys/errno.h> before 9944 AMU_NFS_PROTOCOL_HEADER: <nfs/nfs.h> needs it for NFSERR_* 9945 definitions 9946 9947 * conf/nfs_prot/nfs_prot_ultrix.h: new file 9948 9949 * aux/macros/check_nfs_prot_headers.m4: use nfs_prot_ultrix.h 9950 9951 * aux/macros/mount_headers.m4, aux/macros/try_compile_nfs.m4, 9952 aux/macros/try_compile_rpc.m4, include/am_defs.h: avoid multiple 9953 inclusion of <rpc/xdr.h> 9954 9955Sat Mar 7 13:56:05 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9956 9957 * aux/configure.in: save state of config.cache and confdefs.h 9958 (as dbgcf.h) at various points of the configure. 9959 9960 * aux/macros/save_state.m4: new macro to save state of configure, 9961 esp. useful in long ones. Saves confdefs.h and write $ac_cv_* 9962 cache variables that are known so far. 9963 9964 * released snapshot am-utils-6.0a16s8 9965 99661998-03-06 Erez Zadok <ezk@mercer.psl.cs.columbia.edu> 9967 9968 * fsinfo/fsi_lex.l,amd/conf_tok.l: define ECHO after undefining 9969 it, but only for flex. 9970 9971Fri Mar 6 17:23:17 1998 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 9972 9973 * hlfsd/homedir.c (plt_print): change pathname of hlfsd dump file 9974 to /usr/tmp/hlfsd.dump.XXXXXX, and use a safe method (if possible) 9975 to write the dump file. 9976 9977 * doc/am-utils.texi,amd/opts.c: rename all references to nomadic 9978 functions to boolean functions, which is what they really are. 9979 9980 * aux/configure.in: don't look for strcasecmp in libucb at all, 9981 but rather complete it from libamu/strcasecmp.c as needed. 9982 9983Fri Mar 6 03:29:20 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9984 9985 * conf/nfs_prot/nfs_prot_osf4.h: avoid conflicts with Irix's EFS. 9986 9987 * libamu/wire.c (getwire): fix for 0.0.0.0 loopback on SunOS 3.X 9988 which defines IFF_ROUTE instead of IFF_LOOPBACK. Patch from Tom 9989 Schmidt <tschmidt@micron.com>. 9990 9991 * released snapshot am-utils-6.0a16s7 9992 9993 * conf/nfs_prot/nfs_prot_hpux11.h: a first working port of amd to 9994 hppa1.0-hp-hpux11.00.tgz. 9995 9996Thu Mar 5 21:59:03 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 9997 9998 * converted all sources to use mntent field names, and map mnttab 9999 field names to mntent's. 10000 10001 * include/am_defs.h (mnt_special): map struct mnttab field names 10002 to struct mntent field names. 10003 10004 * aux/macros/check_mount_trap.m4: hpux11's mount trap style is 10005 identical to svr4/solaris2. 10006 10007 * aux/macros/check_mount_style.m4: hpux11's mount style is 10008 identical to svr4/solaris2. 10009 10010 * aux/macros/check_network_transport_type.m4: hpux11 is a TLI 10011 system! 10012 10013 * aux/macros/check_nfs_sa_dref.m4: hpux11's NFS host address 10014 dereferencing style is same as svr4. 10015 10016 * aux/macros/check_nfs_fh_dref.m4: hpux11's NFS file fh 10017 dereferencing style is same as svr4. 10018 10019 * conf/transp/transp_tli.c (create_nfs_service): if failed to 10020 getnetconfigent() of ticlts, then try udp (hpux11). 10021 10022 * conf/nfs_prot/nfs_prot_hpux11.h: added correct definitions for 10023 struct nfs_args, nfs_fh, and NFSMNT_* flags, taken from solaris 10024 2.5.1 (HP used them). 10025 10026 * amd/rpc_fwd.c (fwd_init): don't use O_NDELAY for t_open() 10027 because hpux11 doesn't like it. if t_open failed, print error 10028 based on t_errlist, not sys_errlist. 10029 10030Wed Mar 4 22:01:55 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10031 10032 * doc/am-utils.texi: lots of documentation fixes from Rainer Orth 10033 <ro@TechFak.Uni-Bielefeld.DE>. 10034 10035Sat Feb 28 22:16:35 1998 Erez Zadok <ezk@kosh.cs.columbia.edu> 10036 10037 * fsinfo/fsi_lex.l: undefine ECHO again, so it doesn't get used 10038 later. 10039 10040 * include/am_defs.h: defined the extern for ualarm() if it isn't 10041 found, regardless if the function isn't found in standard 10042 libraries, because otherwise libamu will include it. 10043 100441998-02-28 Erez Zadok (per Ron Snyder) <ezk@short.cvo.roguewave.com> 10045 10046 * initial port to hpux-11 completed. Compiles cleanly, but 10047 probably does not work, because of missing NFS V.2/3 headers. 10048 10049 * amd/conf_tok.l: cast yytext to char* when passed to strlen and 10050 strdup, for hpux-11's ansi-cc compiler. 10051 10052 * include/am_utils.h: renamed all xfree() to XFREE() to avoid 10053 conflict with hpux-11's system headers. Also move (voidp) cast 10054 from sources to inside the macro itself. 10055 10056Sat Feb 28 13:44:21 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10057 10058 * released snapshot am-utils-6.0a16s6 10059 10060 * amd/info_nis.c (nis_isup): new function to test if NIS is up 10061 without hanging amd. Used to ensure that amd does not clear the 10062 maps when the expiration period arrived, if the service is down. 10063 Otherwise it would be left with empty maps. It is better to stay 10064 with possibly old information than none at all. 10065 10066 * amd/mapc.c (mapc_sync): check to see if map service is up. 10067 10068Tue Feb 24 02:19:42 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10069 10070 * aux/macros/check_lib2.m4 (AC_CHECK_LIB2): fix macro so it 10071 includes auxiliary library only if needed. 10072 100731998-02-22 Erez Zadok <ezk@mercer.psl.cs.columbia.edu> 10074 10075 * amd/conf_tok.l: undefine ECHO again, so it doesn't get used 10076 later. 10077 10078Sun Feb 22 01:41:08 1998 Erez Zadok <ezk@zen.cs.columbia.edu> 10079 10080 * conf/nfs_prot/nfs_prot_osf2.h: port to alpha-dec-osf2.1 10081 completed. 10082 10083 * conf/mtab/mtab_osf.c (mnt_dup): not all OSF have NFS3. 10084 10085Sat Feb 21 19:45:48 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10086 10087 * doc/am-utils.texi (Network Host Filesystem): correct example for 10088 type:=host map. 10089 10090 * aux/macros/os_cflags.m4: only osf4 should compile with 10091 -D_SOCKADDR_LEN. 10092 10093 * aux/macros/check_nfs_prot_headers.m4: distinguish between OSF2 10094 and OSF4. 10095 10096 * BUGS: include a new file listing known bugs. 10097 10098Sat Feb 21 03:50:48 1998 Erez Zadok <ezk@mercer.psl.cs.columbia.edu> 10099 10100 * conf/nfs_prot/nfs_prot_linux.h: turn DES off on all linux 10101 versions. 10102 10103 * aux/macros/type_recvfrom_fromlen.m4: linux alpha should use 10104 size_t for recvfrom fromlen arg. 10105 10106Sat Feb 21 03:33:59 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10107 10108 * scripts/ctl-hlfsd.in: turn -D fork so primary process never 10109 hangs. 10110 10111Sat Feb 21 02:45:51 1998 Erez Zadok <ezk@mercer.psl.cs.columbia.edu> 10112 10113 * include/am_defs.h: don't include <sys/stat.h> and 10114 <linux/stat.h>, just remaining definitions in <statbuf.h> 10115 10116Thu Jan 29 00:44:28 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10117 10118 * released snapshot am-utils-6.0a16s5 10119 10120 * conf/mount/mount_irix6.c (mount_irix): pass {u,e,x}fs_args to 10121 mount(2). 10122 10123 * check for <sys/fs/xfs_clnt.h> and include it when needed. 10124 10125 * conf/mount/{mount_irix5.c,mount_irix6.c} (mount_irix): recognize 10126 efs and xfs separately from "ufs". 10127 10128 * amd/{ops_xfs.c,ops_efs.c}: new support for irix xfs/efs. 10129 10130 * aux/configure.in: look for irix efs and xfs file systems. 10131 10132 * scripts/amd.conf.5: new unmount_on_exit option documented. 10133 10134 * doc/am-utils.texi (unmount_on_exit): new option documented. 10135 10136 * amd/conf.c (gopt_unmount_on_exit): new function to handle new 10137 amd.conf option. 10138 10139 * amd/map.c (umount_exported): if global amd.conf flag 10140 unmount_on_exit is on, then try to unmount all mounted (or 10141 restartable) file systems. 10142 10143 * amd/amd.c: if print_pid option is on, then normally print it to 10144 stdout. If also pid_file is specified, then print the process ID 10145 into that file. 10146 10147 * amd/get_args.c (get_args): print correct -l option depending if 10148 system supports syslog and/or syslog facilities. Patch from 10149 Tom Schmidt <tschmidt@micron.com>. 10150 10151 * doc/am-utils.texi (opts Option): updates for documentation for 10152 new cdfs options defperm, nodefperm, noversion, rrip. 10153 10154 * amd/ops_cdfs.c (mount_cdfs): support cdfs options defperm, 10155 nodefperm, noversion, rrip. 10156 10157 * conf/nfs_prot/nfs_prot_osf.h: need to look at <cdfs/cdfsmount.h> 10158 on osf. 10159 10160 * aux/macros/{expand_cpp_hex.m4, expand_cpp_int.m4, 10161 expand_cpp_string.m4}: use #error to make failed compilations 10162 fail faster, rather than have the program fail during a run. 10163 10164 * include/am_compat.h: added a few new cdfs options: rrip, 10165 noversion, defperm, and nodefperm (used in OSF). 10166 10167Wed Jan 28 20:24:09 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 10168 10169 * released snapshot am-utils-6.0a16s4 10170 10171 * doc/am-utils.texi (Global Parameters): update manual for new 10172 amd.conf global variable hesiod_base. 10173 10174 * scripts/amd.conf.5: update man page for new amd.conf global 10175 variable hesiod_base. 10176 10177 * amd/get_args.c (get_args): use /etc/amd.conf file if exists by 10178 default, else try command line options. Patch from Randall 10179 S. Winchester <rsw@Glue.umd.edu>. 10180 10181Wed Jan 28 12:20:56 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10182 10183 * amd/info_hesiod.c (hesiod_search), amd/conf.c 10184 (gopt_hesiod_base), amd/amd.h, amd/amd.c (init_global_options): 10185 included patch from Randall S. Winchester <rsw@Glue.umd.edu>, to 10186 support a hesiod base name in the amd.conf file. 10187 10188 * doc/am-utils.texi (pid_file Parameter): document new global 10189 amd.conf parameter. 10190 10191 * scripts/amd.conf.5: document new global option pid_file. 10192 10193 * amd/amd.c (daemon_mode): if cannot open pid_file, continue to 10194 run, but print error message. 10195 10196 * amd/conf.c (gopt_pid_file), amd/amd.h, amd/amd.c (daemon_mode, 10197 init_global_options): Included patch from Randall S. Winchester 10198 <rsw@Glue.umd.edu>, to support pid files in the amd.conf file. 10199 10200 * amd/get_args.c (get_args): correct usage info on amd -t. 10201 10202 * amd/*.c: massive file name and symbol name changes. All amd 10203 file systems files and symbols are prefix with amfs_*. Now using 10204 real name of file system: amfs_auto instead of afs, amfs_inherit 10205 instead of ifs, amfs_linkx instead of sfsx, etc. This will enable 10206 clear distinction between amd file system and generic ones like 10207 nfs/ufs/pcfs/hsfs. Also, now we can implement true afs (Andrew 10208 f/s) and DFS (Distributed f/s). 10209 10210 * amd/amfs_union.c: unionfs for amd is always defined, no need to 10211 #ifdef it. 10212 10213Mon Jan 26 16:51:38 1998 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 10214 10215 * libamu/mount_fs.c (compute_nfs_args): set 'noconn' NFS option on 10216 or off, based on the particular quirks of the OS in question. 10217 10218 * aux/macros/check_nfs_socket_connection.m4: new macro to set the 10219 correct wait of handling un/connected NFS sockets. 10220 10221 * scripts/wait4amd.in: use rlogin instead of rsh. 10222 10223 * amd/am_ops.c (ops_showfstypes): when showing F/S types in amd 10224 -v, always show "nfs3" for NFS V.3. 10225 102261998-01-25 Erez Zadok <ezk@snoopy.cs.columbia.edu> 10227 10228 * lots of small fixes for solaris 2.6, since gcc 2.8.0 -Wall gets 10229 more picky than 2.7.2.3 did. 10230 102311998-01-24 Erez Zadok <ezk@snoopy.cs.columbia.edu> 10232 10233 * include/am_utils.h (dlog): amuDebug macros reduced to shorter 10234 forms. 10235 10236Fri Jan 23 18:38:30 1998 Erez Zadok <ezk@goat.mcl.cs.columbia.edu> 10237 10238 * released snapshot am-utils-6.0a16s3 10239 10240 * include/am_defs.h: on Solaris 2.6, <sys/varargs.h> is included 10241 in <sys/fs/autofs.h> but since stdargs.h is used, and varargs.h 10242 must not, fake a definition for varargs. 10243 10244Fri Jan 16 10:16:40 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10245 10246 * README: show how to configure in additional support such as 10247 hesiod using various --enable-* flags. 10248 10249Wed Jan 14 15:13:02 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10250 10251 * aux/configure.in: look for strcasecmp(), and replace it if not 10252 available. 10253 10254 * amd/ops_nfsl.c (nfsl_match): host names should be compared using 10255 case insensitive. 10256 10257 * amd/opts.c: for each map variable, define if the comparison 10258 needs to be done case insensitive. 10259 10260 * include/am_utils.h (STRCEQ): a new macro to use strcasecmp(). 10261 Patch from Thomas Richter <richter@chemie.fu-berlin.de> 10262 102631998-01-14 Erez Zadok <ezk@irt.cs.columbia.edu> 10264 10265 * aux/configure.in: look for "isofs" as a possible mount type for 10266 cdfs (RedHat Linux). 10267 10268Wed Jan 14 02:07:05 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10269 10270 * conf/mount/mount_linux.c (parse_opts): don't look for cdfs mount 10271 type if not defined. 10272 10273 * conf/nfs_prot/nfs_prot_linux.h: don't define __FD_* macros if 10274 already defined. 10275 10276 * aux/configure.in: look for ext2fs before ufs, b/c some linux 10277 have both. 10278 10279Mon Jan 12 15:43:20 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10280 10281 * Makefile.am (snapshot): allow me to install snapshots into the 10282 ftp directory. 10283 10284 * scripts/ctl-hlfsd.in: don't turn on -D mem by default. 10285 10286 * amd/get_args.c (get_args): minor bug in output of amd -H. 10287 10288Mon Jan 12 03:05:06 1998 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 10289 10290 ******************************************************************* 10291 *** Released am-utils-6.0a15 *** 10292 ******************************************************************* 10293 10294Sun Jan 11 15:06:34 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10295 10296 * amd/conf.c (*_browsable_dirs): allow specifying 10297 browsable_dirs=full, which will print *all* entries (other than 10298 /default), including those with '*' and '/' characters. 10299 10300 * amd/info_file.c (MAX_LINE_LEN): up maximum readdir chain length 10301 to 1500. 10302 10303 * doc/am-utils.texi: fixed reversed documentation for NFS mount 10304 options vers and proto. 10305 10306 * doc/Makefile.am (install-html): separate target just for 10307 installing html files. Another new target "alldocs" is just for 10308 installing all files needed for the am-utils home page. 10309 10310 * scripts/amd.conf-sample: updated example for log_file. 10311 10312 * scripts/amd.conf.5: updated for new way to declare new syslog 10313 facility in the log_file option. 10314 10315 * amd/amd.8: updated for new way to declare new syslog facility in 10316 the -l option. 10317 10318 * libamu/xutil.c (get_syslog_facility): allow users to specify the 10319 syslog facility as an appended string to the log device. Ex. amd 10320 -l syslog:local7 will use LOG_LOCAL7, while the older -l syslog 10321 will use the default LOG_DAEMON facility. 10322 10323 * amd/get_args.c (get_args): updated new syntax for amd -l 10324 syslog:facility. 10325 10326Thu Jan 8 04:05:10 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10327 10328 * aux/macros/host_macros.m4: don't confuse sun3 (sparc) with sun3 10329 (intel). 10330 10331 * libamu/wire.c (print_wires): bug fix. Nullify output buffer 10332 before appending to it, on systems with two or more network 10333 interfaces. 10334 10335 * conf/nfs_prot/nfs_prot_sunos5_3.h: add missing definition for 10336 the mntent for cachefs. 10337 10338 * include/am_defs.h: external definition for strstr() should use 10339 const for both arguments. 10340 10341 * aux/configure.in: add extern definitions for getwd() if missing. 10342 10343 * include/am_defs.h: define the extern for strdup() even if the 10344 function does not exist, for it will be filled in by 10345 libamu/strdup.c 10346 10347 * amq/pawd.c (cluster_server): don't use getccent() if the extern 10348 for it isn't there. On hpux 10.20, the function is in libc, but 10349 <cluster.h> and struct cct_entry do not exist. 10350 10351 * aux/configure.in: check for an extern for getccent() b/c some 10352 hpux systems don't have it (hpux 10.20). 10353 10354Wed Jan 7 00:09:19 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 10355 10356 * doc/am-utils.texi (Amq -T option): manual documentation updates 10357 for new amq options -T/-U. 10358 10359 * amq/amq.8: updated man page for new amq options -T/-U. 10360 10361 * amq/amq.c: two new switches to amq. -U will contact amd using 10362 UDP only. -T will use TCP only. Normally amq will try TCP and 10363 if that failed, will try UDP. 10364 10365 * doc/am-utils.texi (pawd): manual documentation for pawd. 10366 10367 * amq/pawd.1: new man page for pawd. 10368 10369Tue Jan 6 04:21:59 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 10370 10371 * amq/pawd.c: a new program, Print Automounter Working Directory, 10372 to print the proper pathname of the cwd or any other pathname, 10373 adjusted for automounter paths, while avoiding mount points. 10374 10375 * aux/macros/localconfig.m4: trivial support for am-utils 10376 maintainers to adjust some of the configuration of am-utils after 10377 it has been auto-configured by putting whatever definitions you 10378 wish in a file called localconfig.h, located in the top build 10379 directory (the same one where config.h is created for you). 10380 10381 * doc/am-utils.texi (Caching Filesystem): updated documents for 10382 cachefs file system. 10383 10384 * amd/ops_cachefs.c: initial cachefs support, for solaris. 10385 type:=cachefs, requires cachedir:=/cache/dir/name to be defined 10386 and initialized with cfsadmin -c. $rfs is backdir to be cached 10387 from, and $fs is the local mount point of the cachefs. 10388 10389 * conf/mount/mount_svr4.c (mount_svr4): support mounting of 10390 cachefs file systems. 10391 10392 * amd/ops_cdfs.c: cdfs should be named 'cdfs', not whatever the 10393 mnttab type is. 10394 10395Mon Jan 5 23:22:49 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 10396 10397 * amd/opts.c: added support for new variable $cachedir. 10398 10399 * include/am_utils.h: added opt_cachedir field to struct am_opts. 10400 10401Sat Jan 3 01:43:57 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 10402 10403 * amd/ops_nfsl.c (nfsl_ffserver, nfsl_match): also check if the 10404 local hostname does not match $rhost, and if so, also assume 10405 type:=nfs. 10406 10407Fri Jan 2 01:00:40 1998 Erez Zadok <ezk@lorien.cs.columbia.edu> 10408 10409 * updated all source files to add 1998 as a copyright year. 10410 10411 * amd/ops_nfsl.c: new amd meta file system "type:=nfsl". Behaves 10412 like type:=linkx if the pathname denoted by $fs exists, and like 10413 type:=nfs if it does not. A convenient shortcut for the most 10414 popular amd map entry. 10415 10416 * amd/amd.c (main): amd should chdir to / before starting, to 10417 avoid hanging on other NFS server if started elsewhere. 10418 10419 * amd/ops_TEMPLATE.c: added an empty template file for developers 10420 who wish to write new amd pseudo file systems. 10421 10422Thu Jan 1 00:27:28 1998 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10423 10424 * hlfsd/homedir.c (plt_init): make function exported, to save on 10425 the unnecessary init_homedir() function which was removed. 10426 (table_add): don't use xmalloc() when you can use strdup() 10427 instead. 10428 10429Thu Jan 1 00:15:58 1998 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 10430 10431 * hlfsd/homedir.c (hlfsd_endpwent): Don't actually run this 10432 because we will be making more passwd calls afterwards. On 10433 Solaris 2.5.1, making getpwent() calls after calling endpwent() 10434 results in a memory leak! (and no, even Purify didn't detect 10435 it...) 10436 10437Tue Dec 23 18:23:47 1997 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 10438 10439 * hlfsd/hlfsd.c (main): Bug fix. Don't try to free() an 10440 automatically allocated address. 10441 10442 * amd/ops_afs.c (mount_toplvl): Bug fix. Don't try to free() an 10443 automatically allocated address. 10444 10445 * ALL SOURCES: change every direct call to free() to xfree(), so 10446 it can be mapped to the right debugging function as needed. 10447 10448 * include/am_utils.h: new free() policy. If debugging memory, 10449 call dxfree(), which will print the file name and line number 10450 where the free occurred and the pointer address. if only regular 10451 debugging, then free() and reset the pointer to NULL so it cannot 10452 be used afterwards inadvertently. If not DEBUG at all, then just 10453 run free(). Three different #define macros set the right mapping. 10454 10455 * libamu/xutil.c (dxfree): renamed function to dxfree(), so it can 10456 be called only when debugging the memory. 10457 10458Tue Dec 23 04:24:28 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10459 10460 * wire-test/wire-test.c (main): use xmalloc() not malloc(). 10461 10462 * conf/transp/transp_tli.c (get_knetconfig): use xzalloc() not 10463 calloc(). 10464 10465 * conf/mtab/mtab_mach3.c (convert): use xzalloc() not calloc(). 10466 10467 * conf/mount/mount_linux.c (parse_opts): use xmalloc() not 10468 malloc(). 10469 10470 * amd/info_ldap.c: use xmalloc() not malloc(). 10471 10472 * libamu/xutil.c (xzalloc): new function to allocate memory and 10473 zero its bytes. 10474 10475 * amq/amq.c: amq does not need its own definition of xfree(). 10476 10477 * aux/macros/opt_debug.m4: if used --enable-debug=mem, then also 10478 look for function malloc_verify() in libmapmalloc.a, and function 10479 mallinfo() in libmalloc. 10480 10481 * libamu/xutil.c (checkup_mem): do not use mallinfo field 10482 uordbytes, because it does not always exist. Rather, compute it 10483 from other fields.. 10484 10485 * include/am_utils.h: add external definition to xfree() function 10486 used when debugging memory references. 10487 10488Mon Dec 22 03:01:30 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10489 10490 * amd/ops_afs.c (afs_readdir_browsable): reduce the number of 10491 bytes heuristically computed to be returned to the kernel. 10492 Otherwise browsable_dirs fails on OpenBSD 2.2. 10493 10494 * amd/mntfs.c (uninit_mntfs): bug fix. Moved freeing of 10495 mf_private field to AFTER it gets used. 10496 10497Sat Dec 20 00:51:21 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10498 10499 * amd/ops_host.c (host_umounted): don't use clnt_spcreateerror() 10500 on systems that don't support it. 10501 10502 * include/am_defs.h: add missing extern definition for free(). 10503 10504 * aux/configure.in: check for external definition for free(). 10505 10506 * libamu/Makefile.am: add to comment a mention of strstr as an 10507 optional function. 10508 10509 * libamu/xutil.c (switch_to_logfile): use openlog() options only 10510 if they exist. 10511 10512 * conf/transp/transp_sockets.c (get_nfs_version): don't use 10513 clnt_spcreateerror if it does not exist. 10514 10515 * aux/configure.in: check for missing functions clnt_create and 10516 clnt_spcreateerror. Check for missing strstr, and complete 10517 its code. Check for missing external definition for strstr. 10518 10519 * aux/macros/host_macros.m4: normalize sun3* names. 10520 10521 * Makefile.am: updates for new sunos3 files distributed. 10522 10523 * conf/nfs_prot/nfs_prot_sunos3.h: new file. 10524 10525 * conf/fh_dref/fh_dref_sunos3.h: new file. 10526 10527 * aux/macros/check_nfs_prot_headers.m4: added sunos3 case. 10528 10529 * aux/macros/check_nfs_fh_dref.m4: added sunos3 case. 10530 10531 * doc/am-utils.texi (wire Selector Variable): updated manual for 10532 adjusted variables wire, network, and netnumber, all using the 10533 in_network() function. 10534 10535Fri Dec 19 04:37:36 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10536 10537 * amd/opts.c: allow options to be processed by executing arbitrary 10538 functions. Converted wire, network, and netnumber all to use the 10539 nomadic function in_network. So from now on they perform a match 10540 against all networks, not just primary. 10541 10542 * initial port to alpha-unknown-linux-gnu, probably works, but 10543 untested yet. 10544 10545 * conf/nfs_prot/nfs_prot_linux.h: add special definitions for 10546 __FD_* macros which for som strange reason do not get included 10547 from <selectbits.h> on redhat alpha linux. Also turn off usage of 10548 <rpc/des_auth.h> because it is incomplete on the same systems. 10549 10550 * hlfsd/homedir.c (table_add): cast uid field to int, for 10551 comparison. 10552 10553 * include/am_defs.h: more coflicts with redhat alpha linux 10554 "resolved". 10555 10556 * aux/macros/{mount_headers,try_compile_anyfs,try_compile_nfs}.m4: 10557 There's a conflict of definitions on redhat alpha linux between 10558 <netinet/in.h> and <linux/fs.h> which must be avoided. 10559 10560 * aux/configure.in: check for <socketbits.h>, which is in use on 10561 redhat alpha linux. 10562 10563 * doc/am-utils.texi (Selectors): added documentation to describe 10564 the new "!" (negated) nomadic functions. 10565 10566 * amd/opts.c (f_in_network): print debugging info that is correct, 10567 rather than saying that any ARG is on a local network. 10568 (eval_opts): added support for negating nomadic functions, by 10569 prepending "!" to their name. Example, !exists(/foo/bar). 10570 10571Thu Dec 18 20:57:19 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10572 10573 * include/am_compat.h: ensure that all NFS3 systems have the mount 10574 table entries (and amd opts switches) "proto" and "vers". 10575 10576 * hlfsd/homedir.c (table_add): added some debugging info to try 10577 and track down a serious memory leak in hlfsd. 10578 105791997-12-18 Erez Zadok <ezk@t-rex.mcl.cs.columbia.edu> 10580 10581 * libamu/mount_fs.c (compute_nfs_args): OpenBSD 2.2 requires that 10582 you do NOT set the noconn option, and use connected sockets 10583 always. So I'm now forced not to set it at all, and have the user 10584 specify it as "conn" or "noconn" in their /default entry. Argh... 10585 Finally, it looks as if OpenBSD 2.2's NFS 3 implementation may be 10586 buggy (TCP hangs with "short receive" kernel errors). I'd better 10587 wait until they get it working in their version of the automounter 10588 first. So I'm putting the "noconn" option back. 10589 10590Thu Dec 18 02:39:39 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10591 10592 * libamu/mount_fs.c (compute_nfs_args): use maxgrps option and set 10593 nfs_args field maxgrouplist accordingly. 10594 10595 * include/am_compat.h (MNTTAB_OPT_MAXGROUPS): complete definition 10596 for mount table entry for maxgroups based on NFS mount option 10597 maxgrp. 10598 10599 * aux/configure.in: put back testing for NFS mount option 10600 "maxgrps". Added test for mount table entry "maxgroups". 10601 10602 * libamu/mount_fs.c (compute_nfs_args): perform more careful tests 10603 on nfs_proto, because it could be NULL. 10604 10605 * doc/am-utils.texi (Selectors): added example of in_network() 10606 selector. 10607 10608 * aux/macros/check_hide_mount_type.m4: all hpux versions, 10609 including 9.x, should use "ignore" as the mount type to hide from 10610 amd. 10611 10612Wed Dec 17 13:09:21 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10613 10614 * include/am_utils.h (NSTREQ): use new macro instead of strncmp() 10615 every where in the sources. 10616 10617Wed Dec 17 01:15:01 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10618 10619 * libamu/mount_fs.c (print_nfs_args): if -D trace is on, will 10620 print as much info that is given in struct nfs_args as possible. 10621 useful for detecting internal flags and options, as well as the 10622 file handle used. 10623 10624 * scripts/ctl-amd.in: look for amd.conf file in ${prefix}/etc 10625 after /etc and before /etc/local. 10626 10627Tue Dec 16 18:51:36 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10628 10629 * aux/configure.in, libamu/Makefile.am: added support for linking 10630 with specific versions of libamu. Upped shared library version of 10631 libamu to 1 (libamu.so.1.0.0) 10632 10633 * include/am_defs.h: added external definition for mkstemp() as 10634 needed. 10635 10636 * minor new port to i386-unknown-netbsd1.3 (BETA version of 10637 netbsd). 10638 10639 * aux/config.guess: don't leave a trailing '.' on the system name 10640 for NetBSD-1.3_BETA and similarly for OpenBSD. 10641 10642 * conf/nfs_prot/nfs_prot_netbsd1_3.h: new header for the slight 10643 differences in ypall calling conventions. 10644 10645 * mk-amd-map/mk-amd-map.c (main): use mkstemp() whenever possible 10646 in preference over mktemp(), b/c it is more secure. 10647 10648 * aux/configure.in: check for mkstemp(), a more secure version of 10649 mktemp(). 10650 10651Mon Dec 15 02:32:14 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10652 10653 * amd/ops_nfs.c (mount_nfs_fh): Systems that include the mount 10654 table "vers" option generally do not set the mnttab entry to 10655 "nfs3", but to "nfs" and then they set "vers=3". Setting it to 10656 "nfs3" works, but it may break some things like "df -t nfs" and 10657 the "quota" program (esp. on Solaris and Irix). So on those 10658 systems, set it to "nfs". 10659 10660Sat Dec 13 01:36:27 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10661 10662 * doc/am-utils.texi (Distrib): updates for new ports, location of 10663 am-utils' home page, and URL cross references (now supported by my 10664 version of texi2html). 10665 10666 * aux/macros/check_mtype_type.m4: also use string type for file 10667 system mount types under nextstep for mount(2). 10668 10669 * aux/macros/check_mtype_printf_type.m4}: nextstep can handle both 10670 integer and string types for file system mount types in mount(2), 10671 but it is better to use string types. 10672 10673 * conf/nfs_prot/nfs_prot_nextstep.h: set emum nfsstat's NFS_OK to 10674 0, not 1! Otherwise, all NFS calls (esp. mount) return errno 1 10675 (EPERM) instead of 0 (OK). Fixes m68k-next-nextstep3 which now 10676 works. 10677 10678 * conf/nfs_prot/nfs_prot_bsdi2.h: set emum nfsstat's NFS_OK to 0, 10679 not 1! Otherwise, all NFS calls (esp. mount) return errno 1 10680 (EPERM) instead of 0 (OK). 10681 10682 * libamu/xdr_func.c (xdr_*): add debugging calls that are optioned 10683 by -D trace (protocol trace). 10684 106851997-12-11 Erez Zadok <ezk@bach.cs.columbia.edu> 10686 10687 * A.m68k-next-nextstep3/amu_nfs_prot.h: define missing S_ISDIR 10688 macro based on existence on others, and include <sys/stat.h>. 10689 10690Thu Dec 11 14:14:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10691 10692 * aux/macros/try_compile_nfs.m4 (AC_TRY_COMPILE): turn off 10693 inclusion of <nfs/nfs_mount.h> which only affects nextstep3, on 10694 which this header is broken (it tries to include non-existing 10695 headers). 10696 10697Wed Dec 10 16:09:07 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10698 10699 * libamu/mount_fs.c (mnt_flags): support either nfs or generic 10700 mount option for grpid. 10701 10702 * aux/configure.in: turn back on NFS mount option grpid. 10703 10704Sat Dec 6 04:36:05 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10705 10706 * doc/Makefile.am (install-ps): added target to install postscript 10707 file in the am-utils' home page, as well as a few other useful 10708 files for the new am-utils Web page. 10709 10710Mon Nov 17 05:22:56 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10711 10712 ******************************************************************* 10713 *** Released am-utils-6.0a14 *** 10714 ******************************************************************* 10715 10716Sun Nov 16 21:56:16 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10717 10718 * doc/am-utils.texi (Supported Platforms): updated table of new 10719 ports. 10720 10721Sat Nov 15 06:36:27 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10722 10723 * libamu/mount_fs.c (compute_automounter_nfs_args): pass mnttab 10724 options so that they can be printed in logs as needed. 10725 10726 * doc/am-utils.texi (osver Parameter): updated for the correct 10727 usage of the -o/-O options. 10728 10729 * scripts/amd.conf.5: corrected info for -o/-O options. 10730 10731 * amd/amd.8: updated man page for new -O op_sys_name option, and 10732 corrected the usage of the -o op_sys_ver option 10733 10734 * amd/get_args.c (get_args): added new amd option -O to override 10735 OS name. 10736 (get_args): updated usage string. Removed old -m option. Added 10737 -o and -O options. 10738 10739 * conf/nfs_prot/nfs_prot_irix5.h: add definition to FHSIZE in case 10740 it is not there. Reportedly, irix 5.2 does not define it. 10741 10742 * scripts/lostaltmail.in: removed references to unused $hack 10743 variable. 10744 10745 * aux/macros/check_nfs_prot_headers.m4: Patch from Chris Metcalf 10746 <metcalf@cag.lcs.mit.edu> to correctly set the nfs_prot headers 10747 for solaris2.5. 10748 10749 * doc/am-utils.texi (Distrib): typo in the subscription 10750 instructions to amd-dev. Patch from Stefan Vogel 10751 <vogel@physik-rzu.unizh.ch>. 10752 107531997-11-15 Erez Zadok <ezk@amtrak.cs.columbia.edu> 10754 10755 * NFS3 works on powerpc-ibm-aix4.2.1.0. 10756 10757 * libamu/mount_fs.c (compute_nfs_args): set fh3 variable to 10758 static. Some compilers (gcc from egcs on aix 4.2.1) corrupt the 10759 stack of an automatic variable when pointer to it is passed around 10760 several times. 10761 10762Fri Nov 14 20:09:28 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10763 10764 * libamu/xutil.c (real_plog): syslog like behavior for normal 10765 logging. Will not print repeated strings, only a count "last 10766 message repeated N times", but will always print something if 10767 message is repeated more than 100 times. 10768 10769 * scripts/lostaltmail.in: look for lostaltmail.conf files also in 10770 /etc/global, /etc/os, and /etc/local (in that order). 10771 10772Mon Nov 10 03:03:17 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10773 10774 * conf/mount/mount_aix.c (mount_aix3): add support for NFS V.3 10775 mounts. 10776 10777 * aux/macros/struct_nfs_args.m4 (AC_TRY_COMPILE_NFS): test for 10778 aix42_nfs_args, specially set in conf/nfs_prot/nfs_prot_aix4_2.h 10779 10780 * conf/sa_dref/sa_dref_*.h: from now on, the "dst" argument to the 10781 NFS_SA_DREF macro is a pointer to the structure that used to be 10782 passed to it before. So now I have to dereference the pointer 10783 before accessing its values. 10784 10785 * hlfsd/hlfsd.c (main): use the new and cleaner 10786 compute_nfs_args() and compute_automounter_nfs_args() functions. 10787 10788 * amd/ops_nfs.c (mount_nfs_fh): use the new and cleaner 10789 compute_nfs_args() and compute_automounter_nfs_args() functions. 10790 10791 * amd/ops_afs.c (mount_toplvl): MAJOR CODE REVISION. Use the new 10792 and cleaner compute_nfs_args() and compute_automounter_nfs_args() 10793 functions. 10794 10795 * libamu/mount_fs.c (compute_nfs_args): major code cleanup that 10796 relates for struct nfs_args. A new function sets the numerous 10797 possible flags and fields of nfs_args_t in an orderly fashion. 10798 Code cleaned up, organized, and moved from amd/hlfsd into 10799 libamu. This saves on overall size of code. 10800 (compute_automounter_nfs_args): A variant of compute_nfs_args() 10801 which sets special options/flags that need to be used when NFS 10802 mounting an automounter's mount point. Used by hlfsd and amd. 10803 10804 * amq/amq.c (get_secure_amd_client): don't print any more 10805 "get_secure_amd_client: using TCP, port 12345". It's more 10806 annoying than useful a message, even when assumed to be compiled 10807 under DEBUG only. 10808 10809Thu Oct 30 14:33:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10810 10811 * aux/macros/check_mnttab_type.m4: MAJOR BUG fixed for non-nfs 10812 mount table entries. The code used to define the /etc/mnttab name 10813 for file systems based on physical media (disk, cdrom, floppy) to 10814 the generic name, rather than the OS specific name. For example 10815 autoconf searches for all these types of mount table entries for a 10816 floppy based file system: vfat pcfs pc msdos msdosfs fat. But if 10817 it found any, it hard-coded the mnttab name to "pcfs" rather than 10818 the actual name found! Same for ufs, cdfs, pcfs, tmpfs, lofs, 10819 nullfs, unionfs, and umapfs. 10820 10821 * aux/configure.in: also test for xfs (for newer Irix) when 10822 looking for mount type names, numbers, etc of a disk-based ufs. 10823 10824Sun Oct 26 19:32:57 1997 Erez Zadok <ezk@defiant.soscorp.com> 10825 10826 * amq/amq.c (main): use pmap_ping() to test if remote host is up. 10827 This works better on bsdi2 and bsdi3, because their portmapper 10828 does not appear to like forwarding operations (it is generaly 10829 insecure). 10830 10831Sat Oct 25 04:55:56 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10832 10833 ******************************************************************* 10834 *** Released am-utils-6.0a13 *** 10835 ******************************************************************* 10836 10837Fri Oct 24 05:04:37 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10838 10839 * conf/nfs_prot/nfs_prot_ncr2.h: added missing definition for 10840 struct datum typedef. 10841 10842 * conf/nfs_prot/nfs_prot_netbsd.h: corrected typedef for 10843 ypall_callback_fxn_t for netbsd. 10844 10845 * aux/macros/type_auth_create_gidlist.m4: hpux10.10 uses int for 10846 the 5th arg to authunix_create(), while before and after they used 10847 gid_t. 10848 10849 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): don't use 10850 clnt_create_timed() on older Solaris 2.3 systems that did not have 10851 it. 10852 10853 * conf/nfs_prot/nfs_prot_bsdi2.h: <msdosfs/msdosfsmount.h> is for 10854 kernel only on bsdi2, so do not include it. 10855 10856Fri Oct 24 00:29:42 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10857 10858 * hlfsd/stubs.c (nfsproc_readlink_2_svc): avoid logging repeated 10859 messages about resolution of mailboxes based on uid/gid. 10860 10861 * scripts/ctl-hlfsd.in: check for alternate password file in 10862 ${prefix}/etc/passwd and use it in hlfsd's startup. 10863 10864Thu Oct 23 22:48:50 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10865 10866 * hlfsd/homedir.c (hlfsd_getpwent): added support for -P 10867 passwdfile option. If hlfsd is started with -P passwdfile, then 10868 the passwdfile is read and parsed just as a standard unix 10869 passwd(4) file. Only the username, uid, and homedir fields are 10870 read and checked. All the rest are ignored. No NIS/netgroup 10871 support! 10872 10873 * hlfsd/hlfsd.c (main): check if hlfsd is run as root after 10874 parsing command line options, so that usage() can be printed when 10875 -h is invoked. 10876 10877Wed Oct 22 00:16:39 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 10878 10879 * amd/nfs_start.c (mount_automounter): if autofs service listener 10880 fails to initialize it is OK if using a test amd. 10881 10882 * amd/opts.c (f_in_network): new nomadic function in_network(arg), 10883 which returns TRUE if 'arg' is any one of this host's networks. 10884 10885 * libamu/wire.c (getwire): rewritten parts of function, to store 10886 all networks names and numbers in the order of the interface (not 10887 in reverse). 10888 10889Mon Oct 20 01:59:25 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10890 10891 * aux/configure.in: don't add ops_ufs.o on AIX twice. My code 10892 would have worked had it not been due to AIX's buggy /bin/sh. 10893 10894 * doc/Makefile.am (EXTRA_DIST): include am-utils.dvi and 10895 am-utils.ps in the distribution sources. 10896 (html): generate html documentation for 10897 http://www.am-utils.org 10898 10899Sun Oct 19 12:35:49 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10900 10901 * conf/nfs_prot/nfs_prot_netbsd.h: override the definition of 10902 ypall_callback_fxn_t. The NetBSD team compiles all sources with 10903 gcc -Wall -Wmissing-prototypes -Wstrict-prototypes. 10904 10905 * amd/info_nis.c: allow for override of ypall_callback_fxn_t 10906 function typedef. 10907 10908 * libamu/xutil.c (amu_release_controlling_tty): new function to 10909 release the controlling tty in a clean and sane manner. No longer 10910 using setpgid() b/c it may not work. Uses setsid(), 10911 and ioctl() (in order). This new function is used in amd/amd.c 10912 and hlfsd/hlfsd.c. Also avoid setpgrp(), because it works on some 10913 systems, but on others it is the same as setpgid(). 10914 10915Sat Oct 18 23:42:40 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10916 10917 * aux/acconfig.h: check for nfs mount option 'fsname'. Code for 10918 it was in amd/ops_afs.c, amd/ops_nfs.c, and hlfsd/hlfsd.c, but 10919 never used, because the configure test for fsname flag wasn't 10920 used. This fixed a bug in HPUX 10, where syncer and manual mounts 10921 left blank lines in /etc/mnttab. 10922 10923 * aux/configure.in: check for nfs mount option 'fsname'. 10924 10925Fri Oct 17 13:30:27 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10926 10927 * amd/ops_afs.c (mount_toplvl): turn on 'ignore' option in nfs 10928 mount flags of toplvl mounts. Important esp. for HPUX 10. Now 10929 hpux-10 will mount amd's mounts points as 'ignore' (by df). 10930 10931 * aux/configure.in: check for NFS mount option 'ignore', useful in 10932 HPUX 10. 10933 10934Thu Oct 16 03:28:33 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10935 10936 * aux/macros/check_hide_mount_type.m4: hpux 10 should use "ignore" 10937 mount type and not NFS, for the amd mount points. 10938 10939 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): don't log 10940 an RPC timeout as an error, but just an info message. From 10941 Andreas Stolcke <stolcke@speech.sri.com> 10942 10943 * If the NFS server is down or does not support the portmapper 10944 call (such as certain Novell NFS servers) we mark it as version 2 10945 and we let the nfs code deal with the case that is down. If when 10946 the server comes back up, it can support NFS V.3 and/or TCP, it 10947 will use those. From christos@deshaw.com (Christos Zoulas). 10948 10949 * hlfsd/homedir.c (plt_print): various compile time cleanups to 10950 printfs that take a long, but pass an int to print. From 10951 christos@deshaw.com (Christos Zoulas). 10952 10953 * aux/macros/func_bad_yp_all.m4 (ac_cv_func_yp_all_clean,): new 10954 macro to determine if the OS has a bad yp_all(), based on the host 10955 OS name. So far only irix (all versions) have a bad yp_all, so 10956 they will use am_yp_all() instead (which is slower as it 10957 enumerates manually all of the map's entries). 10958 10959Thu Oct 16 03:14:37 1997 Erez Zadok <ezk@subzero.cs.columbia.edu> 10960 10961 * amd/info_nis.c (am_yp_all): code for a replacement yp_all that 10962 avoids using a file-descriptor leaking yp_all() on some systems 10963 like irix. 10964 10965Wed Oct 15 21:52:35 1997 Erez Zadok <ezk> 10966 10967 * fsinfo/fsinfo.h: avoid redefining yywrap incorrectly on DU-4.x 10968 systems using /usr/bin/flex. 10969 10970 * amd/conf_tok.l (yywrap): avoid redefining yywrap for systems 10971 that have a modified GNU flex which does define yywrap (DU-4.x). 10972 10973Fri Sep 26 14:25:29 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10974 10975 * conf/checkmount/checkmount_bsd44.c: include prototype. 10976 10977Fri Sep 26 01:26:24 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10978 10979 ******************************************************************* 10980 *** Released am-utils-6.0a12 *** 10981 ******************************************************************* 10982 10983Fri Sep 26 00:13:48 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10984 10985 * conf/nfs_prot/nfs_prot_irix6.h: completely turn off all autofs 10986 code in irix6 until it can be tested correctly 10987 10988 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): time out 10989 on clnt_create for 3 seconds, rather than wait for the much longer 10990 default. 10991 10992 * conf/nfs_prot/nfs_prot_aix4_2.h: port to powerpc-ibm-aix4.2.1.0. 10993 Includes NFS3, untested. 10994 10995Thu Sep 25 11:03:11 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 10996 10997 * amd/ops_pcfs.c (mount_pcfs): fill in uid/gid fields of 10998 pcfs_args_t if they exist. 10999 11000 * amd/ops_cdfs.c (mount_cdfs): fill in ssector field of 11001 cdfs_args_t if it exists. 11002 11003 * new minor ports hppa1.1-hp-hpux10.10, hppa1.1-hp-hpux9.05, 11004 hppa1.1-hp-hpux9.07, m68k-hp-hpux9.00, and sparc-sun-sunos4.1.4. 11005 11006Wed Sep 24 00:48:05 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11007 11008 * doc/am-utils.texi (wire-test): updated documentation for the new 11009 option. 11010 11011 * wire-test/wire-test.8: updated man page for new option. 11012 11013 * wire-test/wire-test.c (main): added a test for various 11014 combinations of NFS proto/vers to a remote/local host. 11015 11016 * aux/macros/try_compile_anyfs.m4 (AC_TRY_COMPILE): include 11017 <isofs/cd9660/cd9660_mount.h> and <msdosfs/msdosfsmount.h> so that 11018 freebsd will correctly set mount options for pcfs and cdfs. 11019 11020 * amd/ops_pcfs.c (mount_pcfs): set mask field of pcfs_args to 11021 0777 (if field exists). 11022 11023 * aux/macros/try_compile_anyfs.m4 (AC_TRY_COMPILE): include 11024 <msdosfs/msdosfsmount.h> if available. 11025 11026 * minor new port: rs6000-ibm-aix4.1.4.0. 11027 11028 * libamu/mount_fs.c (mount_fs): fixed bug that caused HPUX not to 11029 write the "time" field in /etc/mnttab. 11030 11031 * conf/mtab/mtab_file.c (mnt_dup): fixed typo in macro names for 11032 detecting mnt_time field of mntent_t. 11033 11034 * libamu/mtab.c (mnt_free): fixed typo in macro names for 11035 detecting mnt_time field of mntent_t. 11036 11037Tue Sep 23 15:30:03 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11038 11039 * conf/mtab/mtab_file.c (lock): Use flock() in preference over 11040 fcntl() to lock the mtab file. 11041 11042Mon Sep 22 23:04:58 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11043 11044 * conf/transp/transp_sockets.c (get_nfs_version): define 11045 the try_again goto label only for NFS3. 11046 (pmap_ping): assume timeout failure of clnt_stat. 11047 11048 * libamu/xdr_func.c (xdr_groupnode, xdr_exportnode): cast to 11049 "groups *". 11050 11051Mon Sep 22 20:34:33 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11052 11053 * conf/transp/transp_sockets.c (pmap_ping): patch from Dan Riley 11054 <dsr@mail.lns.cornell.edu> to make sure that amd works with more 11055 secure portmappers that do not allow forwarding of RPC messages to 11056 other services. 11057 11058 * */Makefile.am: all source files should also depend on the new 11059 include/am_xdr_func.h header. 11060 11061 * include/am_xdr_func.h: new file as part of the code cleanup from 11062 Christos Zoulas <christos@deshaw.com>. 11063 11064 * Lots of fixes from Christos Zoulas <christos@deshaw.com> that 11065 involved missing prototypes, cleaned up ones, and removal of 11066 unused variables. 11067 11068 * libamu/xdr_func.c (xdr_mountres3): some code cleanup. A switch 11069 statement with only one case is unclean. 11070 11071Mon Sep 22 17:26:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11072 11073 * amd/ops_<FOO>fs.c (mount_<FOO>fs): initialize mntent_t fields to 11074 0 so that all fields are initialized to zero at first. This way 11075 SunOS 4.x and other systems don't get /etc/mtab entries with 11076 random integers for the fsck/freq fields. Patch from Andreas 11077 Stolcke <stolcke@speech.sri.com>. 11078 11079Mon Sep 22 00:34:19 1997 Erez Zadok <ezk@americas.psl.cs.columbia.edu> 11080 11081 * conf/nfs_prot/nfs_prot_sunos4.h: include <nfs/nfs_clnt.h> so 11082 that the important definition for HOSTNAMESZ will be found. 11083 11084 * amd/ops_afs.c (mount_toplvl): limit hostname size to HOSTNAMESZ 11085 (inside the nfs_args structure) if the system uses that macro. 11086 Otherwise systems like SunOS refuse to NFS mount long pathnames 11087 and result in ENAMETOOLONG errno's. 11088 11089Wed Sep 17 04:56:11 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11090 11091 * doc/am-utils.texi (Supported Platforms): specify new support for 11092 solaris 2.6, and hlfsd running on 2.5.1 too. 11093 11094Wed Sep 17 03:55:02 1997 Erez Zadok <ezk@amsterdam.psl.cs.columbia.edu> 11095 11096 * conf/mount/mount_svr4.c (mount_svr4): don't attemt an autofs 11097 mount if it is not supported or was turned off. 11098 11099Wed Sep 17 03:19:36 1997 Erez Zadok <ezk@americas.psl.cs.columbia.edu> 11100 11101 * conf/nfs_prot/nfs_prot_sunos4.h: fixed so that it will nfs mount 11102 again. Apparently at some previous release SunOS 4 supported was 11103 broken and all nfs mounts resulted in ESTALE. 11104 11105Wed Sep 17 00:26:25 1997 Erez Zadok <ezk@amsterdam.psl.cs.columbia.edu> 11106 11107 * conf/nfs_prot/nfs_prot_sunos5_6.h: nfs protocol headers for 11108 solaris 2.6. 11109 11110 * aux/macros/check_nfs_prot_headers.m4: added solaris 2.6 nfs 11111 protocol header selection. 11112 11113Sat Sep 13 14:31:51 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11114 11115 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): avoid 11116 infinite loop. 11117 11118Sun Sep 7 18:23:23 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11119 11120 ******************************************************************* 11121 *** Released am-utils-6.0a11 *** 11122 ******************************************************************* 11123 11124Fri Sep 5 11:55:10 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11125 11126 * amd/amd.c (main): if plock() succeeded, don't try to display 11127 errno message. Patch from Chris Metcalf 11128 <metcalf@catfish.lcs.mit.edu. 11129 11130Thu Sep 4 19:17:58 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11131 11132 * hlfsd/homedir.c (table_add): make sure duplicate passwd entries 11133 are ignored. Only the first entry should ever be used, because 11134 that's how lookup in passwd database works. 11135 11136 * conf/transp/transp_sockets.c (get_nfs_version): when determining 11137 if a remote host is up or down, use NFS v.2. Fix suggested by 11138 Enami Tsugutomo <enami@cv.sony.co.jp>. 11139 11140 * conf/transp/transp_tli.c (amu_clnt_create_best_vers): new 11141 function to get the best possible NFS version, but also timeout 11142 faster than normal defaults, so remote hosts which are down can be 11143 detected in a reasonable time. 11144 (get_nfs_version): use the new "best" function. 11145 11146Tue Sep 2 00:41:00 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11147 11148 ******************************************************************* 11149 *** Released am-utils-6.0a10 *** 11150 ******************************************************************* 11151 11152Mon Sep 1 15:39:51 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11153 11154 * conf/transp/transp_tli.c (get_nfs_version): don't use 11155 clnt_tp_create_timed() on systems that don'e have it (Solaris 2.4 11156 and earlier). 11157 11158 * aux/configure.in: test for existence of clnt_tp_create_timed(), 11159 since Solaris 2.4 (and possibly earlier) do not have it. 11160 11161Mon Sep 1 15:23:18 1997 Erez Zadok <ezk@felix.psl.cs.columbia.edu> 11162 11163 * amd/ops_autofs.c (autofs_unmount_1_svc): only display rdevid 11164 field if it exists (solaris 2.4's autofs does not have it). 11165 11166Mon Sep 1 14:45:09 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11167 11168 * aux/macros/type_auth_create_gidlist.m4: a new test to determine 11169 the correct type to the 5th argument of authunix_create(). 11170 11171Mon Sep 1 03:44:32 1997 Erez Zadok <ezk@felix.psl.cs.columbia.edu> 11172 11173 * libamu/xdr_func.c (xdr_umntrequest): add test for autofs 11174 structure umntrequest, if it has the field rdevid. Seems Solaris 11175 2.4 and earlier didn't have it. 11176 11177Mon Sep 1 01:10:53 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11178 11179 * hlfsd/hlfsd.c (hlfsd_init): moved initialization upwards, so it 11180 can be done before primary process forks. 11181 (main): bug fix: wait a bit to give child a chance to initialize. 11182 Without this, hlfsd got into a busy infinite loop while, never 11183 completing the mount. 11184 11185 * amd/info_nis.c: patch from Jason Thorpe <thorpej@nas.nasa.gov> 11186 to make amd works when talking to NIS+ servers in NIS 11187 compatibility mode. 11188 11189Mon Sep 1 00:46:56 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11190 11191 * amd/mapc.c (MAX_CHAIN): increased maximum chain size to 1024. 11192 11193Sun Aug 31 20:20:40 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11194 11195 * amd/conf.c (gopt_fully_qualified_hosts): a new function to 11196 process another new global variable. 11197 11198 * amd/ops_nfs.c (make_nfs_auth): if a new global variable 11199 fully_qualified_hosts is on, use FQHN in RPC/NFS authentications. 11200 Patch from Chris Metcalf <metcalf@catfish.lcs.mit.edu>. 11201 11202 * amd/conf.c (process_last_regular_map): If the amd.conf file only 11203 has a [global] section (pretty useless IMHO), do not try to 11204 process a map that does not exist. 11205 11206 * scripts/amd.conf.5: fixed typos (repeated 'as' word). 11207 11208 * doc/am-utils.texi: MAJOR DOCUMENTATION REVISION COMPLETED!!! 11209 11210 * amd/conf.c (reset_cf_map): Bug fix. Reset 'tag' field of cfm 11211 structure, so it does not carry over from map entry to another. 11212 11213Sat Aug 30 18:39:21 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11214 11215 * amd/amd.c (main): fixed the meaning of the plock option. A bug 11216 caused it to be reversed. 11217 11218Sat Aug 30 15:13:18 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11219 11220 * hlfsd/stubs.c: don't initialize some statics here. They are 11221 better initialized in hlfsd_init_filehandles(). 11222 11223Fri Aug 22 14:47:16 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11224 11225 * amd/conf.c (gopt_show_statfs_entries): new function and a global 11226 amd.conf key show_statfs_entries. Defaults to 'no'. If 'yes', 11227 then all maps flagged as browsable will also show a count of the 11228 number of entries (keys) in that map. 11229 11230 * amd/nfs_subr.c (count_map_entries): new function to count number 11231 of entries in a map. Now used if browsable is turned on in a map, 11232 to return a count of available keys in a given map. 11233 11234 * hlfsd/stubs.c (eq_fh): use correct memcmp(). BUG fixed! hlfsd 11235 confused the file handles for ".", "..", and the symlink, causing 11236 mess. 11237 11238 * aux/macros/func_bad_memcmp.m4: new test, based on autoconf 2.12, 11239 but also defines HAVE_BAD_MEMCMP, so I avoid linkage conflicts 11240 with bad memcmp() in libc's (nextstep3). 11241 11242Thu Aug 21 17:38:41 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11243 11244 * aux/configure.in: check if autofs_args_t has a field named 11245 addr. Solaris has it for specifying the address of the daemon, 11246 but Irix does not. So how does irix tell the kernel the daemon's 11247 address? I suspect that it is hardcoded to "localhost" using a 11248 "private well-known port" (#define AUTOFS_PORT 2048). 11249 11250 * conf/nfs_prot/nfs_prot_linux.h: added missing autofs 11251 definitions. 11252 11253 * README.autofs: new file listing autofs support notes 11254 11255 * very preliminary autofs code working. Call it pre-alpha 11256 quality. 11257 11258Sun Aug 17 02:25:09 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11259 11260 * amd/conf.c (ropt_mount_type, gopt_mount_type): don't accept 11261 "autofs" if system does not support it. 11262 11263 * amd/amd.c (main): log am-utils version string (same as amd -v) 11264 at start of run. 11265 11266 * conf/transp/transp_sockets.c (get_nfs_version): in order to tell 11267 if a remote host is available, try to contact its portmapper and 11268 timeout if no answer is received in 3 seconds. 11269 11270Thu Aug 14 16:12:04 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11271 11272 * aux/macros/check_extern.m4 (pattern): use a simpler pattern for 11273 match for external function definitions. The function could span 11274 multiple lines, so only match the opening parenthesis, not the 11275 closing one too. 11276 11277 * aux/macros/os_cpp-flags.m4 (ac_cv_os_cppflags,): do NOT turn on 11278 posix mode for nextstep3. It is broken. 11279 11280 * amd/amd.c (init_global_options): run uname() only if 11281 <sys/utsname.h> and uname(2) exist. 11282 11283 * amd/rpc_fwd.c (fwd_packet): if remote host is down, the 11284 forwarding socket is null, so declare this an error. 11285 11286 * include/am_utils.h (AM_ERRNO_HOST_DOWN): find best errno to set 11287 for when a remote host is down. Try, in order, "host down", "host 11288 unreachable", "invalid argument". 11289 11290 * amd/ops_nfs.c (discard_fh): don't dereference a null pointer 11291 (happens when remote host is down, and fp->fh_fs is NULL). 11292 (prime_nfs_fhandle_cache): ditto, and set fs flags to !FSF_VALID 11293 and FSF_DOWN. 11294 11295 * amd/sched.c: nobody uses "union wait" any more, or so it 11296 appears, so clean up that code. 11297 11298 * conf/transp/transp_tli.c (get_nfs_version): if remote host is 11299 down, time it out faster than default (3 seconds). 11300 (get_mount_client): free netconfig entry when done with it. 11301 11302 * conf/nfs_prot/nfs_prot_nextstep.h: initial (and somewhat ugly) 11303 port to nextstep3 (m68k-next-nextstep3). 11304 11305 * fsinfo/Makefile.am (LDADD): needs to link with libamu in case 11306 system does not have strdup(). 11307 11308 * include/am_defs.h: complete external definition for getlogin() 11309 if needed. 11310 11311 * conf/transp/transp_tli.c (get_nfs_version): no need to keep 11312 static versout variable. 11313 11314 * amd/rpc_fwd.c (fwd_packet): if fwdto packet is null, remote 11315 server is probably down. Don't use sendto() in that case. 11316 11317 * buildall (default): run gmake if found, before trying plain 11318 make. GNU make is always preferable. 11319 11320Tue Aug 12 21:23:58 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11321 11322 * aux/macros/host_macros.m4: cleanup of os_version and os 11323 overrides. Solaris 2.5.1 for example will come up as solaris2 and 11324 2.5.1, rather than sunos5 and 5.5.1. Both can be overridden in 11325 the amd.conf file. 11326 11327Fri Aug 8 14:37:30 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11328 11329 ******************************************************************* 11330 *** Released am-utils-6.0a9 *** 11331 ******************************************************************* 11332 11333Thu Aug 7 00:52:14 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11334 11335 * conf/nfs_prot/nfs_prot_ncr2.h: new file, for NCR2 11336 (i486-ncr-sysv4.3.03) headers. Needed to complete missing stuff 11337 from <ndbm.h> and <sys/resource.h>. 11338 11339 * scripts/amd.conf.5: new map page. 11340 11341 * amd/info_hesiod.c: define extern for hesiod_resolve, since bsdi3 11342 does not. 11343 11344 * amd/amd.8: updated man page. 11345 11346 * amd/get_args.c (get_args): removed defunct -h option to amd. 11347 11348 * amq/amq.8: updated man page. 11349 11350 * amd/info_nisplus.c (nisplus_search): prototype fixes so Sun 11351 SparcCompiler CC won't complain. 11352 11353 * amd/info_hesiod.c (hesiod_search): small fixes to compile with 11354 hesiod-1.3, as per Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>. 11355 11356 * aux/macros/opt_ldflags.m4: new option added to configure 11357 --enable-ldflags, to specify -L option for configuring/compiling. 11358 The older one --enable-libs is now to be used only for -l options. 11359 11360 * amd/ops_nfs.c (mount_nfs_fh): bug fixed. Should initialize 11361 nc_protoname from nfs_proto if available for all TLI systems, not 11362 just those that have NFS V3. 11363 11364 * amd/info_ldap.c: ldap patches from Leif Johansson 11365 <leifj@matematik.su.se>, adding two new amd.conf ldap variables: 11366 ldap_cache_seconds and ldap_cache_maxmem. 11367 11368 * hlfsd/hlfsd.c (main): bug fixed. port number must be wrapped in 11369 htons(). 11370 11371Sun Aug 3 17:20:05 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11372 11373 * amd/nfs_start.c (mount_automounter): register amd with the rpc 11374 program number that may have been overridden by amd.conf. 11375 11376 * libamu/xutil.c (set_amd_program_number, get_amd_program_number): 11377 allow storing and retrieving alternate amd program numbers. 11378 11379 * amd/conf.c (gopt_portmap_program): new function to parse 11380 amd.conf entry portmap_program=1234. 11381 11382 * amq/amq.c (main): allow specifying an alternate rpc program 11383 number for amd via -P prognum. 11384 11385 * new amq RPC to get the process id of the running amd. This is 11386 used in ctl-amd to quickly find the pid of the amd that is to be 11387 killed. 11388 11389 * expanded shared libraries support. Using GNU libtool-1.0, 11390 am-utils now builds shared libraries on many platforms that have 11391 support for it and proper compilers/linkers. See "INSTALL" file 11392 for compatibility chart. 11393 11394Thu Jul 31 13:07:23 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11395 11396 * fsinfo/fsi_lex.l: removed code that was in support of very old 11397 versions of flex. No longer needed. 11398 11399Tue Jul 29 12:00:13 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11400 11401 * amd/amd.c (init_global_options): find the kernel architecture 11402 from uname() if possible. 11403 11404Mon Jul 28 03:53:59 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11405 11406 * new working port: i386-unknown-openbsd2.1 11407 11408Fri Jul 25 03:16:31 1997 Erez Zadok <ezk@felix.psl.cs.columbia.edu> 11409 11410 * working port: sparc-sun-solaris2.4. Had to fix fhandle_t from 11411 structure to actual char[], because the structure was passed to 11412 xdr_fhandle as data and not a pointer. Surprisingly, gcc 11413 -fpcc-struct-return did not help. 11414 11415 * conf/nfs_prot/nfs_prot_sunos5_4.h: special nfs protocol 11416 definitions for solaris 2.4 have to be different from 2.3, and 11417 different from 2.5. 11418 11419 * libamu/xdr_fhstatus.c (xdr_fhstatus): minor code cleanup. 11420 11421Thu Jul 24 16:22:39 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11422 11423 * conf/mount/mount_svr4.c (mount_svr4): use STREQ to compare mount 11424 types, not ==. Fix from Christos Zoulas <christos@deshaw.com>. 11425 11426 * mk-amd-map/mk-amd-map.8: man page taken from bsd44. 11427 11428Thu Jul 24 00:01:55 1997 Erez Zadok <ezk@moisil.cs.columbia.edu> 11429 11430 * conf/mount/mount_linux.c: made the nfs error mapping code into a 11431 small function. 11432 11433Wed Jul 23 16:11:49 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11434 11435 * conf/nfs_prot/nfs_prot_linux.h (NFS_ERROR_MAPPING): special 11436 error mappings from errno numbers to NFS errors. From Debian 11437 Linux. 11438 11439 * scripts/am-eject.in (fs): new script (taken from Debian Linux 11440 folks) to auto-unmount floppy/cd devices before ejecting them. 11441 11442 * fsinfo/wr_exportfs.c (write_exportfs): from Debian folks, pass 11443 '5' as second arg to show_area_being_processed. I'm not sure why. 11444 11445 * fsinfo/wr_atab.c (write_atab): from Debian folks, pass '5' as 11446 second arg to show_area_being_processed. I'm not sure why. 11447 11448 * conf/mount/mount_linux.c (parse_opts): as per Debian Linux, 11449 ensure that you have a buffer in *xopts to strcat onto. 11450 (mount_linux): fixed from Debian folks to ensure that NFS mount 11451 sockets are connected only for kernels prior to 1.3.10 (avoids 11452 hangs for multi-homed hosts). 11453 11454 * amd/mapc.c (make_entry_chain): from Debian folks: don't skip 11455 over amd map keys that have a prefix, and include the prefix in 11456 the returned readdir(). 11457 11458 * amd/info_passwd.c (passwd_init, passwd_search): format 11459 enhancements from the Debian Linux folks. They added 11460 - var0:=pw-prefix:=anydir 11461 - var1:=pw-rhost:=dom3.dom2.dom1 11462 - var2:=pw-user:=user 11463 - var3:=pw-home:=/anydir/dom1/dom2/dom3/user 11464 11465 * new ports: sparc-sun-solaris2.4 and sparc-sun-sunos4.1.1. 11466 11467 * amd/ops_afs.c (afs_retry): patches from Debian Linux. If 11468 afs_mount timed out, then explicitly forbid further retries after 11469 the timeout. (afs_bgmount): bug fix from Debian Linux. Timeout 11470 values (17 and 5) were mistakenly swapped. 11471 11472Wed Jul 23 15:53:25 1997 Erez Zadok <ezk@felix.psl.cs.columbia.edu> 11473 11474 * conf/nfs_prot/nfs_prot_sunos5_3.h: turn off non-existent NFS V.3 11475 support for Solaris 2.4 (the header files incorrectly define parts 11476 of the NFS V.3 protocol, but the kernel does not support it). 11477 11478Wed Jul 23 00:07:12 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11479 11480 * amd/info_hesiod.c: minor cleanup to use hes_init and hesiod_init 11481 for determining if using old or new hesiod libraries, 11482 respectively. 11483 11484 * amd/ops_nfs.c (mount_nfs_fh): If "noconn" option exists in NFS 11485 V.3 then use non-connected sockets (both TCP and UDP). Otherwise 11486 they cause hangs of mounts from multi-homed hosts when the return 11487 route is not the same as the outgoing route (esp. on NetBSD 11488 1.2.1). If "conn" option was supplied, then don't turn on the 11489 "noconn" mount option. Otherwise default to "noconn" mount 11490 option. 11491 11492 * aux/configure.in: better check for systems that need libgdbm and 11493 <ndbm.h> 11494 11495Tue Jul 22 04:02:05 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11496 11497 * hlfsd/hlfsd.c (main), amd/ops_afs.c (mount_toplvl): ensure that 11498 mounts are hidden from df(1) on systems that keep mount tables in 11499 kernel, such as osf1. 11500 11501Tue Jul 22 02:26:55 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11502 11503 ******************************************************************* 11504 *** Released am-utils-6.0a8 *** 11505 ******************************************************************* 11506 11507Mon Jul 21 21:33:19 1997 Erez Zadok <ezk@stone.mcl.cs.columbia.edu> 11508 11509 * hlfsd/hlfsd.c (main): bug fixed: forgot to set sin_family to 11510 AF_INET when hlfsd mounts itself, thus getting an errno "protocol 11511 family not supported". 11512 11513Mon Jul 21 20:46:59 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11514 11515 * verified that amd on NetBSD 1.2.1 (i386) works, but the OS 11516 itself is flaky. 11517 11518 * verified that amd AIX 3 works w/ the new readdir() code. 11519 11520Mon Jul 21 18:59:30 1997 Erez Zadok <ezk@chestnut.mcl.cs.columbia.edu> 11521 11522 * amd/mapc.c (maptypes): changed the default map caching type for 11523 nis and ndbm maps to "MAPC_ALL", so that all possible entries will 11524 be available to amd for browsable_dirs=yes. 11525 11526Mon Jul 21 18:04:16 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11527 11528 * amd/ops_afs.c (afs_readdir, afs_readdir_browsable): split 11529 afs_readdir into a browsable version and a non-browsable one. 11530 Fixed bugs that resulted in an infinite nfs_readdir loop on the 11531 localhost for some operating systems. 11532 11533Sat Jul 19 19:38:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11534 11535 * amd/ops_afs.c (afs_readdir): fixed up the browsable code to 11536 comply with nfs_readdir specs. It was returning all entries at 11537 once, even if there was not enough space in the RPC packet. Now, 11538 it sends a reasonably sized chunk, and sets static state to resume 11539 it for the next continuation RPC of readdir. 11540 11541 * amd/conf.c (set_conf_kv): fixed bug that resulted in the first 11542 regular map not getting all of the [global] options defaulted from. 11543 11544Fri Jul 18 00:45:12 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11545 11546 * amq/amq.c (main): fixed so that portmapper "ping" will only fail 11547 upon an RPC timeout 11548 11549 * scripts/ctl-{amd,hlfsd}.in (killproc): better method to find the 11550 amd/hlfsd process to kill. 11551 11552 * amd/ops_afs.c (mount_toplvl), hlfsd/hlfsd.c (main): code to 11553 determine how to avoid df from seeing amd's toplvl mounts. Moved 11554 from libamu/mount_fs.c and include/am_utils.h. Ensure that hlfsd 11555 is hidden from df. 11556 (mount_toplvl): fixed df types for irix. 11557 11558Thu Jul 17 21:59:45 1997 Erez Zadok <ezk@americas.psl.cs.columbia.edu> 11559 11560 * amq/amq.c (main): fixed bug that caused the 5 second timeout for 11561 TLI amq using udp to be ignored. 11562 (main): if amq cannot contact remote host's portmapper within 5 11563 seconds, timeout and fail faster than the default longer timeout 11564 (this is for non-TLI systems). 11565 11566Thu Jul 17 17:08:13 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11567 11568 * amq/amq.c (get_secure_amd_client): if amq cannot contact 11569 remote host's portmapper within 5 seconds, timeout and fail faster 11570 than the default TLI timeout of over 4 minutes. 11571 11572 * amd/am_ops.c (ops_showfstypes): added styles for new bsd44 11573 file systems nullfs, unionfs, and umapfs. 11574 (ops_show1): cleanup code and and reuse this function. 11575 (vops): empty placeholders for nullfs, unionfs, and umapfs. 11576 11577 * amd/ops_{nullfs, unionfs, umapfs}.c: 3 new empty templates for 11578 bsd44 style file systems. 11579 11580 * fsinfo/fsinfo.8: man page for fsinfo rewritten from bsd44 11581 sources. 11582 11583 * amd/conf_tok.l, fsinof/fsi_lex.c: undefine ECHO to avoid 11584 conflict with systems that define it in <sys/ioctl.h> and also 11585 define a conflicting one via lex. Newer versions of f/lex are ok. 11586 11587Wed Jul 16 00:17:45 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11588 11589 * amd/ops_nfs.c (mount_nfs_fh): fill in nfs_args' fields 11590 acdirmin/max and acregmin/max only if they exist. 11591 11592 * aux/configure.in: test for nfs_args fields acdirmin and 11593 acregmin. 11594 11595Tue Jul 15 17:24:09 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11596 11597 * aux/configure.in: commented out checking for MNT2_GEN_OPT_* for 11598 "nondev" and commented back in checking for "nodev". This was a 11599 typo. 11600 11601 * include/am_compat.h: more compatibility options: define "ro" 11602 mnttab option all the time. Define "overlay" as needed. Added 11603 more fillers of mnttab options (as per Daniel S. Riley 11604 <dsr@mail.lns.cornell.edu>), for acdirmax, acdirmin, acregmax, 11605 acregmin, noac, grpid, nosuid, and actimo. 11606 11607 * libamu/mount_fs.c (mnt_flags): fixed a typo in "ro" option as 11608 per dsr@mail.lns.cornell.edu (Daniel S. Riley). Then cleaned up 11609 the same code for other options in struct opt_tab. 11610 11611Mon Jul 14 22:36:37 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11612 11613 * amd/get_args.c (get_args): moved amd.conf file parsing to before 11614 the switching the default log/debug options. Suggested by 11615 dsr@mail.lns.cornell.edu (Daniel S. Riley). 11616 11617 * aux/update_build_version: new script to record the build version 11618 of amd, along with the rest of the info thet comes up with amd -v. 11619 11620Sun Jul 13 00:30:24 1997 Erez Zadok <ezk@decca.damtp.cam.ac.uk> 11621 11622 * aux/macros/os_cflags.m4: new macro, to add additional 11623 compilation options (also used during configuration), based on the 11624 OS and the compiler. Used for solaris-2.6, osf, and irix6. 11625 11626Fri Jul 11 10:15:11 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11627 11628 * amd/conf_tok.l, conf_parse.y: allow values of keys to include 11629 white spaces, if they are double-quoted (key="some value") 11630 11631 * amd/info_hesiod.c (hesiod_search): cleanup and minor bug fixes 11632 of hesiod from Danny Braniss <danny@cs.huji.ac.il>. 11633 11634Fri Jul 11 02:16:06 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11635 11636 ******************************************************************* 11637 *** Released am-utils-6.0a7 *** 11638 ******************************************************************* 11639 11640Thu Jul 10 12:19:25 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11641 11642 * include/am_defs.h: fill in extern definition of innetgr() in 11643 case system headers don't. 11644 11645 * aux/macros/path_prog_lex.m4 aux/configure.in: using macros that 11646 will show the full pathname to yacc/bison and f/lex. Some systems 11647 have older or bad versions of those and this way the user will 11648 know for sure what is being invoked. 11649 11650 * tasks: file populated with todo items. 11651 11652 * scripts/amd2ldif.in: Script to convert amd maps to plain text 11653 LDAP object files. Contributed by Leif Johansson 11654 <leifj@matematik.su.se>. 11655 11656 * aux/config.guess: added recognition for sun3's running 4.2bsd, 11657 from Tom Schmidt <tschmidt@micron.com>. Fixed one small typo. 11658 11659 * amd/conf.c: several variables that were local to a map, were 11660 also added to [global], where they apply to all maps. Each map 11661 can then individually override those defaults. Flags 11662 affected: browsable_dirs and mount_type. Options affected: 11663 map_type, map_options, and search_path. 11664 11665 * amd/amd.h: eliminated several global flags each of which took an 11666 int, in favor of one global flags variable used as a bit field. 11667 11668 * amd/amd.c (init_global_options): moved all global variables into 11669 a single struct amu_global_options, so it is easier to add new 11670 ones and/or identify existing ones. 11671 11672 * amd/get_args.c (get_args): removed unused amd -m option. 11673 11674 * amd/conf.c (gopt_cluster): added new amd.conf option for cluster 11675 name, same as amd -C. 11676 11677 * amd/info_ldap.c: LDAP info map functions from Leif Johansson 11678 <leifj@matematik.su.se>. 11679 11680 * amd/conf.c (gopt_ldap_base, gopt_ldap_hostports): put in global 11681 amd.conf options for ldap_base and ldap_hostports. 11682 11683 * amd/opts.c (f_netgrp): new amd map function netgrp(ARG) to test 11684 if the current host is in the ARG host netgroup. 11685 11686 * aux/configure.in: some systems replaced dbm in libc with GNU's 11687 libgdbm, so check for libgdbm, but only if dbm_open is not in 11688 libc already. This was a recommendation from Tom Schmidt 11689 <tschmidt@micron.com>. 11690 11691 * conf/nfs_prot/nfs_prot_sunos5_3.h: port to sparc-sun-solaris2.3 11692 completed. 11693 11694Wed Jul 9 18:14:59 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11695 11696 * port to sparc-unknown-netbsd1.2E done, not tested. Includes NFS 11697 V.3. 11698 11699Tue Jul 8 17:35:07 1997 Erez Zadok <ezk@elk.mcl.cs.columbia.edu> 11700 11701 * port to i386-unknown-freebsd3.0 done and working. Includes NFS 11702 V.3. 11703 11704 * aux/macros/check_nfs_fh_dref.m4: freebsd3 should use 11705 file handle dereferencing style similar to freebsd22. 11706 11707 * include/am_defs.h: need to include <net/if_var.h> before 11708 <netinet/if_ether.h> on freebsd3. 11709 11710 * conf/nfs_prot/nfs_prot_freebsd3.h: new protocol header additions 11711 for freeBSD 3.0. 11712 11713Tue Jul 8 16:53:41 1997 Erez Zadok <ezk@moisil.cs.columbia.edu> 11714 11715 * amd/info_nis.c (nis_reload): cast nis' callback function so 11716 picky compilers won't complain. 11717 11718 * libamu/xdr_mountres3.c (xdr_mountres3): make sure this function 11719 gets compiled only if the system has NFS V3 and does not have 11720 xdr_mountres3. 11721 11722Tue Jul 8 12:42:03 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11723 11724 * COPYING: put in some legal stuff in this file. 11725 11726Mon Jul 7 19:10:44 1997 Erez Zadok <ezk@prometheus.soscorp.com> 11727 11728 * NFS V3 now works under Irix5, thanks to patches from 11729 Andreas Stolcke <stolcke@speech.sri.com>. 11730 11731 * conf/mount/mount_irix5.c: sparate mount_irix.c into an irix5 11732 version and an irix6 version, since irix5's NFS V3 code is broken 11733 and hacky. 11734 11735 * amd/info_hesiod.c (hs_zone_transfer): minor fixes to buffer 11736 sizes for some hesiod queries. Patch from Danny Braniss 11737 <danny@cs.huji.ac.il>. 11738 11739Mon Jul 7 19:04:14 1997 Erez Zadok <ezk@glory.soscorp.com> 11740 11741 * amd/ops_nfs.c (mount_nfs_fh): fixed NFS V.3 support for bsdi3. 11742 11743Sun Jul 6 14:22:24 1997 Erez Zadok <ezk@glory.soscorp.com> 11744 11745 * aux/{configure.in,acconfig.h}: added checks for struct 11746 nfs_args's fields proto and sotype (bsdi3). 11747 11748 * amd/ops_nfs.c (mount_nfs_fh): added nfsv3 option to 11749 nfs_args.flags for bsdi3. Set field proto to 0. Set sotype field 11750 to SOCK_STREAM or SOCK_DGRAM. 11751 11752 * aux/macros/check_mount_style.m4: add case for bsdi3. 11753 11754 * amd/info_hesiod.c: got hesiod support for bsdi3. 11755 11756Sun Jul 6 11:14:47 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11757 11758 * aux/configure.in: look for hesiod on libc (bsdi3) 11759 11760 * amd/get_args.c (get_args): reformat usage so it fits in 80 11761 columns. 11762 11763 * scripts/ctl-amd.in: changed directory name for optional tftpboot 11764 map to /tftpboot/.amd. 11765 11766Sat Jul 5 17:46:45 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11767 11768 ******************************************************************* 11769 *** Released am-utils-6.0a6 *** 11770 ******************************************************************* 11771 11772Sat Jul 5 03:17:09 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11773 11774 * scripts/ctl-amd.in: include -T tag for tftpboot. 11775 11776 * new port: mips-sgi-irix5.3. Compiled with gcc, but NFS V3 code 11777 is broken and needs work on the specific nfs_args that irix5 uses 11778 for V3 mounts. 11779 11780Sat Jul 5 01:44:25 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11781 11782 * amd/get_args.c (get_args): new options amd -T tag. A map with 11783 tag=foo matching the -T tag will be processed. All untagged maps 11784 get processed all the time. 11785 11786Fri Jul 4 16:19:26 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11787 11788 * aux/configure.in: need to check for strcasecmp in libucb (ncr2) 11789 11790 * aux/macros/check_os_libs.m4: a new macro to set the usage of 11791 libnsl and libsocket based on the OS. 11792 11793 * libamu/mount_fs.c (mnt_flags): used MNTTAB_OPT_GRPID if it is 11794 defined (problem on osf4). 11795 11796 * conf/nfs_prot/nfs_prot_irix5.h: new file for irix5 headers. 11797 11798 * include/am_defs.h, aux/macros/try_compile_nfs.m4, 11799 aux/macros/mount_headers.m4: do include <sys/proc.h> because it 11800 failes on irix5. Rather, put in the individual 11801 conf/nfs_prot/nfs_prot_*.h headers. 11802 11803 * amd/conf.c: AIX3 doesn't like strdup() being passed a constant 11804 char*, so cast all strdup()'s args to a non-const char*. 11805 11806 * amd/mapc.c (root_newmap): don't try to strdup only a "const 11807 char *". 11808 11809Fri Jul 4 15:47:10 1997 Erez Zadok <ezk@americas.psl.cs.columbia.edu> 11810 11811 * conf/nfs_prot/nfs_prot_sunos4.h: added rpc/rpc.h and 11812 sys/errno.h. 11813 11814Thu Jul 3 17:49:00 1997 Erez Zadok <ezk@prometheus.soscorp.com> 11815 11816 * made sure am-utils compiles, links, and runs properly on Irix 11817 6.2 using "cc -32 -Wl,-woff," 11818 11819 * aux/macros/check_lib2.m4: a bug fix version to autoconf 2.12 11820 AC_CHECK_LIB. If OTHER-LIBRARIES are defined and used, then add 11821 them to $LIBS. 11822 11823 * aux/configure.in: some cleanup of which libraries are needed. 11824 Espectially ensure that libnsl is included only on Solaris, where 11825 so far it is the only system on which it is absolutely necessary. 11826 Also no longer need to include libc explicitly. 11827 11828 * amd/amd.c,wire-test/wire-test.c (main): convert IP address to 11829 network-long order before printing it. 11830 11831 * wire-test/wire-test.c (main): also check and report on the IP 11832 address of the local host, since some systems have bad versions of 11833 get_myaddress, or ones that conflict with other versions in 11834 multiple libraries (SunOS 4 and Irix especially). 11835 11836Wed Jul 2 18:19:02 1997 Erez Zadok <ezk@starblazers.soscorp.com> 11837 11838 * scripts/ctl-amd.in: don't use full pathname so killproc() works 11839 better. Also run bsd44 and irix style ps programs. 11840 11841 * aux/macros/check_lib_funcs.m4: bug fixed: used to define usage 11842 of library no matter if it was found or not. 11843 11844Wed Jul 2 02:11:48 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11845 11846 * aux/macros/check_mnt2_gen_opt.m4: turned back on the checking 11847 for M_* macros, but ensure that <sys/stream.h> is not included at 11848 all so it won't conflict with other M_* macros. 11849 11850Tue Jul 1 21:16:51 1997 Erez Zadok <ezk@mako.cs.columbia.edu> 11851 11852 * conf/mount/mount_irix.c (mount_irix): first arg to mount(2) on 11853 irix should be "spec" (host:/path), not the dir of the mnt point. 11854 11855 * amd/ops_afs.c (afs_lookuppn): bug in enable_default_selectors 11856 fixed. If on, it essentially ignored the setting in a 11857 selector-controlled /defaults if there were 2 or more entries in it. 11858 11859Tue Jul 1 12:23:38 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11860 11861 * scripts/ctl-{amd,hlfsd}.in (killproc): if failed to find process 11862 using BSD style ps, then try SVR4 style ps. 11863 11864 * include/am_utils.h (amuDebug): renamed Debug macro to amuDebug 11865 etc., to avoid conflicts with similar named macros in <ldap.h>. 11866 11867 * aux/configure.in, amd/info_ldap.c, etc.: put in all the autoconf 11868 support needed for LDAP. Now the code has to be written mostly in 11869 amd/info_ldap.c. 11870 11871 * Included additional patches from Andreas Stolcke 11872 <stolcke@speech.sri.com> to support using the best possible 11873 combination of NFS version (2,3) and protocol (udp,tcp) for any 11874 given host, since it appears that some Irix versions have NFS V3, 11875 but do not support TCP. 11876 11877 * scripts/ctl-amd.in: updated amd control script to look for and 11878 use amd.conf file. 11879 11880Tue Jul 1 00:28:23 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11881 11882 * amd/mapc.c (mapc_create): now, each map in the amd.conf can be 11883 initialized off of a different type, or default to cycling through 11884 all maps until one of them matches. 11885 11886Mon Jun 30 20:49:13 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11887 11888 * amd/ops_afs.c (afs_readdir): per-map browsing (readdir) done. 11889 if browsable_dirs=yes is set in the map section in amd.conf, that 11890 map will return all entries back to a readdir(2). 11891 11892Sun Jun 29 16:22:11 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11893 11894 * rudimentary amd.conf file support included. You may even 11895 override things like os=sos5, to get "backwards" compatibility with 11896 upl102. 11897 11898Sat Jun 28 13:35:02 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11899 11900 * amd/conf.c: new file to process amd.conf file. 11901 11902 * amd/get_args.c (get_args): new options -H to print help. 11903 11904 * moved enable_default_selectors to be amd.conf controlled, and 11905 not compiler controlled. 11906 11907 * amd/get_args.c (get_args): new options -F <conf-file> to parse an 11908 amd configuration file. 11909 11910Wed Jun 25 23:15:42 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11911 11912 * converted all files that used strcmp() == 0 or != 0 to using 11913 the STREQ() macro. 11914 11915Mon Jun 23 22:31:14 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11916 11917 * aux/macros/check_lib_funcs.m4: new M4 macro that can be used to 11918 search for any number of functions in any given library. 11919 11920Mon Jun 23 01:04:23 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11921 11922 * amd/mapc.c: Included patch from Leif Johansson 11923 <leifj@matematik.su.se> to ensure that systems without an RE 11924 library can compile. 11925 11926 * libamu/mount_fs.c (mount_fs): Included patch from Andreas 11927 Stolcke <stolcke@speech.sri.com>, to ensure that mount options on 11928 table are properly delimited by a comma. 11929 11930 * amd/ops_nfs.c (mount_nfs_fh): Included patch from Andreas 11931 Stolcke <stolcke@speech.sri.com>, to allow users to override the 11932 proto= and vers= mount options. 11933 11934Sun Jun 22 01:00:11 1997 Eric Dana (edana@ncr2.bgs.com) 11935 11936 * conf/nfs_prot/nfs_prot_svr4.h: port completed to 11937 i486-ncr-sysv4.3.03. Assorted source cleanups done. 11938 11939 * include/am_defs.h, aux/macros/mount_headers.m4: don't include 11940 mnttab.h if sys/mnttab.h was already included, because on ncr2, 11941 they contain conflicting entries for struct mnttab. 11942 11943Sat Jun 21 23:52:15 1997 Eric Dana (edana@ncr2.bgs.com) 11944 11945 * aux/macros/check_nfs_prot_headers.m4: added support for ncr2. 11946 11947Fri Jun 20 06:14:17 1997 Erez Zadok <ezk> 11948 11949 * amd/*.c: lots of 64-bit "ugly" ports like casts to long ints. 11950 11951 * aux/macros/struct_nfs_fh.m4: check for "struct nfssvcfh" because 11952 on DU-4.0 it is better than the next one to be picked (nfsv2fh_t). 11953 11954Wed Jun 18 18:59:49 1997 Erez Zadok <ezk@defiant.soscorp.com> 11955 11956 * aux/macros/struct_nfs_fh.m4 (AC_TRY_COMPILE_NFS): check for 11957 nfsv2fh_t before fhandle_t becasue on bsdi2.1 the former is 11958 better. 11959 11960Tue Jun 10 17:06:58 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11961 11962 * amd/rpc_fwd.c (fwd_packet): TLI bug fix. if fwdto socket is 11963 NULL, set the maxlen and len fields in netbuf to zero. 11964 11965Wed May 28 22:52:28 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11966 11967 * scripts/fix-amd-map.in (name): replace all matching patterns on 11968 line. 11969 11970Sun May 25 19:33:41 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11971 11972 ******************************************************************* 11973 *** Released am-utils-6.0a5 *** 11974 ******************************************************************* 11975 11976Sun May 25 13:37:24 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 11977 11978 * amd/amq_subr.c (amqproc_getvers_1_svc): amq's RPC service 11979 procedure now returns the full string that amd -v returns. 11980 11981 * amd/get_args.c (get_version_string): new function to return 11982 complete version/info string so it could be used more flexibly. 11983 11984 * amd/am_ops.c (ops_showamfstypes, ops_showfstypes): put the list 11985 of Fs types into a string buffer, rather than a FILE*. 11986 11987 * amd/mapc.c (mapc_showtypes): put the list of map types into a 11988 string buffer, rather than a FILE*. 11989 11990Sun May 25 01:25:36 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11991 11992 * amd/get_args.c (get_args): amd -v also prints user who built 11993 amd, hostname built on, and date of configuration. 11994 11995Sat May 24 13:40:50 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 11996 11997 * scripts/lostaltmail.conf-sample: sample lostaltmail 11998 configuration file. 11999 12000 * scripts/lostaltmail.in: new script lostaltmail used to redeliver 12001 "lost" mail that hlfsd redirected to a temp location because the 12002 primary home file system of the user was full. 12003 12004 * scripts/amd2sun.in: new script amd2sun. Used to convert Sub 12005 automount maps to amd maps. 12006 12007 * scripts/ctl-hlfsd.in: new script ctl-hlfsd. Used to start, 12008 stop, or restart hlfsd. 12009 12010 * scripts/expn.1: man page for expn command. 12011 12012 * scripts/ctl-amd.in: new script ctl-amd. Used to start, stop, or 12013 restart amd. 12014 12015 * scripts/expn.in: new script expn. Actually taken from David 12016 Muir Sharnoff <muir@idiom.com>. Used by hlfsd's mail re-delivery 12017 script. 12018 12019 * scripts/wait4amd.in: new script wait4amd added. Waits for amd 12020 to come up on a host, and then runs a command (rsh $hostname by 12021 default). 12022 12023 * scripts/Makefile.am: new directory now holds all shell/perl 12024 scripts that belong to am-utils. 12025 12026 * conf/mount/mount_linux.c (parse_opts): new parser for 12027 linux-specific mounts. Handles fs-type specific mount-options 12028 correctly. Currently implemented: msdos, iso9660. 12029 12030 * amd/ops_pcfs.c (pcfs_ops): don't timeout pcfs mounts by default 12031 (fix for linux). 12032 12033 * amd/ops_cdfs.c (cdfs_ops): don't timeout cdfs mounts by default 12034 (fix for linux). 12035 12036 * amd/mapc.c (make_entry_chain): fixed bug that resulted in amd 12037 core dumps upon "ls" of a mount point; an invalid pointer was 12038 being returned and dereferenced. 12039 12040 * port to Linux sparc working! 12041 12042 * hlfsd/homedir.c (hlfsd_diskspace): close file descriptor if 12043 failed to write test file, or else the fd will leak. 12044 12045Sun May 18 00:42:41 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12046 12047 * amd/info_hesiod.c (hs_strip_our_domain): use strcasecmp() 12048 instead of strcmp(). 12049 12050 * Port to Digital Unix 4.0 (OSF) done. 12051 12052 * hlfsd/hlfsd.c: renamed dirname to dir_name to avoid conflicts 12053 with dirname() function in <string.h> on OSF systems. 12054 12055 * fsinfo/fsi_util.c (set_ether_if): take out extern definition of 12056 inet_addr(). It should come from <arpa/inet.h> instead. 12057 12058 * conf/mtab/mtab_osf.c: fixed macros and added NFS V3 specs. 12059 12060 * include/am_utils.h: renamed FIRST/LAST to AM_FIRST/AM_LAST to 12061 avoid conflicts with DU 4.0 system header. 12062 12063Thu May 15 22:49:12 1997 Erez Zadok <ezk@subzero.cs.columbia.edu> 12064 12065 * libamu/mount_fs.c (mount_fs): pass along NFS version so I can 12066 determine if to include additional options in the mount table file 12067 entry (such as proto=tcp, and vers=3). 12068 12069Thu May 15 00:42:12 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12070 12071 * libamu/mount_fs.c (mount_fs): include NFS version number in the 12072 mount table options, as well as proto={tcp,udp}. 12073 12074Wed May 14 14:30:19 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 12075 12076 * NFS V3 code ported to most other systems, so it compiles for V2 12077 and V3 NFS systems. 12078 12079 * NFS VERSION 3 support, first pass. Working for Solaris and 12080 using TCP. 12081 12082Sun May 11 01:14:29 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 12083 12084 * amq/amq.c: many newline characters were missing from various 12085 stderr printfs. 12086 12087Sat May 10 13:09:06 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 12088 12089 * conf/nfs_prot/nfs_prot_sunos5.h: protocol defintions for 12090 Solaris, which include NFS V3 support. 12091 12092 * conf/nfs_prot/nfs_prot_default.h: default NFS protocol headers. 12093 12094 * conf/transp/transp_{tli,sockets}.c (get_mount_client): use NFS 12095 protocol version while getting a mount client. 12096 12097 * amd/ops_nfs.c (mount_nfs_fh): set the mount types, mnttab types, 12098 file handle size, and proper file handle based on the correct NFS 12099 version number. 12100 12101 * conf/mount/mount_svr4.c (mount_svr4): support NFS3 mounts under 12102 Solaris and other SVR4 systems. 12103 12104 * amd/ops_nfs.c: store NFS file handle version and version 12105 specific handle in struct fh_cache. 12106 (got_nfs_fh): pick the correct RPC reply based on the NFS version 12107 of the server. 12108 (prime_nfs_fhandle_cache): figure out the right NFS file handle 12109 for a node, but now include NFS protocol version information. 12110 (call_mountd): set the correct version for the mount protocol, 12111 based on the NFS protocol version. 12112 (nfs_init): use the NFS protocol generic structure 12113 am_nfs_handle_t. 12114 12115 * include/am_utils.h: new structure am_nfs_handle_t to contain all 12116 possible versions of NFS file handles. 12117 12118 * amd/srvr_nfs.c (start_ping): ping program performs NFS version 12119 specific pings. 12120 (recompute_portmap): figure out the correct portmap version mount. 12121 (nfs_keepalive): call start_ping() with the correct NFS version. 12122 (find_nfs_srvr): if mount option "vers=" is given, use it. Get 12123 the NFS server version and verify that it is up. 12124 12125 * conf/transp/transp_{tli,sockets}.c (get_nfs_version): a new 12126 function to find the best NFS version for a particular host. 12127 12128 * libamu/amu.h: determine what is the highest version of NFS we 12129 should try. 12130 12131 * include/am_utils.h (NFS_VERSION3): added definition for NFS V3 12132 protocol number. 12133 Added field fs_version to struct fserver, so we can now store the 12134 server protocol version. 12135 12136Fri May 9 01:09:45 1997 Erez Zadok <ezk@lorien.cs.columbia.edu> 12137 12138 * aux/macros/check_field.m4 (AC_MOUNT_HEADERS): map '.' (dot) into 12139 underscores too, so I can test for sub-fields. 12140 12141 * libamu/wire.c: use test that checks for sub-fields of struct 12142 ifreq. 12143 12144Sat May 6 10:20:17 2000 Erez Zadok <ezk@glory.soscorp.com> 12145 12146 * port to BSD/OS 3.0 completed! Many xdr_ functions were broken 12147 into smaller files. M4 macros fixed to test for existence of 12148 file systems using getvfsbyname(). 12149 12150 * amd/sched.c (sigchld): signal handler must waitpid() for all 12151 possible children. 12152 12153 * hlfsd/homedir.c: signal handler must waitpid() for all possible 12154 children. 12155 12156 * aux/macros/check_restartable_signals.m4: new macro to determine 12157 if need to reinstall signal handlers per OS is better than trying 12158 to figure these out based on system macros. 12159 12160Fri May 5 19:23:28 2000 Erez Zadok <ezk@glory.soscorp.com> 12161 12162 * amd/ops_nfs.c (mount_nfs_fh): set nfs_args_t version number. 12163 12164 * amd/ops_afs.c (mount_toplvl): set nfs_args_t version number. 12165 12166 * amd/ops_nfs.c (mount_nfs_fh): process nfs mount option resvport 12167 (must be supplied for bsdi 3.0) 12168 12169 * libamu/wire.c: use HAVE_FIELD_STRUCT_IFREQ_IFR_ADDR (and 12170 associated new macro) for determining the right way to compute the 12171 size of the interface structure. 12172 12173Fri Apr 11 15:56:13 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12174 12175 * aux/configure.in: need to include libc before libnsl if 12176 get_myaddress() is available because on irix libnsl has a buggy 12177 get_myaddress(). 12178 12179 * include/am_defs.h: make sure REINSTATE_SIGNAL_HANDLER is defined 12180 on Irix 6 (an SVR4 variant) 12181 12182Thu Mar 27 02:28:40 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12183 12184 ******************************************************************* 12185 *** Released am-utils-6.0a4 *** 12186 ******************************************************************* 12187 12188Wed Mar 26 21:15:36 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12189 12190 * amd/amq_subr.c (ok_security): turned off insecure code unless 12191 user explicitly runs configure --enable-amq-mount. 12192 12193 * hlfsd/hlfsd.c (main): use new protoypes dor create_nfs_service(). 12194 12195 * amd/nfs_start.c (mount_automounter): use code that separately 12196 creates the NFS and the amq service. Register tcp and udp 12197 services for amd. 12198 12199 * conf/transp/transp_*.c (create_amq_service): new function to 12200 separately create the amq service for amd. Simplified prototypes 12201 for create_nfs_service(). 12202 12203Wed Mar 19 20:40:56 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12204 12205 ******************************************************************* 12206 *** Released am-utils-6.0a3 *** 12207 ******************************************************************* 12208 12209Wed Mar 19 17:49:18 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12210 12211 * new port: rs6000-ibm-aix3.2.5 and rs6000-ibm-aix4.1.5.0. Lots 12212 of small changes to support these two. 12213 12214Wed Mar 19 14:33:30 1997 Erez Zadok <ezk@grande.cs.columbia.edu> 12215 12216 * conf/umount/umount_default.c (umount_fs): bug: unlock_mntlist() 12217 should run if MOUNT_TABLE_ON_FILE, not otherwise. 12218 12219Mon Mar 17 22:02:43 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12220 12221 * hlfsd/hlfsd.c (main): fill in fhsize field if exists 12222 (freebsd-2.2). 12223 12224 * amd/ops_{nfs,afs}.c (mount_toplvl): fill in fhsize field if 12225 exists (freebsd-2.2). 12226 12227Sat Mar 15 19:37:48 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12228 12229 * new port: i386-unknown-freebsd2.2. FreeBSD 2.2 and higher 12230 changed the filehandle type in struct nfs_args from nfsv2fh_t to 12231 u_char. 12232 12233Sat Mar 14 10:11:03 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12234 12235 * SHARED LIBRARIES: too many changes to list individually. Now, 12236 libamu can be built as a shared library, and other programs link 12237 with it. 12238 12239Tue Mar 11 22:24:09 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12240 12241 * aux/macros/opt_shared.m4: new macro for setting options for 12242 building shared am-utils libraries. 12243 12244Sun Mar 9 19:17:46 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12245 12246 * fixmount/fixrmtab: cleaned up the script. 12247 12248 * fixmount/Makefile.am (EXTRA_DIST): adde $(sbin_SCRIPTS) so that 12249 fixrmtab gets distributed too. 12250 12251 * conf/nfs_prot/nfs_prot_bsdi2.h: added support for MOUNTPROC_DUMP. 12252 Added extern for xdr_mountlist(). 12253 12254 * aux/configure.in: trimmed down many tests for MNT2_GEN_OPT, 12255 MNT2_NFS_OPT, and MNTTAB_OPT that were not referenced anywhere in 12256 the sources. 12257 12258Sat Mar 8 00:23:58 1997 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 12259 12260 * fixmount/hlfsd ported to bsd44, hpux, and linux systems. 12261 12262 * aux/macros/check_fixmount_style.m4: add check for bsd44 systems. 12263 12264 * conf/fixmount/fixmount_default.c: use lockf() if flock() is 12265 unavailable. 12266 12267 * include/am_defs.h: include <string.h> even if don't have 12268 STDC_HEADERS defined (sunos4). 12269 (seteuid): define seteuid() to be setresuid() for systems that 12270 have but not the other (hpux). 12271 12272 * aux/macros/check_extern.m4: test should include <strings.h>. 12273 12274Tue Mar 4 17:16:52 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12275 12276 * lib/xutil.c (debug_option): moved from amd/getargs.c to this 12277 more proper file. 12278 12279 * include/am_utils.h: put in structure for debug options, for all 12280 progams to use. 12281 12282 * amd/get_args.c: moved structure for debug options out. 12283 12284Sun Mar 2 00:13:07 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12285 12286 * ported fixmount. 12287 12288 * lib/ualarm.c: replacement function for systems that don't have a 12289 ualarm(). 12290 12291 * ported fsinfo. 12292 12293Sun Mar 1 10:23:34 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12294 12295 * ported mk-amd-map. 12296 12297 * buildall: added -K option to buildall, to run mkconf. 12298 12299Fri Feb 28 01:10:25 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12300 12301 ******************************************************************* 12302 *** Released am-utils-6.0a2 *** 12303 ******************************************************************* 12304 12305Thu Feb 27 13:58:59 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12306 12307 * all *.[hcyl] files: add copyright line. 12308 12309 * aux/macros/check_mount_type.m4: test for mount type for 12310 linux-like systems, by checking for loadable or statically linked 12311 kernel filesystem modules. 12312 12313 * aux/macros/check_mnttab_type.m4: test for mount table entry 12314 for linux-like systems, by checking for loadable or statically 12315 linked kernel filesystem modules. 12316 12317 * aux/configure.in: pcfs filesystems can use vfat type (linux) 12318 12319 * aux/macros/check_fs_mntent.m4: test for filesystem existence for 12320 linux-like systems, by checking for loadable or statically linked 12321 kernel filesystem modules. 12322 12323 * conf/trap/trap_hpux.h: ugly hack added because of stupide HPUX 12324 9.0 header files. This should be removed when HPUX 9.0 is deemed 12325 defunct. 12326 12327 * aux/acconfig.h: set an undefined variable for having an extern 12328 to clnt_sperrno(). 12329 12330 * include/am_defs.h: define extern for clnt_sperrno() if needed. 12331 12332 * aux/configure.in: test for extern clnt_sperrno(). 12333 12334 * aux/macros/check_nfs_fh_dref.m4: HPUX's NFS fhandle dref is 12335 similar to irix. 12336 12337 * aux/macros/check_mount_style.m4: use mount helper on HPUX. 12338 12339 * aux/macros/check_mtype_type.m4: hpux's mount type is a char*, 12340 not integer (but may be mapped to one later). 12341 12342 * conf/mount/mount_hpux.c (mount_hpux): HPUX has confusing header 12343 files. They have mount(2) and vfsmount(2) which don't take same 12344 arguments, and they have string mount types MNTTYPE_* as well as 12345 integer types MOUNT_*. So I need this new mount function to map 12346 from string types to integer types for the vfsmount() function. 12347 12348 * conf/trap/trap_hpux.h (MOUNT_TRAP): instead of calling 12349 vfsmount(), call mount_hpux(). 12350 12351Thu Feb 27 03:34:14 1997 Erez "HWank1" Zadok <ezk@okeeffe.cs.columbia.edu> 12352 12353 * lib/mount_fs.c (mnt_flags): make sure SYNC option is on only if 12354 both MNTTAB_OPT_SYNC and MNT2_GEN_OPT_SYNC are defined. 12355 12356Thu Feb 27 00:26:00 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12357 12358 * conf/nfs_prot/nfs_prot_hpux.h: NFS protocol definitions for 12359 hpux. 12360 12361 * include/am_defs.h: no need to include rpc/auth.h or rpc/clnt.h. 12362 12363 * aux/configure.in: no need to test for rpc/auth.h and rpc/clnt.h. 12364 12365 * buildall: added ability to configure using other shells than 12366 /bin/sh, on those systems where /bin/sh is buggy or limited 12367 (HPUX). 12368 12369 * aux/macros/struct_nfs_fh.m4: reinstated the macro but have it 12370 defined am_nfs_fh, and also test for plain typedef "nfs_fh". 12371 12372 * aux/acconfig.h: #undef am_nfs_fh, which is being defined by a 12373 reinstated macro. 12374 12375 * aux/configure.in: check for <nfs/export.h> 12376 12377 * include/am_defs.h: include <nfs/export.h> (HPUX) if exists. 12378 12379 * aux/macros/try_compile_nfs.m4: include <nfs/export.h> (HPUX) if 12380 exists. 12381 12382 * aux/macros/mount_headers.m4 (define): removed some non-working 12383 (on HPUX) code that attempts to recreate the fhandle_t rather than 12384 load it up from system headers. Also added some NFS protocol 12385 header inclusion. include <nfs/export.h> (HPUX) if exists. 12386 12387Wed Feb 26 00:32:35 1997 Erez "HWank1" Zadok <ezk@okeeffe.cs.columbia.edu> 12388 12389 * aux/macros/mount_headers.m4 (define): Use M4 changequote to 12390 ensure [] brackets are correctly used. 12391 12392 * aux/macros/expand_cpp_{string,hex,int}.m4: encapsulate 12393 multi-line M4 inclusions in []. 12394 12395Tue Feb 25 22:19:44 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12396 12397 * conf/mtab/mtab_bsd.c (mnt_dup): use statfs field f_fstypename if 12398 it exists. 12399 12400 * aux/acconfig.h: HAVE_FIELD_STRUCT_STATFS_F_FSTYPENAME, new 12401 config.h macro for field f_fstypename of struct statfs. 12402 12403 * aux/configure.in: testing for field f_fstypename field of struct 12404 statfs (NetBSD). 12405 12406 * aux/acconfig.h: moved all of the "static" definitions out to a 12407 fixed file called include/am_defs.h. Added to all */Makefile.am 12408 files a dependency on am_defs.h. Created am_defs.h of course, and 12409 then added #include <amd_defs.h> to all of the source and header 12410 files that required it. 12411 12412Mon Feb 24 01:27:02 1997 Erez Zadok <ezk@defiant.soscorp.com> 12413 12414 * aux/acconfig.h: two more externals for xdr functions that may be 12415 implemented by libamu. 12416 12417 * conf/nfs_prot/nfs_prot_bsdi2.h: added missing RPC and XDR 12418 definitions. 12419 12420Sun Feb 23 15:25:26 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12421 12422 * buildall (default): added -D option for turning on even stricker 12423 developer options. 12424 12425 * */Makefile.am: make sure @AMU_NFS_PROT_HEADERS@ is used to 12426 determine dependencies on optional NFS protocol headers. 12427 12428 * aux/acconfig.h: define and use HAVE_NFS_PROT_HEADERS as needed. 12429 12430 * aux/macros/check_nfs_prot_header.m4: new test to determine what 12431 NFS protocol headers to use. 12432 12433 * conf/nfs_prot/nfs_prot_{irix6,sunos4,bsdi2}.h: new headers to 12434 complete missing system headers for NFS protocol definitions. 12435 12436Sun Feb 16 15:58:42 1997 Erez "HWank1" Zadok <ezk@vir.cs.columbia.edu> 12437 12438 * amd/ops_nfs.c (mount_nfs_fh): encapsulated some more code in 12439 #ifdef's as needed. 12440 12441 * amd/ops_afs.c (mount_toplvl): make sure TIMEO/RETRANS code is 12442 suitable #ifdef'ed. 12443 12444 * include/am_compat.h: a couple more mnttab options 12445 (timeo/retrans) setting just in case. 12446 12447 * amd/autil.c (host_normalize): make sure hostent->h_name is 12448 passed a non-const char *. 12449 12450 * conf/mount/mount_linux.c (mount_linux): cleaned up a block of code. 12451 12452 * {lib,amq,amd}/*.c (many functions): cast xdr_entry to 12453 XDRPROC_T_TYPE. 12454 12455 * lib/nfs_prot_svc.c (nfs_program_2): cast xdr_entry to 12456 XDRPROC_T_TYPE. 12457 12458 * lib/nfs_prot_xdr.c (xdr_entry): cast xdr_entry to 12459 XDRPROC_T_TYPE. 12460 12461 * lib/wire.c (getwire): Make sure safe assignment from const to 12462 none is done. 12463 12464Sat Feb 15 19:38:51 1997 Erez "HWank1" Zadok <ezk@vir.cs.columbia.edu> 12465 12466 * aux/macros/expand_cpp_int.m4: new macro for expanding integers. 12467 12468 * aux/configure.in: added linux/fs.h support in configure and 12469 several M4 macros. 12470 12471 * conf/mount/mount_linux.c (mount_linux): use macro instead of 12472 "ugly" fixed hex number for mount() arguments. 12473 12474Sat Feb 15 02:09:47 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12475 12476 * amd/info_hesiod.c: removed macro HAVE_HS_ZONE_TRANSFER and 12477 turned all of its code always on. That code always seems to 12478 compile, as long as you have hesiod and libresolv. 12479 12480 * amd/mapc.c: removed macro HAVE_HS_ZONE_TRANSFER and turned all 12481 of its code always on. 12482 12483 * aux/configure.in: removed superfluous test for hs_zone_transfer 12484 function (will never find it because it is an amd-internal 12485 function). 12486 12487 * amd/mapc.c (maptypes): must used correct new name for am-utils' 12488 hesiod initialization function: hesiod_am_init. 12489 12490 * amd/info_hesiod.c (hesiod_am_init): renamed hesiod_init to 12491 hesiod_am_init so as not to conflict with libhesiod's 12492 hesiod_init() function. 12493 12494 * aux/configure.in: added test and explicit inclusion of 12495 libresolv.a for later resolution of library references with 12496 libhesiod. 12497 12498 * aux/macros/opt_cppflags.m4: new file. configure/compile C 12499 preprocessor flags. 12500 12501 * aux/macros/opt_libs.m4: new file. configure/compile library 12502 flags. 12503 12504 * Makefile.am (EXTRA_DIST_AUX): include two new macros 12505 opt_cppflags.m4 and opt_libs.m4. 12506 12507 * aux/configure.in: test for libhesiod needs to additional 12508 libresolv to link completely. Additional configuration time 12509 options added for setting initial CPPFLAGS and LIBS. 12510 12511Tue Feb 10 02:15:40 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12512 12513 ******************************************************************* 12514 *** Released am-utils-6.0a1 *** 12515 ******************************************************************* 12516 12517Thu Feb 6 02:55:19 1997 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12518 12519 * amd/info_ndbm.c (ndbm_search,ndbm_init): fixed the code so that 12520 it works on freebsd, where they map dbm_pagfno a non-existing 12521 macro on purpose, to force you to port the code to Berkeley DB. 12522 12523Fri Jan 31 01:35:09 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12524 12525 * amd/ops_afs.c (mount_toplvl): added a sleep(1) right before the 12526 actual mount_toplvl, to avoid some possible race conditions. 12527 12528Thu Jan 30 02:31:49 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12529 12530 * amd/rpc_fwd.c: removed all TLI (HAVE_T_OPEN) code. 12531 12532Wed Jan 29 18:25:07 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12533 12534 * lib/wire.c (getwire): removed HAVE_T_OPEN (TLI code) 12535 12536 * amd/amd.c (main): fix local address using htonl(). Free up 12537 buffers allocated by netdir_*() functions. 12538 12539Wed Jan 22 23:53:24 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12540 12541 * amd/fix-amd-map.in: new script that will convert old-style amd 12542 maps to new one. 12543 12544Tue Jan 21 01:18:16 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12545 12546 * FIRST AMD IN AM-UTILS FINALLY WORKS (mounts itself as toplvl, 12547 and replies back to simple nfs/link type mount queries). 12548 12549 * conf/mtab/mtab_svr4.c: reorganized the code in this file to be 12550 easier to read, and fixed a few bugs with un/setting the lock file 12551 descriptor. 12552 12553Wed Jan 8 15:27:49 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12554 12555 * amd/sched.c: removed HAS_SVR3_SIGNALS code to handle older 12556 signals in Svr3 systems. Only stellix ever used this. 12557 12558 * amd/rpc_fwd.c (fwd_reply): removed all code that was triggered 12559 by DYNAMIC_BUFFERS, since it was not in use. 12560 12561Tue Jan 7 00:45:59 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12562 12563 * amd/opts.c (eval_opts): removed AMD_COMPAT code. Amd no longer 12564 takes '=' sign as old selector. Fix your maps. 12565 (deslashify): removed APOLLO code that treated two '//' as one. 12566 12567Sun Jan 5 01:25:09 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12568 12569 * amd/ops_nfsx.c (nfsx_init): removed HARD_NFSX_ERRORS, code which 12570 was not used. It made any submount error fail the whole group. 12571 12572 * amd/ops_nfs.c (make_nfs_auth): removed code dependent on 12573 HAS_NFS_QUALIFIED_NAMES. 12574 (mount_nfs_fh): removed macro for NFS_ARGS_NEEDS_PATH, assuming it 12575 is never on. So code that was triggered by #ifndef 12576 NFS_ARGS_NEEDS_PATH (osf1, aix3, and bsd44 variants) may have to 12577 be fixed later. 12578 Removed all ULTRIX_HACK code. Ultrix is DEAD! 12579 removed all PRESET_AC code, which was only on for Linux to preset 12580 the attribute cache values (otherwise they default to zero). 12581 (nfs_umounted): revobed KICK_KERNEL code (IRIX systems). Will 12582 have to fixed up later. 12583 (mount_nfs_fh): removed code that was never included, which 12584 attempted to set the port on which amd's nfs mounts on. This 12585 isn't supported by the ping algorithm yet. In any case, it is all 12586 done in nfs_init(). 12587 12588 * amd/srvr_nfs.c (find_nfs_srvr), amd/ops_nfs.c (mount_nfs_fh): 12589 removed HAS_TCP_NFS code. The whole use of NFS V.3 with TCP or 12590 specially hacked NFS V.2 that uses TCP (BSD 4.4 variants) will 12591 have to be addressed later. 12592 12593 * amd/nfs_subr.c (nfsproc_getattr_2): removed all code dependent 12594 on PRECISE_SYMLINKS. 12595 12596 * amd/mapc.c (mapc_meta_search): removed code that depended on 12597 HAS_DEPOT. It is known buggy code. The whole DEPOT support needs 12598 to be rethought. 12599 (mapc_add_kv): ported code to use standard regular expression 12600 (regexp) library. 12601 12602 * amd/{map.c,ops_sfs.c,ops_ufs.c}: removed all code dependent on 12603 FLUSH_KERNEL_NAME_CACHE and the macro itself. 12604 12605Sat Jan 4 15:46:58 1997 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12606 12607 * amd/map.c (exported_ap_alloc): removed all code triggered by 12608 SHRINK_EXPORTED_AP and the macro itself. 12609 12610 * amd/info_nis.c: removed HAS_NIS_RELOAD macro, and left the code 12611 in all the time. Assuming that there is always NIS realod 12612 available. 12613 (yp_all_fixed): removed code for BROKEN_YP_ALL. If your yp_all() 12614 function is broken such that it does not release filedescriptors 12615 it created, then you are hosed. Get a fix for yp_all from your 12616 vendor or switch operating systems. 12617 12618Tue Dec 31 15:34:36 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12619 12620 * amd/info_hesiod.c: renamed macro HAS_HESIOD_RELOAD to 12621 HAVE_HS_ZONE_TRANSFER. 12622 12623Mon Dec 30 17:33:23 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12624 12625 * amd/{nfs,host}_ops.cremoved INFORM_MOUNTD macro, so its code is 12626 always included. We should always try to inform the remove mount 12627 daemon of mounts we performed. If we want an option for this, it 12628 should be a run-time option. 12629 12630 * amd/host_ops.c: removed all that optionally did not make the 12631 directory mount points for amd. 12632 12633 * HOST_EXEC code removed from everywhere. There is no indication 12634 that it was used anywhere. If it needs to be used, then a 12635 run-time switch should control it. 12636 12637Thu Dec 26 00:06:52 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12638 12639 * amd/*_ops.c: removed all references to mntent_t's fields 12640 mnt_freq and mnt_passno, since they are no longe rused (and never 12641 have been). 12642 12643 * amd/am_ops.c: removed function sunos4_match, which was off 12644 anyway. This was one of the places where an '=' sign was allowed 12645 as an assignment operator (which is now ':='). 12646 12647 * amd/afs_ops.c (afs_bgmount): removed SUNOS4_COMPAT code which 12648 was off anyway. This was one of the places where an '=' sign was 12649 allowed as an assignment operator (which is now ':='). 12650 12651Tue Dec 24 01:53:52 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12652 12653 * amq/amq.c: ported to am-utils. Working. 12654 12655 * conf/mount/mount_svr4.c (mount_svr4): changed mount type on svr4 12656 to be string, as it should be (rather than a string mapped to int 12657 and back mapped to string). 12658 12659Sun Dec 22 13:26:05 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12660 12661 * lib/mount_fs.c (mount_fs): removed MNTINFO_PREF code. 12662 12663 * lib/umount_fs.c: split this into three files: default, osf, and 12664 bsd44, that are in conf/umount/umount_*.c. 12665 12666Thu Dec 19 17:33:46 1996 Erez "HWank1" Zadok <ezk@lorien.cs.columbia.edu> 12667 12668 * aux/configure.in, aux/aclocal.m4, aux/acconfig.h: added new 12669 macro to automatically figure out if an external definition for 12670 sys_errlist[] exists. 12671 12672 * lib/xutil.c (xfree): removed "#undef free" because it's not 12673 needed there. Any system that redefines free() needs help. 12674 12675 * conf/mtab/mtab_file.c (REWRITE_MTAB_IN_PLACE): removed code that 12676 was dependent on REWRITE_MTAB_IN_PLACE. It does not appear to be 12677 in active use anywhere. If added later, it should be a run-time 12678 configuration option. 12679 12680 * conf/mtab/mtab_mach3.c: removed code that was #ifdef'ed not to 12681 be MOUNT_TABLE_ON_FILE, since mach2 always stores its mount tables 12682 in a file in /etc. 12683 12684 * lib/util.c (str3cat): removed _AIX code. AIX should have a 12685 working realloc, or else find a cleaner solution to this. 12686 (mkdirs): removed SUNOS4_WORKAROUND code. This was to do a sync() 12687 after immediately making directories so that fsck will be able to 12688 fix the filesystem in the event of an immediate crash. This was 12689 because a bug in UFS which is fixed by now. 12690 12691 * lib/hutil.c (domain_strip): removed PARTIAL_DOMAINS triggered 12692 code. Does not appear to be on and used anywhere. 12693 (dofork): removed MACH3 code, b/c mach3 NFS bugs are fixed by now. 12694 12695 * lib/resvport.c: split the binding of reserved ports code to a 12696 separate file. A #define (HAVE_T_OPEN) separates the TLI (SVR4) 12697 from the BSD code. 12698 12699Thu Dec 19 02:08:35 1996 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12700 12701 * lib/Makefile.am (amu_LIBADD): includs @LIBOBJS@ now, auto-filled 12702 in by automake and configure, for optional sources that need to be 12703 built as part of libamu.a. 12704 12705 * aux/aclocal.m4: Make sure AC_CHECK_MOUNT_STYLE adds mountutil.o 12706 to LIBOBJS. 12707 12708 * lib/memcmp.c (memcmp): new file added to replace a possible bad 12709 implementation of memcmp. 12710 12711Wed Dec 18 22:20:23 1996 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12712 12713 * converted the sources to use memset/memmove/memcmp instead of 12714 bzero/bcopy/bcmp. 12715 12716 * ran all sources through gnu Indent w/ options specified in 12717 aux/amindent. 12718 12719Wed Dec 11 22:19:29 1996 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12720 12721 * At this point the initial generation of config.h via autoconf and 12722 some preliminary makefiles via automake is done. I will not begin 12723 modifying sources, so it's a good time to document from here. 12724 12725Wed Dec 10 22:19:29 1996 Erez "HWank1" Zadok <ezk@shekel.mcl.cs.columbia.edu> 12726 12727 ******************************************************************* 12728 *** Initial ChangeLog Entry *** 12729 ******************************************************************* 12730