From 805e021f69f66af52e8de6f9e3614206f025d6a8 Mon Sep 17 00:00:00 2001 From: Clinton Ebadi Date: Sun, 8 Mar 2020 14:47:04 -0400 Subject: [PATCH] Import Upstream version 1.8.5 --- .gitignore | 98 + .gitreview | 4 + .mailmap | 5 + .splintrc | 12 + CODING | 299 + CONTRIBUTING | 23 + INSTALL | 565 + LICENSE | 417 + Makefile-libafs.in | 25 + Makefile.in | 955 ++ NEWS | 6098 +++++++++++ NTMakefile | 831 ++ README | 20 + README-WINDOWS | 449 + acinclude.m4 | 83 + build-tools/.gitignore | 5 + build-tools/git-version | 32 + build-tools/libafsdep | 6 + build-tools/make-release | 173 + build-tools/mkinstalldirs | 40 + configure-libafs.ac | 27 + configure.ac | 292 + doc/LICENSE | 417 + doc/README | 22 + doc/doxygen/.gitignore | 3 + doc/doxygen/Doxyfile.in | 59 + doc/doxygen/input/mainpage.h | 10 + doc/man-pages/.gitignore | 10 + doc/man-pages/Makefile.in | 92 + doc/man-pages/NTMakefile | 415 + doc/man-pages/README | 282 + doc/man-pages/check-pod | 35 + doc/man-pages/checkman | 303 + doc/man-pages/generate-html | 183 + doc/man-pages/generate-man | 77 + doc/man-pages/install-man.in | 52 + doc/man-pages/merge-pod | 47 + doc/man-pages/pod1/.gitignore | 65 + doc/man-pages/pod1/afs.pod | 564 + doc/man-pages/pod1/afs_compile_et.pod | 129 + doc/man-pages/pod1/afsmonitor.pod | 433 + doc/man-pages/pod1/aklog.pod | 302 + doc/man-pages/pod1/cmdebug.pod | 139 + doc/man-pages/pod1/copyauth.pod | 44 + doc/man-pages/pod1/dlog.pod | 228 + doc/man-pages/pod1/fragments/pts-common.pod | 39 + .../pod1/fragments/volsize-caution.pod | 5 + doc/man-pages/pod1/fragments/vos-common.pod | 49 + doc/man-pages/pod1/fs.pod | 259 + doc/man-pages/pod1/fs_apropos.pod | 75 + doc/man-pages/pod1/fs_bypassthreshold.pod | 99 + doc/man-pages/pod1/fs_checkservers.pod | 231 + doc/man-pages/pod1/fs_checkvolumes.pod | 59 + doc/man-pages/pod1/fs_chgrp.pod | 87 + doc/man-pages/pod1/fs_chown.pod | 88 + doc/man-pages/pod1/fs_cleanacl.pod | 105 + doc/man-pages/pod1/fs_copyacl.pod | 172 + doc/man-pages/pod1/fs_cscpolicy.pod | 107 + doc/man-pages/pod1/fs_discon.pod | 117 + doc/man-pages/pod1/fs_diskfree.pod | 133 + doc/man-pages/pod1/fs_examine.pod | 127 + doc/man-pages/pod1/fs_exportafs.pod | 245 + doc/man-pages/pod1/fs_flush.pod | 87 + doc/man-pages/pod1/fs_flushall.pod | 59 + doc/man-pages/pod1/fs_flushmount.pod | 79 + doc/man-pages/pod1/fs_flushvolume.pod | 86 + doc/man-pages/pod1/fs_getcacheparms.pod | 106 + doc/man-pages/pod1/fs_getcalleraccess.pod | 74 + doc/man-pages/pod1/fs_getcellstatus.pod | 71 + doc/man-pages/pod1/fs_getclientaddrs.pod | 109 + doc/man-pages/pod1/fs_getcrypt.pod | 78 + doc/man-pages/pod1/fs_getfid.pod | 82 + doc/man-pages/pod1/fs_getserverprefs.pod | 177 + doc/man-pages/pod1/fs_getverify.pod | 69 + doc/man-pages/pod1/fs_help.pod | 95 + doc/man-pages/pod1/fs_listacl.pod | 210 + doc/man-pages/pod1/fs_listaliases.pod | 62 + doc/man-pages/pod1/fs_listcells.pod | 85 + doc/man-pages/pod1/fs_listquota.pod.in | 133 + doc/man-pages/pod1/fs_lsmount.pod | 130 + doc/man-pages/pod1/fs_memdump.pod | 71 + doc/man-pages/pod1/fs_messages.pod | 100 + doc/man-pages/pod1/fs_minidump.pod | 59 + doc/man-pages/pod1/fs_mkmount.pod | 244 + doc/man-pages/pod1/fs_monitor.pod | 54 + doc/man-pages/pod1/fs_newalias.pod | 97 + doc/man-pages/pod1/fs_newcell.pod | 146 + doc/man-pages/pod1/fs_nukenfscreds.pod | 80 + doc/man-pages/pod1/fs_precache.pod | 80 + doc/man-pages/pod1/fs_quota.pod.in | 92 + doc/man-pages/pod1/fs_rmmount.pod | 72 + doc/man-pages/pod1/fs_rxstatpeer.pod | 69 + doc/man-pages/pod1/fs_rxstatproc.pod | 70 + doc/man-pages/pod1/fs_setacl.pod | 343 + doc/man-pages/pod1/fs_setcachesize.pod | 107 + doc/man-pages/pod1/fs_setcbaddr.pod | 54 + doc/man-pages/pod1/fs_setcell.pod | 106 + doc/man-pages/pod1/fs_setclientaddrs.pod | 123 + doc/man-pages/pod1/fs_setcrypt.pod | 103 + doc/man-pages/pod1/fs_setquota.pod.in | 99 + doc/man-pages/pod1/fs_setserverprefs.pod | 314 + doc/man-pages/pod1/fs_setverify.pod | 87 + doc/man-pages/pod1/fs_setvol.pod.in | 113 + doc/man-pages/pod1/fs_storebehind.pod | 229 + doc/man-pages/pod1/fs_sysname.pod | 123 + doc/man-pages/pod1/fs_trace.pod | 86 + doc/man-pages/pod1/fs_uuid.pod | 82 + doc/man-pages/pod1/fs_whereis.pod | 76 + doc/man-pages/pod1/fs_whichcell.pod | 72 + doc/man-pages/pod1/fs_wscell.pod | 64 + doc/man-pages/pod1/klog.krb5.pod | 284 + doc/man-pages/pod1/klog.pod | 366 + doc/man-pages/pod1/knfs.pod | 192 + doc/man-pages/pod1/kpasswd.pod | 193 + doc/man-pages/pod1/livesys.pod | 74 + doc/man-pages/pod1/pagsh.pod | 121 + doc/man-pages/pod1/pts.pod | 242 + doc/man-pages/pod1/pts_adduser.pod.in | 117 + doc/man-pages/pod1/pts_apropos.pod | 73 + doc/man-pages/pod1/pts_chown.pod.in | 91 + doc/man-pages/pod1/pts_creategroup.pod.in | 207 + doc/man-pages/pod1/pts_createuser.pod.in | 174 + doc/man-pages/pod1/pts_delete.pod.in | 100 + doc/man-pages/pod1/pts_examine.pod.in | 268 + doc/man-pages/pod1/pts_help.pod | 96 + doc/man-pages/pod1/pts_interactive.pod.in | 114 + doc/man-pages/pod1/pts_listentries.pod.in | 110 + doc/man-pages/pod1/pts_listmax.pod.in | 72 + doc/man-pages/pod1/pts_listowned.pod.in | 123 + doc/man-pages/pod1/pts_membership.pod.in | 227 + doc/man-pages/pod1/pts_quit.pod.in | 67 + doc/man-pages/pod1/pts_removeuser.pod.in | 104 + doc/man-pages/pod1/pts_rename.pod.in | 103 + doc/man-pages/pod1/pts_setfields.pod.in | 243 + doc/man-pages/pod1/pts_setmax.pod.in | 79 + doc/man-pages/pod1/pts_sleep.pod.in | 75 + doc/man-pages/pod1/pts_source.pod.in | 78 + doc/man-pages/pod1/restorevol.pod | 166 + doc/man-pages/pod1/rxdebug.pod | 235 + doc/man-pages/pod1/rxgen.pod | 1449 +++ doc/man-pages/pod1/scout.pod | 344 + doc/man-pages/pod1/symlink.pod | 41 + doc/man-pages/pod1/symlink_list.pod | 80 + doc/man-pages/pod1/symlink_make.pod | 77 + doc/man-pages/pod1/symlink_remove.pod | 71 + doc/man-pages/pod1/sys.pod | 74 + doc/man-pages/pod1/tokens.pod | 130 + doc/man-pages/pod1/translate_et.pod | 51 + doc/man-pages/pod1/udebug.pod | 398 + doc/man-pages/pod1/unlog.pod | 79 + doc/man-pages/pod1/up.pod | 140 + doc/man-pages/pod1/vos.pod.in | 327 + doc/man-pages/pod1/vos_addsite.pod.in | 137 + doc/man-pages/pod1/vos_apropos.pod | 74 + doc/man-pages/pod1/vos_backup.pod.in | 83 + doc/man-pages/pod1/vos_backupsys.pod.in | 287 + doc/man-pages/pod1/vos_changeaddr.pod.in | 129 + doc/man-pages/pod1/vos_changeloc.pod.in | 124 + doc/man-pages/pod1/vos_clone.pod.in | 140 + doc/man-pages/pod1/vos_convertROtoRW.pod.in | 103 + doc/man-pages/pod1/vos_copy.pod.in | 154 + doc/man-pages/pod1/vos_create.pod.in | 180 + doc/man-pages/pod1/vos_delentry.pod.in | 177 + doc/man-pages/pod1/vos_dump.pod.in | 201 + doc/man-pages/pod1/vos_endtrans.pod.in | 113 + doc/man-pages/pod1/vos_examine.pod.in | 405 + doc/man-pages/pod1/vos_help.pod | 96 + doc/man-pages/pod1/vos_listaddrs.pod.in | 116 + doc/man-pages/pod1/vos_listpart.pod.in | 79 + doc/man-pages/pod1/vos_listvldb.pod.in | 278 + doc/man-pages/pod1/vos_listvol.pod.in | 346 + doc/man-pages/pod1/vos_lock.pod.in | 82 + doc/man-pages/pod1/vos_move.pod.in | 175 + doc/man-pages/pod1/vos_offline.pod.in | 125 + doc/man-pages/pod1/vos_online.pod.in | 89 + doc/man-pages/pod1/vos_partinfo.pod.in | 108 + doc/man-pages/pod1/vos_release.pod.in | 194 + doc/man-pages/pod1/vos_remaddrs.pod.in | 76 + doc/man-pages/pod1/vos_remove.pod.in | 157 + doc/man-pages/pod1/vos_remsite.pod.in | 107 + doc/man-pages/pod1/vos_rename.pod.in | 88 + doc/man-pages/pod1/vos_restore.pod.in | 252 + doc/man-pages/pod1/vos_setaddrs.pod.in | 106 + doc/man-pages/pod1/vos_setfields.pod.in | 117 + doc/man-pages/pod1/vos_shadow.pod.in | 163 + doc/man-pages/pod1/vos_size.pod.in | 133 + doc/man-pages/pod1/vos_status.pod.in | 160 + doc/man-pages/pod1/vos_syncserv.pod.in | 100 + doc/man-pages/pod1/vos_syncvldb.pod.in | 123 + doc/man-pages/pod1/vos_unlock.pod.in | 82 + doc/man-pages/pod1/vos_unlockvldb.pod.in | 131 + doc/man-pages/pod1/vos_zap.pod.in | 143 + doc/man-pages/pod1/xstat_cm_test.pod | 122 + doc/man-pages/pod1/xstat_fs_test.pod | 125 + doc/man-pages/pod3/AFS.ukernel.pod | 144 + doc/man-pages/pod5/AuthLog.dir.pod | 38 + doc/man-pages/pod5/AuthLog.pod | 47 + doc/man-pages/pod5/BackupLog.pod | 39 + doc/man-pages/pod5/BosConfig.pod | 247 + doc/man-pages/pod5/BosLog.pod | 38 + doc/man-pages/pod5/CellAlias.pod | 57 + doc/man-pages/pod5/CellServDB.pod | 261 + doc/man-pages/pod5/FORCESALVAGE.pod | 33 + doc/man-pages/pod5/FileLog.pod | 38 + doc/man-pages/pod5/KeyFile.pod | 96 + doc/man-pages/pod5/KeyFileExt.pod | 82 + doc/man-pages/pod5/NetInfo.pod | 119 + doc/man-pages/pod5/NetRestrict.pod | 101 + doc/man-pages/pod5/NoAuth.pod | 67 + doc/man-pages/pod5/PtLog.pod | 60 + doc/man-pages/pod5/SALVAGE.fs.pod | 40 + doc/man-pages/pod5/SalvageLog.pod | 48 + doc/man-pages/pod5/ThisCell.pod | 105 + doc/man-pages/pod5/UserList.pod | 54 + doc/man-pages/pod5/VLLog.pod | 61 + doc/man-pages/pod5/VolserLog.pod | 39 + doc/man-pages/pod5/afs.pod | 176 + doc/man-pages/pod5/afs_cache.pod | 128 + doc/man-pages/pod5/afs_volume_header.pod | 26 + doc/man-pages/pod5/afsmonitor.pod | 120 + doc/man-pages/pod5/afszcm.cat.pod | 28 + doc/man-pages/pod5/bdb.DB0.pod | 43 + doc/man-pages/pod5/butc.pod | 674 ++ doc/man-pages/pod5/butc_logs.pod | 71 + doc/man-pages/pod5/cacheinfo.pod | 72 + doc/man-pages/pod5/fms.log.pod | 76 + doc/man-pages/pod5/kaserver.DB0.pod | 48 + doc/man-pages/pod5/kaserverauxdb.pod | 45 + doc/man-pages/pod5/krb.conf.pod | 26 + doc/man-pages/pod5/krb.excl.pod | 62 + doc/man-pages/pod5/prdb.DB0.pod | 42 + doc/man-pages/pod5/salvage.lock.pod | 25 + doc/man-pages/pod5/sysid.pod | 51 + doc/man-pages/pod5/tapeconfig.pod | 184 + doc/man-pages/pod5/uss.pod | 801 ++ doc/man-pages/pod5/uss_bulk.pod | 370 + doc/man-pages/pod5/vldb.DB0.pod | 41 + doc/man-pages/pod8/.gitignore | 10 + doc/man-pages/pod8/afsd.pod | 819 ++ doc/man-pages/pod8/akeyconvert.pod | 88 + doc/man-pages/pod8/aklog_dynamic_auth.pod | 104 + doc/man-pages/pod8/asetkey.pod | 159 + doc/man-pages/pod8/backup.pod | 339 + doc/man-pages/pod8/backup_adddump.pod | 185 + doc/man-pages/pod8/backup_addhost.pod | 121 + doc/man-pages/pod8/backup_addvolentry.pod | 200 + doc/man-pages/pod8/backup_addvolset.pod | 110 + doc/man-pages/pod8/backup_apropos.pod | 75 + doc/man-pages/pod8/backup_dbverify.pod | 149 + doc/man-pages/pod8/backup_deldump.pod | 79 + doc/man-pages/pod8/backup_deletedump.pod | 228 + doc/man-pages/pod8/backup_delhost.pod | 98 + doc/man-pages/pod8/backup_delvolentry.pod | 99 + doc/man-pages/pod8/backup_delvolset.pod | 88 + doc/man-pages/pod8/backup_diskrestore.pod | 285 + doc/man-pages/pod8/backup_dump.pod | 527 + doc/man-pages/pod8/backup_dumpinfo.pod | 421 + doc/man-pages/pod8/backup_help.pod | 95 + doc/man-pages/pod8/backup_interactive.pod | 123 + doc/man-pages/pod8/backup_jobs.pod | 225 + doc/man-pages/pod8/backup_kill.pod | 166 + doc/man-pages/pod8/backup_labeltape.pod | 221 + doc/man-pages/pod8/backup_listdumps.pod | 137 + doc/man-pages/pod8/backup_listhosts.pod | 106 + doc/man-pages/pod8/backup_listvolsets.pod | 112 + doc/man-pages/pod8/backup_quit.pod | 66 + doc/man-pages/pod8/backup_readlabel.pod | 241 + doc/man-pages/pod8/backup_restoredb.pod | 127 + doc/man-pages/pod8/backup_savedb.pod | 162 + doc/man-pages/pod8/backup_scantape.pod | 354 + doc/man-pages/pod8/backup_setexp.pod | 164 + doc/man-pages/pod8/backup_status.pod | 194 + doc/man-pages/pod8/backup_volinfo.pod | 136 + doc/man-pages/pod8/backup_volrestore.pod | 324 + doc/man-pages/pod8/backup_volsetrestore.pod | 411 + doc/man-pages/pod8/bos.pod | 300 + doc/man-pages/pod8/bos_addhost.pod | 132 + doc/man-pages/pod8/bos_addkey.pod | 169 + doc/man-pages/pod8/bos_adduser.pod | 104 + doc/man-pages/pod8/bos_apropos.pod | 74 + doc/man-pages/pod8/bos_create.pod | 458 + doc/man-pages/pod8/bos_delete.pod | 110 + doc/man-pages/pod8/bos_exec.pod | 95 + doc/man-pages/pod8/bos_getdate.pod | 122 + doc/man-pages/pod8/bos_getlog.pod | 161 + doc/man-pages/pod8/bos_getrestart.pod | 153 + doc/man-pages/pod8/bos_getrestricted.pod | 88 + doc/man-pages/pod8/bos_help.pod | 96 + doc/man-pages/pod8/bos_install.pod | 143 + doc/man-pages/pod8/bos_listhosts.pod | 117 + doc/man-pages/pod8/bos_listkeys.pod | 159 + doc/man-pages/pod8/bos_listusers.pod | 102 + doc/man-pages/pod8/bos_prune.pod | 150 + doc/man-pages/pod8/bos_removehost.pod | 117 + doc/man-pages/pod8/bos_removekey.pod | 115 + doc/man-pages/pod8/bos_removeuser.pod | 102 + doc/man-pages/pod8/bos_restart.pod | 154 + doc/man-pages/pod8/bos_salvage.pod | 363 + doc/man-pages/pod8/bos_setauth.pod | 114 + doc/man-pages/pod8/bos_setcellname.pod | 138 + doc/man-pages/pod8/bos_setrestart.pod | 187 + doc/man-pages/pod8/bos_setrestricted.pod | 98 + doc/man-pages/pod8/bos_shutdown.pod | 135 + doc/man-pages/pod8/bos_start.pod | 107 + doc/man-pages/pod8/bos_startup.pod | 123 + doc/man-pages/pod8/bos_status.pod | 278 + doc/man-pages/pod8/bos_stop.pod | 110 + doc/man-pages/pod8/bos_uninstall.pod | 126 + doc/man-pages/pod8/bos_util.pod | 119 + doc/man-pages/pod8/bosserver.pod | 274 + doc/man-pages/pod8/buserver.pod | 172 + doc/man-pages/pod8/butc.pod | 258 + doc/man-pages/pod8/dafileserver.pod.in | 122 + doc/man-pages/pod8/dasalvager.pod.in | 45 + doc/man-pages/pod8/davolserver.pod.in | 55 + doc/man-pages/pod8/fileserver.pod.in | 65 + doc/man-pages/pod8/fms.pod | 148 + .../pod8/fragments/dafileserver-synopsis.pod | 61 + .../pod8/fragments/dasalvager-synopsis.pod | 9 + .../pod8/fragments/davolserver-synopsis.pod | 8 + .../pod8/fragments/fileserver-also.pod | 10 + .../pod8/fragments/fileserver-cautions.pod | 44 + .../pod8/fragments/fileserver-copyright.pod | 5 + .../pod8/fragments/fileserver-description.pod | 143 + .../pod8/fragments/fileserver-options.pod | 467 + .../pod8/fragments/fileserver-privilege.pod | 4 + .../pod8/fragments/fileserver-synopsis.pod | 53 + .../fragments/fileserver-troubleshooting.pod | 146 + .../pod8/fragments/salvager-also.pod | 6 + .../pod8/fragments/salvager-description.pod | 109 + .../pod8/fragments/salvager-options.pod | 171 + .../pod8/fragments/salvager-privilege.pod | 2 + .../pod8/fragments/salvager-synopsis.pod | 9 + .../pod8/fragments/volserver-also.pod | 5 + .../pod8/fragments/volserver-description.pod | 13 + .../pod8/fragments/volserver-options.pod | 170 + .../pod8/fragments/volserver-privilege.pod | 4 + .../pod8/fragments/volserver-synopsis.pod | 19 + doc/man-pages/pod8/fssync-debug.pod | 91 + doc/man-pages/pod8/fssync-debug_attach.pod | 87 + doc/man-pages/pod8/fssync-debug_callback.pod | 93 + doc/man-pages/pod8/fssync-debug_detach.pod | 86 + doc/man-pages/pod8/fssync-debug_error.pod | 88 + doc/man-pages/pod8/fssync-debug_header.pod | 90 + doc/man-pages/pod8/fssync-debug_leaveoff.pod | 86 + doc/man-pages/pod8/fssync-debug_list.pod | 91 + doc/man-pages/pod8/fssync-debug_mode.pod | 99 + doc/man-pages/pod8/fssync-debug_move.pod | 86 + doc/man-pages/pod8/fssync-debug_offline.pod | 87 + doc/man-pages/pod8/fssync-debug_online.pod | 87 + doc/man-pages/pod8/fssync-debug_query.pod | 89 + doc/man-pages/pod8/fssync-debug_stats.pod | 123 + doc/man-pages/pod8/fssync-debug_vgcadd.pod | 93 + doc/man-pages/pod8/fssync-debug_vgcdel.pod | 94 + doc/man-pages/pod8/fssync-debug_vgcquery.pod | 94 + doc/man-pages/pod8/fssync-debug_vgcscan.pod | 81 + .../pod8/fssync-debug_vgcscanall.pod | 74 + doc/man-pages/pod8/fssync-debug_vnode.pod | 94 + doc/man-pages/pod8/fssync-debug_volop.pod | 93 + doc/man-pages/pod8/fstrace.pod | 91 + doc/man-pages/pod8/fstrace_apropos.pod | 75 + doc/man-pages/pod8/fstrace_clear.pod | 71 + doc/man-pages/pod8/fstrace_dump.pod | 249 + doc/man-pages/pod8/fstrace_help.pod | 95 + doc/man-pages/pod8/fstrace_lslog.pod | 116 + doc/man-pages/pod8/fstrace_lsset.pod | 92 + doc/man-pages/pod8/fstrace_setlog.pod | 78 + doc/man-pages/pod8/fstrace_setset.pod | 80 + doc/man-pages/pod8/ka-forwarder.pod | 85 + doc/man-pages/pod8/kadb_check.pod | 109 + doc/man-pages/pod8/kas.pod | 231 + doc/man-pages/pod8/kas_apropos.pod | 73 + doc/man-pages/pod8/kas_create.pod | 125 + doc/man-pages/pod8/kas_delete.pod | 106 + doc/man-pages/pod8/kas_examine.pod | 301 + doc/man-pages/pod8/kas_forgetticket.pod | 61 + doc/man-pages/pod8/kas_help.pod | 99 + doc/man-pages/pod8/kas_interactive.pod | 158 + doc/man-pages/pod8/kas_list.pod | 143 + doc/man-pages/pod8/kas_listtickets.pod | 115 + doc/man-pages/pod8/kas_noauthentication.pod | 67 + doc/man-pages/pod8/kas_quit.pod | 60 + doc/man-pages/pod8/kas_setfields.pod | 407 + doc/man-pages/pod8/kas_setpassword.pod | 172 + doc/man-pages/pod8/kas_statistics.pod | 150 + doc/man-pages/pod8/kas_stringtokey.pod | 101 + doc/man-pages/pod8/kas_unlock.pod | 106 + doc/man-pages/pod8/kaserver.pod | 216 + doc/man-pages/pod8/kdb.pod | 159 + doc/man-pages/pod8/kpwvalid.pod | 100 + doc/man-pages/pod8/prdb_check.pod | 95 + doc/man-pages/pod8/pt_util.pod | 185 + doc/man-pages/pod8/ptserver.pod | 235 + doc/man-pages/pod8/read_tape.pod | 108 + doc/man-pages/pod8/rmtsysd.pod | 41 + doc/man-pages/pod8/salvager.pod.in | 45 + doc/man-pages/pod8/salvageserver.pod | 329 + doc/man-pages/pod8/state_analyzer.pod | 186 + doc/man-pages/pod8/upclient.pod | 161 + doc/man-pages/pod8/upserver.pod | 130 + doc/man-pages/pod8/uss.pod | 132 + doc/man-pages/pod8/uss_add.pod | 339 + doc/man-pages/pod8/uss_apropos.pod | 81 + doc/man-pages/pod8/uss_bulk.pod | 160 + doc/man-pages/pod8/uss_delete.pod | 156 + doc/man-pages/pod8/uss_help.pod | 106 + doc/man-pages/pod8/vldb_check.pod | 124 + doc/man-pages/pod8/vldb_convert.pod | 135 + doc/man-pages/pod8/vlserver.pod | 246 + doc/man-pages/pod8/voldump.pod | 111 + doc/man-pages/pod8/volinfo.pod | 143 + doc/man-pages/pod8/volscan.pod | 349 + doc/man-pages/pod8/volserver.pod.in | 53 + doc/man-pages/pod8/vsys.pod | 51 + doc/man-pages/pod8/xfs_size_check.pod | 54 + doc/man-pages/style.css | 88 + doc/pdf/archov-doc.pdf | Bin 0 -> 199138 bytes doc/pdf/asrv-ispec.pdf | Bin 0 -> 204916 bytes doc/pdf/bsrv-spec.pdf | Bin 0 -> 323581 bytes doc/pdf/fscm-ispec.pdf | Bin 0 -> 568137 bytes doc/pdf/rx-spec.pdf | Bin 0 -> 625182 bytes doc/pdf/vvl-spec.pdf | Bin 0 -> 360869 bytes doc/protocol/bos-spec.h | 2476 +++++ doc/protocol/fs-cm-spec.h | 3981 +++++++ doc/protocol/rfc5864.txt | 587 + doc/protocol/rx-spec.h | 6419 +++++++++++ doc/protocol/vldb-vol-spec.h | 3627 +++++++ doc/txt/README | 13 + doc/txt/afs_rwlocks | 117 + doc/txt/arch-overview.h | 1224 +++ doc/txt/dafs-fsa.dot | 109 + doc/txt/dafs-overview.txt | 396 + doc/txt/dafs-vnode-fsa.dot | 89 + doc/txt/examples/CellAlias | 10 + doc/txt/file-reorg | 89 + doc/txt/fssync.txt | 253 + doc/txt/ka2heim.txt | 132 + doc/txt/linux-nfstrans | 270 + doc/txt/prdb.txt | 580 + doc/txt/rx-debug.txt | 329 + doc/txt/rx-spec.txt | 921 ++ doc/txt/ubik.txt | 1446 +++ doc/txt/vldb.txt | 570 + doc/txt/vm-integration | 105 + doc/txt/winnotes/afs-changes-since-1.2.txt | 5702 ++++++++++ doc/txt/winnotes/afs-integration.txt | 420 + doc/txt/winnotes/afs-issues.txt | 87 + doc/txt/winnotes/afsdb-freelance-notes | 290 + doc/txt/winnotes/performance.txt | 90 + doc/xml/.gitignore | 5 + doc/xml/AdminGuide/.gitignore | 17 + doc/xml/AdminGuide/Makefile.in | 63 + doc/xml/AdminGuide/NTMakefile | 100 + doc/xml/AdminGuide/auagd000.png | Bin 0 -> 55667 bytes doc/xml/AdminGuide/auagd000.xml | 107 + doc/xml/AdminGuide/auagd005.xml | 281 + doc/xml/AdminGuide/auagd006.xml | 1485 +++ doc/xml/AdminGuide/auagd007.xml | 5038 +++++++++ doc/xml/AdminGuide/auagd008.xml | 5562 ++++++++++ doc/xml/AdminGuide/auagd009.xml | 2978 ++++++ doc/xml/AdminGuide/auagd010.xml | 6901 ++++++++++++ doc/xml/AdminGuide/auagd011.xml | 4302 ++++++++ doc/xml/AdminGuide/auagd012.xml | 4620 ++++++++ doc/xml/AdminGuide/auagd013.xml | 3381 ++++++ doc/xml/AdminGuide/auagd014.xml | 1518 +++ doc/xml/AdminGuide/auagd015.xml | 4024 +++++++ doc/xml/AdminGuide/auagd017.xml | 4049 +++++++ doc/xml/AdminGuide/auagd018.xml | 2516 +++++ doc/xml/AdminGuide/auagd019.xml | 3136 ++++++ doc/xml/AdminGuide/auagd020.xml | 1706 +++ doc/xml/AdminGuide/auagd021.xml | 925 ++ doc/xml/AdminGuide/auagd022.xml | 1173 ++ doc/xml/AdminGuide/auagd023.xml | 457 + doc/xml/AdminGuide/auagd024.xml | 3645 +++++++ doc/xml/AdminGuide/auagd025.xml | 2084 ++++ doc/xml/AdminGuide/cachmgr.png | Bin 0 -> 13263 bytes doc/xml/AdminGuide/fserver1.png | Bin 0 -> 12313 bytes doc/xml/AdminGuide/fserver2.png | Bin 0 -> 12079 bytes doc/xml/AdminGuide/overview.png | Bin 0 -> 9459 bytes doc/xml/AdminGuide/scout1.png | Bin 0 -> 5515 bytes doc/xml/AdminGuide/scout2.png | Bin 0 -> 6113 bytes doc/xml/AdminGuide/scout3.png | Bin 0 -> 7086 bytes doc/xml/AdminGuide/scout4.png | Bin 0 -> 6014 bytes doc/xml/AdminGuide/vnode.png | Bin 0 -> 9029 bytes doc/xml/AdminRef/Makefile.in | 46 + doc/xml/AdminRef/auarf000.png | Bin 0 -> 58458 bytes doc/xml/AdminRef/auarf000.xml | 74 + doc/xml/AdminRef/generate-xml.pl | 37 + doc/xml/AdminRef/pod2refentry | 558 + doc/xml/AdminRef/preface.xml | 171 + doc/xml/QuickStartUnix/.gitignore | 14 + doc/xml/QuickStartUnix/Makefile.in | 61 + doc/xml/QuickStartUnix/NTMakefile | 83 + doc/xml/QuickStartUnix/appendix.xml | 1277 +++ doc/xml/QuickStartUnix/appendix_dafs.xml | 243 + doc/xml/QuickStartUnix/auqbg000.png | Bin 0 -> 59315 bytes doc/xml/QuickStartUnix/auqbg000.xml | 75 + doc/xml/QuickStartUnix/auqbg003.xml | 205 + doc/xml/QuickStartUnix/auqbg004.xml | 552 + doc/xml/QuickStartUnix/auqbg005.xml | 5253 +++++++++ doc/xml/QuickStartUnix/auqbg006.xml | 2568 +++++ doc/xml/QuickStartUnix/auqbg007.xml | 1878 ++++ doc/xml/QuickStartUnix/auqbg008.xml | 270 + doc/xml/ReleaseNotesWindows/.gitignore | 8 + doc/xml/ReleaseNotesWindows/NTMakefile | 75 + doc/xml/ReleaseNotesWindows/relnotes.xml | 5592 ++++++++++ doc/xml/ReleaseNotesWindows/relnotes00.jpg | Bin 0 -> 89966 bytes doc/xml/ReleaseNotesWindows/relnotes01.jpg | Bin 0 -> 78326 bytes doc/xml/ReleaseNotesWindows/relnotes02.jpg | Bin 0 -> 63399 bytes doc/xml/ReleaseNotesWindows/relnotes03.jpg | Bin 0 -> 5408 bytes doc/xml/UserGuide/.gitignore | 14 + doc/xml/UserGuide/Makefile.in | 61 + doc/xml/UserGuide/NTMakefile | 85 + doc/xml/UserGuide/auusg000.png | Bin 0 -> 50436 bytes doc/xml/UserGuide/auusg000.xml | 74 + doc/xml/UserGuide/auusg003.xml | 152 + doc/xml/UserGuide/auusg004.xml | 541 + doc/xml/UserGuide/auusg005.xml | 594 ++ doc/xml/UserGuide/auusg006.xml | 515 + doc/xml/UserGuide/auusg007.xml | 1606 +++ doc/xml/UserGuide/auusg008.xml | 1516 +++ doc/xml/UserGuide/auusg009.xml | 325 + doc/xml/UserGuide/auusg010.xml | 180 + doc/xml/UserGuide/auusg011.xml | 334 + doc/xml/UserGuide/auusg012.xml | 735 ++ doc/xml/banner.gif | Bin 0 -> 8323 bytes doc/xml/books.gif | Bin 0 -> 332 bytes doc/xml/down.gif | Bin 0 -> 269 bytes doc/xml/home.gif | Bin 0 -> 241 bytes doc/xml/index.gif | Bin 0 -> 241 bytes doc/xml/index.html | 55 + doc/xml/logo.jpg | Bin 0 -> 35661 bytes doc/xml/mobi-fixup.xsl.in | 36 + doc/xml/next.gif | Bin 0 -> 271 bytes doc/xml/prev.gif | Bin 0 -> 273 bytes doc/xml/up.gif | Bin 0 -> 268 bytes libafsdep | 11 + regen.sh | 62 + src/.gitignore | 6 + src/DOLASTCMP.BAT | 4 + src/JAVA/classes/.classpath | 6 + src/JAVA/classes/.gitignore | 6 + src/JAVA/classes/.project | 17 + src/JAVA/classes/ErrorMessages.properties | 910 ++ src/JAVA/classes/org/openafs/jafs/ACL.java | 876 ++ .../org/openafs/jafs/AFSException.java | 204 + .../org/openafs/jafs/AFSFileException.java | 195 + .../openafs/jafs/AFSSecurityException.java | 202 + src/JAVA/classes/org/openafs/jafs/Cell.java | 1876 ++++ .../classes/org/openafs/jafs/ErrorTable.java | 203 + src/JAVA/classes/org/openafs/jafs/File.java | 942 ++ .../org/openafs/jafs/FileInputStream.java | 167 + .../org/openafs/jafs/FileOutputStream.java | 217 + src/JAVA/classes/org/openafs/jafs/Group.java | 1278 +++ src/JAVA/classes/org/openafs/jafs/Key.java | 467 + .../classes/org/openafs/jafs/PTSEntry.java | 99 + .../classes/org/openafs/jafs/Partition.java | 1052 ++ .../classes/org/openafs/jafs/Process.java | 953 ++ src/JAVA/classes/org/openafs/jafs/Server.java | 2357 +++++ src/JAVA/classes/org/openafs/jafs/Token.java | 507 + src/JAVA/classes/org/openafs/jafs/User.java | 1948 ++++ .../classes/org/openafs/jafs/VersionInfo.java | 72 + src/JAVA/classes/org/openafs/jafs/Volume.java | 1394 +++ src/JAVA/classes/testAFS.java | 684 ++ src/JAVA/libjafs/ACL.c | 237 + src/JAVA/libjafs/AdminToken.c | 421 + src/JAVA/libjafs/Cell.c | 1484 +++ src/JAVA/libjafs/ChangeLog | 41 + src/JAVA/libjafs/Exceptions.h | 12 + src/JAVA/libjafs/File.c | 684 ++ src/JAVA/libjafs/FileInputStream.c | 152 + src/JAVA/libjafs/FileOutputStream.c | 179 + src/JAVA/libjafs/GetNativeString.c | 49 + src/JAVA/libjafs/GetNativeString.h | 6 + src/JAVA/libjafs/Group.c | 829 ++ src/JAVA/libjafs/Internal.c | 895 ++ src/JAVA/libjafs/Internal.h | 63 + src/JAVA/libjafs/JAFS_README | 105 + src/JAVA/libjafs/JAFS_Version.h | 10 + src/JAVA/libjafs/Key.c | 248 + src/JAVA/libjafs/Makefile.in | 275 + src/JAVA/libjafs/Partition.c | 482 + src/JAVA/libjafs/Process.c | 567 + src/JAVA/libjafs/README | 259 + src/JAVA/libjafs/Server.c | 1676 +++ src/JAVA/libjafs/User.c | 1483 +++ src/JAVA/libjafs/UserToken.c | 325 + src/JAVA/libjafs/Version2.c | 14 + src/JAVA/libjafs/VersionInfo.c | 14 + src/JAVA/libjafs/Volume.c | 901 ++ src/JAVA/libjafs/etc/CacheConfig | 16 + src/JAVA/libjafs/etc/CacheConfig.100MB | 16 + src/JAVA/libjafs/etc/CacheConfig.40MB | 16 + src/NTObjdir | 230 + src/SOURCE-MAP | 322 + src/TechNotes-JavaAPI | 88 + src/afs/.gitignore | 9 + src/afs/AIX/osi_assem.s | 43 + src/afs/AIX/osi_assem32.s | 43 + src/afs/AIX/osi_assem64.s | 43 + src/afs/AIX/osi_config.c | 426 + src/afs/AIX/osi_file.c | 274 + src/afs/AIX/osi_gcpags.c | 218 + src/afs/AIX/osi_groups.c | 205 + src/afs/AIX/osi_inode.c | 427 + src/afs/AIX/osi_inode.h | 43 + src/afs/AIX/osi_machdep.h | 89 + src/afs/AIX/osi_misc.c | 177 + src/afs/AIX/osi_prototypes.h | 16 + src/afs/AIX/osi_sleep.c | 214 + src/afs/AIX/osi_timeout.c | 343 + src/afs/AIX/osi_vcache.c | 77 + src/afs/AIX/osi_vfs.h | 42 + src/afs/AIX/osi_vfsops.c | 258 + src/afs/AIX/osi_vm.c | 160 + src/afs/AIX/osi_vnodeops.c | 2596 +++++ src/afs/DARWIN/osi_crypto.c | 34 + src/afs/DARWIN/osi_file.c | 412 + src/afs/DARWIN/osi_gcpags.c | 96 + src/afs/DARWIN/osi_groups.c | 171 + src/afs/DARWIN/osi_inode.c | 251 + src/afs/DARWIN/osi_inode.h | 42 + src/afs/DARWIN/osi_machdep.h | 259 + src/afs/DARWIN/osi_misc.c | 329 + src/afs/DARWIN/osi_module.c | 145 + src/afs/DARWIN/osi_prototypes.h | 40 + src/afs/DARWIN/osi_sleep.c | 330 + src/afs/DARWIN/osi_vcache.c | 112 + src/afs/DARWIN/osi_vfsops.c | 629 ++ src/afs/DARWIN/osi_vm.c | 207 + src/afs/DARWIN/osi_vnodeops.c | 2264 ++++ src/afs/DFBSD/osi_gcpags.c | 38 + src/afs/DFBSD/osi_inode.h | 0 src/afs/DFBSD/osi_prototypes.h | 17 + src/afs/FBSD/opt_posix.h | 2 + src/afs/FBSD/osi_crypto.c | 34 + src/afs/FBSD/osi_file.c | 258 + src/afs/FBSD/osi_gcpags.c | 68 + src/afs/FBSD/osi_groups.c | 142 + src/afs/FBSD/osi_inode.c | 296 + src/afs/FBSD/osi_inode.h | 70 + src/afs/FBSD/osi_machdep.h | 156 + src/afs/FBSD/osi_misc.c | 128 + src/afs/FBSD/osi_module.c | 88 + src/afs/FBSD/osi_prototypes.h | 34 + src/afs/FBSD/osi_sleep.c | 188 + src/afs/FBSD/osi_vcache.c | 110 + src/afs/FBSD/osi_vfsops.c | 407 + src/afs/FBSD/osi_vm.c | 256 + src/afs/FBSD/osi_vnodeops.c | 1615 +++ src/afs/HPUX/hpux_mod.modmeta | 8 + src/afs/HPUX/osi_debug.c | 26 + src/afs/HPUX/osi_file.c | 225 + src/afs/HPUX/osi_gcpags.c | 92 + src/afs/HPUX/osi_groups.c | 172 + src/afs/HPUX/osi_inode.c | 218 + src/afs/HPUX/osi_inode.h | 53 + src/afs/HPUX/osi_machdep.h | 125 + src/afs/HPUX/osi_misc.c | 40 + src/afs/HPUX/osi_prototypes.h | 9 + src/afs/HPUX/osi_sleep.c | 211 + src/afs/HPUX/osi_vcache.c | 52 + src/afs/HPUX/osi_vfs.h | 18 + src/afs/HPUX/osi_vfsops.c | 317 + src/afs/HPUX/osi_vm.c | 94 + src/afs/HPUX/osi_vnodeops.c | 2660 +++++ src/afs/IRIX/osi_crypto.c | 35 + src/afs/IRIX/osi_file.c | 224 + src/afs/IRIX/osi_gcpags.c | 82 + src/afs/IRIX/osi_groups.c | 353 + src/afs/IRIX/osi_idbg.c | 177 + src/afs/IRIX/osi_inode.c | 775 ++ src/afs/IRIX/osi_inode.h | 57 + src/afs/IRIX/osi_machdep.h | 393 + src/afs/IRIX/osi_misc.c | 157 + src/afs/IRIX/osi_prototypes.h | 13 + src/afs/IRIX/osi_sleep.c | 192 + src/afs/IRIX/osi_vcache.c | 116 + src/afs/IRIX/osi_vfs.h | 307 + src/afs/IRIX/osi_vfsops.c | 676 ++ src/afs/IRIX/osi_vm.c | 242 + src/afs/IRIX/osi_vnodeops.c | 1952 ++++ src/afs/LINUX/osi_alloc.c | 394 + src/afs/LINUX/osi_compat.h | 721 ++ src/afs/LINUX/osi_cred.c | 146 + src/afs/LINUX/osi_crypto.c | 34 + src/afs/LINUX/osi_export.c | 969 ++ src/afs/LINUX/osi_file.c | 525 + src/afs/LINUX/osi_flush.s | 41 + src/afs/LINUX/osi_gcpags.c | 119 + src/afs/LINUX/osi_groups.c | 649 ++ src/afs/LINUX/osi_inode.c | 45 + src/afs/LINUX/osi_inode.h | 0 src/afs/LINUX/osi_ioctl.c | 131 + src/afs/LINUX/osi_machdep.h | 424 + src/afs/LINUX/osi_misc.c | 178 + src/afs/LINUX/osi_module.c | 117 + src/afs/LINUX/osi_nfssrv.c | 263 + src/afs/LINUX/osi_pag_module.c | 136 + src/afs/LINUX/osi_pagecopy.c | 251 + src/afs/LINUX/osi_pagecopy.h | 43 + src/afs/LINUX/osi_probe.c | 1459 +++ src/afs/LINUX/osi_proc.c | 416 + src/afs/LINUX/osi_prototypes.h | 105 + src/afs/LINUX/osi_sleep.c | 250 + src/afs/LINUX/osi_syscall.c | 646 ++ src/afs/LINUX/osi_sysctl.c | 280 + src/afs/LINUX/osi_vcache.c | 238 + src/afs/LINUX/osi_vfs.h | 85 + src/afs/LINUX/osi_vfsops.c | 412 + src/afs/LINUX/osi_vm.c | 130 + src/afs/LINUX/osi_vnodeops.c | 3287 ++++++ src/afs/Makefile.in | 127 + src/afs/NBSD/osi_crypto.c | 44 + src/afs/NBSD/osi_file.c | 239 + src/afs/NBSD/osi_gcpags.c | 0 src/afs/NBSD/osi_groups.c | 142 + src/afs/NBSD/osi_inode.c | 8 + src/afs/NBSD/osi_inode.h | 10 + src/afs/NBSD/osi_kmod.c | 143 + src/afs/NBSD/osi_machdep.h | 215 + src/afs/NBSD/osi_misc.c | 102 + src/afs/NBSD/osi_prototypes.h | 9 + src/afs/NBSD/osi_sleep.c | 328 + src/afs/NBSD/osi_vcache.c | 76 + src/afs/NBSD/osi_vfs.h | 16 + src/afs/NBSD/osi_vfsops.c | 524 + src/afs/NBSD/osi_vm.c | 162 + src/afs/NBSD/osi_vnodeops.c | 1509 +++ src/afs/NTMakefile | 25 + src/afs/OBSD/osi_crypto.c | 34 + src/afs/OBSD/osi_file.c | 229 + src/afs/OBSD/osi_gcpags.c | 38 + src/afs/OBSD/osi_groups.c | 149 + src/afs/OBSD/osi_inode.h | 10 + src/afs/OBSD/osi_machdep.h | 247 + src/afs/OBSD/osi_misc.c | 187 + src/afs/OBSD/osi_prototypes.h | 9 + src/afs/OBSD/osi_sleep.c | 206 + src/afs/OBSD/osi_vcache.c | 66 + src/afs/OBSD/osi_vfsops.c | 503 + src/afs/OBSD/osi_vm.c | 113 + src/afs/OBSD/osi_vnodeops.c | 1150 ++ src/afs/SOLARIS/osi_crypto.c | 34 + src/afs/SOLARIS/osi_file.c | 430 + src/afs/SOLARIS/osi_gcpags.c | 49 + src/afs/SOLARIS/osi_groups.c | 277 + src/afs/SOLARIS/osi_inode.c | 355 + src/afs/SOLARIS/osi_inode.h | 45 + src/afs/SOLARIS/osi_ioctl.c | 220 + src/afs/SOLARIS/osi_machdep.h | 141 + src/afs/SOLARIS/osi_prototypes.h | 17 + src/afs/SOLARIS/osi_sleep.c | 201 + src/afs/SOLARIS/osi_vcache.c | 90 + src/afs/SOLARIS/osi_vfsops.c | 637 ++ src/afs/SOLARIS/osi_vm.c | 210 + src/afs/SOLARIS/osi_vnodeops.c | 1733 +++ src/afs/SUNOS/osi_inode.h | 1 + src/afs/UKERNEL/afs_usrops.c | 3851 +++++++ src/afs/UKERNEL/afs_usrops.h | 149 + src/afs/UKERNEL/afsd_uafs.c | 83 + src/afs/UKERNEL/afsincludes.h | 29 + src/afs/UKERNEL/osi_gcpags.c | 38 + src/afs/UKERNEL/osi_groups.c | 100 + src/afs/UKERNEL/osi_machdep.h | 91 + src/afs/UKERNEL/osi_prototypes.h | 31 + src/afs/UKERNEL/osi_vcache.c | 49 + src/afs/UKERNEL/osi_vfsops.c | 150 + src/afs/UKERNEL/osi_vm.c | 46 + src/afs/UKERNEL/osi_vnodeops.c | 74 + src/afs/UKERNEL/sysincludes.h | 1318 +++ src/afs/VNOPS/afs_vnop_access.c | 370 + src/afs/VNOPS/afs_vnop_attrs.c | 685 ++ src/afs/VNOPS/afs_vnop_create.c | 589 ++ src/afs/VNOPS/afs_vnop_dirops.c | 479 + src/afs/VNOPS/afs_vnop_fid.c | 154 + src/afs/VNOPS/afs_vnop_flock.c | 913 ++ src/afs/VNOPS/afs_vnop_link.c | 170 + src/afs/VNOPS/afs_vnop_lookup.c | 1973 ++++ src/afs/VNOPS/afs_vnop_open.c | 203 + src/afs/VNOPS/afs_vnop_read.c | 600 ++ src/afs/VNOPS/afs_vnop_readdir.c | 945 ++ src/afs/VNOPS/afs_vnop_remove.c | 467 + src/afs/VNOPS/afs_vnop_rename.c | 475 + src/afs/VNOPS/afs_vnop_strategy.c | 229 + src/afs/VNOPS/afs_vnop_symlink.c | 465 + src/afs/VNOPS/afs_vnop_write.c | 729 ++ src/afs/afs.h | 1625 +++ src/afs/afs_analyze.c | 852 ++ src/afs/afs_axscache.c | 186 + src/afs/afs_axscache.h | 49 + src/afs/afs_buffer.c | 599 ++ src/afs/afs_bypasscache.c | 660 ++ src/afs/afs_bypasscache.h | 143 + src/afs/afs_call.c | 1529 +++ src/afs/afs_callback.c | 1773 ++++ src/afs/afs_cbqueue.c | 403 + src/afs/afs_cbqueue.h | 24 + src/afs/afs_cell.c | 1219 +++ src/afs/afs_chunk.c | 27 + src/afs/afs_chunkops.h | 115 + src/afs/afs_conn.c | 733 ++ src/afs/afs_consts.h | 19 + src/afs/afs_daemons.c | 1185 +++ src/afs/afs_dcache.c | 3804 +++++++ src/afs/afs_disconnected.c | 1562 +++ src/afs/afs_dynroot.c | 918 ++ src/afs/afs_dynroot.h | 32 + src/afs/afs_error.c | 296 + src/afs/afs_exporter.c | 89 + src/afs/afs_fetchstore.c | 1213 +++ src/afs/afs_icl.c | 1461 +++ src/afs/afs_init.c | 881 ++ src/afs/afs_lock.c | 292 + src/afs/afs_mariner.c | 122 + src/afs/afs_memcache.c | 330 + src/afs/afs_nfsclnt.c | 655 ++ src/afs/afs_nfsdisp.c | 1620 +++ src/afs/afs_osi.c | 276 + src/afs/afs_osi.h | 457 + src/afs/afs_osi_alloc.c | 220 + src/afs/afs_osi_pag.c | 694 ++ src/afs/afs_osi_uio.c | 143 + src/afs/afs_osi_vget.c | 75 + src/afs/afs_osi_vm.c | 274 + src/afs/afs_osidnlc.c | 513 + src/afs/afs_osidnlc.h | 25 + src/afs/afs_pag_call.c | 529 + src/afs/afs_pag_cred.c | 418 + src/afs/afs_pioctl.c | 5603 ++++++++++ src/afs/afs_prototypes.h | 1449 +++ src/afs/afs_segments.c | 855 ++ src/afs/afs_server.c | 1885 ++++ src/afs/afs_stat.c | 90 + src/afs/afs_stats.h | 1195 +++ src/afs/afs_syscall.c | 879 ++ src/afs/afs_tokens.c | 495 + src/afs/afs_trace.et | 179 + src/afs/afs_user.c | 840 ++ src/afs/afs_util.c | 421 + src/afs/afs_util.h | 19 + src/afs/afs_vcache.c | 3277 ++++++ src/afs/afs_volume.c | 1314 +++ src/afs/afs_warn.c | 271 + src/afs/afsincludes.h | 65 + src/afs/discon.h | 71 + src/afs/exporter.h | 140 + src/afs/findlocks | 35 + src/afs/libafsdep | 4 + src/afs/lock.h | 414 + src/afs/nfsclient.h | 38 + src/afs/sysctl.h | 57 + src/afs/sysincludes.h | 461 + src/afs/unified_afs.et | 125 + src/afs/unified_afs.p.h | 377 + src/afs/voldefs.h | 54 + src/afs/volerrors.h | 56 + src/afsd/.gitignore | 8 + src/afsd/CellServDB | 665 ++ src/afsd/Makefile.in | 149 + src/afsd/afs.conf.linux | 104 + src/afsd/afs.hpux102.driver | 126 + src/afsd/afs.hpux1122.driver | 126 + src/afsd/afs.rc.alpha | 137 + src/afsd/afs.rc.alpha_dux40 | 175 + src/afsd/afs.rc.darwin | 216 + src/afsd/afs.rc.darwin.plist | 11 + src/afsd/afs.rc.fbsd | 74 + src/afsd/afs.rc.hpux10 | 146 + src/afsd/afs.rc.linux | 365 + src/afsd/afs.rc.obsd | 9 + src/afsd/afs.rc.sgi | 253 + src/afsd/afs.rc.sgi_ipnos | 175 + src/afsd/afs.rc.solaris.2.11 | 207 + src/afsd/afs.rc.solaris.2.8 | 192 + src/afsd/afs.rc.solaris.2.9 | 195 + src/afsd/afs_rtsymtab.pl.sgi_53 | 332 + src/afsd/afs_rtsymtab.pl.sgi_61 | 329 + src/afsd/afsd.c | 2878 +++++ src/afsd/afsd.h | 58 + src/afsd/afsd_fuse.c | 636 ++ src/afsd/afsd_kernel.c | 587 + src/afsd/rc.afs.rs_aix | 121 + src/afsd/rc.afsd.large | 12 + src/afsd/rc.afsd.medium | 11 + src/afsd/rc.afsd.small | 14 + src/afsd/rc.dkload.client.rs_aix | 24 + src/afsd/rc.dkload.server.rs_aix | 10 + src/afsd/vsys.c | 69 + src/afsinstall/bin/AFSinstall | 1532 +++ .../lib/InstallGuides/ALPHA_x/afsinstall.rc | 32 + .../lib/InstallGuides/ALPHA_x/bldkernel | 105 + .../lib/InstallGuides/ALPHA_x/build | 21 + .../lib/InstallGuides/ALPHA_x/installkernel | 15 + .../lib/InstallGuides/ALPHA_x/modkernel.skip | 0 src/afsinstall/lib/InstallGuides/ALPHA_x/rc | 16 + src/afsinstall/lib/InstallGuides/ALPHA_x/unix | 66 + .../lib/InstallGuides/ALPHA_x/vfsck | 18 + .../lib/InstallGuides/GENERIC/afsinstall.rc | 51 + .../lib/InstallGuides/GENERIC/clientconfig | 90 + .../lib/InstallGuides/GENERIC/dbserver | 24 + .../lib/InstallGuides/GENERIC/debug | 27 + .../lib/InstallGuides/GENERIC/fileserver | 24 + .../lib/InstallGuides/GENERIC/login | 15 + .../lib/InstallGuides/GENERIC/miscserver | 23 + .../lib/InstallGuides/GENERIC/other | 30 + src/afsinstall/lib/InstallGuides/GENERIC/rc | 63 + .../lib/InstallGuides/GENERIC/serveruser | 23 + .../lib/InstallGuides/GENERIC/tokens | 25 + src/afsinstall/lib/InstallGuides/GENERIC/unix | 23 + .../lib/InstallGuides/HP_UX1x/bldkernel | 45 + .../lib/InstallGuides/HP_UX1x/build | 25 + .../lib/InstallGuides/HP_UX1x/installkernel | 15 + .../lib/InstallGuides/HP_UX1x/modkernel.skip | 0 .../lib/InstallGuides/HPx00_UX9/modkernel | 28 + src/afsinstall/lib/InstallGuides/HPx00_UX9/rc | 74 + .../lib/InstallGuides/HPx00_UX9/unix | 71 + .../lib/InstallGuides/HPx00_UX9/vfsck | 16 + .../lib/InstallGuides/HPx_UX10x/afsinstall.rc | 32 + .../lib/InstallGuides/HPx_UX10x/bldkernel | 22 + .../lib/InstallGuides/HPx_UX10x/build | 29 + .../InstallGuides/HPx_UX10x/modkernel.skip | 0 src/afsinstall/lib/InstallGuides/HPx_UX10x/rc | 17 + .../lib/InstallGuides/HPx_UX10x/unix | 67 + .../lib/InstallGuides/HPx_UX10x/vfsck | 16 + .../lib/InstallGuides/RS_AIX3x/login | 20 + .../lib/InstallGuides/RS_AIX3x/modkernel | 32 + src/afsinstall/lib/InstallGuides/RS_AIX3x/rc | 72 + .../lib/InstallGuides/RS_AIX3x/unix | 70 + .../lib/InstallGuides/RS_AIX3x/vfsck | 14 + .../lib/InstallGuides/RS_AIX4x/login | 87 + .../lib/InstallGuides/RS_AIX4x/modkernel | 77 + src/afsinstall/lib/InstallGuides/RS_AIX4x/rc | 119 + .../lib/InstallGuides/RS_AIX4x/unix | 67 + .../lib/InstallGuides/RS_AIX4x/vfsck | 14 + .../lib/InstallGuides/SGI_5x/afsinstall.rc | 31 + .../lib/InstallGuides/SGI_5x/bldkernel | 49 + .../lib/InstallGuides/SGI_5x/modkernel | 50 + .../lib/InstallGuides/SGI_5x/vfsck.skip | 0 .../lib/InstallGuides/SGI_6x/bldkernel | 61 + .../lib/InstallGuides/SGI_6x/modkernel | 52 + .../lib/InstallGuides/SGI_6x/vfsck.skip | 0 src/afsinstall/lib/InstallGuides/SGI_x/build | 25 + .../lib/InstallGuides/SGI_x/dbserver | 23 + .../lib/InstallGuides/SGI_x/fileserver | 23 + .../lib/InstallGuides/SGI_x/installkernel | 17 + src/afsinstall/lib/InstallGuides/SGI_x/login | 15 + .../lib/InstallGuides/SGI_x/miscserver | 24 + src/afsinstall/lib/InstallGuides/SGI_x/rc | 17 + src/afsinstall/lib/InstallGuides/SGI_x/unix | 57 + .../lib/InstallGuides/SGI_x/vfsck.skip | 0 .../lib/InstallGuides/SUN4x_4x/bldkernel | 31 + .../lib/InstallGuides/SUN4x_4x/build | 44 + .../lib/InstallGuides/SUN4x_4x/installkernel | 23 + .../lib/InstallGuides/SUN4x_4x/modkernel | 35 + src/afsinstall/lib/InstallGuides/SUN4x_4x/rc | 84 + .../lib/InstallGuides/SUN4x_4x/unix | 66 + .../lib/InstallGuides/SUN4x_4x/vfsck | 17 + .../lib/InstallGuides/SUN4x_5x/bldkernel.skip | 0 .../lib/InstallGuides/SUN4x_5x/modkernel | 50 + src/afsinstall/lib/InstallGuides/SUN4x_5x/rc | 17 + .../lib/InstallGuides/SUN4x_5x/unix | 63 + .../lib/InstallGuides/SUN4x_5x/vfsck | 15 + .../lib/InstallGuides/alpha_dux40/bldkernel | 107 + .../lib/InstallGuides/alpha_dux40/login | 14 + .../lib/InstallGuides/alpha_dux40/unix | 47 + .../lib/InstallGuides/hp700_ux100/build | 29 + .../InstallGuides/hp700_ux100/installkernel | 15 + .../lib/InstallGuides/hp700_ux101/build | 29 + .../InstallGuides/hp700_ux101/installkernel | 15 + .../lib/InstallGuides/hp700_ux90/bldkernel | 22 + .../lib/InstallGuides/hp700_ux90/build | 25 + .../InstallGuides/hp700_ux90/installkernel | 15 + .../lib/InstallGuides/hp800_ux100/build | 29 + .../InstallGuides/hp800_ux100/installkernel | 15 + .../lib/InstallGuides/hp800_ux101/build | 29 + .../InstallGuides/hp800_ux101/installkernel | 15 + .../lib/InstallGuides/hp800_ux90/bldkernel | 22 + .../lib/InstallGuides/hp800_ux90/build | 26 + .../InstallGuides/hp800_ux90/installkernel | 15 + .../lib/InstallGuides/hp_ux102/bldkernel | 45 + .../lib/InstallGuides/hp_ux102/build | 25 + .../lib/InstallGuides/hp_ux102/installkernel | 15 + .../lib/InstallGuides/info/bldkernel.toc | 21 + .../lib/InstallGuides/info/build.toc | 22 + .../lib/InstallGuides/info/clientconfig.toc | 19 + .../lib/InstallGuides/info/dbserver.toc | 19 + .../lib/InstallGuides/info/debug.toc | 24 + .../lib/InstallGuides/info/fileserver.toc | 19 + src/afsinstall/lib/InstallGuides/info/gui.toc | 331 + .../lib/InstallGuides/info/installkernel.toc | 22 + .../lib/InstallGuides/info/login.toc | 21 + .../lib/InstallGuides/info/miscserver.toc | 18 + .../lib/InstallGuides/info/modkernel.toc | 20 + .../lib/InstallGuides/info/other.toc | 27 + src/afsinstall/lib/InstallGuides/info/rc.toc | 27 + .../lib/InstallGuides/info/serveruser.toc | 23 + .../lib/InstallGuides/info/tokens.toc | 21 + .../lib/InstallGuides/info/unix.toc | 20 + .../lib/InstallGuides/info/vfsck.toc | 18 + .../lib/InstallGuides/sgi_63/bldkernel | 43 + .../lib/InstallGuides/sgi_63/modkernel | 43 + .../lib/InstallGuides/sgi_63/vfsck.skip | 0 .../lib/InstallGuides/sgi_64/bldkernel | 37 + .../lib/InstallGuides/sgi_64/modkernel | 37 + .../lib/InstallGuides/sgi_64/vfsck.skip | 0 .../lib/InstallGuides/sun4x_56/login | 69 + .../lib/InstallGuides/sun4x_56/unix | 85 + .../lib/InstallGuides/sun4x_56/vfsck | 32 + src/afsinstall/lib/patch.pl | 635 ++ src/afsmonitor/.gitignore | 5 + src/afsmonitor/Makefile.in | 68 + src/afsmonitor/afsmon-labels.h | 1835 ++++ src/afsmonitor/afsmon-output.c | 1129 ++ src/afsmonitor/afsmon-parselog.c | 830 ++ src/afsmonitor/afsmon-win.c | 3190 ++++++ src/afsmonitor/afsmonitor.c | 4291 ++++++++ src/afsmonitor/afsmonitor.h | 114 + src/afsweb/Makefile.in | 240 + src/afsweb/README | 79 + src/afsweb/README.BETA1 | 127 + src/afsweb/README.BETA2 | 374 + src/afsweb/TestPlan.txt | 50 + src/afsweb/WebSecure_Design.txt | 138 + src/afsweb/afswsApache_config.sh | 1640 +++ src/afsweb/afswsNetscape_config.sh | 397 + src/afsweb/apache_afs_cache.c | 534 + src/afsweb/apache_afs_cache.h | 102 + src/afsweb/apache_afs_client.c | 1006 ++ src/afsweb/apache_afs_module.c | 403 + src/afsweb/apache_afs_plugin.c | 610 ++ src/afsweb/apache_afs_utils.c | 235 + src/afsweb/apache_afs_utils.h | 49 + src/afsweb/apache_afs_weblog.c | 259 + src/afsweb/apache_api.h | 60 + src/afsweb/apache_includes/1.2/alloc.h | 252 + src/afsweb/apache_includes/1.2/buff.h | 138 + src/afsweb/apache_includes/1.2/conf.h | 757 ++ .../apache_includes/1.2/http_conf_globals.h | 85 + src/afsweb/apache_includes/1.2/httpd.h | 765 ++ src/afsweb/apache_includes/1.3.1/alloc.h | 350 + src/afsweb/apache_includes/1.3.1/ap.h | 169 + src/afsweb/apache_includes/1.3.1/ap_compat.h | 418 + src/afsweb/apache_includes/1.3.1/ap_config.h | 1176 +++ .../apache_includes/1.3.1/ap_config_auto.h | 54 + src/afsweb/apache_includes/1.3.1/ap_ctype.h | 88 + src/afsweb/apache_includes/1.3.1/buff.h | 237 + .../apache_includes/1.3.1/http_conf_globals.h | 118 + src/afsweb/apache_includes/1.3.1/httpd.h | 1065 ++ src/afsweb/apache_includes/1.3.1/os.h | 127 + src/afsweb/apache_includes/1.3.1/util_uri.h | 135 + src/afsweb/apache_includes/1.3.6/alloc.h | 391 + src/afsweb/apache_includes/1.3.6/ap.h | 167 + src/afsweb/apache_includes/1.3.6/ap_compat.h | 423 + src/afsweb/apache_includes/1.3.6/ap_config.h | 1292 +++ .../apache_includes/1.3.6/ap_config_auto.h | 54 + src/afsweb/apache_includes/1.3.6/ap_ctype.h | 89 + src/afsweb/apache_includes/1.3.6/ap_mmn.h | 244 + src/afsweb/apache_includes/1.3.6/buff.h | 237 + .../apache_includes/1.3.6/http_conf_globals.h | 119 + src/afsweb/apache_includes/1.3.6/httpd.h | 1156 ++ src/afsweb/apache_includes/1.3.6/os-inline.c | 32 + src/afsweb/apache_includes/1.3.6/os.h | 144 + src/afsweb/apache_includes/1.3.6/util_uri.h | 135 + src/afsweb/apache_includes/alloc.h | 252 + src/afsweb/apache_includes/buff.h | 138 + src/afsweb/apache_includes/conf.h | 757 ++ .../apache_includes/http_conf_globals.h | 85 + src/afsweb/apache_includes/httpd.h | 765 ++ src/afsweb/nsafs.c | 2587 +++++ src/afsweb/nsafs.h | 55 + src/afsweb/securehash.c | 293 + src/afsweb/weblog.c | 518 + src/afsweb/weblog_errors.h | 41 + src/aklog/.gitignore | 8 + src/aklog/Makefile.in | 71 + src/aklog/add_etbl.c | 19 + src/aklog/akeyconvert.c | 470 + src/aklog/aklog.c | 2220 ++++ src/aklog/aklog.h | 77 + src/aklog/asetkey.c | 347 + src/aklog/klog.c | 744 ++ src/aklog/krb_util.c | 61 + src/aklog/linked_list.c | 170 + src/aklog/linked_list.h | 55 + src/aklog/skipwrap.c | 128 + src/aklog/skipwrap.h | 8 + src/audit/Audit | 0 src/audit/Makefile.in | 72 + src/audit/NTMakefile | 32 + src/audit/audit-api.h | 20 + src/audit/audit-file.c | 87 + src/audit/audit-sysvmq.c | 129 + src/audit/audit.c | 741 ++ src/audit/audit.h | 328 + src/audit/config.aix.sample | 51 + src/audit/events.aix.sample | 211 + src/audit/liboafs_audit.la.sym | 7 + src/audit/objects.aix.sample | 14 + src/auth/.gitignore | 11 + src/auth/Makefile.in | 189 + src/auth/NTMakefile | 149 + src/auth/acfg_errors.et | 24 + src/auth/auth.p.h | 57 + src/auth/authcon.c | 427 + src/auth/cellconfig.c | 1603 +++ src/auth/cellconfig.p.h | 314 + src/auth/copyauth.c | 86 + src/auth/internal.h | 10 + src/auth/keys.c | 1231 +++ src/auth/keys.h | 33 + src/auth/ktc.c | 1872 ++++ src/auth/ktc.h | 41 + src/auth/ktc_errors.et | 25 + src/auth/ktc_nt.c | 1124 ++ src/auth/libafsdep | 1 + src/auth/liboafs_auth.la.sym | 51 + src/auth/netrestrict.c | 570 + src/auth/realms.c | 601 ++ src/auth/setkey.c | 145 + src/auth/test/.gitignore | 3 + src/auth/test/Makefile.in | 37 + src/auth/test/NTMakefile | 63 + src/auth/test/ktctest.c | 255 + src/auth/test/testcellconf.c | 128 + src/auth/test/testnetrestrict.c | 125 + src/auth/token.c | 545 + src/auth/token.xg | 39 + src/auth/userok.c | 851 ++ src/auth/writeconfig.c | 182 + src/bozo/.gitignore | 12 + src/bozo/Makefile.in | 176 + src/bozo/NTMakefile | 168 + src/bozo/bnode.c | 1003 ++ src/bozo/bnode.p.h | 19 + src/bozo/bnode_internal.h | 134 + src/bozo/bos.c | 1958 ++++ src/bozo/bos.rc | 17 + src/bozo/bos_util.c | 199 + src/bozo/boserr.et | 27 + src/bozo/bosint.xg | 234 + src/bozo/bosoprocs.c | 1590 +++ src/bozo/bosprototypes.h | 60 + src/bozo/bosserver.c | 1266 +++ src/bozo/bosserver.rc | 17 + src/bozo/cronbnodeops.c | 329 + src/bozo/ezbnodeops.c | 250 + src/bozo/fsbnodeops.c | 1148 ++ src/bozo/smail-notifier.c | 231 + src/bozo/test/Makefile.in | 30 + src/bozo/test/testproc.c | 137 + src/bu_utils/.gitignore | 5 + src/bu_utils/Contents.Readme | 10 + src/bu_utils/Makefile.in | 37 + src/bu_utils/NTMakefile | 53 + src/bu_utils/fms.c | 282 + src/bu_utils/fms.doc | 25 + src/bu_utils/fms.rc | 17 + src/bubasics/.gitignore | 12 + src/bubasics/Makefile.in | 134 + src/bubasics/NTMakefile | 102 + src/bubasics/backmon.xg | 21 + src/bubasics/bubasics.h | 221 + src/bubasics/bumon.xg | 22 + src/bubasics/butc.xg | 259 + src/bubasics/butc_errs.et | 40 + src/bubasics/butm.p.h | 156 + src/bubasics/butm_errs.et | 34 + src/bubasics/butx_errs.et | 43 + src/bubasics/tcdata.p.h | 148 + src/bucoord/.gitignore | 7 + src/bucoord/Makefile.in | 125 + src/bucoord/NTMakefile | 139 + src/bucoord/backup.rc | 17 + src/bucoord/bc.p.h | 147 + src/bucoord/bc_status.c | 451 + src/bucoord/btest.c | 37 + src/bucoord/bucoord_errs.et | 38 + src/bucoord/bucoord_internal.h | 180 + src/bucoord/bucoord_prototypes.h | 62 + src/bucoord/commands.c | 3155 ++++++ src/bucoord/config.c | 149 + src/bucoord/dlq.c | 224 + src/bucoord/dsstub.c | 345 + src/bucoord/dsvs.c | 595 ++ src/bucoord/dump.c | 579 + src/bucoord/dump_sched.c | 578 + src/bucoord/error_macros.h | 20 + src/bucoord/main.c | 785 ++ src/bucoord/restore.c | 782 ++ src/bucoord/server.c | 29 + src/bucoord/status.c | 149 + src/bucoord/tape_hosts.c | 399 + src/bucoord/testcases | 44 + src/bucoord/ttest.c | 237 + src/bucoord/ubik_db_if.c | 1275 +++ src/bucoord/vol_sets.c | 697 ++ src/bucoord/volstub.c | 96 + src/budb/.gitignore | 8 + src/budb/Makefile.in | 158 + src/budb/NTMakefile | 142 + src/budb/budb.rg | 472 + src/budb/budb_client.h | 55 + src/budb/budb_errs.et | 59 + src/budb/budb_internal.h | 92 + src/budb/budb_prototypes.h | 26 + src/budb/buserver.rc | 17 + src/budb/database.c | 241 + src/budb/database.h | 330 + src/budb/db_alloc.c | 245 + src/budb/db_dump.c | 796 ++ src/budb/db_hash.c | 1210 +++ src/budb/db_lock.c | 230 + src/budb/db_lock.h | 20 + src/budb/db_text.c | 484 + src/budb/dbs_dump.c | 380 + src/budb/error_macros.h | 23 + src/budb/globals.h | 81 + src/budb/ol_verify.c | 1485 +++ src/budb/procs.c | 3842 +++++++ src/budb/server.c | 659 ++ src/budb/struct_ops.c | 648 ++ src/butc/.gitignore | 6 + src/butc/Makefile.in | 129 + src/butc/NTMakefile | 93 + src/butc/afsxbsa.c | 2904 +++++ src/butc/afsxbsa.h | 862 ++ src/butc/butc.rc | 17 + src/butc/butc_internal.h | 63 + src/butc/butc_prototypes.h | 41 + src/butc/butc_xbsa.c | 1088 ++ src/butc/butc_xbsa.h | 156 + src/butc/common.h | 38 + src/butc/config | 1 + src/butc/dbentries.c | 487 + src/butc/dump.c | 2199 ++++ src/butc/dumpScr | 16 + src/butc/error_macros.h | 45 + src/butc/list.c | 153 + src/butc/lwps.c | 2332 ++++ src/butc/read_tape.c | 562 + src/butc/recoverDb.c | 936 ++ src/butc/restoreScr | 15 + src/butc/tcmain.c | 1314 +++ src/butc/tcprocs.c | 820 ++ src/butc/tcstatus.c | 288 + src/butc/tcudbprocs.c | 1594 +++ src/butc/tdump.c | 79 + src/butc/test.c | 313 + src/butc/test_budb.c | 269 + src/butm/Makefile.in | 58 + src/butm/NTMakefile | 59 + src/butm/butm.vdoc | 124 + src/butm/butm_prototypes.h | 20 + src/butm/butm_test.c | 353 + src/butm/config | 1 + src/butm/error_macros.h | 18 + src/butm/file_tm.c | 1784 ++++ src/butm/test_ftm.c | 423 + src/cf/.gitignore | 5 + src/cf/abs-install.m4 | 13 + src/cf/afs-libtool.m4 | 30 + src/cf/autoheader.m4 | 61 + src/cf/bigendian.m4 | 56 + src/cf/bsd.m4 | 19 + src/cf/bswap.m4 | 31 + src/cf/c-atomic.m4 | 14 + src/cf/c-attribute.m4 | 27 + src/cf/c-pragma.m4 | 46 + src/cf/c-struct-label.m4 | 17 + src/cf/crosstools.m4 | 19 + src/cf/crypt.m4 | 5 + src/cf/ctf-tools.m4 | 38 + src/cf/curses.m4 | 99 + src/cf/dirent.m4 | 19 + src/cf/dirpaths.m4 | 42 + src/cf/doc.m4 | 25 + src/cf/flex.m4 | 8 + src/cf/functions.m4 | 38 + src/cf/fuse.m4 | 49 + src/cf/have-struct-field.m4 | 19 + src/cf/hcrypto.m4 | 117 + src/cf/headers.m4 | 114 + src/cf/hpux.m4 | 25 + src/cf/irix-test.m4 | 19 + src/cf/java.m4 | 4 + src/cf/lex.m4 | 5 + src/cf/libintl.m4 | 3 + src/cf/library.m4 | 56 + src/cf/lint.m4 | 6 + src/cf/linux-checks.m4 | 56 + src/cf/linux-guess-version.m4 | 12 + src/cf/linux-kernel-assorted.m4 | 79 + src/cf/linux-kernel-func.m4 | 154 + src/cf/linux-kernel-header.m4 | 12 + src/cf/linux-kernel-packaging.m4 | 8 + src/cf/linux-kernel-path.m4 | 69 + src/cf/linux-kernel-sig.m4 | 17 + src/cf/linux-kernel-struct.m4 | 55 + src/cf/linux-kernel-syscall-probe.m4 | 61 + src/cf/linux-kernel-type.m4 | 5 + src/cf/linux-test1.m4 | 167 + src/cf/linux-test3.m4 | 64 + src/cf/linux-test4.m4 | 851 ++ src/cf/linux-test5.m4 | 88 + src/cf/members.m4 | 4 + src/cf/options.m4 | 340 + src/cf/osconf.m4 | 746 ++ src/cf/ostype.m4 | 88 + src/cf/pkg.m4 | 157 + src/cf/pthread.m4 | 71 + src/cf/regex.m4 | 12 + src/cf/ressearch.m4 | 42 + src/cf/roken.m4 | 202 + src/cf/search-dirlist.m4 | 15 + src/cf/sizet.m4 | 29 + src/cf/socket.m4 | 33 + src/cf/solaris-cc.m4 | 15 + src/cf/solaris-dqrwlock.m4 | 18 + src/cf/solaris-fs-rolled.m4 | 16 + src/cf/solaris-mapaddr.m4 | 25 + src/cf/solaris-ostype.m4 | 10 + src/cf/solaris-renamepath.m4 | 35 + src/cf/solaris-solookup.m4 | 18 + src/cf/solaris-test1.m4 | 38 + src/cf/summary.m4 | 95 + src/cf/swig.m4 | 26 + src/cf/sys-resource.m4 | 6 + src/cf/sysname.m4 | 371 + src/cf/test_package.m4 | 83 + src/cf/tivoli.m4 | 46 + src/cf/topdirs.m4 | 20 + src/cf/types.m4 | 54 + src/cf/ucontext.m4 | 58 + src/cf/uuid.m4 | 6 + src/cf/variables.m4 | 26 + src/cmd/.gitignore | 6 + src/cmd/Makefile.in | 109 + src/cmd/NTMakefile | 62 + src/cmd/cmd.c | 1497 +++ src/cmd/cmd.p.h | 130 + src/cmd/cmd_errors.et | 24 + src/cmd/krb5_locl.h | 220 + src/cmd/liboafs_cmd.la.sym | 33 + src/cmd/test/.gitignore | 3 + src/cmd/test/Makefile.in | 33 + src/cmd/test/NTMakefile | 65 + src/cmd/test/ctest.c | 57 + src/cmd/test/dtest.c | 42 + src/cmd/test/itest.c | 88 + src/comerr/.gitignore | 7 + src/comerr/Makefile.in | 100 + src/comerr/NTMakefile | 88 + src/comerr/com_err.c | 76 + src/comerr/com_err.h | 41 + src/comerr/compile_et.c | 464 + src/comerr/compile_et.rc | 17 + src/comerr/compiler.h | 16 + src/comerr/error_msg.c | 282 + src/comerr/error_table.h | 37 + src/comerr/error_table.y | 396 + src/comerr/error_table_nt.c | 1206 +++ src/comerr/error_table_nt.h | 15 + src/comerr/et_lex.lex.l | 34 + src/comerr/et_lex.lex_nt.c | 1566 +++ src/comerr/et_name.c | 43 + src/comerr/internal.h | 11 + src/comerr/liboafs_comerr.la.sym | 10 + src/comerr/mit-sipb-cr.h | 18 + src/comerr/test/Makefile.in | 37 + src/comerr/test/NTMakefile | 41 + src/comerr/test/test.c | 53 + src/comerr/test/test1.et | 69 + src/comerr/test/test2.et | 9 + src/config/.gitignore | 24 + src/config/Makefile.component | 2 + src/config/Makefile.config.in | 321 + src/config/Makefile.in | 112 + src/config/Makefile.libtool.in | 12 + src/config/Makefile.lwp.in | 12 + src/config/Makefile.lwptool.in | 10 + src/config/Makefile.pthread.in | 14 + src/config/Makefile.version-CML.in | 30 + src/config/Makefile.version-NOCML.in | 33 + src/config/NTDllmap.txt | 140 + src/config/NTLang.bat | 200 + src/config/NTMakefile | 612 ++ src/config/NTMakefile.amd64_w2k | 587 + src/config/NTMakefile.i386_nt40 | 540 + src/config/NTMakefile.i386_w2k | 589 ++ src/config/NTMakefile.version-CML | 32 + src/config/NTMakefile.version-NOCML | 48 + src/config/NTVersioninfo.rc | 51 + src/config/afs_args.h | 318 + src/config/afs_sysnames.h | 401 + src/config/afsconfig-windows.h | 276 + src/config/cc-wrapper.in | 112 + src/config/config.c | 70 + src/config/icl.h | 273 + src/config/libafsdep | 10 + src/config/linux-version | 94 + src/config/lwptool | 103 + src/config/make_libafs_tree.pl | 236 + src/config/mc.c | 187 + src/config/mkvers.c | 388 + src/config/param.alpha_linux_26.h | 38 + src/config/param.alpha_nbsd15.h | 80 + src/config/param.alpha_nbsd16.h | 80 + src/config/param.amd64_fbsd_100.h | 82 + src/config/param.amd64_fbsd_101.h | 85 + src/config/param.amd64_fbsd_102.h | 88 + src/config/param.amd64_fbsd_103.h | 91 + src/config/param.amd64_fbsd_104.h | 94 + src/config/param.amd64_fbsd_110.h | 85 + src/config/param.amd64_fbsd_111.h | 97 + src/config/param.amd64_fbsd_120.h | 103 + src/config/param.amd64_fbsd_80.h | 55 + src/config/param.amd64_fbsd_81.h | 58 + src/config/param.amd64_fbsd_82.h | 61 + src/config/param.amd64_fbsd_83.h | 64 + src/config/param.amd64_fbsd_84.h | 67 + src/config/param.amd64_fbsd_90.h | 70 + src/config/param.amd64_fbsd_91.h | 73 + src/config/param.amd64_fbsd_92.h | 76 + src/config/param.amd64_fbsd_93.h | 79 + src/config/param.amd64_linux26.h | 42 + src/config/param.amd64_nbsd20.h | 21 + src/config/param.amd64_nbsd30.h | 22 + src/config/param.amd64_nbsd40.h | 22 + src/config/param.amd64_nbsd50.h | 22 + src/config/param.amd64_nbsd60.h | 22 + src/config/param.amd64_nbsd70.h | 22 + src/config/param.amd64_obsd36.h | 18 + src/config/param.amd64_obsd37.h | 18 + src/config/param.amd64_obsd38.h | 18 + src/config/param.amd64_obsd39.h | 19 + src/config/param.amd64_obsd40.h | 19 + src/config/param.amd64_obsd41.h | 19 + src/config/param.amd64_obsd42.h | 19 + src/config/param.amd64_obsd43.h | 19 + src/config/param.amd64_obsd44.h | 19 + src/config/param.amd64_obsd45.h | 19 + src/config/param.amd64_obsd46.h | 19 + src/config/param.amd64_obsd47.h | 19 + src/config/param.amd64_obsd48.h | 19 + src/config/param.amd64_obsd49.h | 19 + src/config/param.amd64_obsd50.h | 19 + src/config/param.amd64_obsd51.h | 19 + src/config/param.amd64_obsd52.h | 19 + src/config/param.amd64_obsd53.h | 19 + src/config/param.amd64_obsd54.h | 19 + src/config/param.amd64_w2k.h | 74 + src/config/param.arm64_linux26.h | 38 + src/config/param.arm_darwin_100.h | 262 + src/config/param.arm_linux26.h | 40 + src/config/param.generic_fbsd.h | 189 + src/config/param.hp_ux102.h | 162 + src/config/param.hp_ux110.h | 167 + src/config/param.hp_ux1123.h | 102 + src/config/param.hp_ux11i.h | 171 + src/config/param.i386_dfbsd_23.h | 172 + src/config/param.i386_fbsd_100.h | 86 + src/config/param.i386_fbsd_101.h | 89 + src/config/param.i386_fbsd_102.h | 92 + src/config/param.i386_fbsd_103.h | 95 + src/config/param.i386_fbsd_104.h | 98 + src/config/param.i386_fbsd_110.h | 92 + src/config/param.i386_fbsd_111.h | 101 + src/config/param.i386_fbsd_120.h | 107 + src/config/param.i386_fbsd_80.h | 59 + src/config/param.i386_fbsd_81.h | 62 + src/config/param.i386_fbsd_82.h | 65 + src/config/param.i386_fbsd_83.h | 68 + src/config/param.i386_fbsd_84.h | 71 + src/config/param.i386_fbsd_90.h | 74 + src/config/param.i386_fbsd_91.h | 77 + src/config/param.i386_fbsd_92.h | 80 + src/config/param.i386_fbsd_93.h | 83 + src/config/param.i386_linux26.h | 34 + src/config/param.i386_nbsd15.h | 82 + src/config/param.i386_nbsd16.h | 84 + src/config/param.i386_nbsd20.h | 21 + src/config/param.i386_nbsd21.h | 21 + src/config/param.i386_nbsd30.h | 21 + src/config/param.i386_nbsd40.h | 20 + src/config/param.i386_nbsd50.h | 20 + src/config/param.i386_nbsd60.h | 20 + src/config/param.i386_nbsd70.h | 20 + src/config/param.i386_nt40.h | 64 + src/config/param.i386_obsd31.h | 16 + src/config/param.i386_obsd32.h | 16 + src/config/param.i386_obsd33.h | 16 + src/config/param.i386_obsd34.h | 16 + src/config/param.i386_obsd35.h | 16 + src/config/param.i386_obsd36.h | 16 + src/config/param.i386_obsd37.h | 16 + src/config/param.i386_obsd38.h | 16 + src/config/param.i386_obsd39.h | 16 + src/config/param.i386_obsd40.h | 16 + src/config/param.i386_obsd41.h | 16 + src/config/param.i386_obsd42.h | 16 + src/config/param.i386_obsd43.h | 16 + src/config/param.i386_obsd44.h | 16 + src/config/param.i386_obsd45.h | 16 + src/config/param.i386_obsd46.h | 25 + src/config/param.i386_obsd47.h | 25 + src/config/param.i386_obsd48.h | 25 + src/config/param.i386_obsd49.h | 25 + src/config/param.i386_obsd50.h | 25 + src/config/param.i386_obsd51.h | 25 + src/config/param.i386_obsd52.h | 25 + src/config/param.i386_obsd53.h | 25 + src/config/param.i386_obsd54.h | 25 + src/config/param.i386_umlinux26.h | 34 + src/config/param.i386_w2k.h | 73 + src/config/param.i64_w2k.h | 76 + src/config/param.ia64_hpux1122.h | 103 + src/config/param.ia64_hpux1123.h | 104 + src/config/param.ia64_linux26.h | 42 + src/config/param.linux26.h | 123 + src/config/param.nbsd15.h | 117 + src/config/param.nbsd16.h | 118 + src/config/param.nbsd20.h | 160 + src/config/param.nbsd21.h | 160 + src/config/param.nbsd30.h | 156 + src/config/param.nbsd40.h | 166 + src/config/param.nbsd50.h | 165 + src/config/param.nbsd60.h | 166 + src/config/param.nbsd70.h | 169 + src/config/param.obsd31.h | 59 + src/config/param.obsd32.h | 58 + src/config/param.obsd33.h | 62 + src/config/param.obsd34.h | 62 + src/config/param.obsd35.h | 62 + src/config/param.obsd36.h | 64 + src/config/param.obsd37.h | 65 + src/config/param.obsd38.h | 66 + src/config/param.obsd39.h | 70 + src/config/param.obsd40.h | 66 + src/config/param.obsd41.h | 69 + src/config/param.obsd42.h | 74 + src/config/param.obsd43.h | 75 + src/config/param.obsd44.h | 76 + src/config/param.obsd45.h | 76 + src/config/param.obsd46.h | 81 + src/config/param.obsd47.h | 82 + src/config/param.obsd48.h | 79 + src/config/param.obsd49.h | 80 + src/config/param.obsd50.h | 81 + src/config/param.obsd51.h | 82 + src/config/param.obsd52.h | 83 + src/config/param.obsd53.h | 84 + src/config/param.obsd54.h | 85 + src/config/param.ppc64_linux26.h | 36 + src/config/param.ppc64le_linux26.h | 34 + src/config/param.ppc_darwin_70.h | 131 + src/config/param.ppc_darwin_80.h | 175 + src/config/param.ppc_darwin_90.h | 180 + src/config/param.ppc_linux26.h | 34 + src/config/param.ppc_nbsd16.h | 79 + src/config/param.ppc_nbsd20.h | 10 + src/config/param.rs_aix42.h | 165 + src/config/param.rs_aix51.h | 172 + src/config/param.rs_aix52.h | 173 + src/config/param.rs_aix53.h | 174 + src/config/param.rs_aix61.h | 175 + src/config/param.s390_linux26.h | 34 + src/config/param.s390x_linux26.h | 49 + src/config/param.sgi_65.h | 205 + src/config/param.sparc64_linux26.h | 48 + src/config/param.sparc_linux26.h | 53 + src/config/param.sun4x_510.h | 168 + src/config/param.sun4x_511.h | 174 + src/config/param.sun4x_58.h | 166 + src/config/param.sun4x_59.h | 168 + src/config/param.sunx86_510.h | 178 + src/config/param.sunx86_511.h | 183 + src/config/param.sunx86_58.h | 175 + src/config/param.sunx86_59.h | 179 + src/config/param.x86_darwin_100.h | 235 + src/config/param.x86_darwin_110.h | 240 + src/config/param.x86_darwin_120.h | 246 + src/config/param.x86_darwin_130.h | 252 + src/config/param.x86_darwin_140.h | 258 + src/config/param.x86_darwin_150.h | 264 + src/config/param.x86_darwin_160.h | 270 + src/config/param.x86_darwin_170.h | 276 + src/config/param.x86_darwin_180.h | 282 + src/config/param.x86_darwin_80.h | 176 + src/config/param.x86_darwin_90.h | 181 + src/config/permit_xprt.h | 12 + src/config/ranlib | 2 + src/config/shlib-build.in | 165 + src/config/shlib-install.in | 81 + src/config/stds.h | 328 + src/config/touch.c | 61 + src/config/util_cr.c | 698 ++ src/config/uvenus.h | 3 + src/config/venus.h | 115 + src/config/vioc.h | 112 + src/crypto/hcrypto/.gitignore | 4 + src/crypto/hcrypto/Makefile.in | 249 + src/crypto/hcrypto/NTMakefile | 111 + src/crypto/hcrypto/afshcrypto.def | 49 + src/crypto/hcrypto/afshcrypto.rc | 18 + src/crypto/hcrypto/config.h | 56 + src/crypto/hcrypto/engine.c | 24 + src/crypto/hcrypto/engine.h | 13 + src/crypto/hcrypto/getarg.h | 37 + src/crypto/hcrypto/heim_threads.h | 23 + src/crypto/hcrypto/kernel/alloc.c | 89 + src/crypto/hcrypto/kernel/assert.h | 1 + src/crypto/hcrypto/kernel/config.h | 116 + src/crypto/hcrypto/kernel/evp-algs.c | 198 + src/crypto/hcrypto/kernel/evp-hcrypto.h | 27 + src/crypto/hcrypto/kernel/heim_threads.h | 12 + src/crypto/hcrypto/kernel/krb5-types.h | 0 src/crypto/hcrypto/kernel/libafsdep | 14 + src/crypto/hcrypto/kernel/rand-timer.c | 58 + src/crypto/hcrypto/kernel/rand.c | 45 + src/crypto/hcrypto/kernel/roken.h | 0 src/crypto/hcrypto/kernel/stdio.h | 1 + src/crypto/hcrypto/kernel/stdlib.h | 1 + src/crypto/hcrypto/kernel/strcasecmp.c | 32 + src/crypto/hcrypto/kernel/string.h | 1 + src/crypto/hcrypto/krb5-types.h | 14 + src/crypto/hcrypto/libafshcrypto.la.sym | 47 + src/crypto/rfc3961/Makefile.in | 90 + src/crypto/rfc3961/NTMakefile | 68 + src/crypto/rfc3961/afsrfc3961.def | 16 + src/crypto/rfc3961/afsrfc3961.rc | 9 + src/crypto/rfc3961/context.c | 27 + src/crypto/rfc3961/copy.c | 30 + src/crypto/rfc3961/kernel/algs.c | 45 + src/crypto/rfc3961/kernel/libafsdep | 2 + src/crypto/rfc3961/kernel/random.c | 37 + src/crypto/rfc3961/krb5_locl.h | 338 + src/crypto/rfc3961/libafsdep | 4 + src/crypto/rfc3961/liboafs_rfc3961.la.sym | 27 + src/crypto/rfc3961/rfc3961.h | 245 + src/dir/Makefile.in | 62 + src/dir/NTMakefile | 71 + src/dir/buffer.c | 474 + src/dir/dir.c | 806 ++ src/dir/dir.h | 141 + src/dir/salvage.c | 529 + src/dir/test/.gitignore | 5 + src/dir/test/Makefile.in | 26 + src/dir/test/NTMakefile | 20 + src/dir/test/dtest.c | 298 + src/dir/test/physio.c | 139 + src/dir/test/test-salvage.c | 56 + src/dviced/.gitignore | 6 + src/dviced/Makefile.in | 166 + src/dviced/NTMakefile | 94 + src/dviced/dafileserver.rc | 17 + src/dvolser/.gitignore | 10 + src/dvolser/Makefile.in | 155 + src/dvolser/NTMakefile | 163 + src/dvolser/davolserver.rc | 17 + src/export/.gitignore | 8 + src/export/Makefile.in | 225 + src/export/README | 124 + src/export/cfgafs.c | 166 + src/export/cfgexport.c | 631 ++ src/export/export.c | 305 + src/export/export.h | 44 + src/export/export4-64.exp | 16 + src/export/export4.exp | 16 + src/export/export5-64.exp | 15 + src/export/export5.exp | 15 + src/export/extras.exp | 23 + src/export/sym.h | 50 + src/export/symtab.c | 148 + src/external/c-tap-harness-author | 1 + src/external/c-tap-harness-files | 11 + src/external/c-tap-harness-last | 1 + src/external/c-tap-harness/LICENSE | 138 + src/external/c-tap-harness/NEWS | 285 + src/external/c-tap-harness/README | 228 + src/external/c-tap-harness/tests/runtests.c | 1189 +++ src/external/c-tap-harness/tests/tap/basic.c | 629 ++ src/external/c-tap-harness/tests/tap/basic.h | 134 + src/external/c-tap-harness/tests/tap/float.c | 67 + src/external/c-tap-harness/tests/tap/float.h | 42 + .../c-tap-harness/tests/tap/libtap.sh | 246 + src/external/c-tap-harness/tests/tap/macros.h | 88 + src/external/heimdal-author | 1 + src/external/heimdal-files | 122 + src/external/heimdal-last | 1 + src/external/heimdal/hcrypto/aes.c | 144 + src/external/heimdal/hcrypto/aes.h | 83 + src/external/heimdal/hcrypto/camellia-ntt.c | 1469 +++ src/external/heimdal/hcrypto/camellia-ntt.h | 65 + src/external/heimdal/hcrypto/camellia.c | 116 + src/external/heimdal/hcrypto/camellia.h | 72 + src/external/heimdal/hcrypto/des-tables.h | 196 + src/external/heimdal/hcrypto/des.c | 1184 +++ src/external/heimdal/hcrypto/des.h | 146 + src/external/heimdal/hcrypto/evp-cc.c | 855 ++ src/external/heimdal/hcrypto/evp-cc.h | 98 + src/external/heimdal/hcrypto/evp-hcrypto.c | 857 ++ src/external/heimdal/hcrypto/evp-hcrypto.h | 103 + src/external/heimdal/hcrypto/evp.c | 1495 +++ src/external/heimdal/hcrypto/evp.h | 329 + src/external/heimdal/hcrypto/hash.h | 75 + src/external/heimdal/hcrypto/hmac.c | 162 + src/external/heimdal/hcrypto/hmac.h | 82 + src/external/heimdal/hcrypto/md2.c | 134 + src/external/heimdal/hcrypto/md2.h | 63 + src/external/heimdal/hcrypto/md4.c | 246 + src/external/heimdal/hcrypto/md4.h | 62 + src/external/heimdal/hcrypto/md5.c | 270 + src/external/heimdal/hcrypto/md5.h | 62 + src/external/heimdal/hcrypto/pkcs5.c | 128 + src/external/heimdal/hcrypto/rand-egd.c | 260 + src/external/heimdal/hcrypto/rand-fortuna.c | 655 ++ src/external/heimdal/hcrypto/rand-timer.c | 202 + src/external/heimdal/hcrypto/rand-unix.c | 166 + src/external/heimdal/hcrypto/rand-w32.c | 152 + src/external/heimdal/hcrypto/rand.c | 403 + src/external/heimdal/hcrypto/rand.h | 109 + src/external/heimdal/hcrypto/randi.h | 50 + src/external/heimdal/hcrypto/rc2.c | 242 + src/external/heimdal/hcrypto/rc2.h | 71 + src/external/heimdal/hcrypto/rc4.c | 78 + src/external/heimdal/hcrypto/rc4.h | 46 + .../heimdal/hcrypto/rijndael-alg-fst.c | 1224 +++ .../heimdal/hcrypto/rijndael-alg-fst.h | 46 + src/external/heimdal/hcrypto/rnd_keys.c | 139 + src/external/heimdal/hcrypto/sha.c | 296 + src/external/heimdal/hcrypto/sha.h | 115 + src/external/heimdal/hcrypto/sha256.c | 229 + src/external/heimdal/hcrypto/sha512.c | 293 + src/external/heimdal/hcrypto/test_cipher.c | 367 + src/external/heimdal/hcrypto/ui.c | 217 + src/external/heimdal/hcrypto/ui.h | 44 + src/external/heimdal/hcrypto/validate.c | 307 + src/external/heimdal/krb5/config_file.c | 1320 +++ src/external/heimdal/krb5/crypto-aes.c | 172 + src/external/heimdal/krb5/crypto-algs.c | 87 + src/external/heimdal/krb5/crypto-arcfour.c | 348 + src/external/heimdal/krb5/crypto-des-common.c | 148 + src/external/heimdal/krb5/crypto-des.c | 383 + src/external/heimdal/krb5/crypto-des3.c | 230 + src/external/heimdal/krb5/crypto-evp.c | 180 + src/external/heimdal/krb5/crypto-null.c | 101 + src/external/heimdal/krb5/crypto-rand.c | 113 + src/external/heimdal/krb5/crypto.c | 2648 +++++ src/external/heimdal/krb5/crypto.h | 180 + src/external/heimdal/krb5/data.c | 226 + src/external/heimdal/krb5/expand_path.c | 599 ++ src/external/heimdal/krb5/keyblock.c | 202 + src/external/heimdal/krb5/n-fold.c | 150 + src/external/heimdal/krb5/store-int.c | 58 + src/external/heimdal/roken/base64.c | 142 + src/external/heimdal/roken/base64.h | 55 + src/external/heimdal/roken/cloexec.c | 66 + src/external/heimdal/roken/ct.c | 64 + src/external/heimdal/roken/daemon.c | 80 + src/external/heimdal/roken/ecalloc.c | 53 + src/external/heimdal/roken/emalloc.c | 53 + src/external/heimdal/roken/erealloc.c | 53 + src/external/heimdal/roken/err.c | 45 + src/external/heimdal/roken/err.hin | 90 + src/external/heimdal/roken/errx.c | 45 + src/external/heimdal/roken/flock.c | 153 + src/external/heimdal/roken/freeaddrinfo.c | 54 + src/external/heimdal/roken/gai_strerror.c | 74 + src/external/heimdal/roken/getaddinfo.c | 414 + src/external/heimdal/roken/getdtablesize.c | 99 + src/external/heimdal/roken/getnameinfo.c | 124 + src/external/heimdal/roken/getopt.c | 124 + src/external/heimdal/roken/getprogname.c | 48 + src/external/heimdal/roken/gettimeofday.c | 78 + src/external/heimdal/roken/hex.c | 104 + src/external/heimdal/roken/hex.h | 57 + src/external/heimdal/roken/inet_ntop.c | 151 + src/external/heimdal/roken/inet_pton.c | 116 + src/external/heimdal/roken/issuid.c | 56 + src/external/heimdal/roken/localtime_r.c | 60 + src/external/heimdal/roken/mkdir.c | 52 + src/external/heimdal/roken/mkstemp.c | 82 + src/external/heimdal/roken/net_read.c | 118 + src/external/heimdal/roken/net_write.c | 107 + src/external/heimdal/roken/realloc.c | 47 + src/external/heimdal/roken/rename.c | 49 + src/external/heimdal/roken/roken-common.h | 510 + src/external/heimdal/roken/roken.h.in | 1222 +++ src/external/heimdal/roken/search.hin | 44 + src/external/heimdal/roken/setenv.c | 74 + src/external/heimdal/roken/setprogname.c | 91 + src/external/heimdal/roken/snprintf.c | 700 ++ src/external/heimdal/roken/socket.c | 358 + src/external/heimdal/roken/strerror_r.c | 84 + src/external/heimdal/roken/strlcat.c | 60 + src/external/heimdal/roken/strlcpy.c | 73 + src/external/heimdal/roken/strnlen.c | 46 + src/external/heimdal/roken/strsep.c | 58 + src/external/heimdal/roken/tsearch.c | 180 + src/external/heimdal/roken/unsetenv.c | 68 + src/external/heimdal/roken/verr.c | 44 + src/external/heimdal/roken/verrx.c | 44 + src/external/heimdal/roken/vsyslog.c | 113 + src/external/heimdal/roken/vwarn.c | 43 + src/external/heimdal/roken/vwarnx.c | 43 + src/external/heimdal/roken/warn.c | 45 + src/external/heimdal/roken/warnerr.c | 58 + src/external/heimdal/roken/warnx.c | 45 + src/external/heimdal/roken/win32_alloc.c | 76 + src/external/heimdal/roken/write_pid.c | 90 + src/external/import-external-git.pl | 267 + src/external/libafsdep | 26 + src/external/rra-c-util-author | 1 + src/external/rra-c-util-files | 7 + src/external/rra-c-util-last | 1 + src/external/rra-c-util/LICENSE | 284 + src/external/rra-c-util/m4/gssapi.m4 | 219 + src/external/rra-c-util/m4/krb5-config.m4 | 101 + src/external/rra-c-util/m4/krb5.m4 | 308 + src/external/rra-c-util/m4/lib-depends.m4 | 28 + src/external/rra-c-util/m4/lib-pathname.m4 | 61 + src/external/rra-c-util/m4/pam-const.m4 | 39 + src/finale/.gitignore | 5 + src/finale/Makefile.in | 86 + src/finale/NTMakefile | 50 + src/finale/test.output | 10 + src/finale/translate_et.c | 77 + src/finale/translate_et.rc | 17 + src/finale/translate_et_nt.c | 45 + src/fsint/.gitignore | 10 + src/fsint/Makefile.in | 160 + src/fsint/NTMakefile | 110 + src/fsint/afsaux.c | 167 + src/fsint/afscbint.xg | 120 + src/fsint/afsint.xg | 785 ++ src/fsint/common.xg | 188 + src/fsint/liboafs_fsint.la.sym | 55 + src/fsint/pagcb.xg | 58 + src/fsprobe/.gitignore | 5 + src/fsprobe/Makefile.in | 77 + src/fsprobe/fsprobe.c | 833 ++ src/fsprobe/fsprobe.h | 155 + src/fsprobe/fsprobe_callback.c | 754 ++ src/fsprobe/fsprobe_test.c | 238 + src/gtx/.gitignore | 5 + src/gtx/Makefile.in | 234 + src/gtx/X11windows.c | 579 + src/gtx/cb_test.c | 182 + src/gtx/curses_test.c | 64 + src/gtx/curseswindows.c | 772 ++ src/gtx/dumbwindows.c | 606 ++ src/gtx/frame.c | 533 + src/gtx/gtxX11win.h | 226 + src/gtx/gtxcurseswin.h | 243 + src/gtx/gtxdumbwin.h | 225 + src/gtx/gtxframe.h | 68 + src/gtx/gtxinput.h | 13 + src/gtx/gtxkeymap.h | 56 + src/gtx/gtxlightobj.h | 128 + src/gtx/gtxobjdict.h | 73 + src/gtx/gtxobjects.h | 132 + src/gtx/gtxtest.c | 253 + src/gtx/gtxtextcb.h | 134 + src/gtx/gtxtextobj.h | 155 + src/gtx/gtxwindows.h | 192 + src/gtx/input.c | 105 + src/gtx/keymap.c | 158 + src/gtx/lightobject.c | 275 + src/gtx/objdict.c | 174 + src/gtx/object_test.c | 457 + src/gtx/objects.c | 298 + src/gtx/screen_test.c | 295 + src/gtx/textcb.c | 600 ++ src/gtx/textobject.c | 592 ++ src/gtx/windows.c | 138 + src/helper-splint.sh.in | 27 + src/kauth/.gitignore | 18 + src/kauth/AuthServer.bib | 26 + src/kauth/AuthServer.mss | 1356 +++ src/kauth/Makefile.in | 336 + src/kauth/NTMakefile | 256 + src/kauth/admin_tools.c | 1841 ++++ src/kauth/authclient.c | 775 ++ src/kauth/client.c | 323 + src/kauth/crypt.c | 982 ++ src/kauth/crypt.h | 6 + src/kauth/decode_ticket.c | 79 + src/kauth/ka-forwarder.c | 257 + src/kauth/ka_util.c | 272 + src/kauth/kaaux.c | 72 + src/kauth/kaauxdb.c | 194 + src/kauth/kadatabase.c | 949 ++ src/kauth/kadatabase.h | 40 + src/kauth/kaerrors.et | 59 + src/kauth/kalocalcell.c | 122 + src/kauth/kalog.c | 194 + src/kauth/kalog.h | 58 + src/kauth/kaopcodes.h | 58 + src/kauth/kaport.h | 33 + src/kauth/kaprocs.c | 2350 +++++ src/kauth/kaprocs.h | 23 + src/kauth/kas.c | 106 + src/kauth/kas.doc | 124 + src/kauth/kas.rc | 17 + src/kauth/kaserver.c | 501 + src/kauth/kaserver.h | 173 + src/kauth/kaserver.rc | 17 + src/kauth/katoken.c | 326 + src/kauth/kauth.rg | 371 + src/kauth/kauth_internal.h | 100 + src/kauth/kautils.c | 185 + src/kauth/kautils.p.h | 288 + src/kauth/kdb.c | 132 + src/kauth/kkids.c | 472 + src/kauth/kkids.h | 17 + src/kauth/klog.c | 392 + src/kauth/knfs.c | 454 + src/kauth/kpasswd.c | 553 + src/kauth/kpasswd.rc | 17 + src/kauth/kpwvalid.c | 45 + src/kauth/krb_tf.c | 149 + src/kauth/krb_udp.c | 1075 ++ src/kauth/liboafs_kauth.la.sym | 16 + src/kauth/manyklog.c | 390 + src/kauth/prot.h | 92 + src/kauth/rebuild.c | 642 ++ src/kauth/test/Makefile.in | 81 + src/kauth/test/NTMakefile | 119 + src/kauth/test/background.c | 28 + src/kauth/test/multiklog.c | 374 + src/kauth/test/test_badtix.c | 669 ++ src/kauth/test/test_date.c | 49 + src/kauth/test/test_getticket.c | 524 + src/kauth/test/test_interim_ktc.c | 954 ++ src/kauth/test/test_kaserver | 72 + src/kauth/test/test_rxkad_free.c | 395 + src/kauth/test/testlocking.README | 28 + src/kauth/test/testlocking.boundaries.tcl | 130 + src/kauth/test/testlocking.general.tcl | 50 + src/kauth/test/testlocking.utils.tcl | 288 + src/kauth/user.c | 278 + src/kauth/user_nt.c | 967 ++ src/kopenafs/.gitignore | 7 + src/kopenafs/Makefile.in | 113 + src/kopenafs/kopenafs.c | 189 + src/kopenafs/kopenafs.h | 59 + src/kopenafs/libkopenafs.la.sym | 5 + src/kopenafs/test-setpag.c | 40 + src/kopenafs/test-unlog.c | 31 + src/libacl/Makefile.in | 74 + src/libacl/NTMakefile | 55 + src/libacl/acl.h | 85 + src/libacl/aclprocs.c | 488 + src/libacl/liboafs_acl.la.sym | 9 + src/libacl/netprocs.c | 125 + src/libacl/prs_fs.h | 40 + src/libacl/test/Makefile.in | 35 + src/libacl/test/acltest.c | 274 + src/libadmin/Makefile.in | 26 + src/libadmin/NTMakefile | 24 + src/libadmin/adminutil/.gitignore | 22 + src/libadmin/adminutil/Makefile.in | 226 + src/libadmin/adminutil/NTMakefile | 217 + src/libadmin/adminutil/afs_AdminBosErrors.et | 61 + src/libadmin/adminutil/afs_AdminCfgErrors.et | 86 + .../adminutil/afs_AdminClientErrors.et | 47 + .../adminutil/afs_AdminCommonErrors.et | 37 + src/libadmin/adminutil/afs_AdminErrors.h | 24 + src/libadmin/adminutil/afs_AdminInternal.h | 114 + src/libadmin/adminutil/afs_AdminKasErrors.et | 35 + src/libadmin/adminutil/afs_AdminMiscErrors.et | 13 + src/libadmin/adminutil/afs_AdminPtsErrors.et | 37 + src/libadmin/adminutil/afs_AdminUtilErrors.et | 25 + src/libadmin/adminutil/afs_AdminVosErrors.et | 65 + src/libadmin/adminutil/afs_utilAdmin.c | 3111 ++++++ src/libadmin/adminutil/afs_utilAdmin.h | 178 + src/libadmin/adminutil/afsadminutil.def | 29 + src/libadmin/adminutil/afsadminutil.rc | 18 + src/libadmin/adminutil/mapfile | 48 + src/libadmin/afs_Admin.h | 91 + src/libadmin/bos/Makefile.in | 55 + src/libadmin/bos/NTMakefile | 69 + src/libadmin/bos/afs_bosAdmin.c | 3574 +++++++ src/libadmin/bos/afs_bosAdmin.h | 347 + src/libadmin/bos/afsbosadmin.rc | 18 + src/libadmin/bos/bosadmin.def | 55 + src/libadmin/bos/mapfile | 78 + src/libadmin/cfg/Makefile.in | 64 + src/libadmin/cfg/NTMakefile | 107 + src/libadmin/cfg/afs_cfgAdmin.h | 349 + src/libadmin/cfg/afscfgadmin.def | 57 + src/libadmin/cfg/afscfgadmin.rc | 18 + src/libadmin/cfg/cfgclient.c | 740 ++ src/libadmin/cfg/cfgdb.c | 1115 ++ src/libadmin/cfg/cfghost.c | 1292 +++ src/libadmin/cfg/cfginternal.c | 1036 ++ src/libadmin/cfg/cfginternal.h | 97 + src/libadmin/cfg/cfgservers.c | 2101 ++++ src/libadmin/cfg/mapfile | 69 + src/libadmin/cfg/test/Makefile.in | 35 + src/libadmin/cfg/test/NTMakefile | 30 + src/libadmin/cfg/test/cfgtest.c | 714 ++ src/libadmin/client/Makefile.in | 45 + src/libadmin/client/NTMakefile | 51 + src/libadmin/client/afs_clientAdmin.c | 2804 +++++ src/libadmin/client/afs_clientAdmin.h | 176 + src/libadmin/client/afsclientadmin.rc | 18 + src/libadmin/client/clientadmin.def | 25 + src/libadmin/client/mapfile | 39 + src/libadmin/kas/Makefile.in | 61 + src/libadmin/kas/NTMakefile | 66 + src/libadmin/kas/afs_kasAdmin.c | 1853 ++++ src/libadmin/kas/afs_kasAdmin.h | 241 + src/libadmin/kas/afskasadmin.rc | 18 + src/libadmin/kas/kasadmin.def | 28 + src/libadmin/kas/mapfile | 30 + src/libadmin/pts/Makefile.in | 58 + src/libadmin/pts/NTMakefile | 71 + src/libadmin/pts/afs_ptsAdmin.c | 3381 ++++++ src/libadmin/pts/afs_ptsAdmin.h | 199 + src/libadmin/pts/afsptsadmin.rc | 18 + src/libadmin/pts/mapfile | 39 + src/libadmin/pts/ptsadmin.def | 31 + src/libadmin/samples/.gitignore | 25 + src/libadmin/samples/Makefile.in | 149 + src/libadmin/samples/cm_client_config.c | 122 + src/libadmin/samples/cm_list_cells.c | 128 + src/libadmin/samples/cm_local_cell.c | 111 + src/libadmin/samples/cm_server_prefs.c | 127 + src/libadmin/samples/rxdebug_basic_stats.c | 104 + src/libadmin/samples/rxdebug_conns.c | 166 + src/libadmin/samples/rxdebug_peers.c | 146 + src/libadmin/samples/rxdebug_rx_stats.c | 161 + .../samples/rxdebug_supported_stats.c | 108 + src/libadmin/samples/rxdebug_version.c | 97 + src/libadmin/samples/rxstat_clear_peer.c | 125 + src/libadmin/samples/rxstat_clear_process.c | 125 + src/libadmin/samples/rxstat_disable_peer.c | 124 + src/libadmin/samples/rxstat_disable_process.c | 124 + src/libadmin/samples/rxstat_enable_peer.c | 124 + src/libadmin/samples/rxstat_enable_process.c | 123 + src/libadmin/samples/rxstat_get_peer.c | 274 + src/libadmin/samples/rxstat_get_process.c | 266 + src/libadmin/samples/rxstat_get_version.c | 110 + src/libadmin/samples/rxstat_query_peer.c | 121 + src/libadmin/samples/rxstat_query_process.c | 123 + src/libadmin/test/.gitignore | 5 + src/libadmin/test/Makefile.in | 53 + src/libadmin/test/NTMakefile | 44 + src/libadmin/test/afscp.c | 228 + src/libadmin/test/bos.c | 2132 ++++ src/libadmin/test/bos.h | 37 + src/libadmin/test/client.c | 1361 +++ src/libadmin/test/client.h | 36 + src/libadmin/test/common.h | 44 + src/libadmin/test/kas.c | 840 ++ src/libadmin/test/kas.h | 42 + src/libadmin/test/pts.c | 696 ++ src/libadmin/test/pts.h | 33 + src/libadmin/test/util.c | 104 + src/libadmin/test/util.h | 50 + src/libadmin/test/vos.c | 2121 ++++ src/libadmin/test/vos.h | 36 + src/libadmin/vos/Makefile.in | 85 + src/libadmin/vos/NTMakefile | 95 + src/libadmin/vos/afs_vosAdmin.c | 4623 ++++++++ src/libadmin/vos/afs_vosAdmin.h | 483 + src/libadmin/vos/afsvosadmin.rc | 18 + src/libadmin/vos/lockprocs.c | 190 + src/libadmin/vos/lockprocs.h | 57 + src/libadmin/vos/mapfile | 58 + src/libadmin/vos/vosadmin.def | 49 + src/libadmin/vos/vosutils.c | 707 ++ src/libadmin/vos/vosutils.h | 54 + src/libadmin/vos/vsprocs.c | 4104 +++++++ src/libadmin/vos/vsprocs.h | 136 + src/libafs/.gitignore | 32 + src/libafs/Makefile.common.in | 724 ++ src/libafs/Makefile.extradefs | 8 + src/libafs/MakefileProto.AIX.in | 233 + src/libafs/MakefileProto.DARWIN.in | 187 + src/libafs/MakefileProto.DFBSD.in | 108 + src/libafs/MakefileProto.DUX.in | 112 + src/libafs/MakefileProto.FBSD.in | 108 + src/libafs/MakefileProto.HPUX.in | 271 + src/libafs/MakefileProto.IRIX.in | 509 + src/libafs/MakefileProto.LINUX.in | 397 + src/libafs/MakefileProto.NBSD.in | 122 + src/libafs/MakefileProto.OBSD.in | 99 + src/libafs/MakefileProto.SOLARIS.in | 157 + src/libafs/afs.arm_darwin_100.plist.in | 33 + src/libafs/afs.ppc_darwin_12.plist.in | 31 + src/libafs/afs.ppc_darwin_13.plist.in | 31 + src/libafs/afs.ppc_darwin_14.plist.in | 31 + src/libafs/afs.ppc_darwin_60.plist.in | 31 + src/libafs/afs.ppc_darwin_70.plist.in | 31 + src/libafs/afs.ppc_darwin_80.plist.in | 33 + src/libafs/afs.ppc_darwin_90.plist.in | 33 + src/libafs/afs.shutdown | 1 + src/libafs/afs.startup | 3 + src/libafs/afs.x86_darwin_100.plist.in | 33 + src/libafs/afs.x86_darwin_110.plist.in | 33 + src/libafs/afs.x86_darwin_120.plist.in | 33 + src/libafs/afs.x86_darwin_130.plist.in | 33 + src/libafs/afs.x86_darwin_140.plist.in | 33 + src/libafs/afs.x86_darwin_150.plist.in | 33 + src/libafs/afs.x86_darwin_160.plist.in | 33 + src/libafs/afs.x86_darwin_170.plist.in | 33 + src/libafs/afs.x86_darwin_180.plist.in | 33 + src/libafs/afs.x86_darwin_80.plist.in | 33 + src/libafs/afs.x86_darwin_90.plist.in | 33 + src/libafs/libafsdep | 9 + src/libafs/make_kbuild_makefile.pl | 169 + src/libafs/sgi_master | 8 + src/libafs/sgi_system | 1 + src/libafsauthent/Makefile.in | 71 + src/libafsauthent/NTMakefile | 144 + src/libafsauthent/README | 24 + src/libafsauthent/afsauthent.def | 211 + src/libafsauthent/afsauthent.exp | 56 + src/libafsauthent/afsauthent.rc | 18 + src/libafsauthent/libafsauthent.la.sym | 156 + src/libafsauthent/mapfile | 89 + src/libafscp/Makefile.in | 66 + src/libafscp/NTMakefile | 56 + src/libafscp/afscp.h | 203 + src/libafscp/afscp_acl.c | 111 + src/libafscp/afscp_callback.c | 747 ++ src/libafscp/afscp_dir.c | 761 ++ src/libafscp/afscp_dirops.c | 317 + src/libafscp/afscp_fid.c | 387 + src/libafscp/afscp_file.c | 188 + src/libafscp/afscp_init.c | 95 + src/libafscp/afscp_internal.h | 24 + src/libafscp/afscp_server.c | 481 + src/libafscp/afscp_util.c | 357 + src/libafscp/afscp_volume.c | 334 + src/libafsdep | 14 + src/libafsrpc/Makefile.in | 86 + src/libafsrpc/NTMakefile | 114 + src/libafsrpc/afsrpc.def | 365 + src/libafsrpc/afsrpc.exp | 171 + src/libafsrpc/afsrpc.rc | 18 + src/libafsrpc/libafsrpc.la.sym | 189 + src/libuafs/.gitignore | 28 + src/libuafs/Makefile.common.in | 553 + src/libuafs/MakefileProto.AIX.in | 36 + src/libuafs/MakefileProto.DARWIN.in | 25 + src/libuafs/MakefileProto.DFBSD.in | 25 + src/libuafs/MakefileProto.DUX.in | 24 + src/libuafs/MakefileProto.FBSD.in | 25 + src/libuafs/MakefileProto.HPUX.in | 30 + src/libuafs/MakefileProto.IRIX.in | 23 + src/libuafs/MakefileProto.LINUX.in | 29 + src/libuafs/MakefileProto.NBSD.in | 25 + src/libuafs/MakefileProto.OBSD.in | 25 + src/libuafs/MakefileProto.SOLARIS.in | 22 + src/libuafs/README | 47 + src/libuafs/afsload/README | 69 + src/libuafs/afsload/afsload | 63 + src/libuafs/afsload/afsload.pod | 114 + src/libuafs/afsload/afsload_check.pl | 31 + src/libuafs/afsload/afsload_run.pl | 149 + src/libuafs/afsload/examples/large.conf | 60 + src/libuafs/afsload/examples/simple.conf | 16 + src/libuafs/afsload/lib/AFS/Load/Action.pm | 1371 +++ src/libuafs/afsload/lib/AFS/Load/Config.pm | 438 + src/libuafs/libuafs.la.sym | 47 + src/libuafs/linktest.c | 46 + src/libuafs/make_h_tree | 28 + src/libuafs/ukernel_swig.i | 268 + src/log/.gitignore | 10 + src/log/Makefile.in | 108 + src/log/kseal.c | 105 + src/log/pagsh.c | 70 + src/log/test/Makefile.in | 36 + src/log/test/gettoktest.c | 67 + src/log/test/testlog.c | 339 + src/log/test/unlogtest.d | 137 + src/log/tokens.c | 118 + src/log/unlog.c | 280 + src/lwp/Makefile.in | 222 + src/lwp/NTMakefile | 52 + src/lwp/fasttime.c | 123 + src/lwp/iomgr.c | 985 ++ src/lwp/liboafs_lwpcompat.la.sym | 9 + src/lwp/lock.c | 212 + src/lwp/lock.h | 257 + src/lwp/lwp.c | 1252 +++ src/lwp/lwp.h | 295 + src/lwp/lwp_elf.h | 63 + src/lwp/lwp_nt.c | 672 ++ src/lwp/process.amd64.s | 164 + src/lwp/process.c | 247 + src/lwp/process.default.s | 1305 +++ src/lwp/process.i386.s | 84 + src/lwp/process.s.hpux | 156 + src/lwp/rw.c | 247 + src/lwp/test/Makefile.in | 41 + src/lwp/test/NTMakefile | 34 + src/lwp/test/selclient.c | 334 + src/lwp/test/selserver.c | 422 + src/lwp/test/selsubs.c | 169 + src/lwp/test/seltest.h | 51 + src/lwp/test/test.c | 56 + src/lwp/test/test_key.c | 212 + src/lwp/test/testlwp.c | 646 ++ src/lwp/test/testtime.c | 37 + src/lwp/threadname.c | 119 + src/lwp/timer.c | 281 + src/lwp/timer.h | 50 + src/lwp/waitkey.c | 278 + src/mkdest.pl | 78 + src/ntbuild.bat | 173 + src/opr/Makefile.in | 104 + src/opr/NTMakefile | 62 + src/opr/assert.c | 42 + src/opr/casestrcpy.c | 115 + src/opr/dict.c | 63 + src/opr/dict.h | 59 + src/opr/ffs.h | 117 + src/opr/fmt.c | 142 + src/opr/fmt.h | 42 + src/opr/jhash.h | 170 + src/opr/libafsdep | 2 + src/opr/liboafs_opr.la.sym | 19 + src/opr/lockstub.h | 51 + src/opr/opr.h | 78 + src/opr/opr_assert.h | 6 + src/opr/opr_lock.h | 90 + src/opr/opr_time.h | 129 + src/opr/proc.c | 62 + src/opr/proc.h | 8 + src/opr/queue.h | 256 + src/opr/rbtree.c | 445 + src/opr/rbtree.h | 32 + src/opr/softsig.c | 168 + src/opr/softsig.h | 31 + src/opr/uuid.c | 168 + src/opr/uuid.h | 38 + src/packaging/HP-UX/data/depot.copyright | 3 + src/packaging/HP-UX/data/depot.description | 3 + src/packaging/HP-UX/data/fileset.description | 8 + .../HP-UX/data/openafs-clnt.description | 8 + .../HP-UX/data/openafs-krn.description | 8 + .../HP-UX/data/openafs-run.description | 8 + .../HP-UX/data/openafs-srv.description | 8 + src/packaging/HP-UX/data/product.README | 6 + src/packaging/HP-UX/data/product.copyright | 3 + src/packaging/HP-UX/data/product.description | 6 + .../HP-UX/data/subproduct.description | 8 + src/packaging/HP-UX/data/vendor.description | 3 + .../HP-UX/files/usr/vice/etc/SuidCells | 5 + .../HP-UX/files/usr/vice/etc/cacheinfo | 1 + .../HP-UX/psf-1.2.10-transarc-paths-11.00 | 590 ++ .../HP-UX/psf-1.2.10-transarc-paths-11.11 | 591 ++ .../HP-UX/psf-1.2.10-transarc-paths-11.22 | 548 + .../HP-UX/scripts/openafs-clnt.checkinstall | 45 + .../HP-UX/scripts/openafs-clnt.configure | 47 + .../HP-UX/scripts/openafs-clnt.preinstall | 49 + .../HP-UX/scripts/openafs-clnt.preremove | 35 + .../HP-UX/scripts/openafs-clnt.unconfigure | 31 + .../HP-UX/scripts/openafs-eng-man.configure | 32 + .../HP-UX/scripts/openafs-eng-man.unconfigure | 31 + .../HP-UX/scripts/openafs-krn.checkremove | 39 + .../HP-UX/scripts/openafs-krn.configure | 50 + .../HP-UX/scripts/openafs-krn.postinstall | 49 + .../HP-UX/scripts/openafs-krn.unconfigure | 44 + .../HP-UX/scripts/openafs-krn.verify | 53 + .../HP-UX/scripts/openafs-srv.checkremove | 0 .../HP-UX/scripts/openafs-srv.configure | 48 + .../HP-UX/scripts/openafs-srv.postremove | 48 + .../HP-UX/scripts/openafs-srv.preinstall | 43 + .../HP-UX/scripts/openafs-srv.preremove | 42 + .../HP-UX/scripts/openafs-srv.subscript | 0 .../HP-UX/scripts/openafs-srv.unconfigure | 34 + .../HP-UX/scripts/openafs-srv.verify | 0 src/packaging/HP-UX/scripts/openafs.configure | 49 + .../HP-UX/scripts/openafs.postremove | 46 + .../HP-UX/scripts/openafs.unconfigure | 53 + src/packaging/MacOS/.gitignore | 17 + src/packaging/MacOS/2.0.txt | 367 + src/packaging/MacOS/CellServDB.list | 14 + src/packaging/MacOS/DS_Store | Bin 0 -> 12292 bytes src/packaging/MacOS/Distribution.xml.in | 48 + src/packaging/MacOS/InstallationCheck.10 | 19 + src/packaging/MacOS/InstallationCheck.11 | 19 + src/packaging/MacOS/InstallationCheck.12 | 19 + src/packaging/MacOS/InstallationCheck.13 | 19 + src/packaging/MacOS/InstallationCheck.14 | 19 + src/packaging/MacOS/InstallationCheck.15 | 19 + src/packaging/MacOS/InstallationCheck.16 | 19 + src/packaging/MacOS/InstallationCheck.17 | 19 + src/packaging/MacOS/InstallationCheck.18 | 19 + src/packaging/MacOS/InstallationCheck.7 | 19 + src/packaging/MacOS/InstallationCheck.8 | 19 + src/packaging/MacOS/InstallationCheck.9 | 19 + .../MacOS/InstallationCheck.strings.10 | 1 + .../MacOS/InstallationCheck.strings.11 | 1 + .../MacOS/InstallationCheck.strings.12 | 1 + .../MacOS/InstallationCheck.strings.13 | 1 + .../MacOS/InstallationCheck.strings.14 | 1 + .../MacOS/InstallationCheck.strings.15 | 1 + .../MacOS/InstallationCheck.strings.16 | 1 + .../MacOS/InstallationCheck.strings.17 | 1 + .../MacOS/InstallationCheck.strings.18 | 1 + .../MacOS/InstallationCheck.strings.7 | 1 + .../MacOS/InstallationCheck.strings.8 | 1 + .../MacOS/InstallationCheck.strings.9 | 1 + src/packaging/MacOS/License.rtf | 249 + .../MacOS/OpenAFS-debug.Description.plist.in | 14 + .../MacOS/OpenAFS-debug.Info.plist.in | 46 + .../MacOS/OpenAFS.Description.plist.in | 14 + src/packaging/MacOS/OpenAFS.Info.plist.in | 46 + src/packaging/MacOS/OpenAFS.info.in | 18 + src/packaging/MacOS/OpenAFS.post_install | 138 + src/packaging/MacOS/OpenAFS.pre_upgrade | 48 + src/packaging/MacOS/ReadMe.rtf.10 | 7 + src/packaging/MacOS/ReadMe.rtf.11 | 7 + src/packaging/MacOS/ReadMe.rtf.12 | 7 + src/packaging/MacOS/ReadMe.rtf.13 | 7 + src/packaging/MacOS/ReadMe.rtf.14 | 7 + src/packaging/MacOS/ReadMe.rtf.15 | 7 + src/packaging/MacOS/ReadMe.rtf.16 | 7 + src/packaging/MacOS/ReadMe.rtf.17 | 7 + src/packaging/MacOS/ReadMe.rtf.18 | 7 + src/packaging/MacOS/ReadMe.rtf.7 | 7 + src/packaging/MacOS/ReadMe.rtf.8 | 8 + src/packaging/MacOS/ReadMe.rtf.9 | 7 + src/packaging/MacOS/Uninstall | 415 + src/packaging/MacOS/Uninstall.14.15 | 357 + src/packaging/MacOS/afs.conf | 106 + src/packaging/MacOS/afslogo.jpg | Bin 0 -> 39085 bytes src/packaging/MacOS/background.jpg | Bin 0 -> 31389 bytes src/packaging/MacOS/buildpkg.sh.in | 325 + src/packaging/MacOS/conclusion.txt | 3 + src/packaging/MacOS/csrvdbmerge.pl | 91 + src/packaging/MacOS/decode-panic | 554 + src/packaging/MacOS/krb5-weak.conf | 2 + src/packaging/MacOS/openafs.launchd.plist | 17 + src/packaging/MacOS/openafs.launchdaemon | 19 + src/packaging/MacOS/pkgbuild.sh.in | 507 + src/packaging/MacOS/settings.plist | 16 + src/packaging/MacOS/universal.sh | 23 + src/packaging/OpenBSD/buildpkg.sh | 36 + src/packaging/OpenBSD/desc | 1 + src/packaging/OpenBSD/packinglist | 6 + src/packaging/OpenBSD/postinstall | 31 + src/packaging/README | 6 + src/packaging/RedHat/.gitignore | 5 + src/packaging/RedHat/RPM-build-notes | 35 + src/packaging/RedHat/makesrpm.pl | 182 + src/packaging/RedHat/mockbuild.pl | 427 + .../RedHat/openafs-1.4.0-kmodule26.patch | 17 + src/packaging/RedHat/openafs-LICENSE.Sun | 9 + src/packaging/RedHat/openafs-README | 53 + src/packaging/RedHat/openafs-SuidCells | 5 + src/packaging/RedHat/openafs-ThisCell | 1 + src/packaging/RedHat/openafs-buildall.sh | 110 + src/packaging/RedHat/openafs-buildfedora.pl | 49 + src/packaging/RedHat/openafs-cacheinfo | 1 + src/packaging/RedHat/openafs-client.init | 98 + src/packaging/RedHat/openafs-client.modules | 4 + src/packaging/RedHat/openafs-client.service | 22 + src/packaging/RedHat/openafs-kmodtool | 221 + src/packaging/RedHat/openafs-kvers-is.sh | 59 + src/packaging/RedHat/openafs-makesrc.sh | 34 + src/packaging/RedHat/openafs-server.init | 97 + src/packaging/RedHat/openafs-server.service | 11 + src/packaging/RedHat/openafs.spec.in | 1620 +++ src/packaging/RedHat/openafs.sysconfig | 5 + src/pam/.gitignore | 6 + src/pam/Makefile.in | 121 + src/pam/afs_account.c | 20 + src/pam/afs_auth.c | 423 + src/pam/afs_message.c | 119 + src/pam/afs_message.h | 66 + src/pam/afs_pam_msg.c | 90 + src/pam/afs_pam_msg.h | 20 + src/pam/afs_password.c | 309 + src/pam/afs_session.c | 104 + src/pam/afs_setcred.c | 359 + src/pam/afs_util.c | 190 + src/pam/afs_util.h | 43 + src/pam/pam_afs.5 | 158 + src/pam/pam_afs.hp | 6 + src/pam/pam_afs.map | 12 + src/pam/test_pam.c | 167 + src/platform/AIX/Makefile.in | 14 + src/platform/DARWIN/.gitignore | 6 + src/platform/DARWIN/AFSPreference/.gitignore | 7 + .../AFSBackgrounder/AFSBackgrounderDelegate.h | 75 + .../AFSBackgrounder/AFSBackgrounderDelegate.m | 588 ++ .../AFSMenuCredentialContoller.h | 24 + .../AFSMenuCredentialContoller.m | 59 + .../AFSBackgrounder/AFSMenuExtra.h | 56 + .../AFSBackgrounder/AFSMenuExtra.m | 315 + .../AFSBackgrounder/AFSMenuExtraView.h | 24 + .../AFSBackgrounder/AFSMenuExtraView.m | 100 + .../CredentialWindowController.h | 30 + .../CredentialWindowController.m | 69 + .../AFSPreference/AFSBackgrounder/main.m | 14 + .../resource/AFSBackounderMainMenu.xib | 294 + .../resource/CredentialWindow.nib/classes.nib | 62 + .../resource/CredentialWindow.nib/info.nib | 20 + .../CredentialWindow.nib/keyedobjects.nib | Bin 0 -> 5498 bytes .../AFSBackgrounder/resource/Info.plist | 26 + .../AFSBackgrounder/resource/hasToken.png | Bin 0 -> 3679 bytes .../AFSBackgrounder/resource/noToken.png | Bin 0 -> 4066 bytes .../AFSBackgrounder/resource/version.plist | 16 + .../AFSPreference/AFSCommanderIcon.icns | Bin 0 -> 130674 bytes .../DARWIN/AFSPreference/AFSCommanderPref.h | 169 + .../DARWIN/AFSPreference/AFSCommanderPref.m | 1323 +++ .../AFSPreference/AFSCommander_Prefix.pch | 9 + .../AFSPreference/AFSMenuExtra-Info.plist | 22 + .../DARWIN/AFSPreference/AFSPropertyManager.h | 403 + .../DARWIN/AFSPreference/AFSPropertyManager.m | 1391 +++ src/platform/DARWIN/AFSPreference/AuthUtil.h | 29 + src/platform/DARWIN/AFSPreference/AuthUtil.m | 186 + src/platform/DARWIN/AFSPreference/CellIp.h | 23 + src/platform/DARWIN/AFSPreference/CellIp.m | 76 + .../DARWIN/AFSPreference/DBCellElement.h | 134 + .../DARWIN/AFSPreference/DBCellElement.m | 143 + .../DARWIN/AFSPreference/DialogUtility.h | 16 + .../DARWIN/AFSPreference/DialogUtility.m | 27 + .../English.lproj/CredentialPanel.xib | 710 ++ .../English.lproj/InfoPlist.strings | Bin 0 -> 204 bytes .../AFSPreference/English.lproj/IpPanel.xib | 1313 +++ .../English.lproj/Localizable.strings | 50 + .../English.lproj/OpenAFSPreference.xib | 6271 +++++++++++ .../English.lproj/SymLinkEdit.xib | 728 ++ src/platform/DARWIN/AFSPreference/FileUtil.h | 24 + src/platform/DARWIN/AFSPreference/FileUtil.m | 91 + src/platform/DARWIN/AFSPreference/Info.plist | 34 + .../DARWIN/AFSPreference/InfoController.h | 21 + .../DARWIN/AFSPreference/InfoController.m | 41 + .../AFSPreference/IpConfiguratorCommander.h | 42 + .../AFSPreference/IpConfiguratorCommander.m | 229 + src/platform/DARWIN/AFSPreference/Krb5Util.h | 18 + src/platform/DARWIN/AFSPreference/Krb5Util.m | 198 + .../AFSPreference/LynkCreationController.h | 23 + .../AFSPreference/LynkCreationController.m | 72 + .../DARWIN/AFSPreference/NSString+search.h | 28 + .../DARWIN/AFSPreference/NSString+search.m | 26 + .../OpenAFS.xcodeproj/bisegni.mode1 | 1439 +++ .../OpenAFS.xcodeproj/project.pbxproj | 1104 ++ .../DARWIN/AFSPreference/PListManager.h | 90 + .../DARWIN/AFSPreference/PListManager.m | 356 + .../DARWIN/AFSPreference/SystemUIPlugin.h | 220 + src/platform/DARWIN/AFSPreference/TaskUtil.h | 20 + src/platform/DARWIN/AFSPreference/TaskUtil.m | 149 + src/platform/DARWIN/AFSPreference/TestLib.m | 35 + .../AFSPreference/TokenCredentialController.h | 32 + .../AFSPreference/TokenCredentialController.m | 68 + .../DARWIN/AFSPreference/ViewUtility.h | 16 + .../DARWIN/AFSPreference/ViewUtility.m | 29 + .../DARWIN/AFSPreference/afscommlogo.png | Bin 0 -> 8019 bytes src/platform/DARWIN/AFSPreference/afshlp.m | 11 + src/platform/DARWIN/AFSPreference/afslogo.psd | Bin 0 -> 428255 bytes src/platform/DARWIN/AFSPreference/afsltd.m | 85 + src/platform/DARWIN/AFSPreference/global.h | 74 + src/platform/DARWIN/AFSPreference/license.rtf | 10 + .../DARWIN/AFSPreference/portability.h | 14 + .../DARWIN/AklogAuthPlugin/.gitignore | 5 + .../AklogAuthPlugin.xcodeproj/project.pbxproj | 208 + .../AklogAuthPlugin_Prefix.pch | 3 + .../DARWIN/AklogAuthPlugin/Info.plist | 26 + src/platform/DARWIN/AklogAuthPlugin/README | 74 + src/platform/DARWIN/AklogAuthPlugin/aklog.c | 212 + src/platform/DARWIN/Makefile.in | 95 + src/platform/DARWIN/afscell/.gitignore | 5 + .../afscell/English.lproj/InfoPlist.strings | Bin 0 -> 274 bytes .../afscell/English.lproj/Localizable.strings | Bin 0 -> 194 bytes .../English.lproj/afscell.nib/classes.nib | 70 + .../English.lproj/afscell.nib/info.nib | 20 + .../afscell.nib/keyedobjects.nib | Bin 0 -> 4566 bytes src/platform/DARWIN/afscell/Info.plist | 32 + .../DARWIN/afscell/InstallerSections.plist | 17 + .../afscell/afscell.xcodeproj/project.pbxproj | 297 + src/platform/DARWIN/afscell/afscellPane.h | 19 + src/platform/DARWIN/afscell/afscellPane.m | 345 + .../DARWIN/afscell/afscell_Prefix.pch | 7 + src/platform/DARWIN/afscell/version.plist | 14 + src/platform/DARWIN/afssettings.m | 204 + src/platform/DARWIN/growlagent/.gitignore | 5 + src/platform/DARWIN/growlagent/Andy.icns | Bin 0 -> 36884 bytes src/platform/DARWIN/growlagent/GrowlDefines.h | 348 + .../DARWIN/growlagent/GrowlDefinesInternal.h | 489 + src/platform/DARWIN/growlagent/GrowlPathway.h | 23 + src/platform/DARWIN/growlagent/Info.plist | 42 + src/platform/DARWIN/growlagent/Makefile.in | 32 + src/platform/DARWIN/growlagent/growlagent.r | 2307 ++++ src/platform/DARWIN/growlagent/main.m | 263 + src/platform/DFBSD/Makefile.in | 14 + src/platform/FBSD/Makefile.in | 14 + src/platform/HPUX/Makefile.in | 14 + src/platform/IRIX/Makefile.in | 88 + src/platform/IRIX/herror.c | 67 + src/platform/IRIX/rcmd.c | 598 ++ src/platform/IRIX/sgi_auth.c | 75 + src/platform/IRIX/ta-rauth.c | 201 + src/platform/LINUX/Makefile.in | 14 + src/platform/Makefile.in | 25 + src/platform/NBSD/Makefile.in | 14 + src/platform/OBSD/Makefile.in | 14 + src/platform/SOLARIS/.gitignore | 5 + src/platform/SOLARIS/Makefile.in | 49 + src/platform/SOLARIS/fs_conv_sol26.c | 703 ++ src/procmgmt/Makefile.in | 64 + src/procmgmt/NTMakefile | 88 + src/procmgmt/afskill.c | 177 + src/procmgmt/afskill.rc | 17 + src/procmgmt/afsprocmgmt.def | 12 + src/procmgmt/afsprocmgmt.rc | 18 + src/procmgmt/pmgtprivate.h | 40 + src/procmgmt/procmgmt.h | 194 + src/procmgmt/procmgmt_nt.c | 1417 +++ src/procmgmt/procmgmt_softsig.h | 51 + src/procmgmt/procmgmt_unix.c | 66 + src/procmgmt/redirect_nt.c | 124 + src/procmgmt/test/Makefile.in | 28 + src/procmgmt/test/NTMakefile | 25 + src/procmgmt/test/pmgttest.c | 1328 +++ src/ptserver/.gitignore | 16 + src/ptserver/Makefile.in | 295 + src/ptserver/NTMakefile | 271 + src/ptserver/db_verify.c | 1524 +++ src/ptserver/display.c | 146 + src/ptserver/display.h | 18 + src/ptserver/error_macros.h | 14 + src/ptserver/liboafs_prot.la.sym | 55 + src/ptserver/map.c | 786 ++ src/ptserver/map.h | 47 + src/ptserver/pt_util.c | 624 ++ src/ptserver/pt_util.rc | 17 + src/ptserver/ptclient.c | 743 ++ src/ptserver/ptclient.h | 15 + src/ptserver/ptclient.rc | 17 + src/ptserver/pterror.et | 35 + src/ptserver/ptint.xg | 250 + src/ptserver/ptopcodes.h | 34 + src/ptserver/ptprocs.c | 2077 ++++ src/ptserver/ptprototypes.h | 106 + src/ptserver/pts.c | 1287 +++ src/ptserver/pts.rc | 17 + src/ptserver/ptserver.c | 617 ++ src/ptserver/ptserver.h | 162 + src/ptserver/ptserver.rc | 17 + src/ptserver/ptubik.c | 190 + src/ptserver/ptuser.c | 1084 ++ src/ptserver/ptuser.h | 62 + src/ptserver/ptutils.c | 2231 ++++ src/ptserver/readgroup.c | 231 + src/ptserver/readpwd.c | 113 + src/ptserver/testpt.c | 1117 ++ src/ptserver/utils.c | 940 ++ src/rmbat.bat | 16 + src/rmbat.rsp | 1 + src/roken/.gitignore | 4 + src/roken/Makefile.in | 186 + src/roken/NTMakefile | 114 + src/roken/afsroken.def | 53 + src/roken/afsroken.rc | 15 + src/roken/config.h | 47 + src/roken/librokenafs.la.sym | 45 + src/rx/.gitignore | 7 + src/rx/AIX/rx_kmutex.c | 22 + src/rx/AIX/rx_kmutex.h | 139 + src/rx/AIX/rx_knet.c | 479 + src/rx/DARWIN/rx_kmutex.c | 48 + src/rx/DARWIN/rx_kmutex.h | 213 + src/rx/DARWIN/rx_knet.c | 344 + src/rx/FBSD/rx_kmutex.c | 22 + src/rx/FBSD/rx_kmutex.h | 187 + src/rx/FBSD/rx_knet.c | 540 + src/rx/HPUX/rx_kmutex.c | 22 + src/rx/HPUX/rx_kmutex.h | 169 + src/rx/HPUX/rx_knet.c | 298 + src/rx/IRIX/rx_kmutex.c | 22 + src/rx/IRIX/rx_kmutex.h | 160 + src/rx/IRIX/rx_knet.c | 595 ++ src/rx/LINUX/rx_kmutex.c | 168 + src/rx/LINUX/rx_kmutex.h | 76 + src/rx/LINUX/rx_knet.c | 284 + src/rx/Makefile.in | 187 + src/rx/NBSD/rx_kmutex.c | 69 + src/rx/NBSD/rx_kmutex.h | 159 + src/rx/NBSD/rx_knet.c | 133 + src/rx/NTMakefile | 88 + src/rx/OBSD/rx_kmutex.c | 18 + src/rx/OBSD/rx_kmutex.h | 69 + src/rx/OBSD/rx_knet.c | 130 + src/rx/SOLARIS/rx_kmutex.c | 108 + src/rx/SOLARIS/rx_kmutex.h | 77 + src/rx/SOLARIS/rx_knet.c | 804 ++ src/rx/SUNOS/rx_kmutex.h | 1 + src/rx/SUNOS/rx_knet.c | 1 + src/rx/UKERNEL/rx_kcommon.h | 40 + src/rx/UKERNEL/rx_kmutex.c | 22 + src/rx/UKERNEL/rx_kmutex.h | 51 + src/rx/UKERNEL/rx_knet.c | 349 + src/rx/bulk.example/Makefile.in | 35 + src/rx/bulk.example/README | 18 + src/rx/bulk.example/bulk.xg | 31 + src/rx/bulk.example/bulk_client.c | 158 + src/rx/bulk.example/bulk_io.c | 94 + src/rx/bulk.example/bulk_server.c | 100 + src/rx/bulktest/Makefile.in | 33 + src/rx/bulktest/README | 10 + src/rx/bulktest/bulk.xg | 29 + src/rx/bulktest/bulk_client.c | 249 + src/rx/bulktest/bulk_io.c | 98 + src/rx/bulktest/bulk_server.c | 127 + src/rx/libafsdep | 4 + src/rx/liboafs_rx.la.sym | 155 + src/rx/multi.example/Makefile.in | 32 + src/rx/multi.example/README | 17 + src/rx/multi.example/sample.xg | 27 + src/rx/multi.example/sample_client.c | 124 + src/rx/multi.example/sample_server.c | 80 + src/rx/rx.c | 9346 ++++++++++++++++ src/rx/rx.h | 977 ++ src/rx/rx_atomic.h | 627 ++ src/rx/rx_call.c | 94 + src/rx/rx_call.h | 217 + src/rx/rx_clock.c | 145 + src/rx/rx_clock.h | 199 + src/rx/rx_clock_nt.c | 84 + src/rx/rx_conn.c | 122 + src/rx/rx_conn.h | 83 + src/rx/rx_conncache.c | 285 + src/rx/rx_event.c | 470 + src/rx/rx_event.h | 51 + src/rx/rx_getaddr.c | 570 + src/rx/rx_globals.c | 110 + src/rx/rx_globals.h | 638 ++ src/rx/rx_identity.c | 189 + src/rx/rx_identity.h | 52 + src/rx/rx_internal.h | 69 + src/rx/rx_kcommon.c | 1325 +++ src/rx/rx_kcommon.h | 177 + src/rx/rx_kernel.h | 112 + src/rx/rx_lwp.c | 493 + src/rx/rx_lwp.h | 43 + src/rx/rx_misc.c | 355 + src/rx/rx_misc.h | 43 + src/rx/rx_multi.c | 140 + src/rx/rx_multi.h | 62 + src/rx/rx_null.c | 40 + src/rx/rx_null.h | 10 + src/rx/rx_opaque.c | 193 + src/rx/rx_opaque.h | 44 + src/rx/rx_packet.c | 2928 +++++ src/rx/rx_packet.h | 363 + src/rx/rx_peer.c | 27 + src/rx/rx_peer.h | 76 + src/rx/rx_prototypes.h | 543 + src/rx/rx_pthread.c | 480 + src/rx/rx_pthread.h | 67 + src/rx/rx_queue.h | 270 + src/rx/rx_rdwr.c | 1339 +++ src/rx/rx_server.h | 33 + src/rx/rx_stats.c | 100 + src/rx/rx_stats.h | 86 + src/rx/rx_trace.c | 196 + src/rx/rx_trace.h | 27 + src/rx/rx_user.c | 814 ++ src/rx/rx_user.h | 71 + src/rx/rx_xmit_nt.c | 286 + src/rx/rx_xmit_nt.h | 20 + src/rx/simple.example/.gitignore | 3 + src/rx/simple.example/Makefile.in | 38 + src/rx/simple.example/README | 11 + src/rx/simple.example/sample.xg | 27 + src/rx/simple.example/sample_client.c | 63 + src/rx/simple.example/sample_server.c | 72 + src/rx/test/.gitignore | 9 + src/rx/test/Makefile.in | 83 + src/rx/test/NTMakefile | 61 + src/rx/test/generator.c | 1435 +++ src/rx/test/generator.h | 122 + src/rx/test/kctest.c | 182 + src/rx/test/kstest.c | 112 + src/rx/test/tableGen.c | 344 + src/rx/test/testclient.c | 437 + src/rx/test/testqueue.c | 129 + src/rx/test/testserver.c | 358 + src/rx/xdr.c | 600 ++ src/rx/xdr.h | 317 + src/rx/xdr_afsuuid.c | 51 + src/rx/xdr_array.c | 145 + src/rx/xdr_arrayn.c | 146 + src/rx/xdr_float.c | 99 + src/rx/xdr_int32.c | 82 + src/rx/xdr_int64.c | 95 + src/rx/xdr_len.c | 126 + src/rx/xdr_mem.c | 180 + src/rx/xdr_prototypes.h | 113 + src/rx/xdr_rec.c | 562 + src/rx/xdr_refernce.c | 93 + src/rx/xdr_rx.c | 249 + src/rx/xdr_stdio.c | 213 + src/rx/xdr_update.c | 87 + src/rxdebug/.gitignore | 6 + src/rxdebug/Makefile.in | 52 + src/rxdebug/NTMakefile | 50 + src/rxdebug/rxdebug.c | 630 ++ src/rxdebug/rxdebug.rc | 17 + src/rxdebug/rxdumptrace.c | 92 + src/rxgen/.gitignore | 5 + src/rxgen/Makefile.in | 50 + src/rxgen/NTMakefile | 52 + src/rxgen/rpc_cout.c | 651 ++ src/rxgen/rpc_errors.h | 17 + src/rxgen/rpc_hout.c | 408 + src/rxgen/rpc_main.c | 806 ++ src/rxgen/rpc_parse.c | 2329 ++++ src/rxgen/rpc_parse.h | 200 + src/rxgen/rpc_scan.c | 547 + src/rxgen/rpc_scan.h | 99 + src/rxgen/rpc_util.c | 429 + src/rxgen/rpc_util.h | 170 + src/rxgen/rxgen.rc | 17 + src/rxgen/rxgen_consts.h | 34 + src/rxkad/.gitignore | 7 + src/rxkad/Makefile.in | 153 + src/rxkad/NTMakefile | 66 + src/rxkad/README | 2 + src/rxkad/README.v5 | 106 + src/rxkad/asn1_err.h | 40 + src/rxkad/bg-fcrypt.c | 802 ++ src/rxkad/crc.c | 81 + src/rxkad/crypt_conn.c | 107 + src/rxkad/der-protos.h | 583 + src/rxkad/der.h | 107 + src/rxkad/fc_test.c | 193 + src/rxkad/fcrypt.c | 248 + src/rxkad/fcrypt.h | 37 + src/rxkad/libafsdep | 11 + src/rxkad/liboafs_rxkad.la.sym | 11 + src/rxkad/lifetimes.h | 91 + src/rxkad/private_data.h | 144 + src/rxkad/rxkad.p.h | 100 + src/rxkad/rxkad_client.c | 213 + src/rxkad/rxkad_common.c | 657 ++ src/rxkad/rxkad_convert.h | 46 + src/rxkad/rxkad_errs.et | 27 + src/rxkad/rxkad_prototypes.h | 177 + src/rxkad/rxkad_server.c | 496 + src/rxkad/sboxes.h | 121 + src/rxkad/stats.h | 155 + src/rxkad/tcrypt.c | 179 + src/rxkad/test/Makefile.in | 108 + src/rxkad/test/NTMakefile | 68 + src/rxkad/test/stress.c | 363 + src/rxkad/test/stress.rg | 27 + src/rxkad/test/stress_c.c | 1316 +++ src/rxkad/test/stress_errs.et | 27 + src/rxkad/test/stress_internal.h | 81 + src/rxkad/test/stress_s.c | 314 + src/rxkad/test/stress_test_mp | 46 + src/rxkad/ticket.c | 334 + src/rxkad/ticket5.c | 757 ++ src/rxkad/v5der.c | 1770 ++++ src/rxkad/v5gen-rewrite.h | 219 + src/rxkad/v5gen.c | 3838 +++++++ src/rxkad/v5gen.h | 2501 +++++ src/rxosd/.gitignore | 8 + src/rxosd/Makefile.in | 192 + src/rxosd/rxosd.xg | 320 + src/rxstat/.gitignore | 5 + src/rxstat/Makefile.in | 92 + src/rxstat/NTMakefile | 56 + src/rxstat/liboafs_rxstat.la.sym | 1 + src/rxstat/rxstat.c | 166 + src/rxstat/rxstat.xg | 59 + src/scout/.gitignore | 5 + src/scout/Makefile.in | 76 + src/scout/scout.c | 2394 +++++ src/shlibafsrpc/.gitignore | 6 + src/splint.cfg | 17 + src/symlink.bat | 1 + src/sys/.gitignore | 9 + src/sys/Makefile.in | 273 + src/sys/NTMakefile | 40 + src/sys/afs4.exp | 140 + src/sys/afs5.exp | 139 + src/sys/afsl4.exp | 27 + src/sys/afsl5.exp | 27 + src/sys/afssyscalls.c | 429 + src/sys/afssyscalls.h | 146 + src/sys/fixit.c | 92 + src/sys/glue.c | 145 + src/sys/icreate.c | 42 + src/sys/idec.c | 46 + src/sys/iinc.c | 47 + src/sys/iopen.c | 71 + src/sys/iread.c | 42 + src/sys/istat.c | 41 + src/sys/iwrite.c | 41 + src/sys/libafsdep | 1 + src/sys/liboafs_sys.la.sym | 3 + src/sys/pioctl.c | 99 + src/sys/pioctl_nt.c | 1535 +++ src/sys/pioctl_nt.h | 34 + src/sys/rmtsys.xg | 47 + src/sys/rmtsysc.c | 334 + src/sys/rmtsysd.c | 69 + src/sys/rmtsysnet.c | 431 + src/sys/rmtsyss.c | 158 + src/sys/setpag.c | 88 + src/sys/sys_prototypes.h | 52 + src/sys/syscall.s | 67 + src/sys/xfsattrs.h | 121 + src/tbudb/.gitignore | 8 + src/tbudb/Makefile.in | 155 + src/tbutc/.gitignore | 5 + src/tbutc/Makefile.in | 149 + src/tbutc/NTMakefile | 167 + src/tbutc/butc.rc | 17 + src/tests/.gitignore | 76 + src/tests/KeyFile.uu | 6 + src/tests/Makefile.in | 358 + src/tests/OpenAFS/.gitignore | 6 + src/tests/OpenAFS/Auth-Heimdal.pm | 44 + src/tests/OpenAFS/Auth-Kaserver.pm | 44 + src/tests/OpenAFS/Auth.pm | 386 + src/tests/OpenAFS/CMU_copyright.pm | 33 + src/tests/OpenAFS/ConfigUtils.pm | 42 + src/tests/OpenAFS/OS-LINUX.pm | 23 + src/tests/OpenAFS/OS-SOLARIS.pm | 23 + src/tests/OpenAFS/OS.pm | 314 + src/tests/OpenAFS/afsconf.pm | 234 + src/tests/OpenAFS/bos.pm | 679 ++ src/tests/OpenAFS/config.pm | 123 + src/tests/OpenAFS/errtrans.pm | 310 + src/tests/OpenAFS/fs.pm | 817 ++ src/tests/OpenAFS/kas.pm | 325 + src/tests/OpenAFS/pts.pm | 306 + src/tests/OpenAFS/util.pm | 356 + src/tests/OpenAFS/vos.pm | 804 ++ src/tests/OpenAFS/wrapper.pm | 729 ++ src/tests/README | 239 + src/tests/README.afstools | 2 + src/tests/README.dumptool | 152 + src/tests/acladdgroup.pl | 41 + src/tests/acladdnegrights.pl | 42 + src/tests/acladdrights.pl | 42 + src/tests/acladduser.pl | 41 + src/tests/aclclearnegrights.pl | 48 + src/tests/aclcopy.pl | 32 + src/tests/aclremovegroup.pl | 52 + src/tests/aclremoveuser.pl | 52 + src/tests/afs-newcell.pl | 793 ++ src/tests/afs-rmcell.pl | 107 + src/tests/afs-rmcell.sh | 23 + src/tests/afscp.c | 619 ++ src/tests/afscp_callback.c | 167 + src/tests/append-over-page.c | 254 + src/tests/append1 | 6 + src/tests/apwd.c | 468 + src/tests/asu.c | 100 + src/tests/baduniq.pl | 25 + src/tests/blocks-new-file.c | 81 + src/tests/boot-strap-arla | 17 + src/tests/bosaddhost.pl | 19 + src/tests/bosaddkey.pl | 19 + src/tests/bosadduser.pl | 19 + src/tests/boscreate.pl | 27 + src/tests/bosdelete.pl | 19 + src/tests/bosdeleterunning.pl | 22 + src/tests/bosexec.pl | 26 + src/tests/bosinstall.pl | 26 + src/tests/boslisthosts.pl | 31 + src/tests/boslistkeys.pl | 29 + src/tests/boslistusers.pl | 26 + src/tests/bosremovehost.pl | 30 + src/tests/bosremovekey.pl | 25 + src/tests/bosremoveuser.pl | 26 + src/tests/bosrestartstopped.pl | 27 + src/tests/bossalvagepart.pl | 19 + src/tests/bossalvageserver.pl | 19 + src/tests/bossalvagevolume.pl | 19 + src/tests/bosshutdown.pl | 27 + src/tests/bosstart.pl | 27 + src/tests/bosstatus.pl | 26 + src/tests/bosstop.pl | 27 + src/tests/build-and-run-rcs | 29 + src/tests/build-emacs | 4 + src/tests/build-emacs-j | 4 + src/tests/build-gdb | 4 + src/tests/build-openafs | 10 + src/tests/checkpwd | 3 + src/tests/compare-inum-mp | 8 + src/tests/compare-inums | 4 + src/tests/compare-with-local | 77 + src/tests/copy-and-diff-gnu-mirror | 7 + src/tests/copy-file | 26 + src/tests/creat1 | 5 + src/tests/create-dirs.c | 89 + src/tests/create-files.c | 117 + src/tests/create-remove-dirs | 4 + src/tests/create-remove-files | 4 + src/tests/create-remove.c | 141 + src/tests/create-stat.c | 146 + src/tests/create-symlinks.c | 139 + src/tests/dd | 8 + src/tests/deep-tree | 6 + src/tests/deep-tree2 | 12 + src/tests/dir-size-mismatch | 10 + src/tests/dir-tree | 22 + src/tests/dup2-and-unlog.c | 35 + src/tests/echo-n.c | 18 + src/tests/err.c | 47 + src/tests/err.h | 71 + src/tests/errx.c | 47 + src/tests/exec | 9 + src/tests/exit-wo-close.c | 123 + src/tests/extcopyin | 11 + src/tests/extcopyout | 11 + src/tests/fcachesize-dir | 13 + src/tests/fcachesize-file-small | 13 + src/tests/fcachesize-read-file | 14 + src/tests/fcachesize-write-file | 13 + src/tests/fchmod.c | 71 + src/tests/fhbench.c | 334 + src/tests/find-and-cat-netbsd | 5 + src/tests/find-linux | 5 + src/tests/fs-flush | 6 + src/tests/fs-sa-la | 6 + src/tests/fs_lib.c | 844 ++ src/tests/fs_lib.h | 17 + src/tests/fsx.c | 1049 ++ src/tests/ga-test.c | 316 + src/tests/generic-build | 18 + src/tests/getdents-and-unlink1 | 9 + src/tests/getdents-and-unlink2 | 9 + src/tests/getdents-and-unlink3 | 9 + src/tests/grind-arla-with-cvs | 52 + src/tests/hardlink1.c | 144 + src/tests/hardlink2.c | 64 + src/tests/hardlink3 | 28 + src/tests/hardlink4.c | 95 + src/tests/hardlink5 | 14 + src/tests/hello-world.in | 8 + src/tests/intr-read.c | 126 + src/tests/intr-read1 | 4 + src/tests/invalidate-file.c | 201 + src/tests/kaserver.DB0.uu | 779 ++ src/tests/kaserver.DBSYS1.uu | 5 + src/tests/kill-softer.c | 185 + src/tests/kill-softly.c | 156 + src/tests/kotest | 4 + src/tests/large-dir-16384 | 4 + src/tests/large-dir-extra | 7 + src/tests/large-dir.c | 153 + src/tests/large-dir2.c | 132 + src/tests/large-dir3.c | 119 + src/tests/large-filename | 6 + src/tests/ls-afs | 5 + src/tests/make-page.c | 98 + src/tests/many-dirs | 6 + src/tests/many-fetchs | 15 + src/tests/many-files | 4 + src/tests/many-files-with-content | 4 + src/tests/many-stores | 10 + src/tests/many-symlinks | 4 + src/tests/mkdir | 10 + src/tests/mkdir-lnk | 12 + src/tests/mkdir1 | 7 + src/tests/mkdir2.c | 78 + src/tests/mkdir3.c | 96 + src/tests/mkm-rmm | 13 + src/tests/mmap-and-read.c | 159 + src/tests/mmap-cat.c | 138 + src/tests/mmap-shared-write.c | 97 + src/tests/mmap-vs-read.c | 168 + src/tests/mmap-vs-read2.c | 168 + src/tests/mountpoint.in | 9 + src/tests/null-search.c | 175 + src/tests/parallel1 | 5 + src/tests/pine.c | 100 + src/tests/ptsadduser.pl | 17 + src/tests/ptschown.pl | 17 + src/tests/ptscreategroup.pl | 17 + src/tests/ptscreateuser.pl | 17 + src/tests/ptsdeletegroup.pl | 17 + src/tests/ptsdeleteuser.pl | 17 + src/tests/ptsexaminegroup.pl | 27 + src/tests/ptsexamineuser.pl | 24 + src/tests/ptslistmax.pl | 24 + src/tests/ptslistown.pl | 23 + src/tests/ptsmembersgroup.pl | 35 + src/tests/ptsmembersuser.pl | 35 + src/tests/ptsremove.pl | 17 + src/tests/ptssetf.pl | 28 + src/tests/ptssetmax.pl | 17 + src/tests/read-vs-mmap.c | 167 + src/tests/read-vs-mmap2.c | 130 + src/tests/read-write.c | 143 + src/tests/readdir-vs-lstat.c | 98 + src/tests/readfile-wo-create | 3 + src/tests/reauth.pl | 34 + src/tests/rename-under-feet.c | 166 + src/tests/rename1 | 7 + src/tests/rename2 | 7 + src/tests/rename3 | 9 + src/tests/rename4 | 9 + src/tests/rename5.c | 105 + src/tests/rename6.c | 72 + src/tests/rewrite-emacs | 10 + src/tests/rm-rf.c | 126 + src/tests/run-fsx | 7 + src/tests/run-rcs | 11 + src/tests/run-suite.pl | 302 + src/tests/run-tests.in | 462 + src/tests/setgroups | 4 + src/tests/setpag | 4 + src/tests/shallow-tree | 5 + src/tests/snprintf.c | 627 ++ src/tests/still-there-p.c | 89 + src/tests/strange-characters | 7 + src/tests/strange-characters-c.c | 89 + src/tests/strange-other-characters | 5 + src/tests/symlink.c | 68 + src/tests/t.uniq-bad | Bin 0 -> 3588 bytes src/tests/test-front.sh | 10 + src/tests/test-gunzip-gnu-mirror | 14 + src/tests/test-parallel1.c | 97 + src/tests/test-parallel2.c | 178 + src/tests/test-setgroups.c | 124 + src/tests/test-setpag.c | 114 + src/tests/too-many-files | 5 + src/tests/touch1 | 4 + src/tests/truncate-files.c | 142 + src/tests/truncate.c | 108 + src/tests/untar-emacs | 9 + src/tests/untar-openafs | 10 + src/tests/utime-dir.c | 77 + src/tests/utime-file.c | 95 + src/tests/verr.c | 45 + src/tests/verrx.c | 45 + src/tests/visit-volumes | 6 + src/tests/vosaddsite.pl | 19 + src/tests/vosbackup.pl | 19 + src/tests/voscreate.pl | 20 + src/tests/vosdelentry.pl | 19 + src/tests/vosdump.pl | 19 + src/tests/vosexamine.pl | 32 + src/tests/voslistpart.pl | 26 + src/tests/voslistvldb.pl | 24 + src/tests/voslistvol.pl | 24 + src/tests/voslock.pl | 19 + src/tests/vosmove.pl | 19 + src/tests/vospartinfo.pl | 19 + src/tests/vosrelease.pl | 19 + src/tests/vosremove.pl | 19 + src/tests/vosremsite.pl | 19 + src/tests/vosrename.pl | 19 + src/tests/vosrestore.pl | 19 + src/tests/vossyncserv.pl | 19 + src/tests/vossyncvldb.pl | 19 + src/tests/vosunlock.pl | 19 + src/tests/vosunlockall.pl | 21 + src/tests/voszap.pl | 19 + src/tests/vwarn.c | 44 + src/tests/vwarnx.c | 44 + src/tests/warn.c | 47 + src/tests/warnerr.c | 101 + src/tests/warnx.c | 47 + src/tests/write-closed.c | 95 + src/tests/write-closed2.c | 131 + src/tests/write-large.c | 98 + src/tests/write-rand.c | 104 + src/tests/write-ro | 3 + src/tests/write-ro-file.c | 65 + src/tests/write-ucc.c | 101 + src/tests/write1 | 4 + src/tests/write2 | 6 + src/tests/write3.c | 125 + src/tools/Makefile.in | 7 + src/tools/audit/readsysvmq | 84 + src/tools/dumpscan/.gitignore | 8 + src/tools/dumpscan/Makefile.in | 141 + src/tools/dumpscan/TEMPLATE | 27 + src/tools/dumpscan/afsdump_dirlist.c | 168 + src/tools/dumpscan/afsdump_extract.c | 606 ++ src/tools/dumpscan/afsdump_scan.c | 370 + src/tools/dumpscan/afsdump_xsed.c | 406 + src/tools/dumpscan/backuphdr.c | 102 + src/tools/dumpscan/directory.c | 387 + src/tools/dumpscan/dump.c | 287 + src/tools/dumpscan/dumpfmt.h | 159 + src/tools/dumpscan/dumpscan.h | 390 + src/tools/dumpscan/dumpscan_errs.et | 37 + src/tools/dumpscan/dumptool.c | 2635 +++++ src/tools/dumpscan/int64.c | 472 + src/tools/dumpscan/intNN.h | 157 + src/tools/dumpscan/internal.h | 57 + src/tools/dumpscan/parsedump.c | 287 + src/tools/dumpscan/parsetag.c | 201 + src/tools/dumpscan/parsevnode.c | 497 + src/tools/dumpscan/parsevol.c | 325 + src/tools/dumpscan/pathname.c | 398 + src/tools/dumpscan/primitive.c | 185 + src/tools/dumpscan/repair.c | 416 + src/tools/dumpscan/stagehdr.c | 170 + src/tools/dumpscan/stagehdr.h | 61 + src/tools/dumpscan/util.c | 188 + src/tools/dumpscan/xf_errs.et | 37 + src/tools/dumpscan/xf_files.c | 228 + src/tools/dumpscan/xf_printf.c | 533 + src/tools/dumpscan/xf_profile.c | 197 + src/tools/dumpscan/xf_rxcall.c | 281 + src/tools/dumpscan/xfiles.c | 251 + src/tools/dumpscan/xfiles.h | 88 + src/tools/rxperf/.gitignore | 5 + src/tools/rxperf/Makefile.in | 20 + src/tools/rxperf/NTMakefile | 41 + src/tools/rxperf/rxperf.c | 1168 ++ src/tools/rxperf/rxperf.rc | 17 + src/tptserver/.gitignore | 14 + src/tptserver/Makefile.in | 201 + src/tptserver/NTMakefile | 270 + src/tptserver/pt_util.rc | 17 + src/tptserver/ptclient.rc | 17 + src/tptserver/pts.rc | 17 + src/tptserver/ptserver.rc | 17 + src/tsalvaged/.gitignore | 9 + src/tsalvaged/Makefile.in | 208 + src/tsalvaged/NTMakefile | 176 + src/tsalvaged/fssync-debug.rc | 17 + src/tsalvaged/salvager.rc | 17 + src/tsalvaged/salvageserver.rc | 17 + src/tsalvaged/salvsync-debug.c | 474 + src/tsalvaged/salvsync-debug.rc | 17 + src/tsm41/.gitignore | 7 + src/tsm41/Makefile.in | 126 + src/tsm41/aix41_auth.c | 65 + src/tsm41/aix41_ident.c | 62 + src/tsm41/aix5_auth.c | 55 + src/tsm41/aix_aklog.c | 717 ++ src/tsm41/aix_auth_common.c | 103 + src/tsm41/aix_auth_prototypes.h | 25 + src/tsm41/aix_ident_prototypes.h | 20 + src/tsm41/aix_ktc.c | 54 + src/tubik/.gitignore | 11 + src/tubik/Makefile.in | 99 + src/tubik/udebug.rc | 17 + src/tvlserver/.gitignore | 11 + src/tvlserver/Makefile.in | 159 + src/tvolser/.gitignore | 12 + src/tvolser/Makefile.in | 208 + src/tvolser/NTMakefile | 167 + src/tvolser/volserver.rc | 17 + src/ubik/.gitignore | 12 + src/ubik/Makefile.in | 193 + src/ubik/NTMakefile | 219 + src/ubik/beacon.c | 906 ++ src/ubik/disk.c | 1001 ++ src/ubik/liboafs_ubik.la.sym | 37 + src/ubik/lock.c | 167 + src/ubik/phys.c | 397 + src/ubik/recovery.c | 949 ++ src/ubik/remote.c | 768 ++ src/ubik/ubik.c | 1428 +++ src/ubik/ubik.p.h | 644 ++ src/ubik/ubik_int.xg | 264 + src/ubik/ubikclient.c | 690 ++ src/ubik/ubikcmd.c | 83 + src/ubik/udebug.c | 348 + src/ubik/udebug.rc | 17 + src/ubik/uerrors.et | 53 + src/ubik/uinit.c | 214 + src/ubik/utst_client.c | 179 + src/ubik/utst_int.xg | 26 + src/ubik/utst_server.c | 336 + src/ubik/vote.c | 614 ++ src/update/.gitignore | 7 + src/update/Makefile.in | 80 + src/update/NTMakefile | 103 + src/update/client.c | 745 ++ src/update/global.h | 27 + src/update/server.c | 573 + src/update/upclient.rc | 17 + src/update/update.xg | 35 + src/update/update_internal.h | 24 + src/update/upserver.rc | 17 + src/update/utils.c | 48 + src/usd/Makefile.in | 57 + src/usd/NTMakefile | 49 + src/usd/liboafs_usd.la.sym | 3 + src/usd/test/.gitignore | 1 + src/usd/test/Makefile.in | 34 + src/usd/test/NTMakefile | 27 + src/usd/test/usd_test.c | 309 + src/usd/usd.h | 154 + src/usd/usd_file.c | 438 + src/usd/usd_nt.c | 569 + src/uss/.gitignore | 5 + src/uss/Makefile.in | 101 + src/uss/grammar.y | 140 + src/uss/lex.l | 201 + src/uss/sample.bulkfile | 83 + src/uss/sample.template | 54 + src/uss/uss.c | 1980 ++++ src/uss/uss.rc | 17 + src/uss/uss_acl.c | 748 ++ src/uss/uss_acl.h | 64 + src/uss/uss_common.c | 257 + src/uss/uss_common.h | 193 + src/uss/uss_fs.c | 594 ++ src/uss/uss_fs.h | 151 + src/uss/uss_kauth.c | 718 ++ src/uss/uss_kauth.h | 90 + src/uss/uss_procs.c | 865 ++ src/uss/uss_procs.h | 189 + src/uss/uss_ptserver.c | 341 + src/uss/uss_ptserver.h | 70 + src/uss/uss_vol.c | 1177 +++ src/uss/uss_vol.h | 121 + src/uss/yy-lsed | 36 + src/util/.gitignore | 6 + src/util/Makefile.in | 225 + src/util/NTMakefile | 100 + src/util/afs_atomlist.c | 215 + src/util/afs_atomlist.h | 85 + src/util/afs_lhash.c | 527 + src/util/afs_lhash.h | 166 + src/util/afsutil.h | 132 + src/util/afsutil_prototypes.h | 192 + src/util/base32.c | 76 + src/util/base64.c | 86 + src/util/dirent_nt.h | 38 + src/util/dirpath.c | 706 ++ src/util/dirpath.hin | 383 + src/util/dirpath_nt.h | 369 + src/util/errmap_nt.c | 86 + src/util/errmap_nt.h | 162 + src/util/errors.h | 63 + src/util/exec.c | 126 + src/util/fileutil.c | 182 + src/util/fileutil.h | 55 + src/util/flipbase64.c | 112 + src/util/fstab.c | 110 + src/util/hostparse.c | 298 + src/util/hputil.c | 43 + src/util/krb5_nt.c | 81 + src/util/krb5_nt.h | 32 + src/util/kreltime.c | 320 + src/util/ktime.c | 657 ++ src/util/ktime.h | 61 + src/util/liboafs_util.la.sym | 57 + src/util/pthread_glock.c | 89 + src/util/pthread_glock.h | 50 + src/util/pthread_nosigs.h | 81 + src/util/pthread_threadname.c | 58 + src/util/readdir_nt.c | 139 + src/util/regex.c | 396 + src/util/secutil_nt.c | 189 + src/util/secutil_nt.h | 27 + src/util/serverLog.c | 765 ++ src/util/sys.c | 23 + src/util/tabular_output.c | 513 + src/util/tabular_output.h | 22 + src/util/test/Makefile.in | 35 + src/util/test/NTMakefile | 35 + src/util/test/b32.c | 140 + src/util/test/b64.c | 140 + src/util/test/dirpath_test.c | 188 + src/util/test/dtest.c | 37 + src/util/test/fb64.c | 145 + src/util/test/ktest.c | 39 + src/util/test/test_ktime.c | 84 + src/util/test/treaddir.c | 73 + src/util/thread_pool.c | 472 + src/util/thread_pool.h | 38 + src/util/thread_pool_impl.h | 20 + src/util/thread_pool_impl_types.h | 64 + src/util/thread_pool_types.h | 37 + src/util/uuid.c | 457 + src/util/vice.h | 80 + src/util/volparse.c | 430 + src/util/winsock_nt.c | 55 + src/util/work_queue.c | 1916 ++++ src/util/work_queue.h | 64 + src/util/work_queue_impl.h | 19 + src/util/work_queue_impl_types.h | 139 + src/util/work_queue_types.h | 88 + src/venus/.gitignore | 15 + src/venus/Makefile.in | 372 + src/venus/afsio.c | 1123 ++ src/venus/cacheout.c | 366 + src/venus/cmdebug.c | 631 ++ src/venus/dedebug.c | 113 + src/venus/fs.c | 4292 ++++++++ src/venus/fstrace.c | 2131 ++++ src/venus/gcpags.c | 44 + src/venus/kdump.c | 4625 ++++++++ src/venus/kdump.sh.hp_ux11 | 16 + src/venus/kdump.sh.linux | 13 + src/venus/kdump.sh.sgi_ipnos | 14 + src/venus/kdump.sh.solaris7 | 27 + src/venus/livesys.c | 69 + src/venus/test/.gitignore | 8 + src/venus/test/Makefile.in | 44 + src/venus/test/fulltest.c | 306 + src/venus/test/getinitparams.c | 123 + src/venus/test/idtest.c | 26 + src/venus/test/owntest.c | 72 + src/venus/twiddle.c | 192 + src/venus/up.c | 761 ++ src/venus/whatfid.c | 142 + src/vfsck/.gitignore | 5 + src/vfsck/Makefile.in | 74 + src/vfsck/bcheckrc | 150 + src/vfsck/bcheckrc-hp_ux110 | 150 + src/vfsck/dir.c | 721 ++ src/vfsck/dirutils.c | 59 + src/vfsck/fsck.h | 324 + src/vfsck/inode.c | 629 ++ src/vfsck/libfs.h | 6 + src/vfsck/main.c | 1317 +++ src/vfsck/mount | 57 + src/vfsck/pass1.c | 463 + src/vfsck/pass1b.c | 124 + src/vfsck/pass2.c | 416 + src/vfsck/pass3.c | 135 + src/vfsck/pass4.c | 189 + src/vfsck/pass5.c | 383 + src/vfsck/proplist.c | 425 + src/vfsck/setup.c | 1010 ++ src/vfsck/ufs_subr.c | 206 + src/vfsck/ufs_tables.c | 128 + src/vfsck/umount | 51 + src/vfsck/utilities.c | 1223 +++ src/vfsck/vprintf.c | 102 + src/viced/.gitignore | 8 + src/viced/Makefile.in | 149 + src/viced/NTMakefile | 124 + src/viced/afsfileprocs.c | 6907 ++++++++++++ src/viced/callback.c | 3213 ++++++ src/viced/callback.h | 163 + src/viced/cbd.rc | 17 + src/viced/check_sysid.c | 110 + src/viced/fileserver.rc | 17 + src/viced/fs_stats.h | 349 + src/viced/fsprobe.c | 960 ++ src/viced/fsstats.c | 134 + src/viced/host.c | 4333 ++++++++ src/viced/host.h | 282 + src/viced/physio.c | 179 + src/viced/serialize_state.c | 1053 ++ src/viced/serialize_state.h | 312 + src/viced/state_analyzer.c | 1951 ++++ src/viced/viced.c | 2224 ++++ src/viced/viced.h | 251 + src/viced/viced_prototypes.h | 36 + src/vlserver/.gitignore | 11 + src/vlserver/Makefile.in | 207 + src/vlserver/NTMakefile | 187 + src/vlserver/cnvldb.c | 1021 ++ src/vlserver/cnvldb.h | 111 + src/vlserver/liboafs_vldb.la.sym | 35 + src/vlserver/sascnvldb.c | 418 + src/vlserver/vl_errors.et | 46 + src/vlserver/vl_opcodes.h | 45 + src/vlserver/vlclient.c | 1428 +++ src/vlserver/vldb_check.c | 1639 +++ src/vlserver/vldbint.xg | 441 + src/vlserver/vlprocs.c | 3711 +++++++ src/vlserver/vlserver.c | 548 + src/vlserver/vlserver.p.h | 133 + src/vlserver/vlserver.rc | 17 + src/vlserver/vlserver_internal.h | 67 + src/vlserver/vlutils.c | 1120 ++ src/vol/.gitignore | 10 + src/vol/Makefile.in | 259 + src/vol/NTMakefile | 289 + src/vol/clone.c | 439 + src/vol/common.c | 65 + src/vol/common.h | 14 + src/vol/daemon_com.c | 665 ++ src/vol/daemon_com.h | 220 + src/vol/daemon_com_inline.h | 34 + src/vol/devname.c | 249 + src/vol/fssync-client.c | 429 + src/vol/fssync-debug.c | 1468 +++ src/vol/fssync-debug.rc | 17 + src/vol/fssync-server.c | 2194 ++++ src/vol/fssync.h | 236 + src/vol/fssync_inline.h | 82 + src/vol/gi.c | 86 + src/vol/ihandle.c | 1149 ++ src/vol/ihandle.h | 648 ++ src/vol/listinodes.c | 1511 +++ src/vol/namei_map.c | 20 + src/vol/namei_ops.c | 3340 ++++++ src/vol/namei_ops.h | 93 + src/vol/nfs.h | 39 + src/vol/ntops.c | 391 + src/vol/ntops.h | 43 + src/vol/nuke.c | 226 + src/vol/partition.c | 1472 +++ src/vol/partition.h | 196 + src/vol/physio.c | 159 + src/vol/purge.c | 232 + src/vol/salvage.h | 32 + src/vol/salvaged.c | 907 ++ src/vol/salvager.c | 551 + src/vol/salvager.rc | 17 + src/vol/salvsync-client.c | 190 + src/vol/salvsync-server.c | 1362 +++ src/vol/salvsync.h | 167 + src/vol/test/Makefile.in | 67 + src/vol/test/NTMakefile | 47 + src/vol/test/README | 40 + src/vol/test/ilist_nt.c | 91 + src/vol/test/listVicepx.c | 664 ++ src/vol/test/listVicepx.h | 26 + src/vol/test/ltlist.c | 69 + src/vol/test/nicreate.c | 84 + src/vol/test/nilist.c | 117 + src/vol/test/nincdec.c | 120 + src/vol/test/nino.c | 125 + src/vol/test/nsubr.c | 54 + src/vol/test/testpart.c | 50 + src/vol/test/updateDirInode.c | 437 + src/vol/test/utilities.c | 131 + src/vol/vg_cache.c | 1178 +++ src/vol/vg_cache.h | 40 + src/vol/vg_cache_impl.h | 39 + src/vol/vg_cache_impl_types.h | 119 + src/vol/vg_cache_types.h | 29 + src/vol/vg_scan.c | 574 + src/vol/viceinode.h | 72 + src/vol/vnode.c | 1774 ++++ src/vol/vnode.h | 356 + src/vol/vnode_inline.h | 369 + src/vol/vol-bless.c | 94 + src/vol/vol-info.c | 2155 ++++ src/vol/vol-info.h | 106 + src/vol/vol-salvage.c | 5018 +++++++++ src/vol/vol-salvage.h | 250 + src/vol/vol_internal.h | 8 + src/vol/vol_prototypes.h | 30 + src/vol/voldefs.h | 93 + src/vol/volinfo-main.c | 193 + src/vol/volinfo.rc | 17 + src/vol/volinodes.h | 113 + src/vol/volscan-main.c | 250 + src/vol/volume.c | 9395 +++++++++++++++++ src/vol/volume.h | 1038 ++ src/vol/volume_inline.h | 597 ++ src/vol/vutil.c | 1356 +++ src/vol/vutils.h | 30 + src/vol/xfs_size_check.c | 178 + src/volser/.gitignore | 11 + src/volser/Makefile.in | 262 + src/volser/NTMakefile | 192 + src/volser/common.c | 75 + src/volser/dump.h | 128 + src/volser/dumpstuff.c | 1953 ++++ src/volser/dumpstuff.h | 42 + src/volser/liboafs_volser.la.sym | 61 + src/volser/lockdata.h | 30 + src/volser/lockprocs.c | 239 + src/volser/lockprocs_prototypes.h | 15 + src/volser/physio.c | 148 + src/volser/physio.h | 17 + src/volser/restorevol.c | 988 ++ src/volser/vol-dump.c | 866 ++ src/volser/vol.h | 26 + src/volser/vol_split.c | 893 ++ src/volser/volerr.et | 32 + src/volser/volint.xg | 454 + src/volser/volmain.c | 645 ++ src/volser/volprocs.c | 3200 ++++++ src/volser/volser.p.h | 195 + src/volser/volser_internal.h | 133 + src/volser/volser_prototypes.h | 40 + src/volser/volserver.rc | 17 + src/volser/voltrans.c | 239 + src/volser/voltrans_inline.h | 83 + src/volser/vos.c | 6398 +++++++++++ src/volser/vos.rc | 17 + src/volser/vsprocs.c | 7507 +++++++++++++ src/volser/vsutils.c | 469 + src/volser/vsutils_prototypes.h | 15 + src/xstat/.gitignore | 6 + src/xstat/Makefile.in | 118 + src/xstat/NTMakefile | 93 + src/xstat/xstat_cm.c | 644 ++ src/xstat/xstat_cm.h | 148 + src/xstat/xstat_cm_test.c | 971 ++ src/xstat/xstat_cm_test.rc | 17 + src/xstat/xstat_fs.c | 842 ++ src/xstat/xstat_fs.h | 156 + src/xstat/xstat_fs_callback.c | 777 ++ src/xstat/xstat_fs_test.c | 867 ++ src/xstat/xstat_fs_test.rc | 17 + tests/.gitignore | 5 + tests/Makefile.in | 32 + tests/README | 37 + tests/TESTS | 23 + tests/auth/.gitignore | 6 + tests/auth/KeyFile | Bin 0 -> 100 bytes tests/auth/Makefile.in | 55 + tests/auth/authcon-t.c | 97 + tests/auth/keys-t.c | 601 ++ tests/auth/realms-t.c | 373 + tests/auth/superuser-t.c | 449 + tests/auth/test.xg | 9 + tests/auth/writekeyfile.c | 86 + tests/bozo/bos-man-t | 25 + tests/bucoord/backup-man-t | 25 + tests/cmd/.gitignore | 1 + tests/cmd/Makefile.in | 27 + tests/cmd/command-t.c | 396 + tests/cmd/test1.conf | 6 + tests/common/Makefile.in | 12 + tests/common/common.h | 57 + tests/common/config.c | 149 + tests/common/network.c | 63 + tests/common/rxkad.c | 70 + tests/common/servers.c | 109 + tests/common/ubik.c | 62 + tests/kauth/kas-man-t | 25 + tests/libwrap | 48 + tests/opr/.gitignore | 12 + tests/opr/Makefile.in | 40 + tests/opr/dict-t.c | 98 + tests/opr/fmt-t.c | 57 + tests/opr/jhash-t.c | 75 + tests/opr/queues-t.c | 148 + tests/opr/rbtree-t.c | 166 + tests/opr/softsig-helper.c | 140 + tests/opr/softsig-t | 99 + tests/opr/time-t.c | 49 + tests/opr/uuid-t.c | 68 + tests/ptserver/pt_util-t | 53 + tests/ptserver/pts-man-t | 25 + tests/rpctestlib/Makefile.in | 80 + tests/rpctestlib/NTMakefile | 83 + tests/rpctestlib/rpc_test_cb_procs.c | 279 + tests/rpctestlib/rpc_test_main.c | 202 + tests/rpctestlib/rpc_test_procs.c | 385 + tests/rpctestlib/rpc_test_procs.h | 105 + tests/rx/.gitignore | 1 + tests/rx/Makefile.in | 23 + tests/rx/event-t.c | 200 + tests/rx/perf-t | 48 + tests/tap/.gitignore | 3 + tests/tap/Makefile.in | 32 + tests/tests-lib/perl5/mancheck_utils.pm | 92 + tests/util/.gitignore | 7 + tests/util/Makefile.in | 27 + tests/util/exec-alt-t.c | 245 + tests/util/ktime-t.c | 92 + tests/venus/fs-man-t | 25 + tests/volser/.gitignore | 1 + tests/volser/Makefile.in | 24 + tests/volser/vos-man-t | 25 + tests/volser/vos-t.c | 158 + 3565 files changed, 969793 insertions(+) create mode 100644 .gitignore create mode 100644 .gitreview create mode 100644 .mailmap create mode 100644 .splintrc create mode 100644 CODING create mode 100644 CONTRIBUTING create mode 100644 INSTALL create mode 100644 LICENSE create mode 100644 Makefile-libafs.in create mode 100644 Makefile.in create mode 100644 NEWS create mode 100644 NTMakefile create mode 100644 README create mode 100644 README-WINDOWS create mode 100644 acinclude.m4 create mode 100644 build-tools/.gitignore create mode 100755 build-tools/git-version create mode 100644 build-tools/libafsdep create mode 100755 build-tools/make-release create mode 100755 build-tools/mkinstalldirs create mode 100644 configure-libafs.ac create mode 100644 configure.ac create mode 100644 doc/LICENSE create mode 100644 doc/README create mode 100644 doc/doxygen/.gitignore create mode 100644 doc/doxygen/Doxyfile.in create mode 100644 doc/doxygen/input/mainpage.h create mode 100644 doc/man-pages/.gitignore create mode 100644 doc/man-pages/Makefile.in create mode 100644 doc/man-pages/NTMakefile create mode 100644 doc/man-pages/README create mode 100755 doc/man-pages/check-pod create mode 100755 doc/man-pages/checkman create mode 100755 doc/man-pages/generate-html create mode 100755 doc/man-pages/generate-man create mode 100644 doc/man-pages/install-man.in create mode 100755 doc/man-pages/merge-pod create mode 100644 doc/man-pages/pod1/.gitignore create mode 100644 doc/man-pages/pod1/afs.pod create mode 100644 doc/man-pages/pod1/afs_compile_et.pod create mode 100644 doc/man-pages/pod1/afsmonitor.pod create mode 100644 doc/man-pages/pod1/aklog.pod create mode 100644 doc/man-pages/pod1/cmdebug.pod create mode 100644 doc/man-pages/pod1/copyauth.pod create mode 100644 doc/man-pages/pod1/dlog.pod create mode 100644 doc/man-pages/pod1/fragments/pts-common.pod create mode 100644 doc/man-pages/pod1/fragments/volsize-caution.pod create mode 100644 doc/man-pages/pod1/fragments/vos-common.pod create mode 100644 doc/man-pages/pod1/fs.pod create mode 100644 doc/man-pages/pod1/fs_apropos.pod create mode 100644 doc/man-pages/pod1/fs_bypassthreshold.pod create mode 100644 doc/man-pages/pod1/fs_checkservers.pod create mode 100644 doc/man-pages/pod1/fs_checkvolumes.pod create mode 100644 doc/man-pages/pod1/fs_chgrp.pod create mode 100644 doc/man-pages/pod1/fs_chown.pod create mode 100644 doc/man-pages/pod1/fs_cleanacl.pod create mode 100644 doc/man-pages/pod1/fs_copyacl.pod create mode 100644 doc/man-pages/pod1/fs_cscpolicy.pod create mode 100644 doc/man-pages/pod1/fs_discon.pod create mode 100644 doc/man-pages/pod1/fs_diskfree.pod create mode 100644 doc/man-pages/pod1/fs_examine.pod create mode 100644 doc/man-pages/pod1/fs_exportafs.pod create mode 100644 doc/man-pages/pod1/fs_flush.pod create mode 100644 doc/man-pages/pod1/fs_flushall.pod create mode 100644 doc/man-pages/pod1/fs_flushmount.pod create mode 100644 doc/man-pages/pod1/fs_flushvolume.pod create mode 100644 doc/man-pages/pod1/fs_getcacheparms.pod create mode 100644 doc/man-pages/pod1/fs_getcalleraccess.pod create mode 100644 doc/man-pages/pod1/fs_getcellstatus.pod create mode 100644 doc/man-pages/pod1/fs_getclientaddrs.pod create mode 100644 doc/man-pages/pod1/fs_getcrypt.pod create mode 100644 doc/man-pages/pod1/fs_getfid.pod create mode 100644 doc/man-pages/pod1/fs_getserverprefs.pod create mode 100644 doc/man-pages/pod1/fs_getverify.pod create mode 100644 doc/man-pages/pod1/fs_help.pod create mode 100644 doc/man-pages/pod1/fs_listacl.pod create mode 100644 doc/man-pages/pod1/fs_listaliases.pod create mode 100644 doc/man-pages/pod1/fs_listcells.pod create mode 100644 doc/man-pages/pod1/fs_listquota.pod.in create mode 100644 doc/man-pages/pod1/fs_lsmount.pod create mode 100644 doc/man-pages/pod1/fs_memdump.pod create mode 100644 doc/man-pages/pod1/fs_messages.pod create mode 100644 doc/man-pages/pod1/fs_minidump.pod create mode 100644 doc/man-pages/pod1/fs_mkmount.pod create mode 100644 doc/man-pages/pod1/fs_monitor.pod create mode 100644 doc/man-pages/pod1/fs_newalias.pod create mode 100644 doc/man-pages/pod1/fs_newcell.pod create mode 100644 doc/man-pages/pod1/fs_nukenfscreds.pod create mode 100644 doc/man-pages/pod1/fs_precache.pod create mode 100644 doc/man-pages/pod1/fs_quota.pod.in create mode 100644 doc/man-pages/pod1/fs_rmmount.pod create mode 100644 doc/man-pages/pod1/fs_rxstatpeer.pod create mode 100644 doc/man-pages/pod1/fs_rxstatproc.pod create mode 100644 doc/man-pages/pod1/fs_setacl.pod create mode 100644 doc/man-pages/pod1/fs_setcachesize.pod create mode 100644 doc/man-pages/pod1/fs_setcbaddr.pod create mode 100644 doc/man-pages/pod1/fs_setcell.pod create mode 100644 doc/man-pages/pod1/fs_setclientaddrs.pod create mode 100644 doc/man-pages/pod1/fs_setcrypt.pod create mode 100644 doc/man-pages/pod1/fs_setquota.pod.in create mode 100644 doc/man-pages/pod1/fs_setserverprefs.pod create mode 100644 doc/man-pages/pod1/fs_setverify.pod create mode 100644 doc/man-pages/pod1/fs_setvol.pod.in create mode 100644 doc/man-pages/pod1/fs_storebehind.pod create mode 100644 doc/man-pages/pod1/fs_sysname.pod create mode 100644 doc/man-pages/pod1/fs_trace.pod create mode 100644 doc/man-pages/pod1/fs_uuid.pod create mode 100644 doc/man-pages/pod1/fs_whereis.pod create mode 100644 doc/man-pages/pod1/fs_whichcell.pod create mode 100644 doc/man-pages/pod1/fs_wscell.pod create mode 100644 doc/man-pages/pod1/klog.krb5.pod create mode 100644 doc/man-pages/pod1/klog.pod create mode 100644 doc/man-pages/pod1/knfs.pod create mode 100644 doc/man-pages/pod1/kpasswd.pod create mode 100644 doc/man-pages/pod1/livesys.pod create mode 100644 doc/man-pages/pod1/pagsh.pod create mode 100644 doc/man-pages/pod1/pts.pod create mode 100644 doc/man-pages/pod1/pts_adduser.pod.in create mode 100644 doc/man-pages/pod1/pts_apropos.pod create mode 100644 doc/man-pages/pod1/pts_chown.pod.in create mode 100644 doc/man-pages/pod1/pts_creategroup.pod.in create mode 100644 doc/man-pages/pod1/pts_createuser.pod.in create mode 100644 doc/man-pages/pod1/pts_delete.pod.in create mode 100644 doc/man-pages/pod1/pts_examine.pod.in create mode 100644 doc/man-pages/pod1/pts_help.pod create mode 100644 doc/man-pages/pod1/pts_interactive.pod.in create mode 100644 doc/man-pages/pod1/pts_listentries.pod.in create mode 100644 doc/man-pages/pod1/pts_listmax.pod.in create mode 100644 doc/man-pages/pod1/pts_listowned.pod.in create mode 100644 doc/man-pages/pod1/pts_membership.pod.in create mode 100644 doc/man-pages/pod1/pts_quit.pod.in create mode 100644 doc/man-pages/pod1/pts_removeuser.pod.in create mode 100644 doc/man-pages/pod1/pts_rename.pod.in create mode 100644 doc/man-pages/pod1/pts_setfields.pod.in create mode 100644 doc/man-pages/pod1/pts_setmax.pod.in create mode 100644 doc/man-pages/pod1/pts_sleep.pod.in create mode 100644 doc/man-pages/pod1/pts_source.pod.in create mode 100644 doc/man-pages/pod1/restorevol.pod create mode 100644 doc/man-pages/pod1/rxdebug.pod create mode 100644 doc/man-pages/pod1/rxgen.pod create mode 100644 doc/man-pages/pod1/scout.pod create mode 100644 doc/man-pages/pod1/symlink.pod create mode 100644 doc/man-pages/pod1/symlink_list.pod create mode 100644 doc/man-pages/pod1/symlink_make.pod create mode 100644 doc/man-pages/pod1/symlink_remove.pod create mode 100644 doc/man-pages/pod1/sys.pod create mode 100644 doc/man-pages/pod1/tokens.pod create mode 100644 doc/man-pages/pod1/translate_et.pod create mode 100644 doc/man-pages/pod1/udebug.pod create mode 100644 doc/man-pages/pod1/unlog.pod create mode 100644 doc/man-pages/pod1/up.pod create mode 100644 doc/man-pages/pod1/vos.pod.in create mode 100644 doc/man-pages/pod1/vos_addsite.pod.in create mode 100644 doc/man-pages/pod1/vos_apropos.pod create mode 100644 doc/man-pages/pod1/vos_backup.pod.in create mode 100644 doc/man-pages/pod1/vos_backupsys.pod.in create mode 100644 doc/man-pages/pod1/vos_changeaddr.pod.in create mode 100644 doc/man-pages/pod1/vos_changeloc.pod.in create mode 100644 doc/man-pages/pod1/vos_clone.pod.in create mode 100644 doc/man-pages/pod1/vos_convertROtoRW.pod.in create mode 100644 doc/man-pages/pod1/vos_copy.pod.in create mode 100644 doc/man-pages/pod1/vos_create.pod.in create mode 100644 doc/man-pages/pod1/vos_delentry.pod.in create mode 100644 doc/man-pages/pod1/vos_dump.pod.in create mode 100644 doc/man-pages/pod1/vos_endtrans.pod.in create mode 100644 doc/man-pages/pod1/vos_examine.pod.in create mode 100644 doc/man-pages/pod1/vos_help.pod create mode 100644 doc/man-pages/pod1/vos_listaddrs.pod.in create mode 100644 doc/man-pages/pod1/vos_listpart.pod.in create mode 100644 doc/man-pages/pod1/vos_listvldb.pod.in create mode 100644 doc/man-pages/pod1/vos_listvol.pod.in create mode 100644 doc/man-pages/pod1/vos_lock.pod.in create mode 100644 doc/man-pages/pod1/vos_move.pod.in create mode 100644 doc/man-pages/pod1/vos_offline.pod.in create mode 100644 doc/man-pages/pod1/vos_online.pod.in create mode 100644 doc/man-pages/pod1/vos_partinfo.pod.in create mode 100644 doc/man-pages/pod1/vos_release.pod.in create mode 100644 doc/man-pages/pod1/vos_remaddrs.pod.in create mode 100644 doc/man-pages/pod1/vos_remove.pod.in create mode 100644 doc/man-pages/pod1/vos_remsite.pod.in create mode 100644 doc/man-pages/pod1/vos_rename.pod.in create mode 100644 doc/man-pages/pod1/vos_restore.pod.in create mode 100644 doc/man-pages/pod1/vos_setaddrs.pod.in create mode 100644 doc/man-pages/pod1/vos_setfields.pod.in create mode 100644 doc/man-pages/pod1/vos_shadow.pod.in create mode 100644 doc/man-pages/pod1/vos_size.pod.in create mode 100644 doc/man-pages/pod1/vos_status.pod.in create mode 100644 doc/man-pages/pod1/vos_syncserv.pod.in create mode 100644 doc/man-pages/pod1/vos_syncvldb.pod.in create mode 100644 doc/man-pages/pod1/vos_unlock.pod.in create mode 100644 doc/man-pages/pod1/vos_unlockvldb.pod.in create mode 100644 doc/man-pages/pod1/vos_zap.pod.in create mode 100644 doc/man-pages/pod1/xstat_cm_test.pod create mode 100644 doc/man-pages/pod1/xstat_fs_test.pod create mode 100644 doc/man-pages/pod3/AFS.ukernel.pod create mode 100644 doc/man-pages/pod5/AuthLog.dir.pod create mode 100644 doc/man-pages/pod5/AuthLog.pod create mode 100644 doc/man-pages/pod5/BackupLog.pod create mode 100644 doc/man-pages/pod5/BosConfig.pod create mode 100644 doc/man-pages/pod5/BosLog.pod create mode 100644 doc/man-pages/pod5/CellAlias.pod create mode 100644 doc/man-pages/pod5/CellServDB.pod create mode 100644 doc/man-pages/pod5/FORCESALVAGE.pod create mode 100644 doc/man-pages/pod5/FileLog.pod create mode 100644 doc/man-pages/pod5/KeyFile.pod create mode 100644 doc/man-pages/pod5/KeyFileExt.pod create mode 100644 doc/man-pages/pod5/NetInfo.pod create mode 100644 doc/man-pages/pod5/NetRestrict.pod create mode 100644 doc/man-pages/pod5/NoAuth.pod create mode 100644 doc/man-pages/pod5/PtLog.pod create mode 100644 doc/man-pages/pod5/SALVAGE.fs.pod create mode 100644 doc/man-pages/pod5/SalvageLog.pod create mode 100644 doc/man-pages/pod5/ThisCell.pod create mode 100644 doc/man-pages/pod5/UserList.pod create mode 100644 doc/man-pages/pod5/VLLog.pod create mode 100644 doc/man-pages/pod5/VolserLog.pod create mode 100644 doc/man-pages/pod5/afs.pod create mode 100644 doc/man-pages/pod5/afs_cache.pod create mode 100644 doc/man-pages/pod5/afs_volume_header.pod create mode 100644 doc/man-pages/pod5/afsmonitor.pod create mode 100644 doc/man-pages/pod5/afszcm.cat.pod create mode 100644 doc/man-pages/pod5/bdb.DB0.pod create mode 100644 doc/man-pages/pod5/butc.pod create mode 100644 doc/man-pages/pod5/butc_logs.pod create mode 100644 doc/man-pages/pod5/cacheinfo.pod create mode 100644 doc/man-pages/pod5/fms.log.pod create mode 100644 doc/man-pages/pod5/kaserver.DB0.pod create mode 100644 doc/man-pages/pod5/kaserverauxdb.pod create mode 100644 doc/man-pages/pod5/krb.conf.pod create mode 100644 doc/man-pages/pod5/krb.excl.pod create mode 100644 doc/man-pages/pod5/prdb.DB0.pod create mode 100644 doc/man-pages/pod5/salvage.lock.pod create mode 100644 doc/man-pages/pod5/sysid.pod create mode 100644 doc/man-pages/pod5/tapeconfig.pod create mode 100644 doc/man-pages/pod5/uss.pod create mode 100644 doc/man-pages/pod5/uss_bulk.pod create mode 100644 doc/man-pages/pod5/vldb.DB0.pod create mode 100644 doc/man-pages/pod8/.gitignore create mode 100644 doc/man-pages/pod8/afsd.pod create mode 100644 doc/man-pages/pod8/akeyconvert.pod create mode 100644 doc/man-pages/pod8/aklog_dynamic_auth.pod create mode 100644 doc/man-pages/pod8/asetkey.pod create mode 100644 doc/man-pages/pod8/backup.pod create mode 100644 doc/man-pages/pod8/backup_adddump.pod create mode 100644 doc/man-pages/pod8/backup_addhost.pod create mode 100644 doc/man-pages/pod8/backup_addvolentry.pod create mode 100644 doc/man-pages/pod8/backup_addvolset.pod create mode 100644 doc/man-pages/pod8/backup_apropos.pod create mode 100644 doc/man-pages/pod8/backup_dbverify.pod create mode 100644 doc/man-pages/pod8/backup_deldump.pod create mode 100644 doc/man-pages/pod8/backup_deletedump.pod create mode 100644 doc/man-pages/pod8/backup_delhost.pod create mode 100644 doc/man-pages/pod8/backup_delvolentry.pod create mode 100644 doc/man-pages/pod8/backup_delvolset.pod create mode 100644 doc/man-pages/pod8/backup_diskrestore.pod create mode 100644 doc/man-pages/pod8/backup_dump.pod create mode 100644 doc/man-pages/pod8/backup_dumpinfo.pod create mode 100644 doc/man-pages/pod8/backup_help.pod create mode 100644 doc/man-pages/pod8/backup_interactive.pod create mode 100644 doc/man-pages/pod8/backup_jobs.pod create mode 100644 doc/man-pages/pod8/backup_kill.pod create mode 100644 doc/man-pages/pod8/backup_labeltape.pod create mode 100644 doc/man-pages/pod8/backup_listdumps.pod create mode 100644 doc/man-pages/pod8/backup_listhosts.pod create mode 100644 doc/man-pages/pod8/backup_listvolsets.pod create mode 100644 doc/man-pages/pod8/backup_quit.pod create mode 100644 doc/man-pages/pod8/backup_readlabel.pod create mode 100644 doc/man-pages/pod8/backup_restoredb.pod create mode 100644 doc/man-pages/pod8/backup_savedb.pod create mode 100644 doc/man-pages/pod8/backup_scantape.pod create mode 100644 doc/man-pages/pod8/backup_setexp.pod create mode 100644 doc/man-pages/pod8/backup_status.pod create mode 100644 doc/man-pages/pod8/backup_volinfo.pod create mode 100644 doc/man-pages/pod8/backup_volrestore.pod create mode 100644 doc/man-pages/pod8/backup_volsetrestore.pod create mode 100644 doc/man-pages/pod8/bos.pod create mode 100644 doc/man-pages/pod8/bos_addhost.pod create mode 100644 doc/man-pages/pod8/bos_addkey.pod create mode 100644 doc/man-pages/pod8/bos_adduser.pod create mode 100644 doc/man-pages/pod8/bos_apropos.pod create mode 100644 doc/man-pages/pod8/bos_create.pod create mode 100644 doc/man-pages/pod8/bos_delete.pod create mode 100644 doc/man-pages/pod8/bos_exec.pod create mode 100644 doc/man-pages/pod8/bos_getdate.pod create mode 100644 doc/man-pages/pod8/bos_getlog.pod create mode 100644 doc/man-pages/pod8/bos_getrestart.pod create mode 100644 doc/man-pages/pod8/bos_getrestricted.pod create mode 100644 doc/man-pages/pod8/bos_help.pod create mode 100644 doc/man-pages/pod8/bos_install.pod create mode 100644 doc/man-pages/pod8/bos_listhosts.pod create mode 100644 doc/man-pages/pod8/bos_listkeys.pod create mode 100644 doc/man-pages/pod8/bos_listusers.pod create mode 100644 doc/man-pages/pod8/bos_prune.pod create mode 100644 doc/man-pages/pod8/bos_removehost.pod create mode 100644 doc/man-pages/pod8/bos_removekey.pod create mode 100644 doc/man-pages/pod8/bos_removeuser.pod create mode 100644 doc/man-pages/pod8/bos_restart.pod create mode 100644 doc/man-pages/pod8/bos_salvage.pod create mode 100644 doc/man-pages/pod8/bos_setauth.pod create mode 100644 doc/man-pages/pod8/bos_setcellname.pod create mode 100644 doc/man-pages/pod8/bos_setrestart.pod create mode 100644 doc/man-pages/pod8/bos_setrestricted.pod create mode 100644 doc/man-pages/pod8/bos_shutdown.pod create mode 100644 doc/man-pages/pod8/bos_start.pod create mode 100644 doc/man-pages/pod8/bos_startup.pod create mode 100644 doc/man-pages/pod8/bos_status.pod create mode 100644 doc/man-pages/pod8/bos_stop.pod create mode 100644 doc/man-pages/pod8/bos_uninstall.pod create mode 100644 doc/man-pages/pod8/bos_util.pod create mode 100644 doc/man-pages/pod8/bosserver.pod create mode 100644 doc/man-pages/pod8/buserver.pod create mode 100644 doc/man-pages/pod8/butc.pod create mode 100644 doc/man-pages/pod8/dafileserver.pod.in create mode 100644 doc/man-pages/pod8/dasalvager.pod.in create mode 100644 doc/man-pages/pod8/davolserver.pod.in create mode 100644 doc/man-pages/pod8/fileserver.pod.in create mode 100644 doc/man-pages/pod8/fms.pod create mode 100644 doc/man-pages/pod8/fragments/dafileserver-synopsis.pod create mode 100644 doc/man-pages/pod8/fragments/dasalvager-synopsis.pod create mode 100644 doc/man-pages/pod8/fragments/davolserver-synopsis.pod create mode 100644 doc/man-pages/pod8/fragments/fileserver-also.pod create mode 100644 doc/man-pages/pod8/fragments/fileserver-cautions.pod create mode 100644 doc/man-pages/pod8/fragments/fileserver-copyright.pod create mode 100644 doc/man-pages/pod8/fragments/fileserver-description.pod create mode 100644 doc/man-pages/pod8/fragments/fileserver-options.pod create mode 100644 doc/man-pages/pod8/fragments/fileserver-privilege.pod create mode 100644 doc/man-pages/pod8/fragments/fileserver-synopsis.pod create mode 100644 doc/man-pages/pod8/fragments/fileserver-troubleshooting.pod create mode 100644 doc/man-pages/pod8/fragments/salvager-also.pod create mode 100644 doc/man-pages/pod8/fragments/salvager-description.pod create mode 100644 doc/man-pages/pod8/fragments/salvager-options.pod create mode 100644 doc/man-pages/pod8/fragments/salvager-privilege.pod create mode 100644 doc/man-pages/pod8/fragments/salvager-synopsis.pod create mode 100644 doc/man-pages/pod8/fragments/volserver-also.pod create mode 100644 doc/man-pages/pod8/fragments/volserver-description.pod create mode 100644 doc/man-pages/pod8/fragments/volserver-options.pod create mode 100644 doc/man-pages/pod8/fragments/volserver-privilege.pod create mode 100644 doc/man-pages/pod8/fragments/volserver-synopsis.pod create mode 100644 doc/man-pages/pod8/fssync-debug.pod create mode 100644 doc/man-pages/pod8/fssync-debug_attach.pod create mode 100644 doc/man-pages/pod8/fssync-debug_callback.pod create mode 100644 doc/man-pages/pod8/fssync-debug_detach.pod create mode 100644 doc/man-pages/pod8/fssync-debug_error.pod create mode 100644 doc/man-pages/pod8/fssync-debug_header.pod create mode 100644 doc/man-pages/pod8/fssync-debug_leaveoff.pod create mode 100644 doc/man-pages/pod8/fssync-debug_list.pod create mode 100644 doc/man-pages/pod8/fssync-debug_mode.pod create mode 100644 doc/man-pages/pod8/fssync-debug_move.pod create mode 100644 doc/man-pages/pod8/fssync-debug_offline.pod create mode 100644 doc/man-pages/pod8/fssync-debug_online.pod create mode 100644 doc/man-pages/pod8/fssync-debug_query.pod create mode 100644 doc/man-pages/pod8/fssync-debug_stats.pod create mode 100644 doc/man-pages/pod8/fssync-debug_vgcadd.pod create mode 100644 doc/man-pages/pod8/fssync-debug_vgcdel.pod create mode 100644 doc/man-pages/pod8/fssync-debug_vgcquery.pod create mode 100644 doc/man-pages/pod8/fssync-debug_vgcscan.pod create mode 100644 doc/man-pages/pod8/fssync-debug_vgcscanall.pod create mode 100644 doc/man-pages/pod8/fssync-debug_vnode.pod create mode 100644 doc/man-pages/pod8/fssync-debug_volop.pod create mode 100644 doc/man-pages/pod8/fstrace.pod create mode 100644 doc/man-pages/pod8/fstrace_apropos.pod create mode 100644 doc/man-pages/pod8/fstrace_clear.pod create mode 100644 doc/man-pages/pod8/fstrace_dump.pod create mode 100644 doc/man-pages/pod8/fstrace_help.pod create mode 100644 doc/man-pages/pod8/fstrace_lslog.pod create mode 100644 doc/man-pages/pod8/fstrace_lsset.pod create mode 100644 doc/man-pages/pod8/fstrace_setlog.pod create mode 100644 doc/man-pages/pod8/fstrace_setset.pod create mode 100644 doc/man-pages/pod8/ka-forwarder.pod create mode 100644 doc/man-pages/pod8/kadb_check.pod create mode 100644 doc/man-pages/pod8/kas.pod create mode 100644 doc/man-pages/pod8/kas_apropos.pod create mode 100644 doc/man-pages/pod8/kas_create.pod create mode 100644 doc/man-pages/pod8/kas_delete.pod create mode 100644 doc/man-pages/pod8/kas_examine.pod create mode 100644 doc/man-pages/pod8/kas_forgetticket.pod create mode 100644 doc/man-pages/pod8/kas_help.pod create mode 100644 doc/man-pages/pod8/kas_interactive.pod create mode 100644 doc/man-pages/pod8/kas_list.pod create mode 100644 doc/man-pages/pod8/kas_listtickets.pod create mode 100644 doc/man-pages/pod8/kas_noauthentication.pod create mode 100644 doc/man-pages/pod8/kas_quit.pod create mode 100644 doc/man-pages/pod8/kas_setfields.pod create mode 100644 doc/man-pages/pod8/kas_setpassword.pod create mode 100644 doc/man-pages/pod8/kas_statistics.pod create mode 100644 doc/man-pages/pod8/kas_stringtokey.pod create mode 100644 doc/man-pages/pod8/kas_unlock.pod create mode 100644 doc/man-pages/pod8/kaserver.pod create mode 100644 doc/man-pages/pod8/kdb.pod create mode 100644 doc/man-pages/pod8/kpwvalid.pod create mode 100644 doc/man-pages/pod8/prdb_check.pod create mode 100644 doc/man-pages/pod8/pt_util.pod create mode 100644 doc/man-pages/pod8/ptserver.pod create mode 100644 doc/man-pages/pod8/read_tape.pod create mode 100644 doc/man-pages/pod8/rmtsysd.pod create mode 100644 doc/man-pages/pod8/salvager.pod.in create mode 100644 doc/man-pages/pod8/salvageserver.pod create mode 100644 doc/man-pages/pod8/state_analyzer.pod create mode 100644 doc/man-pages/pod8/upclient.pod create mode 100644 doc/man-pages/pod8/upserver.pod create mode 100644 doc/man-pages/pod8/uss.pod create mode 100644 doc/man-pages/pod8/uss_add.pod create mode 100644 doc/man-pages/pod8/uss_apropos.pod create mode 100644 doc/man-pages/pod8/uss_bulk.pod create mode 100644 doc/man-pages/pod8/uss_delete.pod create mode 100644 doc/man-pages/pod8/uss_help.pod create mode 100644 doc/man-pages/pod8/vldb_check.pod create mode 100644 doc/man-pages/pod8/vldb_convert.pod create mode 100644 doc/man-pages/pod8/vlserver.pod create mode 100644 doc/man-pages/pod8/voldump.pod create mode 100644 doc/man-pages/pod8/volinfo.pod create mode 100644 doc/man-pages/pod8/volscan.pod create mode 100644 doc/man-pages/pod8/volserver.pod.in create mode 100644 doc/man-pages/pod8/vsys.pod create mode 100644 doc/man-pages/pod8/xfs_size_check.pod create mode 100644 doc/man-pages/style.css create mode 100644 doc/pdf/archov-doc.pdf create mode 100644 doc/pdf/asrv-ispec.pdf create mode 100644 doc/pdf/bsrv-spec.pdf create mode 100644 doc/pdf/fscm-ispec.pdf create mode 100644 doc/pdf/rx-spec.pdf create mode 100644 doc/pdf/vvl-spec.pdf create mode 100644 doc/protocol/bos-spec.h create mode 100644 doc/protocol/fs-cm-spec.h create mode 100644 doc/protocol/rfc5864.txt create mode 100644 doc/protocol/rx-spec.h create mode 100644 doc/protocol/vldb-vol-spec.h create mode 100644 doc/txt/README create mode 100644 doc/txt/afs_rwlocks create mode 100644 doc/txt/arch-overview.h create mode 100644 doc/txt/dafs-fsa.dot create mode 100644 doc/txt/dafs-overview.txt create mode 100644 doc/txt/dafs-vnode-fsa.dot create mode 100644 doc/txt/examples/CellAlias create mode 100644 doc/txt/file-reorg create mode 100644 doc/txt/fssync.txt create mode 100644 doc/txt/ka2heim.txt create mode 100644 doc/txt/linux-nfstrans create mode 100644 doc/txt/prdb.txt create mode 100644 doc/txt/rx-debug.txt create mode 100644 doc/txt/rx-spec.txt create mode 100644 doc/txt/ubik.txt create mode 100644 doc/txt/vldb.txt create mode 100644 doc/txt/vm-integration create mode 100644 doc/txt/winnotes/afs-changes-since-1.2.txt create mode 100644 doc/txt/winnotes/afs-integration.txt create mode 100644 doc/txt/winnotes/afs-issues.txt create mode 100644 doc/txt/winnotes/afsdb-freelance-notes create mode 100644 doc/txt/winnotes/performance.txt create mode 100644 doc/xml/.gitignore create mode 100644 doc/xml/AdminGuide/.gitignore create mode 100644 doc/xml/AdminGuide/Makefile.in create mode 100644 doc/xml/AdminGuide/NTMakefile create mode 100644 doc/xml/AdminGuide/auagd000.png create mode 100644 doc/xml/AdminGuide/auagd000.xml create mode 100644 doc/xml/AdminGuide/auagd005.xml create mode 100644 doc/xml/AdminGuide/auagd006.xml create mode 100644 doc/xml/AdminGuide/auagd007.xml create mode 100644 doc/xml/AdminGuide/auagd008.xml create mode 100644 doc/xml/AdminGuide/auagd009.xml create mode 100644 doc/xml/AdminGuide/auagd010.xml create mode 100644 doc/xml/AdminGuide/auagd011.xml create mode 100644 doc/xml/AdminGuide/auagd012.xml create mode 100644 doc/xml/AdminGuide/auagd013.xml create mode 100644 doc/xml/AdminGuide/auagd014.xml create mode 100644 doc/xml/AdminGuide/auagd015.xml create mode 100644 doc/xml/AdminGuide/auagd017.xml create mode 100644 doc/xml/AdminGuide/auagd018.xml create mode 100644 doc/xml/AdminGuide/auagd019.xml create mode 100644 doc/xml/AdminGuide/auagd020.xml create mode 100644 doc/xml/AdminGuide/auagd021.xml create mode 100644 doc/xml/AdminGuide/auagd022.xml create mode 100644 doc/xml/AdminGuide/auagd023.xml create mode 100644 doc/xml/AdminGuide/auagd024.xml create mode 100644 doc/xml/AdminGuide/auagd025.xml create mode 100644 doc/xml/AdminGuide/cachmgr.png create mode 100644 doc/xml/AdminGuide/fserver1.png create mode 100644 doc/xml/AdminGuide/fserver2.png create mode 100644 doc/xml/AdminGuide/overview.png create mode 100644 doc/xml/AdminGuide/scout1.png create mode 100644 doc/xml/AdminGuide/scout2.png create mode 100644 doc/xml/AdminGuide/scout3.png create mode 100644 doc/xml/AdminGuide/scout4.png create mode 100644 doc/xml/AdminGuide/vnode.png create mode 100644 doc/xml/AdminRef/Makefile.in create mode 100644 doc/xml/AdminRef/auarf000.png create mode 100644 doc/xml/AdminRef/auarf000.xml create mode 100755 doc/xml/AdminRef/generate-xml.pl create mode 100755 doc/xml/AdminRef/pod2refentry create mode 100644 doc/xml/AdminRef/preface.xml create mode 100644 doc/xml/QuickStartUnix/.gitignore create mode 100644 doc/xml/QuickStartUnix/Makefile.in create mode 100644 doc/xml/QuickStartUnix/NTMakefile create mode 100644 doc/xml/QuickStartUnix/appendix.xml create mode 100644 doc/xml/QuickStartUnix/appendix_dafs.xml create mode 100644 doc/xml/QuickStartUnix/auqbg000.png create mode 100644 doc/xml/QuickStartUnix/auqbg000.xml create mode 100644 doc/xml/QuickStartUnix/auqbg003.xml create mode 100644 doc/xml/QuickStartUnix/auqbg004.xml create mode 100644 doc/xml/QuickStartUnix/auqbg005.xml create mode 100644 doc/xml/QuickStartUnix/auqbg006.xml create mode 100644 doc/xml/QuickStartUnix/auqbg007.xml create mode 100644 doc/xml/QuickStartUnix/auqbg008.xml create mode 100644 doc/xml/ReleaseNotesWindows/.gitignore create mode 100644 doc/xml/ReleaseNotesWindows/NTMakefile create mode 100644 doc/xml/ReleaseNotesWindows/relnotes.xml create mode 100644 doc/xml/ReleaseNotesWindows/relnotes00.jpg create mode 100644 doc/xml/ReleaseNotesWindows/relnotes01.jpg create mode 100644 doc/xml/ReleaseNotesWindows/relnotes02.jpg create mode 100644 doc/xml/ReleaseNotesWindows/relnotes03.jpg create mode 100644 doc/xml/UserGuide/.gitignore create mode 100644 doc/xml/UserGuide/Makefile.in create mode 100644 doc/xml/UserGuide/NTMakefile create mode 100644 doc/xml/UserGuide/auusg000.png create mode 100644 doc/xml/UserGuide/auusg000.xml create mode 100644 doc/xml/UserGuide/auusg003.xml create mode 100644 doc/xml/UserGuide/auusg004.xml create mode 100644 doc/xml/UserGuide/auusg005.xml create mode 100644 doc/xml/UserGuide/auusg006.xml create mode 100644 doc/xml/UserGuide/auusg007.xml create mode 100644 doc/xml/UserGuide/auusg008.xml create mode 100644 doc/xml/UserGuide/auusg009.xml create mode 100644 doc/xml/UserGuide/auusg010.xml create mode 100644 doc/xml/UserGuide/auusg011.xml create mode 100644 doc/xml/UserGuide/auusg012.xml create mode 100644 doc/xml/banner.gif create mode 100644 doc/xml/books.gif create mode 100644 doc/xml/down.gif create mode 100644 doc/xml/home.gif create mode 100644 doc/xml/index.gif create mode 100644 doc/xml/index.html create mode 100644 doc/xml/logo.jpg create mode 100644 doc/xml/mobi-fixup.xsl.in create mode 100644 doc/xml/next.gif create mode 100644 doc/xml/prev.gif create mode 100644 doc/xml/up.gif create mode 100644 libafsdep create mode 100755 regen.sh create mode 100644 src/.gitignore create mode 100644 src/DOLASTCMP.BAT create mode 100644 src/JAVA/classes/.classpath create mode 100644 src/JAVA/classes/.gitignore create mode 100644 src/JAVA/classes/.project create mode 100644 src/JAVA/classes/ErrorMessages.properties create mode 100644 src/JAVA/classes/org/openafs/jafs/ACL.java create mode 100644 src/JAVA/classes/org/openafs/jafs/AFSException.java create mode 100644 src/JAVA/classes/org/openafs/jafs/AFSFileException.java create mode 100644 src/JAVA/classes/org/openafs/jafs/AFSSecurityException.java create mode 100644 src/JAVA/classes/org/openafs/jafs/Cell.java create mode 100644 src/JAVA/classes/org/openafs/jafs/ErrorTable.java create mode 100644 src/JAVA/classes/org/openafs/jafs/File.java create mode 100644 src/JAVA/classes/org/openafs/jafs/FileInputStream.java create mode 100644 src/JAVA/classes/org/openafs/jafs/FileOutputStream.java create mode 100644 src/JAVA/classes/org/openafs/jafs/Group.java create mode 100644 src/JAVA/classes/org/openafs/jafs/Key.java create mode 100644 src/JAVA/classes/org/openafs/jafs/PTSEntry.java create mode 100644 src/JAVA/classes/org/openafs/jafs/Partition.java create mode 100644 src/JAVA/classes/org/openafs/jafs/Process.java create mode 100644 src/JAVA/classes/org/openafs/jafs/Server.java create mode 100644 src/JAVA/classes/org/openafs/jafs/Token.java create mode 100644 src/JAVA/classes/org/openafs/jafs/User.java create mode 100644 src/JAVA/classes/org/openafs/jafs/VersionInfo.java create mode 100644 src/JAVA/classes/org/openafs/jafs/Volume.java create mode 100644 src/JAVA/classes/testAFS.java create mode 100644 src/JAVA/libjafs/ACL.c create mode 100644 src/JAVA/libjafs/AdminToken.c create mode 100644 src/JAVA/libjafs/Cell.c create mode 100644 src/JAVA/libjafs/ChangeLog create mode 100644 src/JAVA/libjafs/Exceptions.h create mode 100644 src/JAVA/libjafs/File.c create mode 100644 src/JAVA/libjafs/FileInputStream.c create mode 100644 src/JAVA/libjafs/FileOutputStream.c create mode 100644 src/JAVA/libjafs/GetNativeString.c create mode 100644 src/JAVA/libjafs/GetNativeString.h create mode 100644 src/JAVA/libjafs/Group.c create mode 100644 src/JAVA/libjafs/Internal.c create mode 100644 src/JAVA/libjafs/Internal.h create mode 100644 src/JAVA/libjafs/JAFS_README create mode 100644 src/JAVA/libjafs/JAFS_Version.h create mode 100644 src/JAVA/libjafs/Key.c create mode 100644 src/JAVA/libjafs/Makefile.in create mode 100644 src/JAVA/libjafs/Partition.c create mode 100644 src/JAVA/libjafs/Process.c create mode 100644 src/JAVA/libjafs/README create mode 100644 src/JAVA/libjafs/Server.c create mode 100644 src/JAVA/libjafs/User.c create mode 100644 src/JAVA/libjafs/UserToken.c create mode 100644 src/JAVA/libjafs/Version2.c create mode 100644 src/JAVA/libjafs/VersionInfo.c create mode 100644 src/JAVA/libjafs/Volume.c create mode 100644 src/JAVA/libjafs/etc/CacheConfig create mode 100644 src/JAVA/libjafs/etc/CacheConfig.100MB create mode 100644 src/JAVA/libjafs/etc/CacheConfig.40MB create mode 100755 src/NTObjdir create mode 100644 src/SOURCE-MAP create mode 100644 src/TechNotes-JavaAPI create mode 100644 src/afs/.gitignore create mode 100644 src/afs/AIX/osi_assem.s create mode 100644 src/afs/AIX/osi_assem32.s create mode 100644 src/afs/AIX/osi_assem64.s create mode 100644 src/afs/AIX/osi_config.c create mode 100644 src/afs/AIX/osi_file.c create mode 100644 src/afs/AIX/osi_gcpags.c create mode 100644 src/afs/AIX/osi_groups.c create mode 100644 src/afs/AIX/osi_inode.c create mode 100644 src/afs/AIX/osi_inode.h create mode 100644 src/afs/AIX/osi_machdep.h create mode 100644 src/afs/AIX/osi_misc.c create mode 100644 src/afs/AIX/osi_prototypes.h create mode 100644 src/afs/AIX/osi_sleep.c create mode 100644 src/afs/AIX/osi_timeout.c create mode 100644 src/afs/AIX/osi_vcache.c create mode 100644 src/afs/AIX/osi_vfs.h create mode 100644 src/afs/AIX/osi_vfsops.c create mode 100644 src/afs/AIX/osi_vm.c create mode 100644 src/afs/AIX/osi_vnodeops.c create mode 100644 src/afs/DARWIN/osi_crypto.c create mode 100644 src/afs/DARWIN/osi_file.c create mode 100644 src/afs/DARWIN/osi_gcpags.c create mode 100644 src/afs/DARWIN/osi_groups.c create mode 100644 src/afs/DARWIN/osi_inode.c create mode 100644 src/afs/DARWIN/osi_inode.h create mode 100644 src/afs/DARWIN/osi_machdep.h create mode 100644 src/afs/DARWIN/osi_misc.c create mode 100644 src/afs/DARWIN/osi_module.c create mode 100644 src/afs/DARWIN/osi_prototypes.h create mode 100644 src/afs/DARWIN/osi_sleep.c create mode 100644 src/afs/DARWIN/osi_vcache.c create mode 100644 src/afs/DARWIN/osi_vfsops.c create mode 100644 src/afs/DARWIN/osi_vm.c create mode 100644 src/afs/DARWIN/osi_vnodeops.c create mode 100644 src/afs/DFBSD/osi_gcpags.c create mode 100644 src/afs/DFBSD/osi_inode.h create mode 100644 src/afs/DFBSD/osi_prototypes.h create mode 100644 src/afs/FBSD/opt_posix.h create mode 100644 src/afs/FBSD/osi_crypto.c create mode 100644 src/afs/FBSD/osi_file.c create mode 100644 src/afs/FBSD/osi_gcpags.c create mode 100644 src/afs/FBSD/osi_groups.c create mode 100644 src/afs/FBSD/osi_inode.c create mode 100644 src/afs/FBSD/osi_inode.h create mode 100644 src/afs/FBSD/osi_machdep.h create mode 100644 src/afs/FBSD/osi_misc.c create mode 100644 src/afs/FBSD/osi_module.c create mode 100644 src/afs/FBSD/osi_prototypes.h create mode 100644 src/afs/FBSD/osi_sleep.c create mode 100644 src/afs/FBSD/osi_vcache.c create mode 100644 src/afs/FBSD/osi_vfsops.c create mode 100644 src/afs/FBSD/osi_vm.c create mode 100644 src/afs/FBSD/osi_vnodeops.c create mode 100644 src/afs/HPUX/hpux_mod.modmeta create mode 100644 src/afs/HPUX/osi_debug.c create mode 100644 src/afs/HPUX/osi_file.c create mode 100644 src/afs/HPUX/osi_gcpags.c create mode 100644 src/afs/HPUX/osi_groups.c create mode 100644 src/afs/HPUX/osi_inode.c create mode 100644 src/afs/HPUX/osi_inode.h create mode 100644 src/afs/HPUX/osi_machdep.h create mode 100644 src/afs/HPUX/osi_misc.c create mode 100644 src/afs/HPUX/osi_prototypes.h create mode 100644 src/afs/HPUX/osi_sleep.c create mode 100644 src/afs/HPUX/osi_vcache.c create mode 100644 src/afs/HPUX/osi_vfs.h create mode 100644 src/afs/HPUX/osi_vfsops.c create mode 100644 src/afs/HPUX/osi_vm.c create mode 100644 src/afs/HPUX/osi_vnodeops.c create mode 100644 src/afs/IRIX/osi_crypto.c create mode 100644 src/afs/IRIX/osi_file.c create mode 100644 src/afs/IRIX/osi_gcpags.c create mode 100644 src/afs/IRIX/osi_groups.c create mode 100644 src/afs/IRIX/osi_idbg.c create mode 100644 src/afs/IRIX/osi_inode.c create mode 100644 src/afs/IRIX/osi_inode.h create mode 100644 src/afs/IRIX/osi_machdep.h create mode 100644 src/afs/IRIX/osi_misc.c create mode 100644 src/afs/IRIX/osi_prototypes.h create mode 100644 src/afs/IRIX/osi_sleep.c create mode 100644 src/afs/IRIX/osi_vcache.c create mode 100644 src/afs/IRIX/osi_vfs.h create mode 100644 src/afs/IRIX/osi_vfsops.c create mode 100644 src/afs/IRIX/osi_vm.c create mode 100644 src/afs/IRIX/osi_vnodeops.c create mode 100644 src/afs/LINUX/osi_alloc.c create mode 100644 src/afs/LINUX/osi_compat.h create mode 100644 src/afs/LINUX/osi_cred.c create mode 100644 src/afs/LINUX/osi_crypto.c create mode 100644 src/afs/LINUX/osi_export.c create mode 100644 src/afs/LINUX/osi_file.c create mode 100644 src/afs/LINUX/osi_flush.s create mode 100644 src/afs/LINUX/osi_gcpags.c create mode 100644 src/afs/LINUX/osi_groups.c create mode 100644 src/afs/LINUX/osi_inode.c create mode 100644 src/afs/LINUX/osi_inode.h create mode 100644 src/afs/LINUX/osi_ioctl.c create mode 100644 src/afs/LINUX/osi_machdep.h create mode 100644 src/afs/LINUX/osi_misc.c create mode 100644 src/afs/LINUX/osi_module.c create mode 100644 src/afs/LINUX/osi_nfssrv.c create mode 100644 src/afs/LINUX/osi_pag_module.c create mode 100644 src/afs/LINUX/osi_pagecopy.c create mode 100644 src/afs/LINUX/osi_pagecopy.h create mode 100644 src/afs/LINUX/osi_probe.c create mode 100644 src/afs/LINUX/osi_proc.c create mode 100644 src/afs/LINUX/osi_prototypes.h create mode 100644 src/afs/LINUX/osi_sleep.c create mode 100644 src/afs/LINUX/osi_syscall.c create mode 100644 src/afs/LINUX/osi_sysctl.c create mode 100644 src/afs/LINUX/osi_vcache.c create mode 100644 src/afs/LINUX/osi_vfs.h create mode 100644 src/afs/LINUX/osi_vfsops.c create mode 100644 src/afs/LINUX/osi_vm.c create mode 100644 src/afs/LINUX/osi_vnodeops.c create mode 100644 src/afs/Makefile.in create mode 100644 src/afs/NBSD/osi_crypto.c create mode 100644 src/afs/NBSD/osi_file.c create mode 100644 src/afs/NBSD/osi_gcpags.c create mode 100644 src/afs/NBSD/osi_groups.c create mode 100644 src/afs/NBSD/osi_inode.c create mode 100644 src/afs/NBSD/osi_inode.h create mode 100644 src/afs/NBSD/osi_kmod.c create mode 100644 src/afs/NBSD/osi_machdep.h create mode 100644 src/afs/NBSD/osi_misc.c create mode 100644 src/afs/NBSD/osi_prototypes.h create mode 100644 src/afs/NBSD/osi_sleep.c create mode 100644 src/afs/NBSD/osi_vcache.c create mode 100644 src/afs/NBSD/osi_vfs.h create mode 100644 src/afs/NBSD/osi_vfsops.c create mode 100644 src/afs/NBSD/osi_vm.c create mode 100644 src/afs/NBSD/osi_vnodeops.c create mode 100644 src/afs/NTMakefile create mode 100644 src/afs/OBSD/osi_crypto.c create mode 100644 src/afs/OBSD/osi_file.c create mode 100644 src/afs/OBSD/osi_gcpags.c create mode 100644 src/afs/OBSD/osi_groups.c create mode 100644 src/afs/OBSD/osi_inode.h create mode 100644 src/afs/OBSD/osi_machdep.h create mode 100644 src/afs/OBSD/osi_misc.c create mode 100644 src/afs/OBSD/osi_prototypes.h create mode 100644 src/afs/OBSD/osi_sleep.c create mode 100644 src/afs/OBSD/osi_vcache.c create mode 100644 src/afs/OBSD/osi_vfsops.c create mode 100644 src/afs/OBSD/osi_vm.c create mode 100644 src/afs/OBSD/osi_vnodeops.c create mode 100644 src/afs/SOLARIS/osi_crypto.c create mode 100644 src/afs/SOLARIS/osi_file.c create mode 100644 src/afs/SOLARIS/osi_gcpags.c create mode 100644 src/afs/SOLARIS/osi_groups.c create mode 100644 src/afs/SOLARIS/osi_inode.c create mode 100644 src/afs/SOLARIS/osi_inode.h create mode 100644 src/afs/SOLARIS/osi_ioctl.c create mode 100644 src/afs/SOLARIS/osi_machdep.h create mode 100644 src/afs/SOLARIS/osi_prototypes.h create mode 100644 src/afs/SOLARIS/osi_sleep.c create mode 100644 src/afs/SOLARIS/osi_vcache.c create mode 100644 src/afs/SOLARIS/osi_vfsops.c create mode 100644 src/afs/SOLARIS/osi_vm.c create mode 100644 src/afs/SOLARIS/osi_vnodeops.c create mode 100644 src/afs/SUNOS/osi_inode.h create mode 100644 src/afs/UKERNEL/afs_usrops.c create mode 100644 src/afs/UKERNEL/afs_usrops.h create mode 100644 src/afs/UKERNEL/afsd_uafs.c create mode 100644 src/afs/UKERNEL/afsincludes.h create mode 100644 src/afs/UKERNEL/osi_gcpags.c create mode 100644 src/afs/UKERNEL/osi_groups.c create mode 100644 src/afs/UKERNEL/osi_machdep.h create mode 100644 src/afs/UKERNEL/osi_prototypes.h create mode 100644 src/afs/UKERNEL/osi_vcache.c create mode 100644 src/afs/UKERNEL/osi_vfsops.c create mode 100644 src/afs/UKERNEL/osi_vm.c create mode 100644 src/afs/UKERNEL/osi_vnodeops.c create mode 100644 src/afs/UKERNEL/sysincludes.h create mode 100644 src/afs/VNOPS/afs_vnop_access.c create mode 100644 src/afs/VNOPS/afs_vnop_attrs.c create mode 100644 src/afs/VNOPS/afs_vnop_create.c create mode 100644 src/afs/VNOPS/afs_vnop_dirops.c create mode 100644 src/afs/VNOPS/afs_vnop_fid.c create mode 100644 src/afs/VNOPS/afs_vnop_flock.c create mode 100644 src/afs/VNOPS/afs_vnop_link.c create mode 100644 src/afs/VNOPS/afs_vnop_lookup.c create mode 100644 src/afs/VNOPS/afs_vnop_open.c create mode 100644 src/afs/VNOPS/afs_vnop_read.c create mode 100644 src/afs/VNOPS/afs_vnop_readdir.c create mode 100644 src/afs/VNOPS/afs_vnop_remove.c create mode 100644 src/afs/VNOPS/afs_vnop_rename.c create mode 100644 src/afs/VNOPS/afs_vnop_strategy.c create mode 100644 src/afs/VNOPS/afs_vnop_symlink.c create mode 100644 src/afs/VNOPS/afs_vnop_write.c create mode 100644 src/afs/afs.h create mode 100644 src/afs/afs_analyze.c create mode 100644 src/afs/afs_axscache.c create mode 100644 src/afs/afs_axscache.h create mode 100644 src/afs/afs_buffer.c create mode 100644 src/afs/afs_bypasscache.c create mode 100644 src/afs/afs_bypasscache.h create mode 100644 src/afs/afs_call.c create mode 100644 src/afs/afs_callback.c create mode 100644 src/afs/afs_cbqueue.c create mode 100644 src/afs/afs_cbqueue.h create mode 100644 src/afs/afs_cell.c create mode 100644 src/afs/afs_chunk.c create mode 100644 src/afs/afs_chunkops.h create mode 100644 src/afs/afs_conn.c create mode 100644 src/afs/afs_consts.h create mode 100644 src/afs/afs_daemons.c create mode 100644 src/afs/afs_dcache.c create mode 100644 src/afs/afs_disconnected.c create mode 100644 src/afs/afs_dynroot.c create mode 100644 src/afs/afs_dynroot.h create mode 100644 src/afs/afs_error.c create mode 100644 src/afs/afs_exporter.c create mode 100644 src/afs/afs_fetchstore.c create mode 100644 src/afs/afs_icl.c create mode 100644 src/afs/afs_init.c create mode 100644 src/afs/afs_lock.c create mode 100644 src/afs/afs_mariner.c create mode 100644 src/afs/afs_memcache.c create mode 100644 src/afs/afs_nfsclnt.c create mode 100644 src/afs/afs_nfsdisp.c create mode 100644 src/afs/afs_osi.c create mode 100644 src/afs/afs_osi.h create mode 100644 src/afs/afs_osi_alloc.c create mode 100644 src/afs/afs_osi_pag.c create mode 100644 src/afs/afs_osi_uio.c create mode 100644 src/afs/afs_osi_vget.c create mode 100644 src/afs/afs_osi_vm.c create mode 100644 src/afs/afs_osidnlc.c create mode 100644 src/afs/afs_osidnlc.h create mode 100644 src/afs/afs_pag_call.c create mode 100644 src/afs/afs_pag_cred.c create mode 100644 src/afs/afs_pioctl.c create mode 100644 src/afs/afs_prototypes.h create mode 100644 src/afs/afs_segments.c create mode 100644 src/afs/afs_server.c create mode 100644 src/afs/afs_stat.c create mode 100644 src/afs/afs_stats.h create mode 100644 src/afs/afs_syscall.c create mode 100644 src/afs/afs_tokens.c create mode 100644 src/afs/afs_trace.et create mode 100644 src/afs/afs_user.c create mode 100644 src/afs/afs_util.c create mode 100644 src/afs/afs_util.h create mode 100644 src/afs/afs_vcache.c create mode 100644 src/afs/afs_volume.c create mode 100644 src/afs/afs_warn.c create mode 100644 src/afs/afsincludes.h create mode 100644 src/afs/discon.h create mode 100644 src/afs/exporter.h create mode 100755 src/afs/findlocks create mode 100644 src/afs/libafsdep create mode 100644 src/afs/lock.h create mode 100644 src/afs/nfsclient.h create mode 100644 src/afs/sysctl.h create mode 100644 src/afs/sysincludes.h create mode 100644 src/afs/unified_afs.et create mode 100644 src/afs/unified_afs.p.h create mode 100644 src/afs/voldefs.h create mode 100644 src/afs/volerrors.h create mode 100644 src/afsd/.gitignore create mode 100644 src/afsd/CellServDB create mode 100644 src/afsd/Makefile.in create mode 100644 src/afsd/afs.conf.linux create mode 100644 src/afsd/afs.hpux102.driver create mode 100644 src/afsd/afs.hpux1122.driver create mode 100644 src/afsd/afs.rc.alpha create mode 100644 src/afsd/afs.rc.alpha_dux40 create mode 100644 src/afsd/afs.rc.darwin create mode 100644 src/afsd/afs.rc.darwin.plist create mode 100644 src/afsd/afs.rc.fbsd create mode 100644 src/afsd/afs.rc.hpux10 create mode 100644 src/afsd/afs.rc.linux create mode 100644 src/afsd/afs.rc.obsd create mode 100644 src/afsd/afs.rc.sgi create mode 100644 src/afsd/afs.rc.sgi_ipnos create mode 100644 src/afsd/afs.rc.solaris.2.11 create mode 100755 src/afsd/afs.rc.solaris.2.8 create mode 100644 src/afsd/afs.rc.solaris.2.9 create mode 100644 src/afsd/afs_rtsymtab.pl.sgi_53 create mode 100644 src/afsd/afs_rtsymtab.pl.sgi_61 create mode 100644 src/afsd/afsd.c create mode 100644 src/afsd/afsd.h create mode 100644 src/afsd/afsd_fuse.c create mode 100644 src/afsd/afsd_kernel.c create mode 100644 src/afsd/rc.afs.rs_aix create mode 100644 src/afsd/rc.afsd.large create mode 100644 src/afsd/rc.afsd.medium create mode 100644 src/afsd/rc.afsd.small create mode 100644 src/afsd/rc.dkload.client.rs_aix create mode 100644 src/afsd/rc.dkload.server.rs_aix create mode 100644 src/afsd/vsys.c create mode 100755 src/afsinstall/bin/AFSinstall create mode 100644 src/afsinstall/lib/InstallGuides/ALPHA_x/afsinstall.rc create mode 100644 src/afsinstall/lib/InstallGuides/ALPHA_x/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/ALPHA_x/build create mode 100644 src/afsinstall/lib/InstallGuides/ALPHA_x/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/ALPHA_x/modkernel.skip create mode 100644 src/afsinstall/lib/InstallGuides/ALPHA_x/rc create mode 100644 src/afsinstall/lib/InstallGuides/ALPHA_x/unix create mode 100644 src/afsinstall/lib/InstallGuides/ALPHA_x/vfsck create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/afsinstall.rc create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/clientconfig create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/dbserver create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/debug create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/fileserver create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/login create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/miscserver create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/other create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/rc create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/serveruser create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/tokens create mode 100644 src/afsinstall/lib/InstallGuides/GENERIC/unix create mode 100644 src/afsinstall/lib/InstallGuides/HP_UX1x/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/HP_UX1x/build create mode 100644 src/afsinstall/lib/InstallGuides/HP_UX1x/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/HP_UX1x/modkernel.skip create mode 100644 src/afsinstall/lib/InstallGuides/HPx00_UX9/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/HPx00_UX9/rc create mode 100644 src/afsinstall/lib/InstallGuides/HPx00_UX9/unix create mode 100644 src/afsinstall/lib/InstallGuides/HPx00_UX9/vfsck create mode 100644 src/afsinstall/lib/InstallGuides/HPx_UX10x/afsinstall.rc create mode 100644 src/afsinstall/lib/InstallGuides/HPx_UX10x/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/HPx_UX10x/build create mode 100644 src/afsinstall/lib/InstallGuides/HPx_UX10x/modkernel.skip create mode 100644 src/afsinstall/lib/InstallGuides/HPx_UX10x/rc create mode 100644 src/afsinstall/lib/InstallGuides/HPx_UX10x/unix create mode 100644 src/afsinstall/lib/InstallGuides/HPx_UX10x/vfsck create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX3x/login create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX3x/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX3x/rc create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX3x/unix create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX3x/vfsck create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX4x/login create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX4x/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX4x/rc create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX4x/unix create mode 100644 src/afsinstall/lib/InstallGuides/RS_AIX4x/vfsck create mode 100644 src/afsinstall/lib/InstallGuides/SGI_5x/afsinstall.rc create mode 100644 src/afsinstall/lib/InstallGuides/SGI_5x/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/SGI_5x/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/SGI_5x/vfsck.skip create mode 100644 src/afsinstall/lib/InstallGuides/SGI_6x/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/SGI_6x/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/SGI_6x/vfsck.skip create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/build create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/dbserver create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/fileserver create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/login create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/miscserver create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/rc create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/unix create mode 100644 src/afsinstall/lib/InstallGuides/SGI_x/vfsck.skip create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_4x/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_4x/build create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_4x/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_4x/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_4x/rc create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_4x/unix create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_4x/vfsck create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_5x/bldkernel.skip create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_5x/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_5x/rc create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_5x/unix create mode 100644 src/afsinstall/lib/InstallGuides/SUN4x_5x/vfsck create mode 100644 src/afsinstall/lib/InstallGuides/alpha_dux40/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/alpha_dux40/login create mode 100644 src/afsinstall/lib/InstallGuides/alpha_dux40/unix create mode 100644 src/afsinstall/lib/InstallGuides/hp700_ux100/build create mode 100644 src/afsinstall/lib/InstallGuides/hp700_ux100/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp700_ux101/build create mode 100644 src/afsinstall/lib/InstallGuides/hp700_ux101/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp700_ux90/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp700_ux90/build create mode 100644 src/afsinstall/lib/InstallGuides/hp700_ux90/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp800_ux100/build create mode 100644 src/afsinstall/lib/InstallGuides/hp800_ux100/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp800_ux101/build create mode 100644 src/afsinstall/lib/InstallGuides/hp800_ux101/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp800_ux90/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp800_ux90/build create mode 100644 src/afsinstall/lib/InstallGuides/hp800_ux90/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp_ux102/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/hp_ux102/build create mode 100644 src/afsinstall/lib/InstallGuides/hp_ux102/installkernel create mode 100644 src/afsinstall/lib/InstallGuides/info/bldkernel.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/build.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/clientconfig.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/dbserver.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/debug.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/fileserver.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/gui.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/installkernel.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/login.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/miscserver.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/modkernel.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/other.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/rc.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/serveruser.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/tokens.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/unix.toc create mode 100644 src/afsinstall/lib/InstallGuides/info/vfsck.toc create mode 100644 src/afsinstall/lib/InstallGuides/sgi_63/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/sgi_63/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/sgi_63/vfsck.skip create mode 100644 src/afsinstall/lib/InstallGuides/sgi_64/bldkernel create mode 100644 src/afsinstall/lib/InstallGuides/sgi_64/modkernel create mode 100644 src/afsinstall/lib/InstallGuides/sgi_64/vfsck.skip create mode 100644 src/afsinstall/lib/InstallGuides/sun4x_56/login create mode 100644 src/afsinstall/lib/InstallGuides/sun4x_56/unix create mode 100644 src/afsinstall/lib/InstallGuides/sun4x_56/vfsck create mode 100644 src/afsinstall/lib/patch.pl create mode 100644 src/afsmonitor/.gitignore create mode 100644 src/afsmonitor/Makefile.in create mode 100644 src/afsmonitor/afsmon-labels.h create mode 100644 src/afsmonitor/afsmon-output.c create mode 100644 src/afsmonitor/afsmon-parselog.c create mode 100644 src/afsmonitor/afsmon-win.c create mode 100644 src/afsmonitor/afsmonitor.c create mode 100644 src/afsmonitor/afsmonitor.h create mode 100644 src/afsweb/Makefile.in create mode 100644 src/afsweb/README create mode 100644 src/afsweb/README.BETA1 create mode 100644 src/afsweb/README.BETA2 create mode 100644 src/afsweb/TestPlan.txt create mode 100644 src/afsweb/WebSecure_Design.txt create mode 100644 src/afsweb/afswsApache_config.sh create mode 100755 src/afsweb/afswsNetscape_config.sh create mode 100644 src/afsweb/apache_afs_cache.c create mode 100644 src/afsweb/apache_afs_cache.h create mode 100644 src/afsweb/apache_afs_client.c create mode 100644 src/afsweb/apache_afs_module.c create mode 100644 src/afsweb/apache_afs_plugin.c create mode 100644 src/afsweb/apache_afs_utils.c create mode 100644 src/afsweb/apache_afs_utils.h create mode 100644 src/afsweb/apache_afs_weblog.c create mode 100644 src/afsweb/apache_api.h create mode 100644 src/afsweb/apache_includes/1.2/alloc.h create mode 100644 src/afsweb/apache_includes/1.2/buff.h create mode 100644 src/afsweb/apache_includes/1.2/conf.h create mode 100644 src/afsweb/apache_includes/1.2/http_conf_globals.h create mode 100644 src/afsweb/apache_includes/1.2/httpd.h create mode 100644 src/afsweb/apache_includes/1.3.1/alloc.h create mode 100644 src/afsweb/apache_includes/1.3.1/ap.h create mode 100644 src/afsweb/apache_includes/1.3.1/ap_compat.h create mode 100644 src/afsweb/apache_includes/1.3.1/ap_config.h create mode 100644 src/afsweb/apache_includes/1.3.1/ap_config_auto.h create mode 100644 src/afsweb/apache_includes/1.3.1/ap_ctype.h create mode 100644 src/afsweb/apache_includes/1.3.1/buff.h create mode 100644 src/afsweb/apache_includes/1.3.1/http_conf_globals.h create mode 100644 src/afsweb/apache_includes/1.3.1/httpd.h create mode 100644 src/afsweb/apache_includes/1.3.1/os.h create mode 100644 src/afsweb/apache_includes/1.3.1/util_uri.h create mode 100644 src/afsweb/apache_includes/1.3.6/alloc.h create mode 100644 src/afsweb/apache_includes/1.3.6/ap.h create mode 100644 src/afsweb/apache_includes/1.3.6/ap_compat.h create mode 100644 src/afsweb/apache_includes/1.3.6/ap_config.h create mode 100644 src/afsweb/apache_includes/1.3.6/ap_config_auto.h create mode 100644 src/afsweb/apache_includes/1.3.6/ap_ctype.h create mode 100644 src/afsweb/apache_includes/1.3.6/ap_mmn.h create mode 100644 src/afsweb/apache_includes/1.3.6/buff.h create mode 100644 src/afsweb/apache_includes/1.3.6/http_conf_globals.h create mode 100644 src/afsweb/apache_includes/1.3.6/httpd.h create mode 100644 src/afsweb/apache_includes/1.3.6/os-inline.c create mode 100644 src/afsweb/apache_includes/1.3.6/os.h create mode 100644 src/afsweb/apache_includes/1.3.6/util_uri.h create mode 100644 src/afsweb/apache_includes/alloc.h create mode 100644 src/afsweb/apache_includes/buff.h create mode 100644 src/afsweb/apache_includes/conf.h create mode 100644 src/afsweb/apache_includes/http_conf_globals.h create mode 100644 src/afsweb/apache_includes/httpd.h create mode 100644 src/afsweb/nsafs.c create mode 100644 src/afsweb/nsafs.h create mode 100644 src/afsweb/securehash.c create mode 100644 src/afsweb/weblog.c create mode 100644 src/afsweb/weblog_errors.h create mode 100644 src/aklog/.gitignore create mode 100644 src/aklog/Makefile.in create mode 100644 src/aklog/add_etbl.c create mode 100644 src/aklog/akeyconvert.c create mode 100644 src/aklog/aklog.c create mode 100644 src/aklog/aklog.h create mode 100644 src/aklog/asetkey.c create mode 100644 src/aklog/klog.c create mode 100644 src/aklog/krb_util.c create mode 100644 src/aklog/linked_list.c create mode 100644 src/aklog/linked_list.h create mode 100644 src/aklog/skipwrap.c create mode 100644 src/aklog/skipwrap.h create mode 100644 src/audit/Audit create mode 100644 src/audit/Makefile.in create mode 100644 src/audit/NTMakefile create mode 100644 src/audit/audit-api.h create mode 100644 src/audit/audit-file.c create mode 100644 src/audit/audit-sysvmq.c create mode 100644 src/audit/audit.c create mode 100644 src/audit/audit.h create mode 100644 src/audit/config.aix.sample create mode 100644 src/audit/events.aix.sample create mode 100644 src/audit/liboafs_audit.la.sym create mode 100644 src/audit/objects.aix.sample create mode 100644 src/auth/.gitignore create mode 100644 src/auth/Makefile.in create mode 100644 src/auth/NTMakefile create mode 100644 src/auth/acfg_errors.et create mode 100644 src/auth/auth.p.h create mode 100644 src/auth/authcon.c create mode 100644 src/auth/cellconfig.c create mode 100644 src/auth/cellconfig.p.h create mode 100644 src/auth/copyauth.c create mode 100644 src/auth/internal.h create mode 100644 src/auth/keys.c create mode 100644 src/auth/keys.h create mode 100644 src/auth/ktc.c create mode 100644 src/auth/ktc.h create mode 100644 src/auth/ktc_errors.et create mode 100644 src/auth/ktc_nt.c create mode 100644 src/auth/libafsdep create mode 100644 src/auth/liboafs_auth.la.sym create mode 100644 src/auth/netrestrict.c create mode 100644 src/auth/realms.c create mode 100644 src/auth/setkey.c create mode 100644 src/auth/test/.gitignore create mode 100644 src/auth/test/Makefile.in create mode 100644 src/auth/test/NTMakefile create mode 100644 src/auth/test/ktctest.c create mode 100644 src/auth/test/testcellconf.c create mode 100644 src/auth/test/testnetrestrict.c create mode 100644 src/auth/token.c create mode 100644 src/auth/token.xg create mode 100644 src/auth/userok.c create mode 100644 src/auth/writeconfig.c create mode 100644 src/bozo/.gitignore create mode 100644 src/bozo/Makefile.in create mode 100644 src/bozo/NTMakefile create mode 100644 src/bozo/bnode.c create mode 100644 src/bozo/bnode.p.h create mode 100644 src/bozo/bnode_internal.h create mode 100644 src/bozo/bos.c create mode 100644 src/bozo/bos.rc create mode 100644 src/bozo/bos_util.c create mode 100644 src/bozo/boserr.et create mode 100644 src/bozo/bosint.xg create mode 100644 src/bozo/bosoprocs.c create mode 100644 src/bozo/bosprototypes.h create mode 100644 src/bozo/bosserver.c create mode 100644 src/bozo/bosserver.rc create mode 100644 src/bozo/cronbnodeops.c create mode 100644 src/bozo/ezbnodeops.c create mode 100644 src/bozo/fsbnodeops.c create mode 100644 src/bozo/smail-notifier.c create mode 100644 src/bozo/test/Makefile.in create mode 100644 src/bozo/test/testproc.c create mode 100644 src/bu_utils/.gitignore create mode 100644 src/bu_utils/Contents.Readme create mode 100644 src/bu_utils/Makefile.in create mode 100644 src/bu_utils/NTMakefile create mode 100644 src/bu_utils/fms.c create mode 100644 src/bu_utils/fms.doc create mode 100644 src/bu_utils/fms.rc create mode 100644 src/bubasics/.gitignore create mode 100644 src/bubasics/Makefile.in create mode 100644 src/bubasics/NTMakefile create mode 100644 src/bubasics/backmon.xg create mode 100644 src/bubasics/bubasics.h create mode 100644 src/bubasics/bumon.xg create mode 100644 src/bubasics/butc.xg create mode 100644 src/bubasics/butc_errs.et create mode 100644 src/bubasics/butm.p.h create mode 100644 src/bubasics/butm_errs.et create mode 100644 src/bubasics/butx_errs.et create mode 100644 src/bubasics/tcdata.p.h create mode 100644 src/bucoord/.gitignore create mode 100644 src/bucoord/Makefile.in create mode 100644 src/bucoord/NTMakefile create mode 100644 src/bucoord/backup.rc create mode 100644 src/bucoord/bc.p.h create mode 100644 src/bucoord/bc_status.c create mode 100644 src/bucoord/btest.c create mode 100644 src/bucoord/bucoord_errs.et create mode 100644 src/bucoord/bucoord_internal.h create mode 100644 src/bucoord/bucoord_prototypes.h create mode 100644 src/bucoord/commands.c create mode 100644 src/bucoord/config.c create mode 100644 src/bucoord/dlq.c create mode 100644 src/bucoord/dsstub.c create mode 100644 src/bucoord/dsvs.c create mode 100644 src/bucoord/dump.c create mode 100644 src/bucoord/dump_sched.c create mode 100644 src/bucoord/error_macros.h create mode 100644 src/bucoord/main.c create mode 100644 src/bucoord/restore.c create mode 100644 src/bucoord/server.c create mode 100644 src/bucoord/status.c create mode 100644 src/bucoord/tape_hosts.c create mode 100644 src/bucoord/testcases create mode 100644 src/bucoord/ttest.c create mode 100644 src/bucoord/ubik_db_if.c create mode 100644 src/bucoord/vol_sets.c create mode 100644 src/bucoord/volstub.c create mode 100644 src/budb/.gitignore create mode 100644 src/budb/Makefile.in create mode 100644 src/budb/NTMakefile create mode 100644 src/budb/budb.rg create mode 100644 src/budb/budb_client.h create mode 100644 src/budb/budb_errs.et create mode 100644 src/budb/budb_internal.h create mode 100644 src/budb/budb_prototypes.h create mode 100644 src/budb/buserver.rc create mode 100644 src/budb/database.c create mode 100644 src/budb/database.h create mode 100644 src/budb/db_alloc.c create mode 100644 src/budb/db_dump.c create mode 100644 src/budb/db_hash.c create mode 100644 src/budb/db_lock.c create mode 100644 src/budb/db_lock.h create mode 100644 src/budb/db_text.c create mode 100644 src/budb/dbs_dump.c create mode 100644 src/budb/error_macros.h create mode 100644 src/budb/globals.h create mode 100644 src/budb/ol_verify.c create mode 100644 src/budb/procs.c create mode 100644 src/budb/server.c create mode 100644 src/budb/struct_ops.c create mode 100644 src/butc/.gitignore create mode 100644 src/butc/Makefile.in create mode 100644 src/butc/NTMakefile create mode 100644 src/butc/afsxbsa.c create mode 100644 src/butc/afsxbsa.h create mode 100644 src/butc/butc.rc create mode 100644 src/butc/butc_internal.h create mode 100644 src/butc/butc_prototypes.h create mode 100644 src/butc/butc_xbsa.c create mode 100644 src/butc/butc_xbsa.h create mode 100644 src/butc/common.h create mode 100644 src/butc/config create mode 100644 src/butc/dbentries.c create mode 100644 src/butc/dump.c create mode 100644 src/butc/dumpScr create mode 100644 src/butc/error_macros.h create mode 100644 src/butc/list.c create mode 100644 src/butc/lwps.c create mode 100644 src/butc/read_tape.c create mode 100644 src/butc/recoverDb.c create mode 100644 src/butc/restoreScr create mode 100644 src/butc/tcmain.c create mode 100644 src/butc/tcprocs.c create mode 100644 src/butc/tcstatus.c create mode 100644 src/butc/tcudbprocs.c create mode 100644 src/butc/tdump.c create mode 100644 src/butc/test.c create mode 100644 src/butc/test_budb.c create mode 100644 src/butm/Makefile.in create mode 100644 src/butm/NTMakefile create mode 100644 src/butm/butm.vdoc create mode 100644 src/butm/butm_prototypes.h create mode 100644 src/butm/butm_test.c create mode 100644 src/butm/config create mode 100644 src/butm/error_macros.h create mode 100644 src/butm/file_tm.c create mode 100644 src/butm/test_ftm.c create mode 100644 src/cf/.gitignore create mode 100644 src/cf/abs-install.m4 create mode 100644 src/cf/afs-libtool.m4 create mode 100644 src/cf/autoheader.m4 create mode 100644 src/cf/bigendian.m4 create mode 100644 src/cf/bsd.m4 create mode 100644 src/cf/bswap.m4 create mode 100644 src/cf/c-atomic.m4 create mode 100644 src/cf/c-attribute.m4 create mode 100644 src/cf/c-pragma.m4 create mode 100644 src/cf/c-struct-label.m4 create mode 100644 src/cf/crosstools.m4 create mode 100644 src/cf/crypt.m4 create mode 100644 src/cf/ctf-tools.m4 create mode 100644 src/cf/curses.m4 create mode 100644 src/cf/dirent.m4 create mode 100644 src/cf/dirpaths.m4 create mode 100644 src/cf/doc.m4 create mode 100644 src/cf/flex.m4 create mode 100644 src/cf/functions.m4 create mode 100644 src/cf/fuse.m4 create mode 100644 src/cf/have-struct-field.m4 create mode 100644 src/cf/hcrypto.m4 create mode 100644 src/cf/headers.m4 create mode 100644 src/cf/hpux.m4 create mode 100644 src/cf/irix-test.m4 create mode 100644 src/cf/java.m4 create mode 100644 src/cf/lex.m4 create mode 100644 src/cf/libintl.m4 create mode 100644 src/cf/library.m4 create mode 100644 src/cf/lint.m4 create mode 100644 src/cf/linux-checks.m4 create mode 100644 src/cf/linux-guess-version.m4 create mode 100644 src/cf/linux-kernel-assorted.m4 create mode 100644 src/cf/linux-kernel-func.m4 create mode 100644 src/cf/linux-kernel-header.m4 create mode 100644 src/cf/linux-kernel-packaging.m4 create mode 100644 src/cf/linux-kernel-path.m4 create mode 100644 src/cf/linux-kernel-sig.m4 create mode 100644 src/cf/linux-kernel-struct.m4 create mode 100644 src/cf/linux-kernel-syscall-probe.m4 create mode 100644 src/cf/linux-kernel-type.m4 create mode 100644 src/cf/linux-test1.m4 create mode 100644 src/cf/linux-test3.m4 create mode 100644 src/cf/linux-test4.m4 create mode 100644 src/cf/linux-test5.m4 create mode 100644 src/cf/members.m4 create mode 100644 src/cf/options.m4 create mode 100644 src/cf/osconf.m4 create mode 100644 src/cf/ostype.m4 create mode 100644 src/cf/pkg.m4 create mode 100644 src/cf/pthread.m4 create mode 100644 src/cf/regex.m4 create mode 100644 src/cf/ressearch.m4 create mode 100644 src/cf/roken.m4 create mode 100644 src/cf/search-dirlist.m4 create mode 100644 src/cf/sizet.m4 create mode 100644 src/cf/socket.m4 create mode 100644 src/cf/solaris-cc.m4 create mode 100644 src/cf/solaris-dqrwlock.m4 create mode 100644 src/cf/solaris-fs-rolled.m4 create mode 100644 src/cf/solaris-mapaddr.m4 create mode 100644 src/cf/solaris-ostype.m4 create mode 100644 src/cf/solaris-renamepath.m4 create mode 100644 src/cf/solaris-solookup.m4 create mode 100644 src/cf/solaris-test1.m4 create mode 100644 src/cf/summary.m4 create mode 100644 src/cf/swig.m4 create mode 100644 src/cf/sys-resource.m4 create mode 100644 src/cf/sysname.m4 create mode 100644 src/cf/test_package.m4 create mode 100644 src/cf/tivoli.m4 create mode 100644 src/cf/topdirs.m4 create mode 100644 src/cf/types.m4 create mode 100644 src/cf/ucontext.m4 create mode 100644 src/cf/uuid.m4 create mode 100644 src/cf/variables.m4 create mode 100644 src/cmd/.gitignore create mode 100644 src/cmd/Makefile.in create mode 100644 src/cmd/NTMakefile create mode 100644 src/cmd/cmd.c create mode 100644 src/cmd/cmd.p.h create mode 100644 src/cmd/cmd_errors.et create mode 100644 src/cmd/krb5_locl.h create mode 100644 src/cmd/liboafs_cmd.la.sym create mode 100644 src/cmd/test/.gitignore create mode 100644 src/cmd/test/Makefile.in create mode 100644 src/cmd/test/NTMakefile create mode 100644 src/cmd/test/ctest.c create mode 100644 src/cmd/test/dtest.c create mode 100644 src/cmd/test/itest.c create mode 100644 src/comerr/.gitignore create mode 100644 src/comerr/Makefile.in create mode 100644 src/comerr/NTMakefile create mode 100644 src/comerr/com_err.c create mode 100644 src/comerr/com_err.h create mode 100644 src/comerr/compile_et.c create mode 100644 src/comerr/compile_et.rc create mode 100644 src/comerr/compiler.h create mode 100644 src/comerr/error_msg.c create mode 100644 src/comerr/error_table.h create mode 100644 src/comerr/error_table.y create mode 100755 src/comerr/error_table_nt.c create mode 100755 src/comerr/error_table_nt.h create mode 100644 src/comerr/et_lex.lex.l create mode 100644 src/comerr/et_lex.lex_nt.c create mode 100644 src/comerr/et_name.c create mode 100644 src/comerr/internal.h create mode 100644 src/comerr/liboafs_comerr.la.sym create mode 100644 src/comerr/mit-sipb-cr.h create mode 100644 src/comerr/test/Makefile.in create mode 100644 src/comerr/test/NTMakefile create mode 100644 src/comerr/test/test.c create mode 100644 src/comerr/test/test1.et create mode 100644 src/comerr/test/test2.et create mode 100644 src/config/.gitignore create mode 100644 src/config/Makefile.component create mode 100644 src/config/Makefile.config.in create mode 100644 src/config/Makefile.in create mode 100644 src/config/Makefile.libtool.in create mode 100644 src/config/Makefile.lwp.in create mode 100644 src/config/Makefile.lwptool.in create mode 100644 src/config/Makefile.pthread.in create mode 100644 src/config/Makefile.version-CML.in create mode 100644 src/config/Makefile.version-NOCML.in create mode 100644 src/config/NTDllmap.txt create mode 100644 src/config/NTLang.bat create mode 100644 src/config/NTMakefile create mode 100644 src/config/NTMakefile.amd64_w2k create mode 100644 src/config/NTMakefile.i386_nt40 create mode 100644 src/config/NTMakefile.i386_w2k create mode 100644 src/config/NTMakefile.version-CML create mode 100644 src/config/NTMakefile.version-NOCML create mode 100644 src/config/NTVersioninfo.rc create mode 100644 src/config/afs_args.h create mode 100644 src/config/afs_sysnames.h create mode 100644 src/config/afsconfig-windows.h create mode 100644 src/config/cc-wrapper.in create mode 100644 src/config/config.c create mode 100644 src/config/icl.h create mode 100644 src/config/libafsdep create mode 100644 src/config/linux-version create mode 100755 src/config/lwptool create mode 100755 src/config/make_libafs_tree.pl create mode 100644 src/config/mc.c create mode 100644 src/config/mkvers.c create mode 100644 src/config/param.alpha_linux_26.h create mode 100644 src/config/param.alpha_nbsd15.h create mode 100644 src/config/param.alpha_nbsd16.h create mode 100644 src/config/param.amd64_fbsd_100.h create mode 100644 src/config/param.amd64_fbsd_101.h create mode 100644 src/config/param.amd64_fbsd_102.h create mode 100644 src/config/param.amd64_fbsd_103.h create mode 100644 src/config/param.amd64_fbsd_104.h create mode 100644 src/config/param.amd64_fbsd_110.h create mode 100644 src/config/param.amd64_fbsd_111.h create mode 100644 src/config/param.amd64_fbsd_120.h create mode 100644 src/config/param.amd64_fbsd_80.h create mode 100644 src/config/param.amd64_fbsd_81.h create mode 100644 src/config/param.amd64_fbsd_82.h create mode 100644 src/config/param.amd64_fbsd_83.h create mode 100644 src/config/param.amd64_fbsd_84.h create mode 100644 src/config/param.amd64_fbsd_90.h create mode 100644 src/config/param.amd64_fbsd_91.h create mode 100644 src/config/param.amd64_fbsd_92.h create mode 100644 src/config/param.amd64_fbsd_93.h create mode 100644 src/config/param.amd64_linux26.h create mode 100644 src/config/param.amd64_nbsd20.h create mode 100644 src/config/param.amd64_nbsd30.h create mode 100644 src/config/param.amd64_nbsd40.h create mode 100644 src/config/param.amd64_nbsd50.h create mode 100644 src/config/param.amd64_nbsd60.h create mode 100644 src/config/param.amd64_nbsd70.h create mode 100644 src/config/param.amd64_obsd36.h create mode 100644 src/config/param.amd64_obsd37.h create mode 100644 src/config/param.amd64_obsd38.h create mode 100644 src/config/param.amd64_obsd39.h create mode 100644 src/config/param.amd64_obsd40.h create mode 100644 src/config/param.amd64_obsd41.h create mode 100644 src/config/param.amd64_obsd42.h create mode 100644 src/config/param.amd64_obsd43.h create mode 100644 src/config/param.amd64_obsd44.h create mode 100644 src/config/param.amd64_obsd45.h create mode 100644 src/config/param.amd64_obsd46.h create mode 100644 src/config/param.amd64_obsd47.h create mode 100644 src/config/param.amd64_obsd48.h create mode 100644 src/config/param.amd64_obsd49.h create mode 100644 src/config/param.amd64_obsd50.h create mode 100644 src/config/param.amd64_obsd51.h create mode 100644 src/config/param.amd64_obsd52.h create mode 100644 src/config/param.amd64_obsd53.h create mode 100644 src/config/param.amd64_obsd54.h create mode 100644 src/config/param.amd64_w2k.h create mode 100644 src/config/param.arm64_linux26.h create mode 100644 src/config/param.arm_darwin_100.h create mode 100644 src/config/param.arm_linux26.h create mode 100644 src/config/param.generic_fbsd.h create mode 100644 src/config/param.hp_ux102.h create mode 100644 src/config/param.hp_ux110.h create mode 100644 src/config/param.hp_ux1123.h create mode 100644 src/config/param.hp_ux11i.h create mode 100644 src/config/param.i386_dfbsd_23.h create mode 100644 src/config/param.i386_fbsd_100.h create mode 100644 src/config/param.i386_fbsd_101.h create mode 100644 src/config/param.i386_fbsd_102.h create mode 100644 src/config/param.i386_fbsd_103.h create mode 100644 src/config/param.i386_fbsd_104.h create mode 100644 src/config/param.i386_fbsd_110.h create mode 100644 src/config/param.i386_fbsd_111.h create mode 100644 src/config/param.i386_fbsd_120.h create mode 100644 src/config/param.i386_fbsd_80.h create mode 100644 src/config/param.i386_fbsd_81.h create mode 100644 src/config/param.i386_fbsd_82.h create mode 100644 src/config/param.i386_fbsd_83.h create mode 100644 src/config/param.i386_fbsd_84.h create mode 100644 src/config/param.i386_fbsd_90.h create mode 100644 src/config/param.i386_fbsd_91.h create mode 100644 src/config/param.i386_fbsd_92.h create mode 100644 src/config/param.i386_fbsd_93.h create mode 100644 src/config/param.i386_linux26.h create mode 100644 src/config/param.i386_nbsd15.h create mode 100644 src/config/param.i386_nbsd16.h create mode 100644 src/config/param.i386_nbsd20.h create mode 100644 src/config/param.i386_nbsd21.h create mode 100644 src/config/param.i386_nbsd30.h create mode 100644 src/config/param.i386_nbsd40.h create mode 100644 src/config/param.i386_nbsd50.h create mode 100644 src/config/param.i386_nbsd60.h create mode 100644 src/config/param.i386_nbsd70.h create mode 100644 src/config/param.i386_nt40.h create mode 100644 src/config/param.i386_obsd31.h create mode 100644 src/config/param.i386_obsd32.h create mode 100644 src/config/param.i386_obsd33.h create mode 100644 src/config/param.i386_obsd34.h create mode 100644 src/config/param.i386_obsd35.h create mode 100644 src/config/param.i386_obsd36.h create mode 100644 src/config/param.i386_obsd37.h create mode 100644 src/config/param.i386_obsd38.h create mode 100644 src/config/param.i386_obsd39.h create mode 100644 src/config/param.i386_obsd40.h create mode 100644 src/config/param.i386_obsd41.h create mode 100644 src/config/param.i386_obsd42.h create mode 100644 src/config/param.i386_obsd43.h create mode 100644 src/config/param.i386_obsd44.h create mode 100644 src/config/param.i386_obsd45.h create mode 100644 src/config/param.i386_obsd46.h create mode 100644 src/config/param.i386_obsd47.h create mode 100644 src/config/param.i386_obsd48.h create mode 100644 src/config/param.i386_obsd49.h create mode 100644 src/config/param.i386_obsd50.h create mode 100644 src/config/param.i386_obsd51.h create mode 100644 src/config/param.i386_obsd52.h create mode 100644 src/config/param.i386_obsd53.h create mode 100644 src/config/param.i386_obsd54.h create mode 100644 src/config/param.i386_umlinux26.h create mode 100644 src/config/param.i386_w2k.h create mode 100644 src/config/param.i64_w2k.h create mode 100644 src/config/param.ia64_hpux1122.h create mode 100644 src/config/param.ia64_hpux1123.h create mode 100644 src/config/param.ia64_linux26.h create mode 100644 src/config/param.linux26.h create mode 100644 src/config/param.nbsd15.h create mode 100644 src/config/param.nbsd16.h create mode 100644 src/config/param.nbsd20.h create mode 100644 src/config/param.nbsd21.h create mode 100644 src/config/param.nbsd30.h create mode 100644 src/config/param.nbsd40.h create mode 100644 src/config/param.nbsd50.h create mode 100644 src/config/param.nbsd60.h create mode 100644 src/config/param.nbsd70.h create mode 100644 src/config/param.obsd31.h create mode 100644 src/config/param.obsd32.h create mode 100644 src/config/param.obsd33.h create mode 100644 src/config/param.obsd34.h create mode 100644 src/config/param.obsd35.h create mode 100644 src/config/param.obsd36.h create mode 100644 src/config/param.obsd37.h create mode 100644 src/config/param.obsd38.h create mode 100644 src/config/param.obsd39.h create mode 100644 src/config/param.obsd40.h create mode 100644 src/config/param.obsd41.h create mode 100644 src/config/param.obsd42.h create mode 100644 src/config/param.obsd43.h create mode 100644 src/config/param.obsd44.h create mode 100644 src/config/param.obsd45.h create mode 100644 src/config/param.obsd46.h create mode 100644 src/config/param.obsd47.h create mode 100644 src/config/param.obsd48.h create mode 100644 src/config/param.obsd49.h create mode 100644 src/config/param.obsd50.h create mode 100644 src/config/param.obsd51.h create mode 100644 src/config/param.obsd52.h create mode 100644 src/config/param.obsd53.h create mode 100644 src/config/param.obsd54.h create mode 100644 src/config/param.ppc64_linux26.h create mode 100644 src/config/param.ppc64le_linux26.h create mode 100644 src/config/param.ppc_darwin_70.h create mode 100644 src/config/param.ppc_darwin_80.h create mode 100644 src/config/param.ppc_darwin_90.h create mode 100644 src/config/param.ppc_linux26.h create mode 100644 src/config/param.ppc_nbsd16.h create mode 100644 src/config/param.ppc_nbsd20.h create mode 100644 src/config/param.rs_aix42.h create mode 100644 src/config/param.rs_aix51.h create mode 100644 src/config/param.rs_aix52.h create mode 100644 src/config/param.rs_aix53.h create mode 100644 src/config/param.rs_aix61.h create mode 100644 src/config/param.s390_linux26.h create mode 100644 src/config/param.s390x_linux26.h create mode 100644 src/config/param.sgi_65.h create mode 100644 src/config/param.sparc64_linux26.h create mode 100644 src/config/param.sparc_linux26.h create mode 100644 src/config/param.sun4x_510.h create mode 100644 src/config/param.sun4x_511.h create mode 100644 src/config/param.sun4x_58.h create mode 100644 src/config/param.sun4x_59.h create mode 100644 src/config/param.sunx86_510.h create mode 100644 src/config/param.sunx86_511.h create mode 100644 src/config/param.sunx86_58.h create mode 100644 src/config/param.sunx86_59.h create mode 100644 src/config/param.x86_darwin_100.h create mode 100644 src/config/param.x86_darwin_110.h create mode 100644 src/config/param.x86_darwin_120.h create mode 100644 src/config/param.x86_darwin_130.h create mode 100644 src/config/param.x86_darwin_140.h create mode 100644 src/config/param.x86_darwin_150.h create mode 100644 src/config/param.x86_darwin_160.h create mode 100644 src/config/param.x86_darwin_170.h create mode 100644 src/config/param.x86_darwin_180.h create mode 100644 src/config/param.x86_darwin_80.h create mode 100644 src/config/param.x86_darwin_90.h create mode 100644 src/config/permit_xprt.h create mode 100644 src/config/ranlib create mode 100644 src/config/shlib-build.in create mode 100644 src/config/shlib-install.in create mode 100644 src/config/stds.h create mode 100644 src/config/touch.c create mode 100644 src/config/util_cr.c create mode 100644 src/config/uvenus.h create mode 100644 src/config/venus.h create mode 100644 src/config/vioc.h create mode 100644 src/crypto/hcrypto/.gitignore create mode 100644 src/crypto/hcrypto/Makefile.in create mode 100644 src/crypto/hcrypto/NTMakefile create mode 100644 src/crypto/hcrypto/afshcrypto.def create mode 100644 src/crypto/hcrypto/afshcrypto.rc create mode 100644 src/crypto/hcrypto/config.h create mode 100644 src/crypto/hcrypto/engine.c create mode 100644 src/crypto/hcrypto/engine.h create mode 100644 src/crypto/hcrypto/getarg.h create mode 100644 src/crypto/hcrypto/heim_threads.h create mode 100644 src/crypto/hcrypto/kernel/alloc.c create mode 100644 src/crypto/hcrypto/kernel/assert.h create mode 100644 src/crypto/hcrypto/kernel/config.h create mode 100644 src/crypto/hcrypto/kernel/evp-algs.c create mode 100644 src/crypto/hcrypto/kernel/evp-hcrypto.h create mode 100644 src/crypto/hcrypto/kernel/heim_threads.h create mode 100644 src/crypto/hcrypto/kernel/krb5-types.h create mode 100644 src/crypto/hcrypto/kernel/libafsdep create mode 100644 src/crypto/hcrypto/kernel/rand-timer.c create mode 100644 src/crypto/hcrypto/kernel/rand.c create mode 100644 src/crypto/hcrypto/kernel/roken.h create mode 100644 src/crypto/hcrypto/kernel/stdio.h create mode 100644 src/crypto/hcrypto/kernel/stdlib.h create mode 100644 src/crypto/hcrypto/kernel/strcasecmp.c create mode 100644 src/crypto/hcrypto/kernel/string.h create mode 100644 src/crypto/hcrypto/krb5-types.h create mode 100644 src/crypto/hcrypto/libafshcrypto.la.sym create mode 100644 src/crypto/rfc3961/Makefile.in create mode 100644 src/crypto/rfc3961/NTMakefile create mode 100644 src/crypto/rfc3961/afsrfc3961.def create mode 100644 src/crypto/rfc3961/afsrfc3961.rc create mode 100644 src/crypto/rfc3961/context.c create mode 100644 src/crypto/rfc3961/copy.c create mode 100644 src/crypto/rfc3961/kernel/algs.c create mode 100644 src/crypto/rfc3961/kernel/libafsdep create mode 100644 src/crypto/rfc3961/kernel/random.c create mode 100644 src/crypto/rfc3961/krb5_locl.h create mode 100644 src/crypto/rfc3961/libafsdep create mode 100644 src/crypto/rfc3961/liboafs_rfc3961.la.sym create mode 100644 src/crypto/rfc3961/rfc3961.h create mode 100644 src/dir/Makefile.in create mode 100644 src/dir/NTMakefile create mode 100644 src/dir/buffer.c create mode 100644 src/dir/dir.c create mode 100644 src/dir/dir.h create mode 100644 src/dir/salvage.c create mode 100644 src/dir/test/.gitignore create mode 100644 src/dir/test/Makefile.in create mode 100644 src/dir/test/NTMakefile create mode 100644 src/dir/test/dtest.c create mode 100644 src/dir/test/physio.c create mode 100644 src/dir/test/test-salvage.c create mode 100644 src/dviced/.gitignore create mode 100644 src/dviced/Makefile.in create mode 100644 src/dviced/NTMakefile create mode 100644 src/dviced/dafileserver.rc create mode 100644 src/dvolser/.gitignore create mode 100644 src/dvolser/Makefile.in create mode 100644 src/dvolser/NTMakefile create mode 100644 src/dvolser/davolserver.rc create mode 100644 src/export/.gitignore create mode 100644 src/export/Makefile.in create mode 100644 src/export/README create mode 100644 src/export/cfgafs.c create mode 100644 src/export/cfgexport.c create mode 100644 src/export/export.c create mode 100644 src/export/export.h create mode 100644 src/export/export4-64.exp create mode 100644 src/export/export4.exp create mode 100644 src/export/export5-64.exp create mode 100644 src/export/export5.exp create mode 100644 src/export/extras.exp create mode 100644 src/export/sym.h create mode 100644 src/export/symtab.c create mode 100644 src/external/c-tap-harness-author create mode 100644 src/external/c-tap-harness-files create mode 100644 src/external/c-tap-harness-last create mode 100644 src/external/c-tap-harness/LICENSE create mode 100644 src/external/c-tap-harness/NEWS create mode 100644 src/external/c-tap-harness/README create mode 100644 src/external/c-tap-harness/tests/runtests.c create mode 100644 src/external/c-tap-harness/tests/tap/basic.c create mode 100644 src/external/c-tap-harness/tests/tap/basic.h create mode 100644 src/external/c-tap-harness/tests/tap/float.c create mode 100644 src/external/c-tap-harness/tests/tap/float.h create mode 100644 src/external/c-tap-harness/tests/tap/libtap.sh create mode 100644 src/external/c-tap-harness/tests/tap/macros.h create mode 100644 src/external/heimdal-author create mode 100644 src/external/heimdal-files create mode 100644 src/external/heimdal-last create mode 100644 src/external/heimdal/hcrypto/aes.c create mode 100644 src/external/heimdal/hcrypto/aes.h create mode 100644 src/external/heimdal/hcrypto/camellia-ntt.c create mode 100644 src/external/heimdal/hcrypto/camellia-ntt.h create mode 100644 src/external/heimdal/hcrypto/camellia.c create mode 100644 src/external/heimdal/hcrypto/camellia.h create mode 100644 src/external/heimdal/hcrypto/des-tables.h create mode 100644 src/external/heimdal/hcrypto/des.c create mode 100644 src/external/heimdal/hcrypto/des.h create mode 100644 src/external/heimdal/hcrypto/evp-cc.c create mode 100644 src/external/heimdal/hcrypto/evp-cc.h create mode 100644 src/external/heimdal/hcrypto/evp-hcrypto.c create mode 100644 src/external/heimdal/hcrypto/evp-hcrypto.h create mode 100644 src/external/heimdal/hcrypto/evp.c create mode 100644 src/external/heimdal/hcrypto/evp.h create mode 100644 src/external/heimdal/hcrypto/hash.h create mode 100644 src/external/heimdal/hcrypto/hmac.c create mode 100644 src/external/heimdal/hcrypto/hmac.h create mode 100644 src/external/heimdal/hcrypto/md2.c create mode 100644 src/external/heimdal/hcrypto/md2.h create mode 100644 src/external/heimdal/hcrypto/md4.c create mode 100644 src/external/heimdal/hcrypto/md4.h create mode 100644 src/external/heimdal/hcrypto/md5.c create mode 100644 src/external/heimdal/hcrypto/md5.h create mode 100644 src/external/heimdal/hcrypto/pkcs5.c create mode 100644 src/external/heimdal/hcrypto/rand-egd.c create mode 100644 src/external/heimdal/hcrypto/rand-fortuna.c create mode 100644 src/external/heimdal/hcrypto/rand-timer.c create mode 100644 src/external/heimdal/hcrypto/rand-unix.c create mode 100644 src/external/heimdal/hcrypto/rand-w32.c create mode 100644 src/external/heimdal/hcrypto/rand.c create mode 100644 src/external/heimdal/hcrypto/rand.h create mode 100644 src/external/heimdal/hcrypto/randi.h create mode 100644 src/external/heimdal/hcrypto/rc2.c create mode 100644 src/external/heimdal/hcrypto/rc2.h create mode 100644 src/external/heimdal/hcrypto/rc4.c create mode 100644 src/external/heimdal/hcrypto/rc4.h create mode 100644 src/external/heimdal/hcrypto/rijndael-alg-fst.c create mode 100644 src/external/heimdal/hcrypto/rijndael-alg-fst.h create mode 100644 src/external/heimdal/hcrypto/rnd_keys.c create mode 100644 src/external/heimdal/hcrypto/sha.c create mode 100644 src/external/heimdal/hcrypto/sha.h create mode 100644 src/external/heimdal/hcrypto/sha256.c create mode 100644 src/external/heimdal/hcrypto/sha512.c create mode 100644 src/external/heimdal/hcrypto/test_cipher.c create mode 100644 src/external/heimdal/hcrypto/ui.c create mode 100644 src/external/heimdal/hcrypto/ui.h create mode 100644 src/external/heimdal/hcrypto/validate.c create mode 100644 src/external/heimdal/krb5/config_file.c create mode 100644 src/external/heimdal/krb5/crypto-aes.c create mode 100644 src/external/heimdal/krb5/crypto-algs.c create mode 100644 src/external/heimdal/krb5/crypto-arcfour.c create mode 100644 src/external/heimdal/krb5/crypto-des-common.c create mode 100644 src/external/heimdal/krb5/crypto-des.c create mode 100644 src/external/heimdal/krb5/crypto-des3.c create mode 100644 src/external/heimdal/krb5/crypto-evp.c create mode 100644 src/external/heimdal/krb5/crypto-null.c create mode 100644 src/external/heimdal/krb5/crypto-rand.c create mode 100644 src/external/heimdal/krb5/crypto.c create mode 100644 src/external/heimdal/krb5/crypto.h create mode 100644 src/external/heimdal/krb5/data.c create mode 100644 src/external/heimdal/krb5/expand_path.c create mode 100644 src/external/heimdal/krb5/keyblock.c create mode 100644 src/external/heimdal/krb5/n-fold.c create mode 100644 src/external/heimdal/krb5/store-int.c create mode 100644 src/external/heimdal/roken/base64.c create mode 100644 src/external/heimdal/roken/base64.h create mode 100644 src/external/heimdal/roken/cloexec.c create mode 100644 src/external/heimdal/roken/ct.c create mode 100644 src/external/heimdal/roken/daemon.c create mode 100644 src/external/heimdal/roken/ecalloc.c create mode 100644 src/external/heimdal/roken/emalloc.c create mode 100644 src/external/heimdal/roken/erealloc.c create mode 100644 src/external/heimdal/roken/err.c create mode 100644 src/external/heimdal/roken/err.hin create mode 100644 src/external/heimdal/roken/errx.c create mode 100644 src/external/heimdal/roken/flock.c create mode 100644 src/external/heimdal/roken/freeaddrinfo.c create mode 100644 src/external/heimdal/roken/gai_strerror.c create mode 100644 src/external/heimdal/roken/getaddinfo.c create mode 100644 src/external/heimdal/roken/getdtablesize.c create mode 100644 src/external/heimdal/roken/getnameinfo.c create mode 100644 src/external/heimdal/roken/getopt.c create mode 100644 src/external/heimdal/roken/getprogname.c create mode 100644 src/external/heimdal/roken/gettimeofday.c create mode 100644 src/external/heimdal/roken/hex.c create mode 100644 src/external/heimdal/roken/hex.h create mode 100644 src/external/heimdal/roken/inet_ntop.c create mode 100644 src/external/heimdal/roken/inet_pton.c create mode 100644 src/external/heimdal/roken/issuid.c create mode 100644 src/external/heimdal/roken/localtime_r.c create mode 100644 src/external/heimdal/roken/mkdir.c create mode 100644 src/external/heimdal/roken/mkstemp.c create mode 100644 src/external/heimdal/roken/net_read.c create mode 100644 src/external/heimdal/roken/net_write.c create mode 100644 src/external/heimdal/roken/realloc.c create mode 100644 src/external/heimdal/roken/rename.c create mode 100644 src/external/heimdal/roken/roken-common.h create mode 100644 src/external/heimdal/roken/roken.h.in create mode 100644 src/external/heimdal/roken/search.hin create mode 100644 src/external/heimdal/roken/setenv.c create mode 100644 src/external/heimdal/roken/setprogname.c create mode 100644 src/external/heimdal/roken/snprintf.c create mode 100644 src/external/heimdal/roken/socket.c create mode 100644 src/external/heimdal/roken/strerror_r.c create mode 100644 src/external/heimdal/roken/strlcat.c create mode 100644 src/external/heimdal/roken/strlcpy.c create mode 100644 src/external/heimdal/roken/strnlen.c create mode 100644 src/external/heimdal/roken/strsep.c create mode 100644 src/external/heimdal/roken/tsearch.c create mode 100644 src/external/heimdal/roken/unsetenv.c create mode 100644 src/external/heimdal/roken/verr.c create mode 100644 src/external/heimdal/roken/verrx.c create mode 100644 src/external/heimdal/roken/vsyslog.c create mode 100644 src/external/heimdal/roken/vwarn.c create mode 100644 src/external/heimdal/roken/vwarnx.c create mode 100644 src/external/heimdal/roken/warn.c create mode 100644 src/external/heimdal/roken/warnerr.c create mode 100644 src/external/heimdal/roken/warnx.c create mode 100644 src/external/heimdal/roken/win32_alloc.c create mode 100644 src/external/heimdal/roken/write_pid.c create mode 100755 src/external/import-external-git.pl create mode 100644 src/external/libafsdep create mode 100644 src/external/rra-c-util-author create mode 100644 src/external/rra-c-util-files create mode 100644 src/external/rra-c-util-last create mode 100644 src/external/rra-c-util/LICENSE create mode 100644 src/external/rra-c-util/m4/gssapi.m4 create mode 100644 src/external/rra-c-util/m4/krb5-config.m4 create mode 100644 src/external/rra-c-util/m4/krb5.m4 create mode 100644 src/external/rra-c-util/m4/lib-depends.m4 create mode 100644 src/external/rra-c-util/m4/lib-pathname.m4 create mode 100644 src/external/rra-c-util/m4/pam-const.m4 create mode 100644 src/finale/.gitignore create mode 100644 src/finale/Makefile.in create mode 100644 src/finale/NTMakefile create mode 100644 src/finale/test.output create mode 100644 src/finale/translate_et.c create mode 100644 src/finale/translate_et.rc create mode 100644 src/finale/translate_et_nt.c create mode 100644 src/fsint/.gitignore create mode 100644 src/fsint/Makefile.in create mode 100644 src/fsint/NTMakefile create mode 100644 src/fsint/afsaux.c create mode 100644 src/fsint/afscbint.xg create mode 100644 src/fsint/afsint.xg create mode 100644 src/fsint/common.xg create mode 100644 src/fsint/liboafs_fsint.la.sym create mode 100644 src/fsint/pagcb.xg create mode 100644 src/fsprobe/.gitignore create mode 100644 src/fsprobe/Makefile.in create mode 100644 src/fsprobe/fsprobe.c create mode 100644 src/fsprobe/fsprobe.h create mode 100644 src/fsprobe/fsprobe_callback.c create mode 100644 src/fsprobe/fsprobe_test.c create mode 100644 src/gtx/.gitignore create mode 100644 src/gtx/Makefile.in create mode 100644 src/gtx/X11windows.c create mode 100644 src/gtx/cb_test.c create mode 100644 src/gtx/curses_test.c create mode 100644 src/gtx/curseswindows.c create mode 100644 src/gtx/dumbwindows.c create mode 100644 src/gtx/frame.c create mode 100644 src/gtx/gtxX11win.h create mode 100644 src/gtx/gtxcurseswin.h create mode 100644 src/gtx/gtxdumbwin.h create mode 100644 src/gtx/gtxframe.h create mode 100644 src/gtx/gtxinput.h create mode 100644 src/gtx/gtxkeymap.h create mode 100644 src/gtx/gtxlightobj.h create mode 100644 src/gtx/gtxobjdict.h create mode 100644 src/gtx/gtxobjects.h create mode 100644 src/gtx/gtxtest.c create mode 100644 src/gtx/gtxtextcb.h create mode 100644 src/gtx/gtxtextobj.h create mode 100644 src/gtx/gtxwindows.h create mode 100644 src/gtx/input.c create mode 100644 src/gtx/keymap.c create mode 100644 src/gtx/lightobject.c create mode 100644 src/gtx/objdict.c create mode 100644 src/gtx/object_test.c create mode 100644 src/gtx/objects.c create mode 100644 src/gtx/screen_test.c create mode 100644 src/gtx/textcb.c create mode 100644 src/gtx/textobject.c create mode 100644 src/gtx/windows.c create mode 100644 src/helper-splint.sh.in create mode 100644 src/kauth/.gitignore create mode 100644 src/kauth/AuthServer.bib create mode 100644 src/kauth/AuthServer.mss create mode 100644 src/kauth/Makefile.in create mode 100644 src/kauth/NTMakefile create mode 100644 src/kauth/admin_tools.c create mode 100644 src/kauth/authclient.c create mode 100644 src/kauth/client.c create mode 100644 src/kauth/crypt.c create mode 100644 src/kauth/crypt.h create mode 100644 src/kauth/decode_ticket.c create mode 100644 src/kauth/ka-forwarder.c create mode 100644 src/kauth/ka_util.c create mode 100644 src/kauth/kaaux.c create mode 100644 src/kauth/kaauxdb.c create mode 100644 src/kauth/kadatabase.c create mode 100644 src/kauth/kadatabase.h create mode 100644 src/kauth/kaerrors.et create mode 100644 src/kauth/kalocalcell.c create mode 100644 src/kauth/kalog.c create mode 100644 src/kauth/kalog.h create mode 100644 src/kauth/kaopcodes.h create mode 100644 src/kauth/kaport.h create mode 100644 src/kauth/kaprocs.c create mode 100644 src/kauth/kaprocs.h create mode 100644 src/kauth/kas.c create mode 100644 src/kauth/kas.doc create mode 100644 src/kauth/kas.rc create mode 100644 src/kauth/kaserver.c create mode 100644 src/kauth/kaserver.h create mode 100644 src/kauth/kaserver.rc create mode 100644 src/kauth/katoken.c create mode 100644 src/kauth/kauth.rg create mode 100644 src/kauth/kauth_internal.h create mode 100644 src/kauth/kautils.c create mode 100644 src/kauth/kautils.p.h create mode 100644 src/kauth/kdb.c create mode 100644 src/kauth/kkids.c create mode 100644 src/kauth/kkids.h create mode 100644 src/kauth/klog.c create mode 100644 src/kauth/knfs.c create mode 100644 src/kauth/kpasswd.c create mode 100644 src/kauth/kpasswd.rc create mode 100644 src/kauth/kpwvalid.c create mode 100644 src/kauth/krb_tf.c create mode 100644 src/kauth/krb_udp.c create mode 100644 src/kauth/liboafs_kauth.la.sym create mode 100644 src/kauth/manyklog.c create mode 100644 src/kauth/prot.h create mode 100644 src/kauth/rebuild.c create mode 100644 src/kauth/test/Makefile.in create mode 100644 src/kauth/test/NTMakefile create mode 100644 src/kauth/test/background.c create mode 100644 src/kauth/test/multiklog.c create mode 100644 src/kauth/test/test_badtix.c create mode 100644 src/kauth/test/test_date.c create mode 100644 src/kauth/test/test_getticket.c create mode 100644 src/kauth/test/test_interim_ktc.c create mode 100644 src/kauth/test/test_kaserver create mode 100644 src/kauth/test/test_rxkad_free.c create mode 100644 src/kauth/test/testlocking.README create mode 100644 src/kauth/test/testlocking.boundaries.tcl create mode 100644 src/kauth/test/testlocking.general.tcl create mode 100644 src/kauth/test/testlocking.utils.tcl create mode 100644 src/kauth/user.c create mode 100644 src/kauth/user_nt.c create mode 100644 src/kopenafs/.gitignore create mode 100644 src/kopenafs/Makefile.in create mode 100644 src/kopenafs/kopenafs.c create mode 100644 src/kopenafs/kopenafs.h create mode 100644 src/kopenafs/libkopenafs.la.sym create mode 100644 src/kopenafs/test-setpag.c create mode 100644 src/kopenafs/test-unlog.c create mode 100644 src/libacl/Makefile.in create mode 100644 src/libacl/NTMakefile create mode 100644 src/libacl/acl.h create mode 100644 src/libacl/aclprocs.c create mode 100644 src/libacl/liboafs_acl.la.sym create mode 100644 src/libacl/netprocs.c create mode 100644 src/libacl/prs_fs.h create mode 100644 src/libacl/test/Makefile.in create mode 100644 src/libacl/test/acltest.c create mode 100644 src/libadmin/Makefile.in create mode 100644 src/libadmin/NTMakefile create mode 100644 src/libadmin/adminutil/.gitignore create mode 100644 src/libadmin/adminutil/Makefile.in create mode 100644 src/libadmin/adminutil/NTMakefile create mode 100644 src/libadmin/adminutil/afs_AdminBosErrors.et create mode 100644 src/libadmin/adminutil/afs_AdminCfgErrors.et create mode 100644 src/libadmin/adminutil/afs_AdminClientErrors.et create mode 100644 src/libadmin/adminutil/afs_AdminCommonErrors.et create mode 100644 src/libadmin/adminutil/afs_AdminErrors.h create mode 100644 src/libadmin/adminutil/afs_AdminInternal.h create mode 100644 src/libadmin/adminutil/afs_AdminKasErrors.et create mode 100644 src/libadmin/adminutil/afs_AdminMiscErrors.et create mode 100644 src/libadmin/adminutil/afs_AdminPtsErrors.et create mode 100644 src/libadmin/adminutil/afs_AdminUtilErrors.et create mode 100644 src/libadmin/adminutil/afs_AdminVosErrors.et create mode 100644 src/libadmin/adminutil/afs_utilAdmin.c create mode 100644 src/libadmin/adminutil/afs_utilAdmin.h create mode 100644 src/libadmin/adminutil/afsadminutil.def create mode 100644 src/libadmin/adminutil/afsadminutil.rc create mode 100644 src/libadmin/adminutil/mapfile create mode 100644 src/libadmin/afs_Admin.h create mode 100644 src/libadmin/bos/Makefile.in create mode 100644 src/libadmin/bos/NTMakefile create mode 100644 src/libadmin/bos/afs_bosAdmin.c create mode 100644 src/libadmin/bos/afs_bosAdmin.h create mode 100644 src/libadmin/bos/afsbosadmin.rc create mode 100644 src/libadmin/bos/bosadmin.def create mode 100644 src/libadmin/bos/mapfile create mode 100644 src/libadmin/cfg/Makefile.in create mode 100644 src/libadmin/cfg/NTMakefile create mode 100644 src/libadmin/cfg/afs_cfgAdmin.h create mode 100644 src/libadmin/cfg/afscfgadmin.def create mode 100644 src/libadmin/cfg/afscfgadmin.rc create mode 100644 src/libadmin/cfg/cfgclient.c create mode 100644 src/libadmin/cfg/cfgdb.c create mode 100644 src/libadmin/cfg/cfghost.c create mode 100644 src/libadmin/cfg/cfginternal.c create mode 100644 src/libadmin/cfg/cfginternal.h create mode 100644 src/libadmin/cfg/cfgservers.c create mode 100644 src/libadmin/cfg/mapfile create mode 100644 src/libadmin/cfg/test/Makefile.in create mode 100644 src/libadmin/cfg/test/NTMakefile create mode 100644 src/libadmin/cfg/test/cfgtest.c create mode 100644 src/libadmin/client/Makefile.in create mode 100644 src/libadmin/client/NTMakefile create mode 100644 src/libadmin/client/afs_clientAdmin.c create mode 100644 src/libadmin/client/afs_clientAdmin.h create mode 100644 src/libadmin/client/afsclientadmin.rc create mode 100644 src/libadmin/client/clientadmin.def create mode 100644 src/libadmin/client/mapfile create mode 100644 src/libadmin/kas/Makefile.in create mode 100644 src/libadmin/kas/NTMakefile create mode 100644 src/libadmin/kas/afs_kasAdmin.c create mode 100644 src/libadmin/kas/afs_kasAdmin.h create mode 100644 src/libadmin/kas/afskasadmin.rc create mode 100644 src/libadmin/kas/kasadmin.def create mode 100644 src/libadmin/kas/mapfile create mode 100644 src/libadmin/pts/Makefile.in create mode 100644 src/libadmin/pts/NTMakefile create mode 100644 src/libadmin/pts/afs_ptsAdmin.c create mode 100644 src/libadmin/pts/afs_ptsAdmin.h create mode 100644 src/libadmin/pts/afsptsadmin.rc create mode 100644 src/libadmin/pts/mapfile create mode 100644 src/libadmin/pts/ptsadmin.def create mode 100644 src/libadmin/samples/.gitignore create mode 100644 src/libadmin/samples/Makefile.in create mode 100644 src/libadmin/samples/cm_client_config.c create mode 100644 src/libadmin/samples/cm_list_cells.c create mode 100644 src/libadmin/samples/cm_local_cell.c create mode 100644 src/libadmin/samples/cm_server_prefs.c create mode 100644 src/libadmin/samples/rxdebug_basic_stats.c create mode 100644 src/libadmin/samples/rxdebug_conns.c create mode 100644 src/libadmin/samples/rxdebug_peers.c create mode 100644 src/libadmin/samples/rxdebug_rx_stats.c create mode 100644 src/libadmin/samples/rxdebug_supported_stats.c create mode 100644 src/libadmin/samples/rxdebug_version.c create mode 100644 src/libadmin/samples/rxstat_clear_peer.c create mode 100644 src/libadmin/samples/rxstat_clear_process.c create mode 100644 src/libadmin/samples/rxstat_disable_peer.c create mode 100644 src/libadmin/samples/rxstat_disable_process.c create mode 100644 src/libadmin/samples/rxstat_enable_peer.c create mode 100644 src/libadmin/samples/rxstat_enable_process.c create mode 100644 src/libadmin/samples/rxstat_get_peer.c create mode 100644 src/libadmin/samples/rxstat_get_process.c create mode 100644 src/libadmin/samples/rxstat_get_version.c create mode 100644 src/libadmin/samples/rxstat_query_peer.c create mode 100644 src/libadmin/samples/rxstat_query_process.c create mode 100644 src/libadmin/test/.gitignore create mode 100644 src/libadmin/test/Makefile.in create mode 100644 src/libadmin/test/NTMakefile create mode 100644 src/libadmin/test/afscp.c create mode 100644 src/libadmin/test/bos.c create mode 100644 src/libadmin/test/bos.h create mode 100644 src/libadmin/test/client.c create mode 100644 src/libadmin/test/client.h create mode 100644 src/libadmin/test/common.h create mode 100644 src/libadmin/test/kas.c create mode 100644 src/libadmin/test/kas.h create mode 100644 src/libadmin/test/pts.c create mode 100644 src/libadmin/test/pts.h create mode 100644 src/libadmin/test/util.c create mode 100644 src/libadmin/test/util.h create mode 100644 src/libadmin/test/vos.c create mode 100644 src/libadmin/test/vos.h create mode 100644 src/libadmin/vos/Makefile.in create mode 100644 src/libadmin/vos/NTMakefile create mode 100644 src/libadmin/vos/afs_vosAdmin.c create mode 100644 src/libadmin/vos/afs_vosAdmin.h create mode 100644 src/libadmin/vos/afsvosadmin.rc create mode 100644 src/libadmin/vos/lockprocs.c create mode 100644 src/libadmin/vos/lockprocs.h create mode 100644 src/libadmin/vos/mapfile create mode 100644 src/libadmin/vos/vosadmin.def create mode 100644 src/libadmin/vos/vosutils.c create mode 100644 src/libadmin/vos/vosutils.h create mode 100644 src/libadmin/vos/vsprocs.c create mode 100644 src/libadmin/vos/vsprocs.h create mode 100644 src/libafs/.gitignore create mode 100644 src/libafs/Makefile.common.in create mode 100644 src/libafs/Makefile.extradefs create mode 100644 src/libafs/MakefileProto.AIX.in create mode 100644 src/libafs/MakefileProto.DARWIN.in create mode 100644 src/libafs/MakefileProto.DFBSD.in create mode 100644 src/libafs/MakefileProto.DUX.in create mode 100644 src/libafs/MakefileProto.FBSD.in create mode 100644 src/libafs/MakefileProto.HPUX.in create mode 100644 src/libafs/MakefileProto.IRIX.in create mode 100644 src/libafs/MakefileProto.LINUX.in create mode 100644 src/libafs/MakefileProto.NBSD.in create mode 100644 src/libafs/MakefileProto.OBSD.in create mode 100644 src/libafs/MakefileProto.SOLARIS.in create mode 100644 src/libafs/afs.arm_darwin_100.plist.in create mode 100644 src/libafs/afs.ppc_darwin_12.plist.in create mode 100644 src/libafs/afs.ppc_darwin_13.plist.in create mode 100644 src/libafs/afs.ppc_darwin_14.plist.in create mode 100644 src/libafs/afs.ppc_darwin_60.plist.in create mode 100644 src/libafs/afs.ppc_darwin_70.plist.in create mode 100644 src/libafs/afs.ppc_darwin_80.plist.in create mode 100644 src/libafs/afs.ppc_darwin_90.plist.in create mode 100644 src/libafs/afs.shutdown create mode 100644 src/libafs/afs.startup create mode 100644 src/libafs/afs.x86_darwin_100.plist.in create mode 100644 src/libafs/afs.x86_darwin_110.plist.in create mode 100644 src/libafs/afs.x86_darwin_120.plist.in create mode 100644 src/libafs/afs.x86_darwin_130.plist.in create mode 100644 src/libafs/afs.x86_darwin_140.plist.in create mode 100644 src/libafs/afs.x86_darwin_150.plist.in create mode 100644 src/libafs/afs.x86_darwin_160.plist.in create mode 100644 src/libafs/afs.x86_darwin_170.plist.in create mode 100644 src/libafs/afs.x86_darwin_180.plist.in create mode 100644 src/libafs/afs.x86_darwin_80.plist.in create mode 100644 src/libafs/afs.x86_darwin_90.plist.in create mode 100644 src/libafs/libafsdep create mode 100755 src/libafs/make_kbuild_makefile.pl create mode 100644 src/libafs/sgi_master create mode 100644 src/libafs/sgi_system create mode 100644 src/libafsauthent/Makefile.in create mode 100644 src/libafsauthent/NTMakefile create mode 100644 src/libafsauthent/README create mode 100644 src/libafsauthent/afsauthent.def create mode 100644 src/libafsauthent/afsauthent.exp create mode 100644 src/libafsauthent/afsauthent.rc create mode 100644 src/libafsauthent/libafsauthent.la.sym create mode 100644 src/libafsauthent/mapfile create mode 100644 src/libafscp/Makefile.in create mode 100644 src/libafscp/NTMakefile create mode 100644 src/libafscp/afscp.h create mode 100644 src/libafscp/afscp_acl.c create mode 100644 src/libafscp/afscp_callback.c create mode 100644 src/libafscp/afscp_dir.c create mode 100644 src/libafscp/afscp_dirops.c create mode 100644 src/libafscp/afscp_fid.c create mode 100644 src/libafscp/afscp_file.c create mode 100644 src/libafscp/afscp_init.c create mode 100644 src/libafscp/afscp_internal.h create mode 100644 src/libafscp/afscp_server.c create mode 100644 src/libafscp/afscp_util.c create mode 100644 src/libafscp/afscp_volume.c create mode 100644 src/libafsdep create mode 100644 src/libafsrpc/Makefile.in create mode 100644 src/libafsrpc/NTMakefile create mode 100755 src/libafsrpc/afsrpc.def create mode 100755 src/libafsrpc/afsrpc.exp create mode 100644 src/libafsrpc/afsrpc.rc create mode 100644 src/libafsrpc/libafsrpc.la.sym create mode 100644 src/libuafs/.gitignore create mode 100644 src/libuafs/Makefile.common.in create mode 100644 src/libuafs/MakefileProto.AIX.in create mode 100644 src/libuafs/MakefileProto.DARWIN.in create mode 100644 src/libuafs/MakefileProto.DFBSD.in create mode 100644 src/libuafs/MakefileProto.DUX.in create mode 100644 src/libuafs/MakefileProto.FBSD.in create mode 100644 src/libuafs/MakefileProto.HPUX.in create mode 100644 src/libuafs/MakefileProto.IRIX.in create mode 100644 src/libuafs/MakefileProto.LINUX.in create mode 100644 src/libuafs/MakefileProto.NBSD.in create mode 100644 src/libuafs/MakefileProto.OBSD.in create mode 100644 src/libuafs/MakefileProto.SOLARIS.in create mode 100644 src/libuafs/README create mode 100644 src/libuafs/afsload/README create mode 100755 src/libuafs/afsload/afsload create mode 100644 src/libuafs/afsload/afsload.pod create mode 100755 src/libuafs/afsload/afsload_check.pl create mode 100755 src/libuafs/afsload/afsload_run.pl create mode 100644 src/libuafs/afsload/examples/large.conf create mode 100644 src/libuafs/afsload/examples/simple.conf create mode 100644 src/libuafs/afsload/lib/AFS/Load/Action.pm create mode 100644 src/libuafs/afsload/lib/AFS/Load/Config.pm create mode 100644 src/libuafs/libuafs.la.sym create mode 100644 src/libuafs/linktest.c create mode 100755 src/libuafs/make_h_tree create mode 100644 src/libuafs/ukernel_swig.i create mode 100644 src/log/.gitignore create mode 100644 src/log/Makefile.in create mode 100644 src/log/kseal.c create mode 100644 src/log/pagsh.c create mode 100644 src/log/test/Makefile.in create mode 100644 src/log/test/gettoktest.c create mode 100644 src/log/test/testlog.c create mode 100644 src/log/test/unlogtest.d create mode 100644 src/log/tokens.c create mode 100644 src/log/unlog.c create mode 100644 src/lwp/Makefile.in create mode 100644 src/lwp/NTMakefile create mode 100644 src/lwp/fasttime.c create mode 100644 src/lwp/iomgr.c create mode 100644 src/lwp/liboafs_lwpcompat.la.sym create mode 100644 src/lwp/lock.c create mode 100644 src/lwp/lock.h create mode 100644 src/lwp/lwp.c create mode 100644 src/lwp/lwp.h create mode 100644 src/lwp/lwp_elf.h create mode 100644 src/lwp/lwp_nt.c create mode 100644 src/lwp/process.amd64.s create mode 100644 src/lwp/process.c create mode 100644 src/lwp/process.default.s create mode 100644 src/lwp/process.i386.s create mode 100644 src/lwp/process.s.hpux create mode 100644 src/lwp/rw.c create mode 100644 src/lwp/test/Makefile.in create mode 100644 src/lwp/test/NTMakefile create mode 100644 src/lwp/test/selclient.c create mode 100644 src/lwp/test/selserver.c create mode 100644 src/lwp/test/selsubs.c create mode 100644 src/lwp/test/seltest.h create mode 100644 src/lwp/test/test.c create mode 100644 src/lwp/test/test_key.c create mode 100644 src/lwp/test/testlwp.c create mode 100644 src/lwp/test/testtime.c create mode 100644 src/lwp/threadname.c create mode 100644 src/lwp/timer.c create mode 100644 src/lwp/timer.h create mode 100644 src/lwp/waitkey.c create mode 100644 src/mkdest.pl create mode 100755 src/ntbuild.bat create mode 100644 src/opr/Makefile.in create mode 100644 src/opr/NTMakefile create mode 100644 src/opr/assert.c create mode 100644 src/opr/casestrcpy.c create mode 100644 src/opr/dict.c create mode 100644 src/opr/dict.h create mode 100644 src/opr/ffs.h create mode 100644 src/opr/fmt.c create mode 100644 src/opr/fmt.h create mode 100644 src/opr/jhash.h create mode 100644 src/opr/libafsdep create mode 100644 src/opr/liboafs_opr.la.sym create mode 100644 src/opr/lockstub.h create mode 100644 src/opr/opr.h create mode 100644 src/opr/opr_assert.h create mode 100644 src/opr/opr_lock.h create mode 100644 src/opr/opr_time.h create mode 100644 src/opr/proc.c create mode 100644 src/opr/proc.h create mode 100644 src/opr/queue.h create mode 100644 src/opr/rbtree.c create mode 100644 src/opr/rbtree.h create mode 100644 src/opr/softsig.c create mode 100644 src/opr/softsig.h create mode 100644 src/opr/uuid.c create mode 100644 src/opr/uuid.h create mode 100644 src/packaging/HP-UX/data/depot.copyright create mode 100644 src/packaging/HP-UX/data/depot.description create mode 100644 src/packaging/HP-UX/data/fileset.description create mode 100644 src/packaging/HP-UX/data/openafs-clnt.description create mode 100644 src/packaging/HP-UX/data/openafs-krn.description create mode 100644 src/packaging/HP-UX/data/openafs-run.description create mode 100644 src/packaging/HP-UX/data/openafs-srv.description create mode 100644 src/packaging/HP-UX/data/product.README create mode 100644 src/packaging/HP-UX/data/product.copyright create mode 100644 src/packaging/HP-UX/data/product.description create mode 100644 src/packaging/HP-UX/data/subproduct.description create mode 100644 src/packaging/HP-UX/data/vendor.description create mode 100644 src/packaging/HP-UX/files/usr/vice/etc/SuidCells create mode 100644 src/packaging/HP-UX/files/usr/vice/etc/cacheinfo create mode 100644 src/packaging/HP-UX/psf-1.2.10-transarc-paths-11.00 create mode 100644 src/packaging/HP-UX/psf-1.2.10-transarc-paths-11.11 create mode 100644 src/packaging/HP-UX/psf-1.2.10-transarc-paths-11.22 create mode 100644 src/packaging/HP-UX/scripts/openafs-clnt.checkinstall create mode 100644 src/packaging/HP-UX/scripts/openafs-clnt.configure create mode 100644 src/packaging/HP-UX/scripts/openafs-clnt.preinstall create mode 100644 src/packaging/HP-UX/scripts/openafs-clnt.preremove create mode 100644 src/packaging/HP-UX/scripts/openafs-clnt.unconfigure create mode 100644 src/packaging/HP-UX/scripts/openafs-eng-man.configure create mode 100644 src/packaging/HP-UX/scripts/openafs-eng-man.unconfigure create mode 100644 src/packaging/HP-UX/scripts/openafs-krn.checkremove create mode 100644 src/packaging/HP-UX/scripts/openafs-krn.configure create mode 100644 src/packaging/HP-UX/scripts/openafs-krn.postinstall create mode 100644 src/packaging/HP-UX/scripts/openafs-krn.unconfigure create mode 100644 src/packaging/HP-UX/scripts/openafs-krn.verify create mode 100644 src/packaging/HP-UX/scripts/openafs-srv.checkremove create mode 100644 src/packaging/HP-UX/scripts/openafs-srv.configure create mode 100644 src/packaging/HP-UX/scripts/openafs-srv.postremove create mode 100644 src/packaging/HP-UX/scripts/openafs-srv.preinstall create mode 100644 src/packaging/HP-UX/scripts/openafs-srv.preremove create mode 100644 src/packaging/HP-UX/scripts/openafs-srv.subscript create mode 100644 src/packaging/HP-UX/scripts/openafs-srv.unconfigure create mode 100644 src/packaging/HP-UX/scripts/openafs-srv.verify create mode 100644 src/packaging/HP-UX/scripts/openafs.configure create mode 100644 src/packaging/HP-UX/scripts/openafs.postremove create mode 100644 src/packaging/HP-UX/scripts/openafs.unconfigure create mode 100644 src/packaging/MacOS/.gitignore create mode 100644 src/packaging/MacOS/2.0.txt create mode 100644 src/packaging/MacOS/CellServDB.list create mode 100644 src/packaging/MacOS/DS_Store create mode 100644 src/packaging/MacOS/Distribution.xml.in create mode 100644 src/packaging/MacOS/InstallationCheck.10 create mode 100644 src/packaging/MacOS/InstallationCheck.11 create mode 100644 src/packaging/MacOS/InstallationCheck.12 create mode 100644 src/packaging/MacOS/InstallationCheck.13 create mode 100644 src/packaging/MacOS/InstallationCheck.14 create mode 100644 src/packaging/MacOS/InstallationCheck.15 create mode 100644 src/packaging/MacOS/InstallationCheck.16 create mode 100644 src/packaging/MacOS/InstallationCheck.17 create mode 100644 src/packaging/MacOS/InstallationCheck.18 create mode 100644 src/packaging/MacOS/InstallationCheck.7 create mode 100644 src/packaging/MacOS/InstallationCheck.8 create mode 100644 src/packaging/MacOS/InstallationCheck.9 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.10 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.11 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.12 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.13 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.14 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.15 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.16 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.17 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.18 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.7 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.8 create mode 100644 src/packaging/MacOS/InstallationCheck.strings.9 create mode 100644 src/packaging/MacOS/License.rtf create mode 100644 src/packaging/MacOS/OpenAFS-debug.Description.plist.in create mode 100644 src/packaging/MacOS/OpenAFS-debug.Info.plist.in create mode 100644 src/packaging/MacOS/OpenAFS.Description.plist.in create mode 100644 src/packaging/MacOS/OpenAFS.Info.plist.in create mode 100644 src/packaging/MacOS/OpenAFS.info.in create mode 100644 src/packaging/MacOS/OpenAFS.post_install create mode 100644 src/packaging/MacOS/OpenAFS.pre_upgrade create mode 100644 src/packaging/MacOS/ReadMe.rtf.10 create mode 100644 src/packaging/MacOS/ReadMe.rtf.11 create mode 100644 src/packaging/MacOS/ReadMe.rtf.12 create mode 100644 src/packaging/MacOS/ReadMe.rtf.13 create mode 100644 src/packaging/MacOS/ReadMe.rtf.14 create mode 100644 src/packaging/MacOS/ReadMe.rtf.15 create mode 100644 src/packaging/MacOS/ReadMe.rtf.16 create mode 100644 src/packaging/MacOS/ReadMe.rtf.17 create mode 100644 src/packaging/MacOS/ReadMe.rtf.18 create mode 100644 src/packaging/MacOS/ReadMe.rtf.7 create mode 100644 src/packaging/MacOS/ReadMe.rtf.8 create mode 100644 src/packaging/MacOS/ReadMe.rtf.9 create mode 100755 src/packaging/MacOS/Uninstall create mode 100755 src/packaging/MacOS/Uninstall.14.15 create mode 100644 src/packaging/MacOS/afs.conf create mode 100644 src/packaging/MacOS/afslogo.jpg create mode 100644 src/packaging/MacOS/background.jpg create mode 100644 src/packaging/MacOS/buildpkg.sh.in create mode 100644 src/packaging/MacOS/conclusion.txt create mode 100644 src/packaging/MacOS/csrvdbmerge.pl create mode 100755 src/packaging/MacOS/decode-panic create mode 100644 src/packaging/MacOS/krb5-weak.conf create mode 100644 src/packaging/MacOS/openafs.launchd.plist create mode 100644 src/packaging/MacOS/openafs.launchdaemon create mode 100644 src/packaging/MacOS/pkgbuild.sh.in create mode 100644 src/packaging/MacOS/settings.plist create mode 100755 src/packaging/MacOS/universal.sh create mode 100644 src/packaging/OpenBSD/buildpkg.sh create mode 100644 src/packaging/OpenBSD/desc create mode 100644 src/packaging/OpenBSD/packinglist create mode 100644 src/packaging/OpenBSD/postinstall create mode 100644 src/packaging/README create mode 100644 src/packaging/RedHat/.gitignore create mode 100644 src/packaging/RedHat/RPM-build-notes create mode 100755 src/packaging/RedHat/makesrpm.pl create mode 100755 src/packaging/RedHat/mockbuild.pl create mode 100644 src/packaging/RedHat/openafs-1.4.0-kmodule26.patch create mode 100644 src/packaging/RedHat/openafs-LICENSE.Sun create mode 100644 src/packaging/RedHat/openafs-README create mode 100644 src/packaging/RedHat/openafs-SuidCells create mode 100644 src/packaging/RedHat/openafs-ThisCell create mode 100755 src/packaging/RedHat/openafs-buildall.sh create mode 100755 src/packaging/RedHat/openafs-buildfedora.pl create mode 100755 src/packaging/RedHat/openafs-cacheinfo create mode 100644 src/packaging/RedHat/openafs-client.init create mode 100644 src/packaging/RedHat/openafs-client.modules create mode 100644 src/packaging/RedHat/openafs-client.service create mode 100644 src/packaging/RedHat/openafs-kmodtool create mode 100755 src/packaging/RedHat/openafs-kvers-is.sh create mode 100755 src/packaging/RedHat/openafs-makesrc.sh create mode 100644 src/packaging/RedHat/openafs-server.init create mode 100644 src/packaging/RedHat/openafs-server.service create mode 100644 src/packaging/RedHat/openafs.spec.in create mode 100644 src/packaging/RedHat/openafs.sysconfig create mode 100644 src/pam/.gitignore create mode 100644 src/pam/Makefile.in create mode 100644 src/pam/afs_account.c create mode 100644 src/pam/afs_auth.c create mode 100644 src/pam/afs_message.c create mode 100644 src/pam/afs_message.h create mode 100644 src/pam/afs_pam_msg.c create mode 100644 src/pam/afs_pam_msg.h create mode 100644 src/pam/afs_password.c create mode 100644 src/pam/afs_session.c create mode 100644 src/pam/afs_setcred.c create mode 100644 src/pam/afs_util.c create mode 100644 src/pam/afs_util.h create mode 100644 src/pam/pam_afs.5 create mode 100644 src/pam/pam_afs.hp create mode 100644 src/pam/pam_afs.map create mode 100644 src/pam/test_pam.c create mode 100644 src/platform/AIX/Makefile.in create mode 100644 src/platform/DARWIN/.gitignore create mode 100644 src/platform/DARWIN/AFSPreference/.gitignore create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.h create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSBackgrounderDelegate.m create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuCredentialContoller.h create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuCredentialContoller.m create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuExtra.h create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuExtra.m create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuExtraView.h create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/AFSMenuExtraView.m create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/CredentialWindow/CredentialWindowController.h create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/CredentialWindow/CredentialWindowController.m create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/main.m create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/AFSBackounderMainMenu.xib create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/CredentialWindow.nib/classes.nib create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/CredentialWindow.nib/info.nib create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/CredentialWindow.nib/keyedobjects.nib create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/Info.plist create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/hasToken.png create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/noToken.png create mode 100644 src/platform/DARWIN/AFSPreference/AFSBackgrounder/resource/version.plist create mode 100644 src/platform/DARWIN/AFSPreference/AFSCommanderIcon.icns create mode 100644 src/platform/DARWIN/AFSPreference/AFSCommanderPref.h create mode 100644 src/platform/DARWIN/AFSPreference/AFSCommanderPref.m create mode 100644 src/platform/DARWIN/AFSPreference/AFSCommander_Prefix.pch create mode 100644 src/platform/DARWIN/AFSPreference/AFSMenuExtra-Info.plist create mode 100644 src/platform/DARWIN/AFSPreference/AFSPropertyManager.h create mode 100644 src/platform/DARWIN/AFSPreference/AFSPropertyManager.m create mode 100644 src/platform/DARWIN/AFSPreference/AuthUtil.h create mode 100644 src/platform/DARWIN/AFSPreference/AuthUtil.m create mode 100644 src/platform/DARWIN/AFSPreference/CellIp.h create mode 100644 src/platform/DARWIN/AFSPreference/CellIp.m create mode 100644 src/platform/DARWIN/AFSPreference/DBCellElement.h create mode 100644 src/platform/DARWIN/AFSPreference/DBCellElement.m create mode 100644 src/platform/DARWIN/AFSPreference/DialogUtility.h create mode 100644 src/platform/DARWIN/AFSPreference/DialogUtility.m create mode 100644 src/platform/DARWIN/AFSPreference/English.lproj/CredentialPanel.xib create mode 100644 src/platform/DARWIN/AFSPreference/English.lproj/InfoPlist.strings create mode 100644 src/platform/DARWIN/AFSPreference/English.lproj/IpPanel.xib create mode 100644 src/platform/DARWIN/AFSPreference/English.lproj/Localizable.strings create mode 100644 src/platform/DARWIN/AFSPreference/English.lproj/OpenAFSPreference.xib create mode 100644 src/platform/DARWIN/AFSPreference/English.lproj/SymLinkEdit.xib create mode 100644 src/platform/DARWIN/AFSPreference/FileUtil.h create mode 100644 src/platform/DARWIN/AFSPreference/FileUtil.m create mode 100644 src/platform/DARWIN/AFSPreference/Info.plist create mode 100644 src/platform/DARWIN/AFSPreference/InfoController.h create mode 100644 src/platform/DARWIN/AFSPreference/InfoController.m create mode 100644 src/platform/DARWIN/AFSPreference/IpConfiguratorCommander.h create mode 100644 src/platform/DARWIN/AFSPreference/IpConfiguratorCommander.m create mode 100644 src/platform/DARWIN/AFSPreference/Krb5Util.h create mode 100644 src/platform/DARWIN/AFSPreference/Krb5Util.m create mode 100644 src/platform/DARWIN/AFSPreference/LynkCreationController.h create mode 100644 src/platform/DARWIN/AFSPreference/LynkCreationController.m create mode 100644 src/platform/DARWIN/AFSPreference/NSString+search.h create mode 100644 src/platform/DARWIN/AFSPreference/NSString+search.m create mode 100644 src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/bisegni.mode1 create mode 100644 src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/project.pbxproj create mode 100644 src/platform/DARWIN/AFSPreference/PListManager.h create mode 100644 src/platform/DARWIN/AFSPreference/PListManager.m create mode 100644 src/platform/DARWIN/AFSPreference/SystemUIPlugin.h create mode 100644 src/platform/DARWIN/AFSPreference/TaskUtil.h create mode 100644 src/platform/DARWIN/AFSPreference/TaskUtil.m create mode 100644 src/platform/DARWIN/AFSPreference/TestLib.m create mode 100644 src/platform/DARWIN/AFSPreference/TokenCredentialController.h create mode 100644 src/platform/DARWIN/AFSPreference/TokenCredentialController.m create mode 100644 src/platform/DARWIN/AFSPreference/ViewUtility.h create mode 100644 src/platform/DARWIN/AFSPreference/ViewUtility.m create mode 100644 src/platform/DARWIN/AFSPreference/afscommlogo.png create mode 100644 src/platform/DARWIN/AFSPreference/afshlp.m create mode 100644 src/platform/DARWIN/AFSPreference/afslogo.psd create mode 100644 src/platform/DARWIN/AFSPreference/afsltd.m create mode 100644 src/platform/DARWIN/AFSPreference/global.h create mode 100644 src/platform/DARWIN/AFSPreference/license.rtf create mode 100644 src/platform/DARWIN/AFSPreference/portability.h create mode 100644 src/platform/DARWIN/AklogAuthPlugin/.gitignore create mode 100644 src/platform/DARWIN/AklogAuthPlugin/AklogAuthPlugin.xcodeproj/project.pbxproj create mode 100644 src/platform/DARWIN/AklogAuthPlugin/AklogAuthPlugin_Prefix.pch create mode 100644 src/platform/DARWIN/AklogAuthPlugin/Info.plist create mode 100644 src/platform/DARWIN/AklogAuthPlugin/README create mode 100644 src/platform/DARWIN/AklogAuthPlugin/aklog.c create mode 100644 src/platform/DARWIN/Makefile.in create mode 100644 src/platform/DARWIN/afscell/.gitignore create mode 100644 src/platform/DARWIN/afscell/English.lproj/InfoPlist.strings create mode 100644 src/platform/DARWIN/afscell/English.lproj/Localizable.strings create mode 100644 src/platform/DARWIN/afscell/English.lproj/afscell.nib/classes.nib create mode 100644 src/platform/DARWIN/afscell/English.lproj/afscell.nib/info.nib create mode 100644 src/platform/DARWIN/afscell/English.lproj/afscell.nib/keyedobjects.nib create mode 100644 src/platform/DARWIN/afscell/Info.plist create mode 100644 src/platform/DARWIN/afscell/InstallerSections.plist create mode 100644 src/platform/DARWIN/afscell/afscell.xcodeproj/project.pbxproj create mode 100644 src/platform/DARWIN/afscell/afscellPane.h create mode 100644 src/platform/DARWIN/afscell/afscellPane.m create mode 100644 src/platform/DARWIN/afscell/afscell_Prefix.pch create mode 100644 src/platform/DARWIN/afscell/version.plist create mode 100644 src/platform/DARWIN/afssettings.m create mode 100644 src/platform/DARWIN/growlagent/.gitignore create mode 100644 src/platform/DARWIN/growlagent/Andy.icns create mode 100644 src/platform/DARWIN/growlagent/GrowlDefines.h create mode 100644 src/platform/DARWIN/growlagent/GrowlDefinesInternal.h create mode 100644 src/platform/DARWIN/growlagent/GrowlPathway.h create mode 100644 src/platform/DARWIN/growlagent/Info.plist create mode 100644 src/platform/DARWIN/growlagent/Makefile.in create mode 100644 src/platform/DARWIN/growlagent/growlagent.r create mode 100644 src/platform/DARWIN/growlagent/main.m create mode 100644 src/platform/DFBSD/Makefile.in create mode 100644 src/platform/FBSD/Makefile.in create mode 100644 src/platform/HPUX/Makefile.in create mode 100644 src/platform/IRIX/Makefile.in create mode 100644 src/platform/IRIX/herror.c create mode 100644 src/platform/IRIX/rcmd.c create mode 100644 src/platform/IRIX/sgi_auth.c create mode 100644 src/platform/IRIX/ta-rauth.c create mode 100644 src/platform/LINUX/Makefile.in create mode 100644 src/platform/Makefile.in create mode 100644 src/platform/NBSD/Makefile.in create mode 100644 src/platform/OBSD/Makefile.in create mode 100644 src/platform/SOLARIS/.gitignore create mode 100644 src/platform/SOLARIS/Makefile.in create mode 100644 src/platform/SOLARIS/fs_conv_sol26.c create mode 100644 src/procmgmt/Makefile.in create mode 100644 src/procmgmt/NTMakefile create mode 100644 src/procmgmt/afskill.c create mode 100644 src/procmgmt/afskill.rc create mode 100644 src/procmgmt/afsprocmgmt.def create mode 100644 src/procmgmt/afsprocmgmt.rc create mode 100644 src/procmgmt/pmgtprivate.h create mode 100644 src/procmgmt/procmgmt.h create mode 100644 src/procmgmt/procmgmt_nt.c create mode 100644 src/procmgmt/procmgmt_softsig.h create mode 100644 src/procmgmt/procmgmt_unix.c create mode 100644 src/procmgmt/redirect_nt.c create mode 100644 src/procmgmt/test/Makefile.in create mode 100644 src/procmgmt/test/NTMakefile create mode 100644 src/procmgmt/test/pmgttest.c create mode 100644 src/ptserver/.gitignore create mode 100644 src/ptserver/Makefile.in create mode 100644 src/ptserver/NTMakefile create mode 100644 src/ptserver/db_verify.c create mode 100644 src/ptserver/display.c create mode 100644 src/ptserver/display.h create mode 100644 src/ptserver/error_macros.h create mode 100644 src/ptserver/liboafs_prot.la.sym create mode 100644 src/ptserver/map.c create mode 100644 src/ptserver/map.h create mode 100644 src/ptserver/pt_util.c create mode 100644 src/ptserver/pt_util.rc create mode 100644 src/ptserver/ptclient.c create mode 100644 src/ptserver/ptclient.h create mode 100644 src/ptserver/ptclient.rc create mode 100644 src/ptserver/pterror.et create mode 100644 src/ptserver/ptint.xg create mode 100644 src/ptserver/ptopcodes.h create mode 100644 src/ptserver/ptprocs.c create mode 100644 src/ptserver/ptprototypes.h create mode 100644 src/ptserver/pts.c create mode 100644 src/ptserver/pts.rc create mode 100644 src/ptserver/ptserver.c create mode 100644 src/ptserver/ptserver.h create mode 100644 src/ptserver/ptserver.rc create mode 100644 src/ptserver/ptubik.c create mode 100644 src/ptserver/ptuser.c create mode 100644 src/ptserver/ptuser.h create mode 100644 src/ptserver/ptutils.c create mode 100644 src/ptserver/readgroup.c create mode 100644 src/ptserver/readpwd.c create mode 100644 src/ptserver/testpt.c create mode 100644 src/ptserver/utils.c create mode 100644 src/rmbat.bat create mode 100644 src/rmbat.rsp create mode 100644 src/roken/.gitignore create mode 100644 src/roken/Makefile.in create mode 100644 src/roken/NTMakefile create mode 100644 src/roken/afsroken.def create mode 100644 src/roken/afsroken.rc create mode 100644 src/roken/config.h create mode 100644 src/roken/librokenafs.la.sym create mode 100644 src/rx/.gitignore create mode 100644 src/rx/AIX/rx_kmutex.c create mode 100644 src/rx/AIX/rx_kmutex.h create mode 100644 src/rx/AIX/rx_knet.c create mode 100644 src/rx/DARWIN/rx_kmutex.c create mode 100644 src/rx/DARWIN/rx_kmutex.h create mode 100644 src/rx/DARWIN/rx_knet.c create mode 100644 src/rx/FBSD/rx_kmutex.c create mode 100644 src/rx/FBSD/rx_kmutex.h create mode 100644 src/rx/FBSD/rx_knet.c create mode 100644 src/rx/HPUX/rx_kmutex.c create mode 100644 src/rx/HPUX/rx_kmutex.h create mode 100644 src/rx/HPUX/rx_knet.c create mode 100644 src/rx/IRIX/rx_kmutex.c create mode 100644 src/rx/IRIX/rx_kmutex.h create mode 100644 src/rx/IRIX/rx_knet.c create mode 100644 src/rx/LINUX/rx_kmutex.c create mode 100644 src/rx/LINUX/rx_kmutex.h create mode 100644 src/rx/LINUX/rx_knet.c create mode 100644 src/rx/Makefile.in create mode 100644 src/rx/NBSD/rx_kmutex.c create mode 100644 src/rx/NBSD/rx_kmutex.h create mode 100644 src/rx/NBSD/rx_knet.c create mode 100644 src/rx/NTMakefile create mode 100644 src/rx/OBSD/rx_kmutex.c create mode 100644 src/rx/OBSD/rx_kmutex.h create mode 100644 src/rx/OBSD/rx_knet.c create mode 100644 src/rx/SOLARIS/rx_kmutex.c create mode 100644 src/rx/SOLARIS/rx_kmutex.h create mode 100644 src/rx/SOLARIS/rx_knet.c create mode 100644 src/rx/SUNOS/rx_kmutex.h create mode 100644 src/rx/SUNOS/rx_knet.c create mode 100644 src/rx/UKERNEL/rx_kcommon.h create mode 100644 src/rx/UKERNEL/rx_kmutex.c create mode 100644 src/rx/UKERNEL/rx_kmutex.h create mode 100644 src/rx/UKERNEL/rx_knet.c create mode 100644 src/rx/bulk.example/Makefile.in create mode 100644 src/rx/bulk.example/README create mode 100644 src/rx/bulk.example/bulk.xg create mode 100644 src/rx/bulk.example/bulk_client.c create mode 100644 src/rx/bulk.example/bulk_io.c create mode 100644 src/rx/bulk.example/bulk_server.c create mode 100644 src/rx/bulktest/Makefile.in create mode 100644 src/rx/bulktest/README create mode 100644 src/rx/bulktest/bulk.xg create mode 100644 src/rx/bulktest/bulk_client.c create mode 100644 src/rx/bulktest/bulk_io.c create mode 100644 src/rx/bulktest/bulk_server.c create mode 100644 src/rx/libafsdep create mode 100644 src/rx/liboafs_rx.la.sym create mode 100644 src/rx/multi.example/Makefile.in create mode 100644 src/rx/multi.example/README create mode 100644 src/rx/multi.example/sample.xg create mode 100644 src/rx/multi.example/sample_client.c create mode 100644 src/rx/multi.example/sample_server.c create mode 100644 src/rx/rx.c create mode 100644 src/rx/rx.h create mode 100644 src/rx/rx_atomic.h create mode 100644 src/rx/rx_call.c create mode 100644 src/rx/rx_call.h create mode 100644 src/rx/rx_clock.c create mode 100644 src/rx/rx_clock.h create mode 100644 src/rx/rx_clock_nt.c create mode 100644 src/rx/rx_conn.c create mode 100644 src/rx/rx_conn.h create mode 100644 src/rx/rx_conncache.c create mode 100644 src/rx/rx_event.c create mode 100644 src/rx/rx_event.h create mode 100644 src/rx/rx_getaddr.c create mode 100644 src/rx/rx_globals.c create mode 100644 src/rx/rx_globals.h create mode 100644 src/rx/rx_identity.c create mode 100644 src/rx/rx_identity.h create mode 100644 src/rx/rx_internal.h create mode 100644 src/rx/rx_kcommon.c create mode 100644 src/rx/rx_kcommon.h create mode 100644 src/rx/rx_kernel.h create mode 100644 src/rx/rx_lwp.c create mode 100644 src/rx/rx_lwp.h create mode 100644 src/rx/rx_misc.c create mode 100644 src/rx/rx_misc.h create mode 100644 src/rx/rx_multi.c create mode 100644 src/rx/rx_multi.h create mode 100644 src/rx/rx_null.c create mode 100644 src/rx/rx_null.h create mode 100644 src/rx/rx_opaque.c create mode 100644 src/rx/rx_opaque.h create mode 100644 src/rx/rx_packet.c create mode 100644 src/rx/rx_packet.h create mode 100644 src/rx/rx_peer.c create mode 100644 src/rx/rx_peer.h create mode 100644 src/rx/rx_prototypes.h create mode 100644 src/rx/rx_pthread.c create mode 100644 src/rx/rx_pthread.h create mode 100644 src/rx/rx_queue.h create mode 100644 src/rx/rx_rdwr.c create mode 100644 src/rx/rx_server.h create mode 100644 src/rx/rx_stats.c create mode 100644 src/rx/rx_stats.h create mode 100644 src/rx/rx_trace.c create mode 100644 src/rx/rx_trace.h create mode 100644 src/rx/rx_user.c create mode 100644 src/rx/rx_user.h create mode 100644 src/rx/rx_xmit_nt.c create mode 100644 src/rx/rx_xmit_nt.h create mode 100644 src/rx/simple.example/.gitignore create mode 100644 src/rx/simple.example/Makefile.in create mode 100644 src/rx/simple.example/README create mode 100644 src/rx/simple.example/sample.xg create mode 100644 src/rx/simple.example/sample_client.c create mode 100644 src/rx/simple.example/sample_server.c create mode 100644 src/rx/test/.gitignore create mode 100644 src/rx/test/Makefile.in create mode 100644 src/rx/test/NTMakefile create mode 100644 src/rx/test/generator.c create mode 100644 src/rx/test/generator.h create mode 100644 src/rx/test/kctest.c create mode 100644 src/rx/test/kstest.c create mode 100644 src/rx/test/tableGen.c create mode 100644 src/rx/test/testclient.c create mode 100644 src/rx/test/testqueue.c create mode 100644 src/rx/test/testserver.c create mode 100644 src/rx/xdr.c create mode 100644 src/rx/xdr.h create mode 100644 src/rx/xdr_afsuuid.c create mode 100644 src/rx/xdr_array.c create mode 100644 src/rx/xdr_arrayn.c create mode 100644 src/rx/xdr_float.c create mode 100644 src/rx/xdr_int32.c create mode 100644 src/rx/xdr_int64.c create mode 100644 src/rx/xdr_len.c create mode 100644 src/rx/xdr_mem.c create mode 100644 src/rx/xdr_prototypes.h create mode 100644 src/rx/xdr_rec.c create mode 100644 src/rx/xdr_refernce.c create mode 100644 src/rx/xdr_rx.c create mode 100644 src/rx/xdr_stdio.c create mode 100644 src/rx/xdr_update.c create mode 100644 src/rxdebug/.gitignore create mode 100644 src/rxdebug/Makefile.in create mode 100644 src/rxdebug/NTMakefile create mode 100644 src/rxdebug/rxdebug.c create mode 100644 src/rxdebug/rxdebug.rc create mode 100644 src/rxdebug/rxdumptrace.c create mode 100644 src/rxgen/.gitignore create mode 100644 src/rxgen/Makefile.in create mode 100644 src/rxgen/NTMakefile create mode 100644 src/rxgen/rpc_cout.c create mode 100644 src/rxgen/rpc_errors.h create mode 100644 src/rxgen/rpc_hout.c create mode 100644 src/rxgen/rpc_main.c create mode 100644 src/rxgen/rpc_parse.c create mode 100644 src/rxgen/rpc_parse.h create mode 100644 src/rxgen/rpc_scan.c create mode 100644 src/rxgen/rpc_scan.h create mode 100644 src/rxgen/rpc_util.c create mode 100644 src/rxgen/rpc_util.h create mode 100644 src/rxgen/rxgen.rc create mode 100644 src/rxgen/rxgen_consts.h create mode 100644 src/rxkad/.gitignore create mode 100644 src/rxkad/Makefile.in create mode 100644 src/rxkad/NTMakefile create mode 100644 src/rxkad/README create mode 100644 src/rxkad/README.v5 create mode 100644 src/rxkad/asn1_err.h create mode 100644 src/rxkad/bg-fcrypt.c create mode 100644 src/rxkad/crc.c create mode 100644 src/rxkad/crypt_conn.c create mode 100644 src/rxkad/der-protos.h create mode 100644 src/rxkad/der.h create mode 100644 src/rxkad/fc_test.c create mode 100644 src/rxkad/fcrypt.c create mode 100644 src/rxkad/fcrypt.h create mode 100644 src/rxkad/libafsdep create mode 100644 src/rxkad/liboafs_rxkad.la.sym create mode 100644 src/rxkad/lifetimes.h create mode 100644 src/rxkad/private_data.h create mode 100644 src/rxkad/rxkad.p.h create mode 100644 src/rxkad/rxkad_client.c create mode 100644 src/rxkad/rxkad_common.c create mode 100644 src/rxkad/rxkad_convert.h create mode 100644 src/rxkad/rxkad_errs.et create mode 100644 src/rxkad/rxkad_prototypes.h create mode 100644 src/rxkad/rxkad_server.c create mode 100644 src/rxkad/sboxes.h create mode 100644 src/rxkad/stats.h create mode 100644 src/rxkad/tcrypt.c create mode 100644 src/rxkad/test/Makefile.in create mode 100644 src/rxkad/test/NTMakefile create mode 100644 src/rxkad/test/stress.c create mode 100644 src/rxkad/test/stress.rg create mode 100644 src/rxkad/test/stress_c.c create mode 100644 src/rxkad/test/stress_errs.et create mode 100644 src/rxkad/test/stress_internal.h create mode 100644 src/rxkad/test/stress_s.c create mode 100644 src/rxkad/test/stress_test_mp create mode 100644 src/rxkad/ticket.c create mode 100644 src/rxkad/ticket5.c create mode 100644 src/rxkad/v5der.c create mode 100644 src/rxkad/v5gen-rewrite.h create mode 100644 src/rxkad/v5gen.c create mode 100644 src/rxkad/v5gen.h create mode 100644 src/rxosd/.gitignore create mode 100644 src/rxosd/Makefile.in create mode 100644 src/rxosd/rxosd.xg create mode 100644 src/rxstat/.gitignore create mode 100644 src/rxstat/Makefile.in create mode 100644 src/rxstat/NTMakefile create mode 100644 src/rxstat/liboafs_rxstat.la.sym create mode 100644 src/rxstat/rxstat.c create mode 100644 src/rxstat/rxstat.xg create mode 100644 src/scout/.gitignore create mode 100644 src/scout/Makefile.in create mode 100644 src/scout/scout.c create mode 100644 src/shlibafsrpc/.gitignore create mode 100644 src/splint.cfg create mode 100644 src/symlink.bat create mode 100644 src/sys/.gitignore create mode 100644 src/sys/Makefile.in create mode 100644 src/sys/NTMakefile create mode 100644 src/sys/afs4.exp create mode 100644 src/sys/afs5.exp create mode 100644 src/sys/afsl4.exp create mode 100644 src/sys/afsl5.exp create mode 100644 src/sys/afssyscalls.c create mode 100644 src/sys/afssyscalls.h create mode 100644 src/sys/fixit.c create mode 100644 src/sys/glue.c create mode 100644 src/sys/icreate.c create mode 100644 src/sys/idec.c create mode 100644 src/sys/iinc.c create mode 100644 src/sys/iopen.c create mode 100644 src/sys/iread.c create mode 100644 src/sys/istat.c create mode 100644 src/sys/iwrite.c create mode 100644 src/sys/libafsdep create mode 100644 src/sys/liboafs_sys.la.sym create mode 100644 src/sys/pioctl.c create mode 100644 src/sys/pioctl_nt.c create mode 100644 src/sys/pioctl_nt.h create mode 100644 src/sys/rmtsys.xg create mode 100644 src/sys/rmtsysc.c create mode 100644 src/sys/rmtsysd.c create mode 100644 src/sys/rmtsysnet.c create mode 100644 src/sys/rmtsyss.c create mode 100644 src/sys/setpag.c create mode 100644 src/sys/sys_prototypes.h create mode 100644 src/sys/syscall.s create mode 100644 src/sys/xfsattrs.h create mode 100644 src/tbudb/.gitignore create mode 100644 src/tbudb/Makefile.in create mode 100644 src/tbutc/.gitignore create mode 100644 src/tbutc/Makefile.in create mode 100644 src/tbutc/NTMakefile create mode 100644 src/tbutc/butc.rc create mode 100644 src/tests/.gitignore create mode 100644 src/tests/KeyFile.uu create mode 100644 src/tests/Makefile.in create mode 100644 src/tests/OpenAFS/.gitignore create mode 100644 src/tests/OpenAFS/Auth-Heimdal.pm create mode 100644 src/tests/OpenAFS/Auth-Kaserver.pm create mode 100644 src/tests/OpenAFS/Auth.pm create mode 100644 src/tests/OpenAFS/CMU_copyright.pm create mode 100644 src/tests/OpenAFS/ConfigUtils.pm create mode 100644 src/tests/OpenAFS/OS-LINUX.pm create mode 100644 src/tests/OpenAFS/OS-SOLARIS.pm create mode 100644 src/tests/OpenAFS/OS.pm create mode 100644 src/tests/OpenAFS/afsconf.pm create mode 100644 src/tests/OpenAFS/bos.pm create mode 100644 src/tests/OpenAFS/config.pm create mode 100644 src/tests/OpenAFS/errtrans.pm create mode 100644 src/tests/OpenAFS/fs.pm create mode 100644 src/tests/OpenAFS/kas.pm create mode 100644 src/tests/OpenAFS/pts.pm create mode 100644 src/tests/OpenAFS/util.pm create mode 100644 src/tests/OpenAFS/vos.pm create mode 100644 src/tests/OpenAFS/wrapper.pm create mode 100644 src/tests/README create mode 100644 src/tests/README.afstools create mode 100644 src/tests/README.dumptool create mode 100755 src/tests/acladdgroup.pl create mode 100755 src/tests/acladdnegrights.pl create mode 100755 src/tests/acladdrights.pl create mode 100755 src/tests/acladduser.pl create mode 100755 src/tests/aclclearnegrights.pl create mode 100755 src/tests/aclcopy.pl create mode 100755 src/tests/aclremovegroup.pl create mode 100755 src/tests/aclremoveuser.pl create mode 100755 src/tests/afs-newcell.pl create mode 100644 src/tests/afs-rmcell.pl create mode 100755 src/tests/afs-rmcell.sh create mode 100644 src/tests/afscp.c create mode 100644 src/tests/afscp_callback.c create mode 100644 src/tests/append-over-page.c create mode 100644 src/tests/append1 create mode 100644 src/tests/apwd.c create mode 100644 src/tests/asu.c create mode 100755 src/tests/baduniq.pl create mode 100644 src/tests/blocks-new-file.c create mode 100644 src/tests/boot-strap-arla create mode 100755 src/tests/bosaddhost.pl create mode 100755 src/tests/bosaddkey.pl create mode 100755 src/tests/bosadduser.pl create mode 100755 src/tests/boscreate.pl create mode 100755 src/tests/bosdelete.pl create mode 100755 src/tests/bosdeleterunning.pl create mode 100755 src/tests/bosexec.pl create mode 100755 src/tests/bosinstall.pl create mode 100755 src/tests/boslisthosts.pl create mode 100755 src/tests/boslistkeys.pl create mode 100755 src/tests/boslistusers.pl create mode 100755 src/tests/bosremovehost.pl create mode 100755 src/tests/bosremovekey.pl create mode 100755 src/tests/bosremoveuser.pl create mode 100755 src/tests/bosrestartstopped.pl create mode 100755 src/tests/bossalvagepart.pl create mode 100755 src/tests/bossalvageserver.pl create mode 100755 src/tests/bossalvagevolume.pl create mode 100755 src/tests/bosshutdown.pl create mode 100755 src/tests/bosstart.pl create mode 100755 src/tests/bosstatus.pl create mode 100755 src/tests/bosstop.pl create mode 100755 src/tests/build-and-run-rcs create mode 100755 src/tests/build-emacs create mode 100644 src/tests/build-emacs-j create mode 100755 src/tests/build-gdb create mode 100755 src/tests/build-openafs create mode 100755 src/tests/checkpwd create mode 100755 src/tests/compare-inum-mp create mode 100755 src/tests/compare-inums create mode 100755 src/tests/compare-with-local create mode 100755 src/tests/copy-and-diff-gnu-mirror create mode 100755 src/tests/copy-file create mode 100755 src/tests/creat1 create mode 100644 src/tests/create-dirs.c create mode 100644 src/tests/create-files.c create mode 100644 src/tests/create-remove-dirs create mode 100644 src/tests/create-remove-files create mode 100644 src/tests/create-remove.c create mode 100644 src/tests/create-stat.c create mode 100644 src/tests/create-symlinks.c create mode 100755 src/tests/dd create mode 100644 src/tests/deep-tree create mode 100644 src/tests/deep-tree2 create mode 100644 src/tests/dir-size-mismatch create mode 100755 src/tests/dir-tree create mode 100644 src/tests/dup2-and-unlog.c create mode 100644 src/tests/echo-n.c create mode 100644 src/tests/err.c create mode 100644 src/tests/err.h create mode 100644 src/tests/errx.c create mode 100755 src/tests/exec create mode 100644 src/tests/exit-wo-close.c create mode 100755 src/tests/extcopyin create mode 100755 src/tests/extcopyout create mode 100644 src/tests/fcachesize-dir create mode 100644 src/tests/fcachesize-file-small create mode 100644 src/tests/fcachesize-read-file create mode 100644 src/tests/fcachesize-write-file create mode 100644 src/tests/fchmod.c create mode 100644 src/tests/fhbench.c create mode 100644 src/tests/find-and-cat-netbsd create mode 100644 src/tests/find-linux create mode 100644 src/tests/fs-flush create mode 100755 src/tests/fs-sa-la create mode 100644 src/tests/fs_lib.c create mode 100644 src/tests/fs_lib.h create mode 100644 src/tests/fsx.c create mode 100644 src/tests/ga-test.c create mode 100755 src/tests/generic-build create mode 100755 src/tests/getdents-and-unlink1 create mode 100755 src/tests/getdents-and-unlink2 create mode 100755 src/tests/getdents-and-unlink3 create mode 100755 src/tests/grind-arla-with-cvs create mode 100644 src/tests/hardlink1.c create mode 100644 src/tests/hardlink2.c create mode 100644 src/tests/hardlink3 create mode 100644 src/tests/hardlink4.c create mode 100644 src/tests/hardlink5 create mode 100644 src/tests/hello-world.in create mode 100644 src/tests/intr-read.c create mode 100755 src/tests/intr-read1 create mode 100644 src/tests/invalidate-file.c create mode 100644 src/tests/kaserver.DB0.uu create mode 100644 src/tests/kaserver.DBSYS1.uu create mode 100644 src/tests/kill-softer.c create mode 100644 src/tests/kill-softly.c create mode 100755 src/tests/kotest create mode 100755 src/tests/large-dir-16384 create mode 100755 src/tests/large-dir-extra create mode 100644 src/tests/large-dir.c create mode 100644 src/tests/large-dir2.c create mode 100644 src/tests/large-dir3.c create mode 100644 src/tests/large-filename create mode 100644 src/tests/ls-afs create mode 100644 src/tests/make-page.c create mode 100644 src/tests/many-dirs create mode 100644 src/tests/many-fetchs create mode 100644 src/tests/many-files create mode 100644 src/tests/many-files-with-content create mode 100644 src/tests/many-stores create mode 100644 src/tests/many-symlinks create mode 100644 src/tests/mkdir create mode 100755 src/tests/mkdir-lnk create mode 100755 src/tests/mkdir1 create mode 100644 src/tests/mkdir2.c create mode 100644 src/tests/mkdir3.c create mode 100755 src/tests/mkm-rmm create mode 100644 src/tests/mmap-and-read.c create mode 100644 src/tests/mmap-cat.c create mode 100644 src/tests/mmap-shared-write.c create mode 100644 src/tests/mmap-vs-read.c create mode 100644 src/tests/mmap-vs-read2.c create mode 100644 src/tests/mountpoint.in create mode 100644 src/tests/null-search.c create mode 100644 src/tests/parallel1 create mode 100644 src/tests/pine.c create mode 100755 src/tests/ptsadduser.pl create mode 100755 src/tests/ptschown.pl create mode 100755 src/tests/ptscreategroup.pl create mode 100755 src/tests/ptscreateuser.pl create mode 100755 src/tests/ptsdeletegroup.pl create mode 100755 src/tests/ptsdeleteuser.pl create mode 100755 src/tests/ptsexaminegroup.pl create mode 100755 src/tests/ptsexamineuser.pl create mode 100755 src/tests/ptslistmax.pl create mode 100755 src/tests/ptslistown.pl create mode 100755 src/tests/ptsmembersgroup.pl create mode 100755 src/tests/ptsmembersuser.pl create mode 100755 src/tests/ptsremove.pl create mode 100755 src/tests/ptssetf.pl create mode 100755 src/tests/ptssetmax.pl create mode 100644 src/tests/read-vs-mmap.c create mode 100644 src/tests/read-vs-mmap2.c create mode 100644 src/tests/read-write.c create mode 100644 src/tests/readdir-vs-lstat.c create mode 100755 src/tests/readfile-wo-create create mode 100755 src/tests/reauth.pl create mode 100644 src/tests/rename-under-feet.c create mode 100755 src/tests/rename1 create mode 100644 src/tests/rename2 create mode 100755 src/tests/rename3 create mode 100755 src/tests/rename4 create mode 100644 src/tests/rename5.c create mode 100644 src/tests/rename6.c create mode 100755 src/tests/rewrite-emacs create mode 100644 src/tests/rm-rf.c create mode 100755 src/tests/run-fsx create mode 100755 src/tests/run-rcs create mode 100755 src/tests/run-suite.pl create mode 100755 src/tests/run-tests.in create mode 100755 src/tests/setgroups create mode 100755 src/tests/setpag create mode 100644 src/tests/shallow-tree create mode 100644 src/tests/snprintf.c create mode 100644 src/tests/still-there-p.c create mode 100755 src/tests/strange-characters create mode 100644 src/tests/strange-characters-c.c create mode 100644 src/tests/strange-other-characters create mode 100644 src/tests/symlink.c create mode 100644 src/tests/t.uniq-bad create mode 100755 src/tests/test-front.sh create mode 100755 src/tests/test-gunzip-gnu-mirror create mode 100644 src/tests/test-parallel1.c create mode 100644 src/tests/test-parallel2.c create mode 100644 src/tests/test-setgroups.c create mode 100644 src/tests/test-setpag.c create mode 100644 src/tests/too-many-files create mode 100755 src/tests/touch1 create mode 100644 src/tests/truncate-files.c create mode 100644 src/tests/truncate.c create mode 100755 src/tests/untar-emacs create mode 100755 src/tests/untar-openafs create mode 100644 src/tests/utime-dir.c create mode 100644 src/tests/utime-file.c create mode 100644 src/tests/verr.c create mode 100644 src/tests/verrx.c create mode 100644 src/tests/visit-volumes create mode 100755 src/tests/vosaddsite.pl create mode 100755 src/tests/vosbackup.pl create mode 100755 src/tests/voscreate.pl create mode 100755 src/tests/vosdelentry.pl create mode 100755 src/tests/vosdump.pl create mode 100755 src/tests/vosexamine.pl create mode 100755 src/tests/voslistpart.pl create mode 100755 src/tests/voslistvldb.pl create mode 100755 src/tests/voslistvol.pl create mode 100755 src/tests/voslock.pl create mode 100755 src/tests/vosmove.pl create mode 100755 src/tests/vospartinfo.pl create mode 100755 src/tests/vosrelease.pl create mode 100755 src/tests/vosremove.pl create mode 100755 src/tests/vosremsite.pl create mode 100755 src/tests/vosrename.pl create mode 100755 src/tests/vosrestore.pl create mode 100755 src/tests/vossyncserv.pl create mode 100755 src/tests/vossyncvldb.pl create mode 100755 src/tests/vosunlock.pl create mode 100755 src/tests/vosunlockall.pl create mode 100755 src/tests/voszap.pl create mode 100644 src/tests/vwarn.c create mode 100644 src/tests/vwarnx.c create mode 100644 src/tests/warn.c create mode 100644 src/tests/warnerr.c create mode 100644 src/tests/warnx.c create mode 100644 src/tests/write-closed.c create mode 100644 src/tests/write-closed2.c create mode 100644 src/tests/write-large.c create mode 100644 src/tests/write-rand.c create mode 100755 src/tests/write-ro create mode 100644 src/tests/write-ro-file.c create mode 100644 src/tests/write-ucc.c create mode 100755 src/tests/write1 create mode 100755 src/tests/write2 create mode 100644 src/tests/write3.c create mode 100644 src/tools/Makefile.in create mode 100755 src/tools/audit/readsysvmq create mode 100644 src/tools/dumpscan/.gitignore create mode 100644 src/tools/dumpscan/Makefile.in create mode 100644 src/tools/dumpscan/TEMPLATE create mode 100644 src/tools/dumpscan/afsdump_dirlist.c create mode 100644 src/tools/dumpscan/afsdump_extract.c create mode 100644 src/tools/dumpscan/afsdump_scan.c create mode 100644 src/tools/dumpscan/afsdump_xsed.c create mode 100644 src/tools/dumpscan/backuphdr.c create mode 100644 src/tools/dumpscan/directory.c create mode 100644 src/tools/dumpscan/dump.c create mode 100644 src/tools/dumpscan/dumpfmt.h create mode 100644 src/tools/dumpscan/dumpscan.h create mode 100644 src/tools/dumpscan/dumpscan_errs.et create mode 100644 src/tools/dumpscan/dumptool.c create mode 100644 src/tools/dumpscan/int64.c create mode 100644 src/tools/dumpscan/intNN.h create mode 100644 src/tools/dumpscan/internal.h create mode 100644 src/tools/dumpscan/parsedump.c create mode 100644 src/tools/dumpscan/parsetag.c create mode 100644 src/tools/dumpscan/parsevnode.c create mode 100644 src/tools/dumpscan/parsevol.c create mode 100644 src/tools/dumpscan/pathname.c create mode 100644 src/tools/dumpscan/primitive.c create mode 100644 src/tools/dumpscan/repair.c create mode 100644 src/tools/dumpscan/stagehdr.c create mode 100644 src/tools/dumpscan/stagehdr.h create mode 100644 src/tools/dumpscan/util.c create mode 100644 src/tools/dumpscan/xf_errs.et create mode 100644 src/tools/dumpscan/xf_files.c create mode 100644 src/tools/dumpscan/xf_printf.c create mode 100644 src/tools/dumpscan/xf_profile.c create mode 100644 src/tools/dumpscan/xf_rxcall.c create mode 100644 src/tools/dumpscan/xfiles.c create mode 100644 src/tools/dumpscan/xfiles.h create mode 100644 src/tools/rxperf/.gitignore create mode 100644 src/tools/rxperf/Makefile.in create mode 100644 src/tools/rxperf/NTMakefile create mode 100644 src/tools/rxperf/rxperf.c create mode 100644 src/tools/rxperf/rxperf.rc create mode 100644 src/tptserver/.gitignore create mode 100644 src/tptserver/Makefile.in create mode 100644 src/tptserver/NTMakefile create mode 100644 src/tptserver/pt_util.rc create mode 100644 src/tptserver/ptclient.rc create mode 100644 src/tptserver/pts.rc create mode 100644 src/tptserver/ptserver.rc create mode 100644 src/tsalvaged/.gitignore create mode 100644 src/tsalvaged/Makefile.in create mode 100644 src/tsalvaged/NTMakefile create mode 100644 src/tsalvaged/fssync-debug.rc create mode 100644 src/tsalvaged/salvager.rc create mode 100644 src/tsalvaged/salvageserver.rc create mode 100644 src/tsalvaged/salvsync-debug.c create mode 100644 src/tsalvaged/salvsync-debug.rc create mode 100644 src/tsm41/.gitignore create mode 100644 src/tsm41/Makefile.in create mode 100644 src/tsm41/aix41_auth.c create mode 100644 src/tsm41/aix41_ident.c create mode 100644 src/tsm41/aix5_auth.c create mode 100644 src/tsm41/aix_aklog.c create mode 100644 src/tsm41/aix_auth_common.c create mode 100644 src/tsm41/aix_auth_prototypes.h create mode 100644 src/tsm41/aix_ident_prototypes.h create mode 100644 src/tsm41/aix_ktc.c create mode 100644 src/tubik/.gitignore create mode 100644 src/tubik/Makefile.in create mode 100644 src/tubik/udebug.rc create mode 100644 src/tvlserver/.gitignore create mode 100644 src/tvlserver/Makefile.in create mode 100644 src/tvolser/.gitignore create mode 100644 src/tvolser/Makefile.in create mode 100644 src/tvolser/NTMakefile create mode 100644 src/tvolser/volserver.rc create mode 100644 src/ubik/.gitignore create mode 100644 src/ubik/Makefile.in create mode 100644 src/ubik/NTMakefile create mode 100644 src/ubik/beacon.c create mode 100644 src/ubik/disk.c create mode 100644 src/ubik/liboafs_ubik.la.sym create mode 100644 src/ubik/lock.c create mode 100644 src/ubik/phys.c create mode 100644 src/ubik/recovery.c create mode 100644 src/ubik/remote.c create mode 100644 src/ubik/ubik.c create mode 100644 src/ubik/ubik.p.h create mode 100644 src/ubik/ubik_int.xg create mode 100644 src/ubik/ubikclient.c create mode 100644 src/ubik/ubikcmd.c create mode 100644 src/ubik/udebug.c create mode 100644 src/ubik/udebug.rc create mode 100644 src/ubik/uerrors.et create mode 100644 src/ubik/uinit.c create mode 100644 src/ubik/utst_client.c create mode 100644 src/ubik/utst_int.xg create mode 100644 src/ubik/utst_server.c create mode 100644 src/ubik/vote.c create mode 100644 src/update/.gitignore create mode 100644 src/update/Makefile.in create mode 100644 src/update/NTMakefile create mode 100644 src/update/client.c create mode 100644 src/update/global.h create mode 100644 src/update/server.c create mode 100644 src/update/upclient.rc create mode 100644 src/update/update.xg create mode 100644 src/update/update_internal.h create mode 100644 src/update/upserver.rc create mode 100644 src/update/utils.c create mode 100644 src/usd/Makefile.in create mode 100644 src/usd/NTMakefile create mode 100644 src/usd/liboafs_usd.la.sym create mode 100644 src/usd/test/.gitignore create mode 100644 src/usd/test/Makefile.in create mode 100644 src/usd/test/NTMakefile create mode 100644 src/usd/test/usd_test.c create mode 100644 src/usd/usd.h create mode 100644 src/usd/usd_file.c create mode 100644 src/usd/usd_nt.c create mode 100644 src/uss/.gitignore create mode 100644 src/uss/Makefile.in create mode 100644 src/uss/grammar.y create mode 100644 src/uss/lex.l create mode 100644 src/uss/sample.bulkfile create mode 100644 src/uss/sample.template create mode 100644 src/uss/uss.c create mode 100644 src/uss/uss.rc create mode 100644 src/uss/uss_acl.c create mode 100644 src/uss/uss_acl.h create mode 100644 src/uss/uss_common.c create mode 100644 src/uss/uss_common.h create mode 100644 src/uss/uss_fs.c create mode 100644 src/uss/uss_fs.h create mode 100644 src/uss/uss_kauth.c create mode 100644 src/uss/uss_kauth.h create mode 100644 src/uss/uss_procs.c create mode 100644 src/uss/uss_procs.h create mode 100644 src/uss/uss_ptserver.c create mode 100644 src/uss/uss_ptserver.h create mode 100644 src/uss/uss_vol.c create mode 100644 src/uss/uss_vol.h create mode 100644 src/uss/yy-lsed create mode 100644 src/util/.gitignore create mode 100644 src/util/Makefile.in create mode 100644 src/util/NTMakefile create mode 100644 src/util/afs_atomlist.c create mode 100644 src/util/afs_atomlist.h create mode 100644 src/util/afs_lhash.c create mode 100644 src/util/afs_lhash.h create mode 100644 src/util/afsutil.h create mode 100644 src/util/afsutil_prototypes.h create mode 100644 src/util/base32.c create mode 100644 src/util/base64.c create mode 100644 src/util/dirent_nt.h create mode 100644 src/util/dirpath.c create mode 100644 src/util/dirpath.hin create mode 100644 src/util/dirpath_nt.h create mode 100644 src/util/errmap_nt.c create mode 100644 src/util/errmap_nt.h create mode 100644 src/util/errors.h create mode 100644 src/util/exec.c create mode 100644 src/util/fileutil.c create mode 100644 src/util/fileutil.h create mode 100644 src/util/flipbase64.c create mode 100644 src/util/fstab.c create mode 100644 src/util/hostparse.c create mode 100644 src/util/hputil.c create mode 100644 src/util/krb5_nt.c create mode 100644 src/util/krb5_nt.h create mode 100644 src/util/kreltime.c create mode 100644 src/util/ktime.c create mode 100644 src/util/ktime.h create mode 100644 src/util/liboafs_util.la.sym create mode 100644 src/util/pthread_glock.c create mode 100644 src/util/pthread_glock.h create mode 100644 src/util/pthread_nosigs.h create mode 100644 src/util/pthread_threadname.c create mode 100644 src/util/readdir_nt.c create mode 100644 src/util/regex.c create mode 100644 src/util/secutil_nt.c create mode 100644 src/util/secutil_nt.h create mode 100644 src/util/serverLog.c create mode 100644 src/util/sys.c create mode 100644 src/util/tabular_output.c create mode 100644 src/util/tabular_output.h create mode 100644 src/util/test/Makefile.in create mode 100644 src/util/test/NTMakefile create mode 100644 src/util/test/b32.c create mode 100644 src/util/test/b64.c create mode 100644 src/util/test/dirpath_test.c create mode 100644 src/util/test/dtest.c create mode 100644 src/util/test/fb64.c create mode 100644 src/util/test/ktest.c create mode 100644 src/util/test/test_ktime.c create mode 100644 src/util/test/treaddir.c create mode 100644 src/util/thread_pool.c create mode 100644 src/util/thread_pool.h create mode 100644 src/util/thread_pool_impl.h create mode 100644 src/util/thread_pool_impl_types.h create mode 100644 src/util/thread_pool_types.h create mode 100644 src/util/uuid.c create mode 100644 src/util/vice.h create mode 100644 src/util/volparse.c create mode 100644 src/util/winsock_nt.c create mode 100644 src/util/work_queue.c create mode 100644 src/util/work_queue.h create mode 100644 src/util/work_queue_impl.h create mode 100644 src/util/work_queue_impl_types.h create mode 100644 src/util/work_queue_types.h create mode 100644 src/venus/.gitignore create mode 100644 src/venus/Makefile.in create mode 100644 src/venus/afsio.c create mode 100644 src/venus/cacheout.c create mode 100644 src/venus/cmdebug.c create mode 100644 src/venus/dedebug.c create mode 100644 src/venus/fs.c create mode 100644 src/venus/fstrace.c create mode 100644 src/venus/gcpags.c create mode 100644 src/venus/kdump.c create mode 100644 src/venus/kdump.sh.hp_ux11 create mode 100644 src/venus/kdump.sh.linux create mode 100644 src/venus/kdump.sh.sgi_ipnos create mode 100644 src/venus/kdump.sh.solaris7 create mode 100644 src/venus/livesys.c create mode 100644 src/venus/test/.gitignore create mode 100644 src/venus/test/Makefile.in create mode 100644 src/venus/test/fulltest.c create mode 100644 src/venus/test/getinitparams.c create mode 100644 src/venus/test/idtest.c create mode 100644 src/venus/test/owntest.c create mode 100644 src/venus/twiddle.c create mode 100644 src/venus/up.c create mode 100644 src/venus/whatfid.c create mode 100644 src/vfsck/.gitignore create mode 100644 src/vfsck/Makefile.in create mode 100644 src/vfsck/bcheckrc create mode 100644 src/vfsck/bcheckrc-hp_ux110 create mode 100644 src/vfsck/dir.c create mode 100644 src/vfsck/dirutils.c create mode 100644 src/vfsck/fsck.h create mode 100644 src/vfsck/inode.c create mode 100644 src/vfsck/libfs.h create mode 100644 src/vfsck/main.c create mode 100644 src/vfsck/mount create mode 100644 src/vfsck/pass1.c create mode 100644 src/vfsck/pass1b.c create mode 100644 src/vfsck/pass2.c create mode 100644 src/vfsck/pass3.c create mode 100644 src/vfsck/pass4.c create mode 100644 src/vfsck/pass5.c create mode 100644 src/vfsck/proplist.c create mode 100644 src/vfsck/setup.c create mode 100644 src/vfsck/ufs_subr.c create mode 100644 src/vfsck/ufs_tables.c create mode 100644 src/vfsck/umount create mode 100644 src/vfsck/utilities.c create mode 100644 src/vfsck/vprintf.c create mode 100644 src/viced/.gitignore create mode 100644 src/viced/Makefile.in create mode 100644 src/viced/NTMakefile create mode 100644 src/viced/afsfileprocs.c create mode 100644 src/viced/callback.c create mode 100644 src/viced/callback.h create mode 100644 src/viced/cbd.rc create mode 100644 src/viced/check_sysid.c create mode 100644 src/viced/fileserver.rc create mode 100644 src/viced/fs_stats.h create mode 100644 src/viced/fsprobe.c create mode 100644 src/viced/fsstats.c create mode 100644 src/viced/host.c create mode 100644 src/viced/host.h create mode 100644 src/viced/physio.c create mode 100644 src/viced/serialize_state.c create mode 100644 src/viced/serialize_state.h create mode 100644 src/viced/state_analyzer.c create mode 100644 src/viced/viced.c create mode 100644 src/viced/viced.h create mode 100644 src/viced/viced_prototypes.h create mode 100644 src/vlserver/.gitignore create mode 100644 src/vlserver/Makefile.in create mode 100644 src/vlserver/NTMakefile create mode 100644 src/vlserver/cnvldb.c create mode 100644 src/vlserver/cnvldb.h create mode 100644 src/vlserver/liboafs_vldb.la.sym create mode 100644 src/vlserver/sascnvldb.c create mode 100644 src/vlserver/vl_errors.et create mode 100644 src/vlserver/vl_opcodes.h create mode 100644 src/vlserver/vlclient.c create mode 100644 src/vlserver/vldb_check.c create mode 100644 src/vlserver/vldbint.xg create mode 100644 src/vlserver/vlprocs.c create mode 100644 src/vlserver/vlserver.c create mode 100644 src/vlserver/vlserver.p.h create mode 100644 src/vlserver/vlserver.rc create mode 100644 src/vlserver/vlserver_internal.h create mode 100644 src/vlserver/vlutils.c create mode 100644 src/vol/.gitignore create mode 100644 src/vol/Makefile.in create mode 100644 src/vol/NTMakefile create mode 100644 src/vol/clone.c create mode 100644 src/vol/common.c create mode 100644 src/vol/common.h create mode 100644 src/vol/daemon_com.c create mode 100644 src/vol/daemon_com.h create mode 100644 src/vol/daemon_com_inline.h create mode 100644 src/vol/devname.c create mode 100644 src/vol/fssync-client.c create mode 100644 src/vol/fssync-debug.c create mode 100644 src/vol/fssync-debug.rc create mode 100644 src/vol/fssync-server.c create mode 100644 src/vol/fssync.h create mode 100644 src/vol/fssync_inline.h create mode 100644 src/vol/gi.c create mode 100644 src/vol/ihandle.c create mode 100644 src/vol/ihandle.h create mode 100644 src/vol/listinodes.c create mode 100644 src/vol/namei_map.c create mode 100644 src/vol/namei_ops.c create mode 100644 src/vol/namei_ops.h create mode 100644 src/vol/nfs.h create mode 100644 src/vol/ntops.c create mode 100644 src/vol/ntops.h create mode 100644 src/vol/nuke.c create mode 100644 src/vol/partition.c create mode 100644 src/vol/partition.h create mode 100644 src/vol/physio.c create mode 100644 src/vol/purge.c create mode 100644 src/vol/salvage.h create mode 100644 src/vol/salvaged.c create mode 100644 src/vol/salvager.c create mode 100644 src/vol/salvager.rc create mode 100644 src/vol/salvsync-client.c create mode 100644 src/vol/salvsync-server.c create mode 100644 src/vol/salvsync.h create mode 100644 src/vol/test/Makefile.in create mode 100644 src/vol/test/NTMakefile create mode 100644 src/vol/test/README create mode 100644 src/vol/test/ilist_nt.c create mode 100644 src/vol/test/listVicepx.c create mode 100644 src/vol/test/listVicepx.h create mode 100644 src/vol/test/ltlist.c create mode 100644 src/vol/test/nicreate.c create mode 100644 src/vol/test/nilist.c create mode 100644 src/vol/test/nincdec.c create mode 100644 src/vol/test/nino.c create mode 100644 src/vol/test/nsubr.c create mode 100644 src/vol/test/testpart.c create mode 100644 src/vol/test/updateDirInode.c create mode 100644 src/vol/test/utilities.c create mode 100644 src/vol/vg_cache.c create mode 100644 src/vol/vg_cache.h create mode 100644 src/vol/vg_cache_impl.h create mode 100644 src/vol/vg_cache_impl_types.h create mode 100644 src/vol/vg_cache_types.h create mode 100644 src/vol/vg_scan.c create mode 100644 src/vol/viceinode.h create mode 100644 src/vol/vnode.c create mode 100644 src/vol/vnode.h create mode 100644 src/vol/vnode_inline.h create mode 100644 src/vol/vol-bless.c create mode 100644 src/vol/vol-info.c create mode 100644 src/vol/vol-info.h create mode 100644 src/vol/vol-salvage.c create mode 100644 src/vol/vol-salvage.h create mode 100644 src/vol/vol_internal.h create mode 100644 src/vol/vol_prototypes.h create mode 100644 src/vol/voldefs.h create mode 100644 src/vol/volinfo-main.c create mode 100644 src/vol/volinfo.rc create mode 100644 src/vol/volinodes.h create mode 100644 src/vol/volscan-main.c create mode 100644 src/vol/volume.c create mode 100644 src/vol/volume.h create mode 100644 src/vol/volume_inline.h create mode 100644 src/vol/vutil.c create mode 100644 src/vol/vutils.h create mode 100644 src/vol/xfs_size_check.c create mode 100644 src/volser/.gitignore create mode 100644 src/volser/Makefile.in create mode 100644 src/volser/NTMakefile create mode 100644 src/volser/common.c create mode 100644 src/volser/dump.h create mode 100644 src/volser/dumpstuff.c create mode 100644 src/volser/dumpstuff.h create mode 100644 src/volser/liboafs_volser.la.sym create mode 100644 src/volser/lockdata.h create mode 100644 src/volser/lockprocs.c create mode 100644 src/volser/lockprocs_prototypes.h create mode 100644 src/volser/physio.c create mode 100644 src/volser/physio.h create mode 100644 src/volser/restorevol.c create mode 100644 src/volser/vol-dump.c create mode 100644 src/volser/vol.h create mode 100644 src/volser/vol_split.c create mode 100644 src/volser/volerr.et create mode 100644 src/volser/volint.xg create mode 100644 src/volser/volmain.c create mode 100644 src/volser/volprocs.c create mode 100644 src/volser/volser.p.h create mode 100644 src/volser/volser_internal.h create mode 100644 src/volser/volser_prototypes.h create mode 100644 src/volser/volserver.rc create mode 100644 src/volser/voltrans.c create mode 100644 src/volser/voltrans_inline.h create mode 100644 src/volser/vos.c create mode 100644 src/volser/vos.rc create mode 100644 src/volser/vsprocs.c create mode 100644 src/volser/vsutils.c create mode 100644 src/volser/vsutils_prototypes.h create mode 100644 src/xstat/.gitignore create mode 100644 src/xstat/Makefile.in create mode 100644 src/xstat/NTMakefile create mode 100644 src/xstat/xstat_cm.c create mode 100644 src/xstat/xstat_cm.h create mode 100644 src/xstat/xstat_cm_test.c create mode 100644 src/xstat/xstat_cm_test.rc create mode 100644 src/xstat/xstat_fs.c create mode 100644 src/xstat/xstat_fs.h create mode 100644 src/xstat/xstat_fs_callback.c create mode 100644 src/xstat/xstat_fs_test.c create mode 100644 src/xstat/xstat_fs_test.rc create mode 100644 tests/.gitignore create mode 100644 tests/Makefile.in create mode 100644 tests/README create mode 100644 tests/TESTS create mode 100644 tests/auth/.gitignore create mode 100644 tests/auth/KeyFile create mode 100644 tests/auth/Makefile.in create mode 100644 tests/auth/authcon-t.c create mode 100644 tests/auth/keys-t.c create mode 100644 tests/auth/realms-t.c create mode 100644 tests/auth/superuser-t.c create mode 100644 tests/auth/test.xg create mode 100644 tests/auth/writekeyfile.c create mode 100755 tests/bozo/bos-man-t create mode 100755 tests/bucoord/backup-man-t create mode 100644 tests/cmd/.gitignore create mode 100644 tests/cmd/Makefile.in create mode 100644 tests/cmd/command-t.c create mode 100644 tests/cmd/test1.conf create mode 100644 tests/common/Makefile.in create mode 100644 tests/common/common.h create mode 100644 tests/common/config.c create mode 100644 tests/common/network.c create mode 100644 tests/common/rxkad.c create mode 100644 tests/common/servers.c create mode 100644 tests/common/ubik.c create mode 100755 tests/kauth/kas-man-t create mode 100755 tests/libwrap create mode 100644 tests/opr/.gitignore create mode 100644 tests/opr/Makefile.in create mode 100644 tests/opr/dict-t.c create mode 100644 tests/opr/fmt-t.c create mode 100644 tests/opr/jhash-t.c create mode 100644 tests/opr/queues-t.c create mode 100644 tests/opr/rbtree-t.c create mode 100644 tests/opr/softsig-helper.c create mode 100755 tests/opr/softsig-t create mode 100644 tests/opr/time-t.c create mode 100644 tests/opr/uuid-t.c create mode 100755 tests/ptserver/pt_util-t create mode 100755 tests/ptserver/pts-man-t create mode 100644 tests/rpctestlib/Makefile.in create mode 100644 tests/rpctestlib/NTMakefile create mode 100644 tests/rpctestlib/rpc_test_cb_procs.c create mode 100644 tests/rpctestlib/rpc_test_main.c create mode 100644 tests/rpctestlib/rpc_test_procs.c create mode 100644 tests/rpctestlib/rpc_test_procs.h create mode 100644 tests/rx/.gitignore create mode 100644 tests/rx/Makefile.in create mode 100644 tests/rx/event-t.c create mode 100755 tests/rx/perf-t create mode 100644 tests/tap/.gitignore create mode 100644 tests/tap/Makefile.in create mode 100644 tests/tests-lib/perl5/mancheck_utils.pm create mode 100644 tests/util/.gitignore create mode 100644 tests/util/Makefile.in create mode 100644 tests/util/exec-alt-t.c create mode 100644 tests/util/ktime-t.c create mode 100755 tests/venus/fs-man-t create mode 100644 tests/volser/.gitignore create mode 100644 tests/volser/Makefile.in create mode 100755 tests/volser/vos-man-t create mode 100644 tests/volser/vos-t.c diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cfafced --- /dev/null +++ b/.gitignore @@ -0,0 +1,98 @@ +# +# This is the root .gitignore for OpenAFS. +# +# Please don't add files that are generated in specific subdirectories +# here. This file should only contain rules for the entire tree, +# and entries specific to the top level directory. +# +# After changing this file, please run +# git ls-files -i --exclude-standard +# to check that you haven't inadvertently ignored any tracked files. + +# General rules + +.* +*.orig +*.rej +*.o +*.lo +*.a +*.la +*.so +*.sl +*.so.* +*.dylib.* +*.dSYM +*.xdr.c +*.cs.c +*.ss.c +*~ +lex.yy.c +y.tab.c +y.tab.h +Makefile +RX_component_version_number.c +AFS_component_version_number.c +AFS_component_version_number.h +vc*.pdb +rs_state.ini +config.log + +!.mailmap +!.gitignore +!.gitreview +!.cvsignore +!.splintrc + +# Top level files +/aclocal.m4 +/config.cache +/config.status +/configure +/configure-libafs +/cscope.out +/include +/lib +/libtool +/autom4te.cache +/ID +/TAGS +/NTLang.bat +/golast.bat +/.version + +# Destination build directories +/alpha_nbsd* +/alpha_dux* +/amd64_linux* +/amd64_fsbd* +/amd64_nbsd* +/dest +/hp_ux* +/i386_dfbsd* +/i386_fbsd* +/i386_nbsd* +/i386_obsd* +/i386_linux* +/i386_umlinux* +/ia64_hpux* +/ia64_linux* +/obj +/packages +/parisc_linux* +/ppc_darwin* +/ppc_nbsd* +/ppc64_linux* +/rs_aix* +/s390_linux* +/s390x_linux* +/sgi_65 +/sparc64_obsd* +/sparc64_linux* +/sun4_* +/sun4x_* +/sunx86_* +/x86_darwin* + +# Result of make libafs_tree +/libafs_tree diff --git a/.gitreview b/.gitreview new file mode 100644 index 0000000..2a0498c --- /dev/null +++ b/.gitreview @@ -0,0 +1,4 @@ +[gerrit] +host=gerrit.openafs.org +port=29418 +project=openafs diff --git a/.mailmap b/.mailmap new file mode 100644 index 0000000..0dfd6ec --- /dev/null +++ b/.mailmap @@ -0,0 +1,5 @@ +Daria Phoebe Brashear +Daria Phoebe Brashear +Daria Phoebe Brashear +Daria Phoebe Brashear +Daria Phoebe Brashear diff --git a/.splintrc b/.splintrc new file mode 100644 index 0000000..1c9195e --- /dev/null +++ b/.splintrc @@ -0,0 +1,12 @@ +-badflag +-weak ++unix-lib ++char-index ++relax-quals +-pred-bool-int +-pred-bool-ptr ++ptr-negate +-fixed-formal-array ++match-any-integral ++ignore-equals +-name-checks diff --git a/CODING b/CODING new file mode 100644 index 0000000..fe64431 --- /dev/null +++ b/CODING @@ -0,0 +1,299 @@ +Notes on Coding Standards/Requirements for OpenAFS Source +--------------------------------------------------------- + +We have an official style. Please use it. If you have gnu indent 2.2.9 or +later you can reformat for this style with the following option: + +-npro -nbad -bap -nbc -bbo -br -ce -cdw -brs -ncdb -cp1 -ncs -di2 -ndj -nfc1 +-nfca -i4 -lp -npcs -nprs -psl -sc -nsob -ts8 + +Do not use $< for non-pattern rules in any cross-platform dir as it +requires a reasonable make that is not available on all systems. + +Do not have build rules that build multiple targets. Make doesn't seem able +to handle this, and it interferes with -j builds. (In particular, build the +rxgen targets individually and not using the flags for building all the files +in one shot.) + +Try to test builds using gmake -j # MAKE="gmake -j #", it seems like a good +way to find missing or order-dependent dependency rules. (Is there a better +way to do this?) + +-- Prototyping and Style -- +Prototypes for all source files in a given dir DDD should be placed +in the file DDD/DDD_prototypes.h. All externally used (either API +or used by other source files) routines and variables should be +prototyped in this file. + +The prototypes should be a full prototype, with argument and return +types. (Should not generate a warning with gcc -Wstrict-prototypes.) + +Format of the prototype files should look like: + + Standard Copyright Notice + + #ifndef AFS_SRC_DDD_PROTO_H + #define AFS_SRC_DDD_PROTO_H + + /* filename.c */ + prototypes + + /* filename.c */ + prototypes + + #endif /* AFS_SRC_DDD_PROTO_H */ + +In most of the existing prototypes, the define is DDD_PROTOTYPES_H, which is +probably ok as well. + +The declaration of the routines should be done in ANSI style. If at some +later date, it is determined that prototypes don't work on some platform +properly, we can use ansi2knr during the compile. + + rettype + routine(argtype arg) + { + + } + +All routines should have a return type specified, void if nothing returned, +and should have (void) if no arguments are taken. + +Header files should not contain macros or other definitions unless they +are used across multiple source files. + +All routines should be declared static if they are not used outside that +source file. + +Compiles on gcc-using machines should strive to handle using +-Wstrict-prototypes -Werror. (this may take a while) + +Routines shall be defined in source prior to use if possible, and +prototyped in block at top of file if static. + +API documentation in the code should be done using Qt-style Doxygen +comments. + +If you make a routine or variable static, be sure and remove it from +the AIX .exp files. + +Suggested compiler flags: + gcc: -Wall -Wstrict-prototypes + Solaris Workshop CC: -fd -v + (You might not want the -fd, it isn't really useful, just complains about the + K&R style functions, but -v gives useful info.) + +Multiple line comment blocks should begin with only /* on one line and end with +only */ on one line. + +Example: + + /* + * Multiple line comment blocks should be formatted + * like this example. + */ + +Do not use braces on one-line if and loop statements. + +Use: + + if (some_condition) + do_some_action(); + else + do_something_else(); + + while (some_condition) + do_something(); + +Instead of: + + if (some_condition) { + do_some_action(); + } + + while (some_condition) { + do_something(); + } + + +Dependencies required to build OpenAFS from source +-------------------------------------------------- +The following packages are required to build all of the OpenAFS code +from source on various operating systems: + +On Debian: +- autoconf, automake, bison, comerr-dev, cpio, flex, libkrb5-dev, + libncurses5-dev, libpam0g-dev, libxml2-utils, perl, pkg-config; +- libfuse-dev (for the FUSE-based user-mode client); +- dblatex, docbook-xsl, doxygen, xsltproc (for documentation); +- debhelper, hardening-wrapper, dkms (to build the Debian packages) + +On FreeBSD: +- autoconf, automake, libtool; +- fusefs-libs, pkgconf (for the FUSE-based user-mode client); +- perl, dblatex, docbook-xsl, libxslt, python, ruby, zip (for documentation) + +In addition, FreeBSD systems require kernel sources and a configured kernel +build directory (see section "FreeBSD Notes" in the README file). + +GIT Usage +========= + +*WARNING* *WARNING* *WARNING* *WARNING* *WARNING* *WARNING* *WARNING* +The Git tree may not always have code which can currently be built. +While every effort is made to keep the head of the tree buildable, +you may at any time find yourself between commits and hence have a tree +which does not build, or worse, causes more serious problems! + +Do not use the Git tree unless you know what you're doing. + +Git checkouts do not include files generated by autoconf. You can +run regen.sh (at the top level) to create these files. You will need +to have autoconf and automake installed on your system. + +Summary +------- + +Browse: http://git.openafs.org/ +Clone: git clone git://git.openafs.org/openafs.git + +Step-by-step +------------ + +1. Obtain the Git software. If you are using a system with a standard + software repository, Git may already be available as a package named + something like git or git-core. Otherwise, go to http://git-scm.com/ + +2. Run the command: + + % git clone git://git.openafs.org/openafs.git + + This will download the full repository and leave a checked-out tree in + a subdirectory of the current directory named openafs. The repository + itself is in the .git subdirectory of that directory. + + WARNING: The repository is approximately 60MiB currently and will only + grow, so it may take some time to download the first time over a slow + network connection. + +3. Generate the additional required files: + + % cd openafs + % ./regen.sh + +The current development series is in the branch named master. The stable +releases are on separate branches named something like +openafs-stable_ with a separate branch for each major stable +release series. Use git branch -a to see a full list of branches. + +OpenAFS uses the Gerrit code review system to review and merge all changes +to OpenAFS. More details are at: + + http://wiki.openafs.org/GitDevelopers/ + +including more detailed Git instructions. + +It's by far preferred to use Gerrit to submit code changes, but if you +can't for whatever reason, you can instead open a bug and submit a patch +that way. Do this by sending mail to openafs-bugs@openafs.org with the +patch attached. But please use Gerrit if you can; patches sent in as bugs +will have to be forwarded to Gerrit by someone else, and it's easier for +everyone if you can enter them into Gerrit yourself. + +Backport policy +------------ +All patches should land on master first, unless the patch fixes a bug +that only exists in the stable branch. + +Once a patch has been accepted into master, anyone can propose +backports to stable branches. + +When cherry-picking a commit from another branch, please append a +"cherry picked from" section in your commit message. You'll also need +a separate Change-ID for Gerrit to recognize this as a separate +change. One workflow to do this: + +1) Use "git cherry-pick -ex" to pick your commits onto another branch. + The -x option will append the appropriate "cherry picked from" + message, and the -e option will open your editor for you to edit + the commit message. +2) In your editor, delete the existing Change-ID line. Save and quit. +3) Run "git commit --amend", saving and quitting again. Git will run + the commit hook and generate a new Change-ID for Gerrit. + +Warnings +======== + +OpenAFS Warning detection +------------------------- + +There's been a concerted effort over the last few years, by many developers, +to reduce the number of warnings in the OpenAFS tree. In an attempt to +prevent warnings from creeping back in, we now have the ability to break the +build when new warnings appear. + +This is only available for systems with gcc 4.2 or later or clang 3.2 or +later, and is disabled unless the --enable-checking option is supplied to +configure. Because we can't remove all of the warnings, we permit file by +file (and warning by warning) disabling of specific warnings. The +--enable-checking=all option prevents +this, and errors for any file containing a warning. + +Disabling warnings +------------------ + +If warnings are unavoidable in a particular part of the build, they may be +disabled in an number of ways. + +You can disable a single warning type in a particular file by using GCC +pragmas. If a warning can be disabled with a pragma, then the switch to use +will be listed in the error message you receive from the compiler. Pragmas +should be wrapped in IGNORE_SOME_GCC_WARNINGS, so that they aren't used +with non-gcc compilers, and can be disabled if desired. For example: + #ifdef IGNORE_SOME_GCC_WARNINGS + # pragma GCC diagnostic warning "-Wold-style-definition" + #endif + +It would appear that when built with -Werror, the llvm clang compiler will +still upgrade warnings that are suppresed in this way to errors. In this case, +the fix is to mark that warning as ignored, but only for clang. For example: + #ifdef IGNORE_SOME_GCC_WARNINGS + # ifdef __clang__ + # pragma GCC diagnostic ignored "-Wdeprecated-declarations" + # else + # pragma GCC diagnostic warning "-Wdeprecated-declarations" + # endif + #endif + +If a pragma isn't available for your particular warning, you will need to +disable all warnings for the file in question. You can do this by supplying +the autoconf macro @CFLAGS_NOERROR@ in the build options for the file. For +example: + lex.yy.o : lex.yy.c y.tab.c + ${CC} -c ${CFLAGS} @CFLAGS_NOERROR@ lex.yy.c + +If you add a new warning inhibition, please also add it to the list below. + +Inhibited warnings +------------------ + +afs/afs_syscall.c : old-style + : strict-proto + : all (ukernel) : syscall pointer issues +afsd/afsd_kernel.c : deprecated : daemon() marked as deprecated on Darwin +auth/ktc.c : all (ukernel) : call_syscall doesn't have a prototype +bozo/bosserver.c : deprecated : daemon() marked as deprecated on Darwin +bucoord/ubik_db_if.c : strict-proto : Ubik_Call +bucoord/commands.c : all : Ubik_Call + : signed vs unsigned for dates +butc/tcudbprocs.c : all : ubik_Call +external/heimdal/hcrypto/validate.c: all: statement with empty body +kauth/admin_tools.c : strict-proto : ubik_Call +kauth/authclient.c : strict-proto : ubik_Call nonsense +libadmin/kas/afs_kasAdmin.c: strict-proto : ubik_Call nonsense +libadmin/samples/rxstat_query_peer.c : all : util_RPCStatsStateGet types +libadmin/samples/rxstat_query_process.c : all : util_RPCStatsStateGet types +libadmin/test/client.c : all : util_RPCStatsStateGet types +ubik/ubikclient.c : strict-protos : ubik_Call +volser/vol-dump.c : format : afs_sfsize_t + diff --git a/CONTRIBUTING b/CONTRIBUTING new file mode 100644 index 0000000..ec28eb1 --- /dev/null +++ b/CONTRIBUTING @@ -0,0 +1,23 @@ +OPENAFS CONTRIBUTOR CODE OF CONDUCT +----------------------------------- + +As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities. + +We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, or nationality. + +Examples of unacceptable behavior by participants include: + + The use of sexualized language or imagery + Personal attacks + Trolling or insulting/derogatory comments + Public or private harassment + Publishing other's private information, such as physical or electronic addresses, without explicit permission + Other unethical or unprofessional conduct. + +Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. By adopting this Code of Conduct, project maintainers commit themselves to fairly and consistently applying these principles to every aspect of managing this project. Project maintainers who do not follow or enforce the Code of Conduct may be permanently removed from the project team. + +This code of conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. + +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an issue or contacting one or more of the project maintainers. + +This Code of Conduct is adapted from the Contributor Covenant, version 1.2.0, available from http://contributor-covenant.org/version/1/2/0/ diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..920e23e --- /dev/null +++ b/INSTALL @@ -0,0 +1,565 @@ +Copyright 2000, International Business Machines Corporation and others. +All Rights Reserved. + +This software has been released under the terms of the IBM Public +License. For details, see the LICENSE file in the top-level +directory or online at http://www.openafs.org/dl/license10.html + +Short instructions for sites upgrading from a previous version of AFS: +% ./configure --enable-transarc-paths +% make +% make dest + +will create a Transarc-style dest tree in ${SYS_NAME}/dest where +${SYS_NAME} is the AFS sysname of the system you built for. +This assumes if you're building for Linux that your kernel source is +in /usr/src/linux. + +Otherwise, please read on. + +Building OpenAFS on UNIX and Linux +---------------------------------- + +A Configuring + + Uncompress the source into a directory of your choice. A directory + in afs space is also valid. In the directory that you uncompressed the + source in, you will only have an src/ directory. + + 1. Pick a system to build for, and note its default AFS sys_name. + A directory will be automatically created for binaries to be written + into with this name when you build. + + alpha_dux40, alpha_dux50, alpha_dux51 (client does not work) + alpha_linux26 + alpha_nbsd15, alpha_nbsd16 + amd64_fbsd_80, amd64_fbsd_81, amd64_fbsd_82, amd64_fbsd_83, + amd64_fbsd_84, amd64_fbsd_90, amd64_fbsd_91, amd64_fbsd_92, + amd64_fbsd_93, amd64_fbsd_100, amd64_fbsd_101 + amd64_linux26 + amd64_nbsd20, amd64_nbsd30, amd64_nbsd40 + arm_linux26, arm64_linux26 + hp_ux11i, hp_ux110, hp_ux1123 (See notes below for information on + getting missing header) + hp_ux102 (Client port possible, but db servers and utilities work) + i386_fbsd_80, i386_fbsd_81, i386_fbsd_82, i386_fbsd_83, + i386_fbsd_84, i386_fbsd_90, i386_fbsd_91, i386_fbsd_92, + i386_fbsd_93, i386_fbsd_100, i386_fbsd_101 + i386_linux26 + i386_nbsd15, i386_nbsd16, i386_nbsd20, i386_nbsd21, i386_nbsd30, + i386_nbsd40 + i386_obsd31, i386_obsd32, i386_obsd33, i386_obsd34, i386_obsd35, + i386_obsd36, i386_obsd37, i386_obsd38, i386_obsd39, i386_obsd40, + i386_obsd41 + i386_umlinux26 + ia64_hpux1122, ia64_hpux1123 + ia64_linux26 + ppc64_linux26 + ppc_darwin_12, ppc_darwin_13, ppc_darwin_14, ppc_darwin_60, + ppc_darwin_70, ppc_darwin_80, ppc_darwin_90 + ppc_linux26 + ppc_nbsd16, ppc_nbsd20 + rs_aix42, rs_aix51, rs_aix52, rs_aix53, rs_aix61 + s390_linux26 + s390x_linux26 + sgi_62, sgi_63, sgi_64, sgi_65 (file server not tested) + sparc64_linux26 + sun4x_58, sun4x_59, sun4x_510, sun4x_511 + (logging UFS not supported for mixed-use partitions containing + client cache) + sunx86_58, sunx86_59, sunx86_510, sunx86_511 + (logging UFS not supported for mixed-use partitions containing + client cache) + x86_darwin_80, x86_darwin90 + + 2. Using configure in the top level directory, configure for your + AFS system type, providing the necessary flags: + + % ./configure --with-afs-sysname=sun4x_58 --enable-transarc-paths + + If you do not have the "configure" script, or if you modify the + source files, you can re-create it by running regen.sh. You will + need autoconf to do this. + + For some systems you need also provide the path in which your kernel + headers for your configured kernel can be found. See the + system-specific Notes sections below for details. If you want to + build only the user-space programs and servers and not the kernel + module, specify the --disable-kernel-module option on the + ./configure command line. + + All binaries, except for the 'fileserver' and 'volserver' + executables and their 'da' variants, are stripped of their symbol + table information by default. To enable a debugging build, specify + the --enable-debug option on the ./configure command line. This + builds with debugging compiler options and disables stripping of + binaries. + + You can also use different combinations of --enable-debug and + --enable (or --disable)-strip-binaries for finer control. One can, + for example, compile binaries for debug and strip them anyway. + Alternatively, one can compile without debug and force the binaries + to not be stripped. Note that these combinations are not + necessarily useful. + + The binaries noted above, 'fileserver' and 'volserver' and their + 'da' variants, will never be stripped, regardless of any options + given to configure. + + There are two modes for directory path handling: "Transarc mode" and + "default mode": + + - In Transarc mode, we retain compatibility with Transarc/IBM AFS tools + by putting client configuration files in /usr/vice/etc, and server + files in /usr/afs under the traditional directory layout. + - In default mode, files are located in standardized locations, usually + under $(prefix), which defaults to /usr/local. + - Client programs, libraries, and related files always go in standard + directories under $(prefix). This rule covers things that would go + into $(bindir), $(includedir), $(libdir), $(mandir), and $(sbindir). + - Other files get located in the following places: + + Directory Transarc Mode Default Mode + ============ ========================= ============================== + viceetcdir /usr/vice/etc $(sysconfdir)/openafs + afssrvdir /usr/afs/bin (servers) $(libexecdir)/openafs + afsconfdir /usr/afs/etc $(sysconfdir)/openafs/server + afslocaldir /usr/afs/local $(localstatedir)/openafs + afsdbdir /usr/afs/db $(localstatedir)/openafs/db + afslogdir /usr/afs/logs $(localstatedir)/openafs/logs + afsbosconfig $(afslocaldir)/BosConfig $(afsconfdir)/BosConfig + afsbosserver $(afsbindir)/bosserver $(sbindir)/bosserver + + In default mode, you can change all of the variables named above that + do not start with "afs" by passing the flags with the same name to + configure. For example, if you want to install the server binaries in + /usr/local/lib/openafs instead of /usr/local/libexec/openafs, pass the + --libexecdir=/usr/local/lib flag to configure. + + For additional options, see section I below. + +B Building + + 1. Now, you can build OpenAFS. + + % make + + 2. Install your build using either "make install" to install + into the current system (you will need to be root, and files + will be placed as appropriate for Transarc or standard paths), + "make install DESTDIR=/some/path" to install into an alternate + directory tree, or if you configured with --enable-transarc-paths + make dest to create a complete binary tree in the dest directory + under the directory named for the sys_name you built for, + e.g. sun4x_57/dest or i386_linux26/dest + + 3. As appropriate you can clean up or, if you're using Linux, build for + another kernel version. + + To clean up: + + % make clean + +C Problems + + If you have a problem building this source, you may want to visit + http://www.openafs.org/ to see if any problems have been reported + or to find out how to get more help. + + Mailing lists have been set up to help; More details can be found + on the openafs.org site. + +D Linux Notes + + With current Linux versions, the /lib/modules/`uname -r`/source symlink + will be used to locate the kernel headers, but you will need to have + the headers and build system for your kernel installed in order to + build the kernel module. These are usually found in a separate package + from the kernel, often called something like linux-headers-. + + For older Linux systems, you may also need to provide the path in which + your kernel headers for your configured kernel can be found. This + should be the path of the directory containing a child directory named + "include". So if your version file were + /usr/src/linux/include/linux/version.h you would run: + + % ./configure --with-afs-sysname=i386_linux26 \ + --with-linux-kernel-headers=/usr/src/linux + + Currently you can build for only one Linux kernel at a time, and the + version is extracted from the kernel headers in the root you specify. + + To build for another Linux kernel version, determine the sysname for + the system type as defined in step A1 for the other kernel version and + then run: + + % ./configure --with-afs-sysname= \ + --with-linux-kernel-headers=/usr/src/linux-3.19-i686 + % make + + Your build tree will now include an additional kernel module for your + additional kernel headers. Be aware that if the kernel version string + which UTS_RELEASE is defined to in include/linux/version.h matches the + last kernel you built for, the previous kernel module will be + overwritten. + + The Linux 2.4 series (and older) are no longer supported. The OpenAFS 1.6 + series of releases are the last ones supporting those old kernels and in + particular their LinuxThreads. + +E HP-UX 11.0 Notes + + HP-UX 11.0 requires a header called vfs_vm.h which HP has provided on + their web site. Go to http://www.hp.com/dspp, choose Software + downloads from the side menu, and select Software: HP operating systems + and then Operating systems: HP-UX from the select boxes. The last + select box will have an option for downloading vfs_vm.h. + +F OpenBSD Notes + + If you need to run regen.sh to make the configure script, you should + first install autoconf-2.59, then setenv AUTOCONF_VERSION 2.59. + + You need kernel source installed to build OpenAFS. Use the + --with-bsd-kernel-headers= configure option if your kernel source is + not in /usr/src/sys. + + src/packaging/OpenBSD/buildpkg.sh will make a tar file for installing + the client. There is no server package, but I am told that "make + install" will put server binaries in /usr/afs. + + Your kernel may panic when you try to shutdown after running the + OpenAFS client. To prevent this, change the "dangling vnode" panic in + sys/kern/vfs_syscalls.c to a printf and build a new kernel. + + You can't run arla and OpenAFS at the same time. + +G FreeBSD Notes + + The FreeBSD client supports FreeBSD 8.x and later, but does not receive + regular testing on versions older than FreeBSD 9.x at this time. Only + the amd64 and i386 architectures are supported, but it should not be + hard to port to other processors if they are already supported under + another operating system. + + You need kernel source installed to build OpenAFS. Use the + --with-bsd-kernel-headers= configure option if your kernel source is + not in /usr/src/sys. + + You also need access to your kernel build directory for the opt_global.h + include file. Use the --with-bsd-kernel-build= configure option if your + kernel build is not GENERIC in the standard place. If + /usr/src/sys/${CPUARCH}/compile/GENERIC does not point to + /usr/obj/usr/src/sys/GENERIC you may need to resolve that and retry the + build. + +H AIX notes + + Make sure that your default build environment is 32bit, ie. + the OBJECT_MODE environment variable is either unset or set to "32". + + Verify this before doing configure and make. For example, assuming + ksh/bash: + + % export OBJECT_MODE=32 + + To build aklog (in order to be able to get tokens from your Kerberos v5 + ticket), you will need Kerberos libraries. On AIX 6.1, the IBM + Kerberos v5 libraries are in the packages krb5.client.rte and + krb5.toolkit.adt on the Expansion Pack. + +I Other configure options + + AFS has a ton of other optional features that must be enabled using + configure options. Here is a summary: + + --enable-bigendian + --enable-littleendian + These configure options are normally not required and should not be + given. They're only needed if the OpenAFS build system cannot + determine the endianness of your system, in which case configure + will abort and say to use one of these options. + + --enable-bitmap-later + Speeds the startup of the fileserver by deferring reading volume + bitmaps until necessary. Demand attach is a better solution to the + same problem. + + --enable-checking + Enable compiler warnings when building with GCC and turn compiler + warnings into errors so that new warnings will cause compilation + failures. If you are developing patches to contribute to OpenAFS, + please build OpenAFS with this flag enabled. Warning-free code is + a requirement for all new submissions to OpenAFS. + + --enable-debug + --enable-debug-kernel + --enable-debug-lwp + --enable-debug-pam + Compile the userspace code (for --enable-debug) or the code named + by the option with debugging information. If --enable-debug is + given, also do not strip binaries when installing them. + + --enable-linux-d_splice_alias-extra-iput + Work around a kernel memory leak present in a few Linux kernels. + The only affected mainline kernels are 3.17 to 3.17.2, but this + switch will also be required should a distribution backport commit + 908790fa3b779d37365e6b28e3aa0f6e833020c3 or commit + 95ad5c291313b66a98a44dc92b57e0b37c1dd589 but not the fix in commit + 51486b900ee92856b977eacfc5bfbe6565028070 from the linux-stable repo + (git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git) or + the corresponding changes on other branches. This is impossible to + detect automatically. Without this switch, the openafs module will + build and work even with affected kernels. But it will leak kernel + memory, leading to performance degradation and eventually system + failure due to memory exhaustion. + + --enable-linux-syscall-probing + OpenAFS now uses keyrings to manage PAGs by default on Linux, which + does not require hooking into the system call table. On older + versions of Linux without keyring support, OpenAFS uses groups to + manage PAGs and probes for the system call table to hook into it to + preserve that group information. Normally, which method to use is + detected automatically, and if keyring support is present, support + for system call table probing is not compiled in. Use this + configure option to force inclusion of the system call table + probing code even if the kernel appears to support keyrings. + + --enable-namei-fileserver + Forces the namei fileserver on platforms (like Solaris 8 and 9) + where the inode fileserver is the default. + + --enable-redhat-buildsys + Enable compilation of the kernel module for the Red Hat build + system kernel. Use this configure flag when building kernel + modules for Red Hat Linux systems. + + --enable-reduced-depends + Try to minimize the shared library dependencies encoded in the + binaries. This omits from the link line all the libraries included + solely because the Kerberos libraries depend on them and instead + links the programs only against libraries whose APIs are called + directly. This will only work with shared Kerberos libraries and + will only work on platforms where shared libraries properly encode + their own dependencies (such as Linux). It is intended primarily + for building packages for Linux distributions to avoid encoding + unnecessary shared library dependencies that make shared library + migrations more difficult. If none of the above made any sense to + you, don't bother with this flag. + + --enable-supergroups + Enables support of nested groups in the ptserver. WARNING: Once + you make use of this option by nesting one group inside another, + the resulting PTS database cannot be correctly and safely used by a + ptserver built without this option. If some of your ptservers were + built with this option and some without this option, you will + probably corrupt your PTS database. + + --enable-tivoli-tsm + Build with the Tivoli TSM API libraries for butc support of the + Tivoli backup system. + + --enable-transarc-paths + As discussed in A2 above, build for the traditional paths used by + the Transarc and IBM AFS distributions instead of the more typical + open source /usr/local paths. Passing this option to configure and + then running make dest will generate, in the dest directory, the + set of files and directory layout matching a Transarc or IBM AFS + tape distribution. + + --enable-warnings + Enable compilation warnings when built with GCC. This is similar + to --enable-checking, but new warnings will only be displayed, not + cause a build failure. + + It's also possible to disable some standard features. None of these + options are normally needed, but they may be useful in unusual + circumstances: + + --disable-kernel-module + Even if kernel headers are found, do not attempt to build the + kernel module. On Linux, if you provide this flag, you'll also + need to provide --with-afs-sysname, since OpenAFS cannot determine + the correct sysname automatically without the kernel headers. + + --disable-optimize + --disable-optimize-kernel + --disable-optimize-lwp + --disable-optimize-pam + Disable optimization for the given portion of the OpenAFS code. + Usually used either for debugging to avoid code optimization making + it harder to use a debugger, or to work around bugs in the compiler + optimizers or in the OpenAFS code. + + --disable-pam + Do not build the AFS PAM modules. Normally building them is + harmless, but the PAM modules that come with OpenAFS are deprecated + and should not be used unless you're still using the OpenAFS + kaserver (which is itself deprecated and should not be used). + + --disable-pthreaded-ubik + Disable the threaded version of Ubik and install the LWP + versions of Ubik servers. + + --disable-strip-binaries + Disable stripping of binaries on installation. You probably want + to use --enable-debug instead of this flag to also inclusion of + debugging information. + + --disable-unix-sockets + Disable use of UNIX domain sockets for fssync. A TCP connection to + localhost will be used instead. + + You may need to pass one or more of the following options to specify + paths and locations of files needed by the OpenAFS build process or + additional information required by the build process: + + --with-afs-sysname=SYSNAME + Specifies the AFS sysname of the target system is SYSNAME. + Normally this is determined automatically from the build + architecture plus additional information (such as, on Linux, from + the kernel headers). The SYSNAME should be one of the options + listed in A2. + + --with-gssapi=DIR + --with-gssapi-include=DIR + --with-gssapi-lib=DIR + --with-krb5[=DIR] + --with-krb5-include=DIR + --with-krb5-lib=DIR + Normally, OpenAFS will automatically build with Kerberos support if + Kerberos is found during the build. If your Kerberos libraries are + in an unusual location, however, you may need to pass one or more + of these flags. --with-krb5 forces building with Kerberos support + if given and will cause configure to fail if Kerberos is not found. + You may optionally specify the root path to your Kerberos + installation as an argument to --with-krb5. + + If you have a krb5-config script, it's used to find the flags to + build with Kerberos. If you have no krb5-config script, you can + specify the location to the include files with --with-krb5-include + and the libraries with --with-krb5-lib. You may need to do this if + Autoconf can't figure out whether to use lib, lib32, or lib64 on + your platform. + + --with-gssapi is similar, except for the GSS-API libraries instead + of the Kerberos libraries. If you have to manually set the + location of the Kerberos libraries, you may need to do the same + thing for the GSS-API libraries. + + --with-libintl=DIR + --with-libintl-include=DIR + --with-libintl-lib=DIR + Specifies the install location of the libintl library, used for + internationalization, or separately specifies the location of the + header files and libraries. By default, the default system library + paths will be searched. This library is not required on many + platforms. + + --with-roken=PATH + --with-roken=internal + Specifies the install location of the libroken library. Specify + "internal" to use the embedded libroken library that comes with + OpenAFS (the default). This option is primarily useful for + building against a system libroken library if you have one. + + --with-linux-kernel-build=PATH + --with-linux-kernel-headers=PATH + --with-bsd-kernel-build=PATH + --with-bsd-kernel-headers=PATH + Specifies the path to the kernel headers and build system. See the + information above for Linux and *BSD systems. + + --with-linux-kernel-packaging + Tells the OpenAFS kernel module build system to use conventions + appropriate for building modules to include in Linux kernel module + packages. Primarily, this renames the kernel module to openafs.ko + rather than libafs-.ko, which is easier to handle in Linux + distribution init scripts. + + --with-docbook2pdf=PROGRAM + Specifies the program used to convert the DocBook manuals to PDF. + Supported choices are fop, dblatex, and docbook2pdf. By default, + the user's path is searched for those programs in that order, and + the first one found is used. + + --with-docbook-stylesheets=PATH + The location of the DocBook style sheets, used to convert the + DocBook manuals to other formats. By default, a set of likely + paths are searched. + + --with-html-xsl=PATH + Specifies the XSLT style sheet to convert DocBook manuals into + HTML. The default is html/chunk.xsl. You may wish to use + html/docbook.xsml instead. + + --with-xslt-processor=PROGRAM + Specifies the XSLT processor to use to convert the DocBook manuals + into HTML. Supported choices are libxslt, saxon, xalan-j, and + xsltproc. By default, the user's path is searched for those + programs in that order, and the first one found is used. + + --with-ctf-tools[=DIR] + Location of ctfconvert and ctfmerge. Defaults to detect. These + tools create a reduced form of debug information that describes + types and function prototypes. This option is only relevant to + platforms that provide CTF tools and, at the moment, it is only + functional on Solaris (onbld package must be installed). + + There are also some environment variables that you can set to control + aspects of the build. They can be set either on the configure command + line (preferred) or in the environment. + + CC + The C compiler to use. Be aware that this is overridden on some + architectures that require a specific compiler be used to build the + kernel module. If gcc is used, version 3 or later is required. + If clang is used, version 3 or later is required. (Additional + restrictions apply when --enable-checking is used.) + + CFLAGS + Additional flags to pass to the C compiler. + + CPP + The C preprocessor to use. Defaults to cpp if found, otherwise + $CC -E. + + CPPFLAGS + Additional flags to pass to the C preprocessor or compiler. This + is where to put -I options to add paths to the include file search. + + FUSE_CFLAGS + Compiler flags required for building applications that use FUSE. + + FUSE_LIBS + Libraries required for linking applications that use FUSE. + + KRB5_CONFIG + To specify a particular krb5-config script to use, either set the + KRB5_CONFIG environment variable or pass it to configure like: + + ./configure KRB5_CONFIG=/path/to/krb5-config + + To not use krb5-config and force library probing even if there is a + krb5-config script on your path, set KRB5_CONFIG to a nonexistent + path: + + ./configure KRB5_CONFIG=/nonexistent + + LDFLAGS + Additional flags to pass to the linker. This is where to put -L + options to add paths to the library search. + + LIBS + Additional libraries to link all userspace programs with. + + PKG_CONFIG + The path to the pkg-config utility. Currently, this is only used + to locate the flags for building the FUSE version of afsd. + + YACC + The yacc implementation to use. Defaults to bison, byacc, or yacc, + whichever is found first. + + YFLAGS + Additional flags to pass to yacc. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..9252889 --- /dev/null +++ b/LICENSE @@ -0,0 +1,417 @@ + IBM Public License Version 1.0 + + THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS IBM + PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF + THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + + 1. DEFINITIONS + + "Contribution" means: + a) in the case of International Business Machines Corporation ("IBM"), + the Original Program, and + + b) in the case of each Contributor, + + i) changes to the Program, and + + ii) additions to the Program; + + where such changes and/or additions to the Program originate from and + are distributed by that particular Contributor. A Contribution + 'originates' from a Contributor if it was added to the Program by + such Contributor itself or anyone acting on such Contributor's + behalf. Contributions do not include additions to the Program + which: (i) are separate modules of software distributed in + conjunction with the Program under their own license agreement, + and (ii) are not derivative works of the Program. + + "Contributor" means IBM and any other entity that distributes the + Program. + + "Licensed Patents " mean patent claims licensable by a Contributor + which are necessarily infringed by the use or sale of its Contribution + alone or when combined with the Program. + + "Original Program" means the original version of the software + accompanying this Agreement as released by IBM, including source code, + object code and documentation, if any. + + "Program" means the Original Program and Contributions. + + "Recipient" means anyone who receives the Program under this + Agreement, including all Contributors. + + 2. GRANT OF RIGHTS + a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free + copyright license to reproduce, prepare derivative works of, + publicly display, publicly perform, distribute and sublicense the + Contribution of such Contributor, if any, and such derivative + works, in source code and object code form. + + b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free patent + license under Licensed Patents to make, use, sell, offer to sell, + import and otherwise transfer the Contribution of such + Contributor, if any, in source code and object code form. This + patent license shall apply to the combination of the Contribution + and the Program if, at the time the Contribution is added by the + Contributor, such addition of the Contribution causes such + combination to be covered by the Licensed Patents. The patent + license shall not apply to any other combinations which include + the Contribution. No hardware per se is licensed hereunder. + + c) Recipient understands that although each Contributor grants the + licenses to its Contributions set forth herein, no assurances are + provided by any Contributor that the Program does not infringe the + patent or other intellectual property rights of any other entity. + Each Contributor disclaims any liability to Recipient for claims + brought by any other entity based on infringement of intellectual + property rights or otherwise. As a condition to exercising the + rights and licenses granted hereunder, each Recipient hereby + assumes sole responsibility to secure any other intellectual + property rights needed, if any. For example, if a third party + patent license is required to allow Recipient to distribute the + Program, it is Recipient's responsibility to acquire that license + before distributing the Program. + + d) Each Contributor represents that to its knowledge it has sufficient + copyright rights in its Contribution, if any, to grant the + copyright license set forth in this Agreement. + + 3. REQUIREMENTS + + A Contributor may choose to distribute the Program in object code form + under its own license agreement, provided that: + a) it complies with the terms and conditions of this Agreement; and + + b) its license agreement: + + i) effectively disclaims on behalf of all Contributors all warranties + and conditions, express and implied, including warranties or + conditions of title and non-infringement, and implied warranties + or conditions of merchantability and fitness for a particular + purpose; + + ii) effectively excludes on behalf of all Contributors all liability + for damages, including direct, indirect, special, incidental and + consequential damages, such as lost profits; + + iii) states that any provisions which differ from this Agreement are + offered by that Contributor alone and not by any other party; and + + iv) states that source code for the Program is available from such + Contributor, and informs licensees how to obtain it in a + reasonable manner on or through a medium customarily used for + software exchange. + + When the Program is made available in source code form: + a) it must be made available under this Agreement; and + + b) a copy of this Agreement must be included with each copy of the + Program. + + Each Contributor must include the following in a conspicuous location + in the Program: + + Copyright © {date here}, International Business Machines Corporation + and others. All Rights Reserved. + + In addition, each Contributor must identify itself as the originator + of its Contribution, if any, in a manner that reasonably allows + subsequent Recipients to identify the originator of the Contribution. + + 4. COMMERCIAL DISTRIBUTION + + Commercial distributors of software may accept certain + responsibilities with respect to end users, business partners and the + like. While this license is intended to facilitate the commercial use + of the Program, the Contributor who includes the Program in a + commercial product offering should do so in a manner which does not + create potential liability for other Contributors. Therefore, if a + Contributor includes the Program in a commercial product offering, + such Contributor ("Commercial Contributor") hereby agrees to defend + and indemnify every other Contributor ("Indemnified Contributor") + against any losses, damages and costs (collectively "Losses") arising + from claims, lawsuits and other legal actions brought by a third party + against the Indemnified Contributor to the extent caused by the acts + or omissions of such Commercial Contributor in connection with its + distribution of the Program in a commercial product offering. The + obligations in this section do not apply to any claims or Losses + relating to any actual or alleged intellectual property infringement. + In order to qualify, an Indemnified Contributor must: a) promptly + notify the Commercial Contributor in writing of such claim, and b) + allow the Commercial Contributor to control, and cooperate with the + Commercial Contributor in, the defense and any related settlement + negotiations. The Indemnified Contributor may participate in any such + claim at its own expense. + + For example, a Contributor might include the Program in a commercial + product offering, Product X. That Contributor is then a Commercial + Contributor. If that Commercial Contributor then makes performance + claims, or offers warranties related to Product X, those performance + claims and warranties are such Commercial Contributor's responsibility + alone. Under this section, the Commercial Contributor would have to + defend claims against the other Contributors related to those + performance claims and warranties, and if a court requires any other + Contributor to pay any damages as a result, the Commercial Contributor + must pay those damages. + + 5. NO WARRANTY + + EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS + PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY + WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY + OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely + responsible for determining the appropriateness of using and + distributing the Program and assumes all risks associated with its + exercise of rights under this Agreement, including but not limited to + the risks and costs of program errors, compliance with applicable + laws, damage to or loss of data, programs or equipment, and + unavailability or interruption of operations. + + 6. DISCLAIMER OF LIABILITY + + EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR + ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING + WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR + DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED + HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + + 7. GENERAL + + If any provision of this Agreement is invalid or unenforceable under + applicable law, it shall not affect the validity or enforceability of + the remainder of the terms of this Agreement, and without further + action by the parties hereto, such provision shall be reformed to the + minimum extent necessary to make such provision valid and enforceable. + + If Recipient institutes patent litigation against a Contributor with + respect to a patent applicable to software (including a cross-claim or + counterclaim in a lawsuit), then any patent licenses granted by that + Contributor to such Recipient under this Agreement shall terminate as + of the date such litigation is filed. In addition, If Recipient + institutes patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Program + itself (excluding combinations of the Program with other software or + hardware) infringes such Recipient's patent(s), then such Recipient's + rights granted under Section 2(b) shall terminate as of the date such + litigation is filed. + + All Recipient's rights under this Agreement shall terminate if it + fails to comply with any of the material terms or conditions of this + Agreement and does not cure such failure in a reasonable period of + time after becoming aware of such noncompliance. If all Recipient's + rights under this Agreement terminate, Recipient agrees to cease use + and distribution of the Program as soon as reasonably practicable. + However, Recipient's obligations under this Agreement and any licenses + granted by Recipient relating to the Program shall continue and + survive. + + IBM may publish new versions (including revisions) of this Agreement + from time to time. Each new version of the Agreement will be given a + distinguishing version number. The Program (including Contributions) + may always be distributed subject to the version of the Agreement + under which it was received. In addition, after a new version of the + Agreement is published, Contributor may elect to distribute the + Program (including its Contributions) under the new version. No one + other than IBM has the right to modify this Agreement. Except as + expressly stated in Sections 2(a) and 2(b) above, Recipient receives + no rights or licenses to the intellectual property of any Contributor + under this Agreement, whether expressly, by implication, estoppel or + otherwise. All rights in the Program not expressly granted under this + Agreement are reserved. + + This Agreement is governed by the laws of the State of New York and + the intellectual property laws of the United States of America. No + party to this Agreement will bring a legal action under this Agreement + more than one year after the cause of action arose. Each party waives + its rights to a jury trial in any resulting litigation. + +OpenAFS contains code licensed under a standard 3-term BSD license with +the following names as copyright holders: + +Kungliga Tekniska Högskolan + (Royal Institute of Technology, Stockholm, Sweden) +Sine Nomine Associates + +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * 3. Neither the name of the copyright holder nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +Some code in rxkad/ticket5.c is subject to the following copyright: +/* + * Copyright 1992, 2002 by the Massachusetts Institute of Technology. + * All Rights Reserved. + * + * Export of this software from the United States of America may + * require a specific license from the United States Government. + * It is the responsibility of any person or organization contemplating + * export to obtain such a license before exporting. + * + * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and + * distribute this software and its documentation for any purpose and + * without fee is hereby granted, provided that the above copyright + * notice appear in all copies and that both that copyright notice and + * this permission notice appear in supporting documentation, and that + * the name of M.I.T. not be used in advertising or publicity pertaining + * to distribution of the software without specific, written prior + * permission. Furthermore if you modify this software you must label + * your software as modified software and not distribute it in such a + * fashion that it might be confused with the original M.I.T. software. + * M.I.T. makes no representations about the suitability of + * this software for any purpose. It is provided "as is" without express + * or implied warranty. + */ + +aklog/ka-forwarder.c is subject to the following copyright: +/* + * Copyright (c) 1993 Carnegie Mellon University + * All Rights Reserved. + * + * Permission to use, copy, modify and distribute this software and its + * documentation is hereby granted, provided that both the copyright + * notice and this permission notice appear in all copies of the + * software, derivative works or modified versions, and any portions + * thereof, and that both notices appear in supporting documentation. + * + * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" + * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR + * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. + * + * Carnegie Mellon requests users of this software to return to + * + * Software Distribution Coordinator or Software_Distribution@CS.CMU.EDU + * School of Computer Science + * Carnegie Mellon University + * Pittsburgh PA 15213-3890 + * + * any improvements or extensions that they make and grant Carnegie Mellon + * the rights to redistribute these changes. + */ + +Some portions of Rx are subject to the following license: +/* + * Sun RPC is a product of Sun Microsystems, Inc. and is provided for + * unrestricted use provided that this legend is included on all tape + * media and as a part of the software program in whole or part. Users + * may copy or modify Sun RPC without charge, but are not authorized + * to license or distribute it to anyone else except as part of a product or + * program developed by the user or with the express written consent of + * Sun Microsystems, Inc. + * + * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE + * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR + * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. + * + * Sun RPC is provided with no support and without any obligation on the + * part of Sun Microsystems, Inc. to assist in its use, correction, + * modification or enhancement. + * + * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE + * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC + * OR ANY PART THEREOF. + * + * In no event will Sun Microsystems, Inc. be liable for any lost revenue + * or profits or other special, indirect and consequential damages, even if + * Sun has been advised of the possibility of such damages. + * + * Sun Microsystems, Inc. + * 2550 Garcia Avenue + * Mountain View, California 94043 + */ + +src/afs/LINUX/osi_flush.s included code under IBM Public License with +permission of the author, Paul MacKerras. + +=========================================================== + +Personal contributions made by Jason Edgecombe + that refer to the "BSD license" are subject +to the following license: + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + * Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + * Neither the name of OpenAFS nor the names of its + contributors may be used to endorse or promote products + derived from this software without specific prior written + permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF + THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +==================================================== + +The files src/cf/krb5.m4, src/cf/lib-depends.m4, and +src/cf/lib-pathname.m4 are covered by the following license: + + Copyright 2005, 2006, 2007, 2008, 2009, 2010 + Board of Trustees, Leland Stanford Jr. University + + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appear in all copies and that + both that copyright notice and this permission notice appear in + supporting documentation, and that the name of Stanford University not + be used in advertising or publicity pertaining to distribution of the + software without specific, written prior permission. Stanford + University makes no representations about the suitability of this + software for any purpose. It is provided "as is" without express or + implied warranty. + + THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED + WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. diff --git a/Makefile-libafs.in b/Makefile-libafs.in new file mode 100644 index 0000000..6cdfcd8 --- /dev/null +++ b/Makefile-libafs.in @@ -0,0 +1,25 @@ +# -*- makefile -*- +# +# Copyright 2000, International Business Machines Corporation and others. +# All Rights Reserved. +# +# This software has been released under the terms of the IBM Public +# License. For details, see the LICENSE file in the top-level source +# directory or online at http://www.openafs.org/dl/license10.html + +include src/config/Makefile.config + +all: + cd src && cd config && $(MAKE) + src/config/config src/libafs/MakefileProto \ + src/libafs/Makefile ${SYS_NAME} + cd src && cd libafs && $(MAKE) + +clean: + cd src && cd config && $(MAKE) clean + cd src && cd libafs && $(MAKE) clean + +distclean: clean + rm -f Makefile src/config/Makefile src/config/Makefile.config \ + src/config/Makefile.version src/libafs/Makefile.common \ + src/libafs/Makefile diff --git a/Makefile.in b/Makefile.in new file mode 100644 index 0000000..eda3914 --- /dev/null +++ b/Makefile.in @@ -0,0 +1,955 @@ +# Copyright 2000, International Business Machines Corporation and others. +# All Rights Reserved. +# +# This software has been released under the terms of the IBM Public +# License. For details, see the LICENSE file in the top-level source +# directory or online at http://www.openafs.org/dl/license10.html +# +# Portions Copyright (c) 2003 Apple Computer, Inc. + +srcdir=@srcdir@ +include @TOP_OBJDIR@/src/config/Makefile.config + +ENABLE_KERNEL_MODULE=@ENABLE_KERNEL_MODULE@ +DOXYGEN=@DOXYGEN@ + +# To compile AFS from scratch in the src tree run "make". +# This recursively calls "make install ..." and does not depend on the +# existence of any non-standard programs. +# To compile for the kernel type "make blibafs". This assumes install, +# rxgen, compile_et and others already exist and runs it with +# "-argument kinstall". + +COMPILE_PART1 = cd src && cd +COMPILE_PART2A = && $(MAKE) +COMPILE_PART2B = all +COMPILE_PART2 = ${COMPILE_PART2A} ${COMPILE_PART2B} +COMPILE_CLEAN = ${COMPILE_PART2A} clean +COMPILE_DEPINSTALL = ${COMPILE_PART2A} depinstall +COMPILE_GENERATED = ${COMPILE_PART2A} generated + +all: force + $(MAKE) build + +all_nolibafs: force + $(MAKE) build TARGET=finale_nolibafs + +only_libafs: force + $(MAKE) build TARGET=libafs + +only_libafs_tree: force + $(MAKE) build TARGET=libafs_tree + +buildtools: force + $(MAKE) build TARGET=build_tools COMPILE_PART2B=buildtools + +cscope: + ( cd src ; cscope -b -R ) + +generated: force buildtools + +${COMPILE_PART1} afs ${COMPILE_GENERATED} + +${COMPILE_PART1} auth ${COMPILE_GENERATED} + +${COMPILE_PART1} bozo ${COMPILE_GENERATED} + +${COMPILE_PART1} bubasics ${COMPILE_GENERATED} + +${COMPILE_PART1} bucoord ${COMPILE_GENERATED} + +${COMPILE_PART1} budb ${COMPILE_GENERATED} + +${COMPILE_PART1} cmd ${COMPILE_GENERATED} + +${COMPILE_PART1} fsint ${COMPILE_GENERATED} + +${COMPILE_PART1} kauth ${COMPILE_GENERATED} + +${COMPILE_PART1} ptserver ${COMPILE_GENERATED} + +${COMPILE_PART1} rxkad ${COMPILE_GENERATED} + +${COMPILE_PART1} rxstat ${COMPILE_GENERATED} + +${COMPILE_PART1} sys ${COMPILE_GENERATED} + +${COMPILE_PART1} ubik ${COMPILE_GENERATED} + +${COMPILE_PART1} update ${COMPILE_GENERATED} + +${COMPILE_PART1} vlserver ${COMPILE_GENERATED} + +${COMPILE_PART1} volser ${COMPILE_GENERATED} + +${COMPILE_PART1} config ${COMPILE_PART2A} generated_clean + +${COMPILE_PART1} roken ${COMPILE_PART2A} clean + +${COMPILE_PART1} crypto/hcrypto ${COMPILE_PART2A} clean + +${COMPILE_PART1} opr ${COMPILE_PART2A} clean + +install: all install_dirs + $(MAKE) build COMPILE_PART2B=install + +install_nolibafs: all_nolibafs install_dirs + $(MAKE) build TARGET=finale_nolibafs COMPILE_PART2B=install + +install_only_libafs: only_libafs install_dirs + $(MAKE) build TARGET=libafs COMPILE_PART2B=install + +dest: all dest_dirs + $(MAKE) build COMPILE_PART2B=dest + -${INSTALL_DATA} ${srcdir}/LICENSE ${DEST}/LICENSE + +dest_nolibafs: all_nolibafs dest_dirs + $(MAKE) build TARGET=finale_nolibafs COMPILE_PART2B=dest + -${INSTALL_DATA} ${srcdir}/LICENSE ${DEST}/LICENSE + +dest_only_libafs: only_libafs dest_dirs + $(MAKE) build TARGET=libafs COMPILE_PART2B=dest + -${INSTALL_DATA} ${srcdir}/LICENSE ${DEST}/LICENSE + +packages: dest + @case ${SYS_NAME} in \ + *_darwin_1[2-4] | *_darwin_[6-9]0 | *_darwin_1[0-3]0 ) \ + ${COMPILE_PART1} packaging/MacOS && bash ./buildpkg.sh ${DEST} ;; \ + *_darwin_* ) \ + ${COMPILE_PART1} packaging/MacOS && bash ./pkgbuild.sh ${DEST} ;; \ + hp_ux110 ) \ + ${COMPILE_PART1} packaging/HP-UX && swpackage -s psf-1.2.10-transarc-paths-11.00 ;; \ + hp_ux11i ) \ + ${COMPILE_PART1} packaging/HP-UX && swpackage -s psf-1.2.10-transarc-paths-11.11 ;; \ + ia64_hpux1122 ) \ + ${COMPILE_PART1} packaging/HP-UX && swpackage -s psf-1.2.10-transarc-paths-11.22 ;; \ + ia64_hpux1123 | hp_ux1123) \ + ${COMPILE_PART1} packaging/HP-UX && swpackage -s psf-1.2.10-transarc-paths-11.23 ;; \ + *) \ + echo Not building packages for ${SYS_NAME} ;; \ + esac + +${TOP_INCDIR}/afs ${TOP_INCDIR}/rx ${TOP_INCDIR}/hcrypto ${TOP_INCDIR}/opr ${TOP_LIBDIR} ${TOP_JLIBDIR}: + mkdir -p $@ + +install_dirs: force + mkdir -p ${DESTDIR}${bindir} + mkdir -p ${DESTDIR}${sbindir} + mkdir -p ${DESTDIR}${libexecdir}/openafs + mkdir -p ${DESTDIR}${libdir}/afs + mkdir -p ${DESTDIR}${includedir}/afs + mkdir -p ${DESTDIR}${includedir}/rx + mkdir -p ${DESTDIR}${afskerneldir} + mkdir -p ${DESTDIR}${afssrvbindir} + mkdir -p ${DESTDIR}${afssrvsbindir} + mkdir -p ${DESTDIR}${afssrvlibexecdir} + mkdir -p ${DESTDIR}${afsdatadir}/C + +dest_dirs: force + mkdir -p ${DEST}/bin + mkdir -p ${DEST}/etc + mkdir -p ${DEST}/lib/afs + mkdir -p ${DEST}/include/afs + mkdir -p ${DEST}/include/rx + mkdir -p ${DEST}/root.client/usr/vice/etc/C + mkdir -p ${DEST}/root.server/etc + mkdir -p ${DEST}/root.server/usr/afs/bin + +prelude: ${TOP_INCDIR}/afs ${TOP_INCDIR}/rx ${TOP_INCDIR}/hcrypto \ + ${TOP_INCDIR}/opr ${TOP_LIBDIR} + +project: cmd comerr + +tests: all + +${COMPILE_PART1} tests ${COMPILE_PART2} + +config: prelude + +${COMPILE_PART1} config ${COMPILE_PART2} + +procmgmt: $(DIR_roken) config + +${COMPILE_PART1} procmgmt ${COMPILE_PART2} + +opr: config hcrypto $(DIR_roken) + +${COMPILE_PART1} opr ${COMPILE_PART2} + +util: opr $(DIR_roken) procmgmt hcrypto lwp + +${COMPILE_PART1} util ${COMPILE_PART2} + +libafscp: util afs volser vlserver rx auth fsint + +${COMPILE_PART1} libafscp ${COMPILE_PART2} + +audit: util rx rxkad fsint bubasics + +${COMPILE_PART1} audit ${COMPILE_PART2} #TODO + +comerr: util $(DIR_roken) + +${COMPILE_PART1} comerr ${COMPILE_PART2} + +cmd: comerr + +@case ${SYS_NAME} in \ + sgi_6* | sun*_5[789] | sun*_51[01] | hp_ux11* | ia64_hpux* | sparc64_linux* | alpha_linux* ) \ + ${COMPILE_PART1} cmd ${COMPILE_PART2}64 ;; \ + *) \ + ${COMPILE_PART1} cmd ${COMPILE_PART2} ;; \ + esac + +hcrypto: config $(DIR_roken) + +${COMPILE_PART1} crypto/hcrypto ${COMPILE_PART2} + +rfc3961: config hcrypto + +${COMPILE_PART1} crypto/rfc3961 ${COMPILE_PART2} + +lwp: opr $(DIR_roken) lwp_depinstall + +${COMPILE_PART1} lwp ${COMPILE_PART2} + +roken: config + +${COMPILE_PART1} roken ${COMPILE_PART2} + +rxgen: $(DIR_roken) config + +${COMPILE_PART1} rxgen ${COMPILE_PART2} + +rx: config lwp rxgen rx_depinstall util + +${COMPILE_PART1} rx ${COMPILE_PART2} + +rxstat: rx rxstat_depinstall + +${COMPILE_PART1} rxstat ${COMPILE_PART2} + +rxtests: rxdebug +rxdebug: rx sys + +${COMPILE_PART1} rxdebug ${COMPILE_PART2} + +fsint: cmd comerr rxgen rx lwp fsint_depinstall + +${COMPILE_PART1} fsint ${COMPILE_PART2} + +export2: project + +export: + @case ${SYS_NAME} in \ + rs_aix*) \ + ${MAKE} export_build ; \ + esac + +export_build: fsint + +${COMPILE_PART1} export ${COMPILE_PART2} + +afs: config export comerr afs_depinstall + +${COMPILE_PART1} afs ${COMPILE_PART2} + +sys: cmd comerr afs hcrypto rx rxstat fsint sys_depinstall + +${COMPILE_PART1} sys ${COMPILE_PART2} + +rxkad: cmd comerr hcrypto rfc3961 rx rxkad_depinstall + +${COMPILE_PART1} rxkad ${COMPILE_PART2} + +auth: cmd comerr hcrypto lwp rx rxkad audit sys auth_depinstall + +${COMPILE_PART1} auth ${COMPILE_PART2} + +ubik: cmd comerr auth ubik_depinstall sys + +${COMPILE_PART1} ubik ${COMPILE_PART2} + +tubik: ubik libafsrpc libafsauthent + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*|*_darwin_*) \ + ${COMPILE_PART1} tubik ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT ubik for ${SYS_NAME} ;; \ + esac + +ubiktests: ubik + +ptserver: cmd comerr ubik cmd comerr auth audit ptserver_depinstall + +${COMPILE_PART1} ptserver ${COMPILE_PART2} + +tptserver: cmd comerr ptserver tubik libafsrpc libafsauthent + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*|*_darwin_*) \ + ${COMPILE_PART1} tptserver ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT ptserver for ${SYS_NAME} ;; \ + esac + +kauth: cmd comerr ubik cmd auth comerr ptserver audit libacl kauth_depinstall \ + sys_depinstall + +${COMPILE_PART1} kauth ${COMPILE_PART2} + +libacl: cmd comerr ptserver libacl_depinstall + +${COMPILE_PART1} libacl ${COMPILE_PART2} + +dir: cmd comerr libacl dir_depinstall + +${COMPILE_PART1} dir ${COMPILE_PART2} + +vol: cmd comerr dir afs $(DIR_roken) + +${COMPILE_PART1} vol ${COMPILE_PART2} + +tsalvaged: vol libafsrpc libafsauthent cmd util + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[fn]bsd*|*_darwin_*) \ + ${COMPILE_PART1} tsalvaged ${COMPILE_PART2} ;; \ + *_darwin_*) \ + ${COMPILE_PART1} tsalvaged ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT tsalvaged for ${SYS_NAME} ;; \ + esac + + +vlserver: cmd comerr vol audit vlserver_depinstall + +${COMPILE_PART1} vlserver ${COMPILE_PART2} + +tvlserver: cmd comerr vol audit tubik libafsrpc libafsauthent \ + tvlserver_depinstall + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*|*_darwin_*) \ + ${COMPILE_PART1} tvlserver ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT tvlserver for ${SYS_NAME} ;; \ + esac + + +viced: cmd comerr vlserver tvlserver libafsrpc libafsauthent audit + +${COMPILE_PART1} viced ${COMPILE_PART2} + +dviced: cmd comerr viced vlserver tvlserver libafsrpc libafsauthent + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*|*_darwin_*) \ + ${COMPILE_PART1} dviced ${COMPILE_PART2} ;; \ + *) \ + echo Not building DAFS viced for ${SYS_NAME} ;; \ + esac + +volser: cmd comerr usd kauth vlserver audit + +${COMPILE_PART1} volser ${COMPILE_PART2} + +tvolser: project viced usd libafsrpc libafsauthent volser + +@case ${SYS_NAME} in \ + *_darwin_*|alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*) \ + ${COMPILE_PART1} tvolser ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT volser for ${SYS_NAME} ;; \ + esac + +dvolser: project viced usd libafsrpc libafsauthent volser + +@case ${SYS_NAME} in \ + *_darwin_*|alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*) \ + ${COMPILE_PART1} dvolser ${COMPILE_PART2} ;; \ + *) \ + echo Not building DAFS volser for ${SYS_NAME} ;; \ + esac + +rxosdsrc: rxgen + +${COMPILE_PART1} rxosd ${COMPILE_PART2A} source + +venus: cmd comerr volser ptserver libafscp libafsauthent + +${COMPILE_PART1} venus ${COMPILE_PART2} +venustests: venus + +${COMPILE_PART1} venus/test ${COMPILE_PART2} + +afsd: cmd comerr sys kauth libafsauthent @CLIENT_UAFS_DEP@ + +${COMPILE_PART1} afsd ${COMPILE_PART2} + +gtx: cmd comerr auth kauth + +set -x; \ + if test "@LIB_curses@"; then \ + ${COMPILE_PART1} gtx ${COMPILE_PART2} ; \ + else \ + echo Not building gtx, because no curses-headers found. ; \ + fi + +fsprobe: cmd comerr util fsint volser + +${COMPILE_PART1} fsprobe ${COMPILE_PART2} + +scout: cmd comerr gtx fsprobe + +if test "@LIB_curses@"; then \ + ${COMPILE_PART1} scout ${COMPILE_PART2} ; \ + else \ + echo Not building scout, because no curses-headers found. ; \ + fi + +uss: hcrypto kauth cmd comerr rx vlserver vol volser + +${COMPILE_PART1} uss ${COMPILE_PART2} + +bozo: cmd comerr audit auth kauth volser + +${COMPILE_PART1} bozo ${COMPILE_PART2} + +vfsck: vol + +set -x; \ + case ${SYS_NAME} in \ + sgi_* | *linux* | rs_aix* | *_darwin* | ia64_hpux* | *fbsd* | *_obsd* | *_nbsd* ) \ + echo skip vfsck for ${SYS_NAME} ;; \ + * ) \ + ${COMPILE_PART1} vfsck ${COMPILE_PART2} ;; \ + esac + +pam: auth libafsauthent + +set -x; \ + if test "@HAVE_PAM@" = "yes"; then \ + ${COMPILE_PART1} pam ${COMPILE_PART2} ; \ + else \ + echo Skipping pam for ${SYS_NAME} ; \ + fi + +tsm41: cmd comerr kauth rxkad + +set -x; \ + case ${SYS_NAME} in \ + rs_aix* ) \ + ${COMPILE_PART1} tsm41 ${COMPILE_PART2} ;; \ + * ) \ + echo Skipping tsm41 for ${SYS_NAME} ;; \ + esac + +aklog: auth comerr ptserver libafsauthent + +set -x; \ + if test "@BUILD_KRB5@" = "yes"; then \ + ${COMPILE_PART1} aklog ${COMPILE_PART2} ; \ + else \ + echo Skipping aklog for ${SYS_NAME} ; \ + fi + +authtools: pam tsm41 platform aklog + +platform: config cmd vol + +${COMPILE_PART1} platform ${COMPILE_PART2} + +tools: config audit volser vlserver + +${COMPILE_PART1} tools ${COMPILE_PART2} + +man-pages: config + +if test -d "doc/man-pages" ; then \ + cd doc/man-pages ${COMPILE_PART2} ; \ + fi + +# +# _depinstall targets - only build and install headers/sources that are +# needed by libafs/libuafs +# +# encode dependencies within the _depinstall targets as required +# +lwp_depinstall: config + +${COMPILE_PART1} lwp ${COMPILE_DEPINSTALL} + +rx_depinstall: config + +${COMPILE_PART1} rx ${COMPILE_DEPINSTALL} + +rxkad_depinstall: config comerr + +${COMPILE_PART1} rxkad ${COMPILE_DEPINSTALL} + +ubik_depinstall: config comerr rxgen + +${COMPILE_PART1} ubik ${COMPILE_DEPINSTALL} + +vlserver_depinstall: config rxgen ubik_depinstall auth_depinstall + +${COMPILE_PART1} vlserver ${COMPILE_DEPINSTALL} + +tvlserver_depinstall: config rxgen ubik_depinstall auth_depinstall + +${COMPILE_PART1} tvlserver ${COMPILE_DEPINSTALL} + +auth_depinstall: config rxgen comerr + +${COMPILE_PART1} auth ${COMPILE_DEPINSTALL} + +fsint_depinstall: config rxgen + +${COMPILE_PART1} fsint ${COMPILE_DEPINSTALL} + +rxstat_depinstall: config rxgen + +${COMPILE_PART1} rxstat ${COMPILE_DEPINSTALL} + +libacl_depinstall: config + +${COMPILE_PART1} libacl ${COMPILE_DEPINSTALL} + +afs_depinstall: config comerr + +${COMPILE_PART1} afs ${COMPILE_DEPINSTALL} + +dir_depinstall: config + +${COMPILE_PART1} dir ${COMPILE_DEPINSTALL} + +sys_depinstall: config rxgen + +${COMPILE_PART1} sys ${COMPILE_DEPINSTALL} + +kauth_depinstall: config rxgen comerr + +${COMPILE_PART1} kauth ${COMPILE_DEPINSTALL} + +ptserver_depinstall: config rxgen comerr + +${COMPILE_PART1} ptserver ${COMPILE_DEPINSTALL} + +${DEST}/bin/dedebug: dedebug + ${INSTALL} $? $@ + + +# +# libafs build targets +# +libafs: config export rfc3961 hcrypto lwp_depinstall \ + rx_depinstall vlserver_depinstall tvlserver_depinstall \ + rxkad_depinstall fsint_depinstall \ + libacl_depinstall afs_depinstall dir_depinstall \ + rxstat_depinstall sys_depinstall auth_depinstall \ + rxosdsrc + ${CONFIGTOOL} src/libafs/MakefileProto.${MKAFS_OSTYPE} src/libafs/Makefile ${SYS_NAME} + +${COMPILE_PART1} libafs ${COMPILE_PART2} + +libafs_tree: export lwp_depinstall rx_depinstall vlserver_depinstall \ + tvlserver_depinstall rxkad_depinstall fsint_depinstall \ + libacl_depinstall afs_depinstall dir_depinstall \ + rxstat_depinstall sys_depinstall auth_depinstall + ${TOP_SRCDIR}/config/make_libafs_tree.pl \ + -sn $(SYS_NAME) \ + -os $(MKAFS_OSTYPE) \ + -t @TOP_OBJDIR@/libafs_tree \ + -o @TOP_OBJDIR@ \ + -p @srcdir@ + +# +# libuafs build targets +# + +libuafs_setup: config export + ${CONFIGTOOL} src/libuafs/MakefileProto.${MKAFS_OSTYPE} src/libuafs/Makefile ${SYS_NAME} + +libuafs: libuafs_setup vlserver_depinstall tvlserver_depinstall rx_depinstall \ + fsint_depinstall auth_depinstall dir_depinstall \ + libacl_depinstall rxkad_depinstall ubik_depinstall \ + afs_depinstall kauth_depinstall ptserver_depinstall \ + rxstat_depinstall lwp_depinstall sys_depinstall cmd hcrypto + +set -x; \ + case ${SYS_NAME} in \ + hp_ux102* | *_obsd* | *_nbsd*| hp_ux11i | hp_ux112* | ia64_hpux112*) \ + echo Skipping libuafs for ${SYS_NAME} ;; \ + * ) \ + ${COMPILE_PART1} libuafs ${COMPILE_PART2} ;; \ + esac + +afsweb: kauth + +${COMPILE_PART1} afsweb ${COMPILE_PART2} + +update: cmd comerr auth sys + +${COMPILE_PART1} update ${COMPILE_PART2} + +log: cmd comerr auth sys + +${COMPILE_PART1} log ${COMPILE_PART2} + +bu_utils: cmd comerr usd + +${COMPILE_PART1} bu_utils ${COMPILE_PART2} + +usd: cmd comerr + +${COMPILE_PART1} usd ${COMPILE_PART2} + +bubasics: cmd comerr comerr rx + +${COMPILE_PART1} bubasics ${COMPILE_PART2} + +butm: cmd comerr bubasics usd uss + +${COMPILE_PART1} butm ${COMPILE_PART2} + +butc: cmd comerr bubasics butm budb bucoord cmd rxgen rx + +${COMPILE_PART1} butc ${COMPILE_PART2} + +tbutc: cmd comerr bubasics butm budb bucoord cmd butc libadmin + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*_darwin_*) \ + ${COMPILE_PART1} tbutc ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT butc for ${SYS_NAME} ;; \ + esac + +budb: cmd comerr bubasics uss + +${COMPILE_PART1} budb ${COMPILE_PART2} + +tbudb: budb tubik + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*|*_darwin_*) \ + ${COMPILE_PART1} tbudb ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT budb for ${SYS_NAME} ;; \ + esac + +bucoord: cmd comerr bubasics budb volser butm + +${COMPILE_PART1} bucoord ${COMPILE_PART2} + +xstat: cmd comerr fsint viced + +${COMPILE_PART1} xstat ${COMPILE_PART2} + +afsmonitor: cmd comerr gtx xstat + +set -x; \ + if test "@LIB_curses@"; then \ + ${COMPILE_PART1} afsmonitor ${COMPILE_PART2} ; \ + else \ + echo Not building afsmonitor, because no curses-headers found. ; \ + fi + +tests: rxtests ubiktests rpctestlib viced + +# pthread based user space RX library +libafsrpc: comerr fsint hcrypto lwp rx rxkad rxstat sys util + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*) \ + ${COMPILE_PART1} libafsrpc ${COMPILE_PART2} ;; \ + *_darwin_[1-6][0-9]) \ + echo Not building MT libafsrpc for ${SYS_NAME} ;; \ + *_darwin_*) \ + ${COMPILE_PART1} libafsrpc ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT libafsrpc for ${SYS_NAME} ;; \ + esac + +libafsauthent: audit auth kauth ubik util sys ptserver volser vlserver libafsrpc + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*[nof]bsd*) \ + ${COMPILE_PART1} libafsauthent ${COMPILE_PART2} ;; \ + *_darwin_[1-6][0-9]) \ + echo Not building MT libafsauthent for ${SYS_NAME} ;; \ + *_darwin_*) \ + ${COMPILE_PART1} libafsauthent ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT libafsauthent for ${SYS_NAME} ;; \ + esac + +kopenafs: config sys + +${COMPILE_PART1} kopenafs ${COMPILE_PART2} + +libadmin_real: + +${COMPILE_PART1} libadmin ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/adminutil ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/vos ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/client ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/kas ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/pts ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/bos ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/cfg ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/test ${COMPILE_PART2} + +${COMPILE_PART1} libadmin/samples ${COMPILE_PART2} + +libadmin: libafsauthent bozo bubasics + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*) \ + $(MAKE) libadmin_real ;; \ + *_darwin_[1-6][0-9]) \ + echo Not building MT libadmin for ${SYS_NAME} ;; \ + *_darwin_*) \ + $(MAKE) libadmin_real ;; \ + *) \ + echo Not building MT libadmin for ${SYS_NAME} ;; \ + esac + +libjafs: libadmin + +case ${SYS_NAME} in \ + alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \ + ${COMPILE_PART1} JAVA/libjafs ${COMPILE_PART2} ;; \ + *) \ + echo Not building MT libjafs for ${SYS_NAME} ;; \ + esac + +libjafsadm: libjafs + +jafs: libjafs + +jafsadm: libjafsadm + +build_tools: config comerr rxgen + +${COMPILE_PART1} util ${COMPILE_PART2A} buildtools_clean + +finale: project cmd comerr afsd butc tbutc tbudb @ENABLE_KERNEL_MODULE@ \ + libuafs audit kauth log ptserver tptserver scout bu_utils ubik uss \ + bozo @VFSCK@ volser tvolser tsalvaged dviced dvolser libafscp \ + venus venustests update xstat afsmonitor rxdebug libafsrpc rfc3961 \ + hcrypto libafsauthent libadmin man-pages tools platform kopenafs \ + authtools $(DIR_roken) + +${COMPILE_PART1} finale ${COMPILE_PART2} + +finale_nolibafs: project cmd comerr afsd butc tbutc tbudb libuafs audit kauth \ + log ptserver tptserver scout bu_utils ubik tubik uss bozo @VFSCK@ \ + volser tvolser tsalvaged dviced dvolser libafscp venus venustests \ + update xstat afsmonitor rxdebug libafsrpc rfc3961 hcrypto \ + libafsauthent libadmin man-pages tools platform kopenafs \ + authtools $(DIR_roken) + +${COMPILE_PART1} finale ${COMPILE_PART2} + +rpctestlib: util fsint rx opr libafsrpc libafsauthent + +${TEST_PART1} rpctestlib ${COMPILE_PART2} + +check test: finale + cd tests && $(MAKE) check + +force: + +TARGET=finale +build: force + $(MAKE) $(TARGET) DEST=$(DEST) COMPILE_PART2B=$(COMPILE_PART2B) DESTDIR=$(DESTDIR) + +kupdate: updatekdir libafs_setup libuafs_setup + +blibafs: + $(MAKE) libafs + +blibuafs: + $(MAKE) libuafs + +bwebafs: sys + $(MAKE) libuafs + +clean: + $(MAKE) clean2 + +clean2: + -${COMPILE_PART1} config ${COMPILE_CLEAN} + -${COMPILE_PART1} procmgmt ${COMPILE_CLEAN} + -${COMPILE_PART1} util ${COMPILE_CLEAN} + -${COMPILE_PART1} opr ${COMPILE_CLEAN} + -${COMPILE_PART1} libafscp ${COMPILE_CLEAN} + -${COMPILE_PART1} audit ${COMPILE_CLEAN} + -${COMPILE_PART1} comerr ${COMPILE_CLEAN} + -${COMPILE_PART1} cmd ${COMPILE_CLEAN} + -${COMPILE_PART1} lwp ${COMPILE_CLEAN} + -${COMPILE_PART1} rxgen ${COMPILE_CLEAN} + -${COMPILE_PART1} rx ${COMPILE_CLEAN} + -${COMPILE_PART1} rxstat ${COMPILE_CLEAN} + -${COMPILE_PART1} fsint ${COMPILE_CLEAN} + -${COMPILE_PART1} export ${COMPILE_CLEAN} + -${COMPILE_PART1} afs ${COMPILE_CLEAN} + -${COMPILE_PART1} sys ${COMPILE_CLEAN} + -${COMPILE_PART1} rxkad ${COMPILE_CLEAN} + -${COMPILE_PART1} auth ${COMPILE_CLEAN} + -${COMPILE_PART1} ubik ${COMPILE_CLEAN} + -${COMPILE_PART1} tubik ${COMPILE_CLEAN} + -${COMPILE_PART1} ptserver ${COMPILE_CLEAN} + -${COMPILE_PART1} tptserver ${COMPILE_CLEAN} + -${COMPILE_PART1} kauth ${COMPILE_CLEAN} + -${COMPILE_PART1} libacl ${COMPILE_CLEAN} + -${COMPILE_PART1} dir ${COMPILE_CLEAN} + -${COMPILE_PART1} vol ${COMPILE_CLEAN} + -${COMPILE_PART1} vlserver ${COMPILE_CLEAN} + -${COMPILE_PART1} tvlserver ${COMPILE_CLEAN} + -${COMPILE_PART1} viced ${COMPILE_CLEAN} + -${COMPILE_PART1} dviced ${COMPILE_CLEAN} + -${COMPILE_PART1} volser ${COMPILE_CLEAN} + -${COMPILE_PART1} tvolser ${COMPILE_CLEAN} + -${COMPILE_PART1} dvolser ${COMPILE_CLEAN} + -${COMPILE_PART1} tsalvaged ${COMPILE_CLEAN} + -${COMPILE_PART1} venus ${COMPILE_CLEAN} + -${COMPILE_PART1} venus/test ${COMPILE_CLEAN} + -${COMPILE_PART1} afsd ${COMPILE_CLEAN} + -${COMPILE_PART1} gtx ${COMPILE_CLEAN} + -${COMPILE_PART1} fsprobe ${COMPILE_CLEAN} + -${COMPILE_PART1} scout ${COMPILE_CLEAN} + -${COMPILE_PART1} uss ${COMPILE_CLEAN} + -${COMPILE_PART1} bozo ${COMPILE_CLEAN} + -${COMPILE_PART1} vfsck ${COMPILE_CLEAN} + -${COMPILE_PART1} tsm41 ${COMPILE_CLEAN} + -${COMPILE_PART1} sia ${COMPILE_CLEAN} + -${COMPILE_PART1} aklog ${COMPILE_CLEAN} + -${COMPILE_PART1} pam ${COMPILE_CLEAN} + -${COMPILE_PART1} afsweb ${COMPILE_CLEAN} + -${COMPILE_PART1} update ${COMPILE_CLEAN} + -${COMPILE_PART1} log ${COMPILE_CLEAN} + -${COMPILE_PART1} bu_utils ${COMPILE_CLEAN} + -${COMPILE_PART1} usd ${COMPILE_CLEAN} + -${COMPILE_PART1} bubasics ${COMPILE_CLEAN} + -${COMPILE_PART1} butm ${COMPILE_CLEAN} + -${COMPILE_PART1} butc ${COMPILE_CLEAN} + -${COMPILE_PART1} tbutc ${COMPILE_CLEAN} + -${COMPILE_PART1} budb ${COMPILE_CLEAN} + -${COMPILE_PART1} tbudb ${COMPILE_CLEAN} + -${COMPILE_PART1} bucoord ${COMPILE_CLEAN} + -${COMPILE_PART1} xstat ${COMPILE_CLEAN} + -${COMPILE_PART1} afsmonitor ${COMPILE_CLEAN} + -${COMPILE_PART1} rxdebug ${COMPILE_CLEAN} + -${COMPILE_PART1} libafsrpc ${COMPILE_CLEAN} + -${COMPILE_PART1} libafsauthent ${COMPILE_CLEAN} + -${COMPILE_PART1} kopenafs ${COMPILE_CLEAN} + -${COMPILE_PART1} tools ${COMPILE_CLEAN} + -${COMPILE_PART1} platform ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/adminutil ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/client ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/vos ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/kas ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/pts ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/bos ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/cfg ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/test ${COMPILE_CLEAN} + -${COMPILE_PART1} libadmin/samples ${COMPILE_CLEAN} + -${COMPILE_PART1} JAVA/libjafs ${COMPILE_CLEAN} + -${COMPILE_PART1} finale ${COMPILE_CLEAN} + -${COMPILE_PART1} libafs ${COMPILE_CLEAN} + -${COMPILE_PART1} libuafs ${COMPILE_CLEAN} + -${COMPILE_PART1} rxosd ${COMPILE_CLEAN} + -${COMPILE_PART1} tests ${COMPILE_CLEAN} + -${COMPILE_PART1} crypto/hcrypto ${COMPILE_CLEAN} + -${COMPILE_PART1} roken ${COMPILE_CLEAN} + -${COMPILE_PART1} crypto/rfc3961 ${COMPILE_CLEAN} + -(cd src; /bin/rm cscope.out) + -(cd src/libafs; /bin/rm -rf afs afsint config rx) + -(cd src/libuafs; /bin/rm -rf afs afsint config rx) + -(cd tests ${COMPILE_CLEAN}) + -/bin/rm -rf ${TOP_INCDIR} ${TOP_LIBDIR} ${TOP_JLIBDIR} + -/bin/rm -rf libafs_tree ${SYS_NAME} + +dist: + mkdir -p packages + ./build-tools/make-release --dir=packages HEAD + +srpm: + (cd packages && ../src/packaging/RedHat/makesrpm.pl *-src.tar.bz2 *-doc.tar.bz2) + +dox: + if test "x$(DOXYGEN)" != "x"; then \ + mkdir -p doc/doxygen/output && $(DOXYGEN) doc/doxygen/Doxyfile; \ + fi + +distclean: clean + /bin/rm -rf lib include packages + /bin/rm -f config.log config.cache config.status \ + src/config/afsconfig.h src/config/stamp-h1 \ + src/libafs/Makefile \ + src/libuafs/Makefile \ + Makefile \ + src/afs/Makefile \ + src/afsd/Makefile \ + src/afsmonitor/Makefile \ + src/afsweb/Makefile \ + src/aklog/Makefile \ + src/audit/Makefile \ + src/auth/Makefile \ + src/auth/test/Makefile \ + src/bozo/Makefile \ + src/bozo/test/Makefile \ + src/bu_utils/Makefile \ + src/bubasics/Makefile \ + src/bucoord/Makefile \ + src/budb/Makefile \ + src/tbudb/Makefile \ + src/butc/Makefile \ + src/butm/Makefile \ + src/cmd/Makefile \ + src/cmd/test/Makefile \ + src/comerr/Makefile \ + src/comerr/test/Makefile \ + src/config/Makefile \ + src/config/Makefile.config \ + src/config/Makefile.libtool \ + src/config/Makefile.lwp \ + src/config/Makefile.lwptool \ + src/config/Makefile.pthread \ + src/config/Makefile.version \ + src/config/Makefile.version-CML \ + src/config/Makefile.version-NOCML \ + src/config/shlib-build \ + src/config/shlib-install \ + src/crypto/hcrypto/Makefile \ + src/crypto/rfc3961/Makefile \ + src/dir/Makefile \ + src/dir/test/Makefile \ + src/dviced/Makefile \ + src/dvolser/Makefile \ + src/export/Makefile \ + src/finale/Makefile \ + src/fsint/Makefile \ + src/fsprobe/Makefile \ + src/gtx/Makefile \ + src/JAVA/libjafs/Makefile \ + src/kauth/Makefile \ + src/kauth/test/Makefile \ + src/kopenafs/Makefile \ + src/libacl/Makefile \ + src/libacl/test/Makefile \ + src/libadmin/Makefile \ + src/libadmin/adminutil/Makefile \ + src/libadmin/bos/Makefile \ + src/libadmin/cfg/Makefile \ + src/libadmin/cfg/test/Makefile \ + src/libadmin/client/Makefile \ + src/libadmin/kas/Makefile \ + src/libadmin/pts/Makefile \ + src/libadmin/samples/Makefile \ + src/libadmin/test/Makefile \ + src/libadmin/vos/Makefile \ + src/libafs/Makefile.common \ + src/libafs/MakefileProto.${MKAFS_OSTYPE} \ + ${DARWIN_PLIST} \ + src/libafsauthent/Makefile \ + src/libafsrpc/Makefile \ + src/libuafs/Makefile.common \ + src/libuafs/MakefileProto.${MKAFS_OSTYPE} \ + src/log/Makefile \ + src/log/test/Makefile \ + src/lwp/Makefile \ + src/lwp/test/Makefile \ + src/opr/Makefile \ + src/packaging/MacOS/OpenAFS-debug.Description.plist \ + src/packaging/MacOS/OpenAFS-debug.Info.plist \ + src/packaging/MacOS/OpenAFS.Description.plist \ + src/packaging/MacOS/OpenAFS.Info.plist \ + src/packaging/MacOS/OpenAFS.info \ + src/packaging/MacOS/buildpkg.sh \ + src/packaging/RedHat/openafs.spec \ + src/pam/Makefile \ + src/platform/Makefile \ + src/platform/${MKAFS_OSTYPE}/Makefile \ + src/platform/DARWIN/growlagent/Makefile \ + src/procmgmt/Makefile \ + src/procmgmt/test/Makefile \ + src/ptserver/Makefile \ + src/tptserver/Makefile \ + src/roken/Makefile \ + src/rx/Makefile \ + src/rx/bulk.example/Makefile \ + src/rx/bulktest/Makefile \ + src/rx/multi.example/Makefile \ + src/rx/simple.example/Makefile \ + src/rx/test/Makefile \ + src/rxdebug/Makefile \ + src/rxgen/Makefile \ + src/rxkad/Makefile \ + src/rxkad/test/Makefile \ + src/rxosd/Makefile \ + src/rxstat/Makefile \ + src/scout/Makefile \ + src/sys/Makefile \ + src/tbutc/Makefile \ + src/tests/Makefile \ + src/tests/run-tests \ + src/tests/auth/Makefile \ + src/tools/Makefile \ + src/tools/dumpscan/Makefile \ + src/tools/rxperf/Makefile \ + src/tsalvaged/Makefile \ + src/tsm41/Makefile \ + src/tvolser/Makefile \ + src/ubik/Makefile \ + src/tubik/Makefile \ + src/update/Makefile \ + src/usd/Makefile \ + src/usd/test/Makefile \ + src/uss/Makefile \ + src/util/Makefile \ + src/util/test/Makefile \ + src/libafscp/Makefile \ + src/venus/Makefile \ + src/venus/test/Makefile \ + src/vfsck/Makefile \ + src/viced/Makefile \ + src/vlserver/Makefile \ + src/tvlserver/Makefile \ + src/vol/Makefile \ + src/vol/test/Makefile \ + src/volser/Makefile \ + src/xstat/Makefile \ + tests/Makefile \ + tests/rpctestlib/Makefile \ + tests/tap/Makefile \ + tests/auth/Makefile \ + tests/cmd/Makefile \ + tests/common/Makefile \ + tests/rx/Makefile \ + tests/opr/Makefile \ + tests/util/Makefile \ + tests/volser/Makefile \ + src/helper-splint.sh \ + doc/xml/AdminGuide/Makefile \ + doc/xml/QuickStartUnix/Makefile \ + doc/xml/UserGuide/Makefile \ + doc/xml/AdminRef/Makefile + if test -d doc/man-pages ; then \ + /bin/rm -f doc/man-pages/Makefile doc/man-pages/install-man ; \ + fi + if test -d doc/doxygen ; then \ + /bin/rm -f doc/doxygen/Doxyfile ; \ + fi + +pristine: distclean + /bin/rm -f src/config/afsconfig.h.in configure configure-libafs \ + aclocal.m4 \ + libtool \ + build-tools/ltmain.sh \ + src/cf/libtool.m4 \ + src/cf/ltoptions.m4 \ + src/cf/ltsugar.m4 \ + src/cf/ltversion.m4 \ + src/cf/lt~obsolete.m4 + if test -d doc/xml ; then \ + /bin/rm -f doc/xml/mobi-fixup.xsl ; \ + fi + if test -d doc/man-pages ; then \ + /bin/rm -rf doc/man-pages/man1 \ + doc/man-pages/man3 \ + doc/man-pages/man5 \ + doc/man-pages/man8 ; \ + fi + for i in doc/man-pages/pod*/*.pod.in; do \ + /bin/rm -f $${i%.in}; \ + done + +maintainer-clean: pristine diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..0746710 --- /dev/null +++ b/NEWS @@ -0,0 +1,6098 @@ + User-Visible OpenAFS Changes + +OpenAFS 1.8.5 + +All platforms + + * Fix OPENAFS-SA-2019-001: information leakage in failed RPC output + Generated RPC handler routines ran output variables through XDR encoding + even when the call had failed and would shortly be aborted (and for + which uninitialized output variables is common); any complete packets + assembled in the process would be sent to the peer, leaking the contents + of the uninitialized memory in question. + + * Fix OPENAFS-SA-2019-002: information leakage from uninitialized scalars + Generated RPC handler routines did not initialize output variables of + scalar (fixed-length) type, since they did not require dedicated logic to + free. Such variables allocated on the stack could remain uninitialized + in some cases (including those affected by OPENAFS-SA-2019-001), and the + contents of uninitialized memory would be returned to the peer. + +All server platforms + + * Fix OPENAFS-SA-2019-003: fix crash in database servers + The ubik debugging RPCs prioritize being fast and non-disruptive to + database operations over strict correctness, and do not adhere to the + usual locking protocol for data access. A data race could cause a NULL + dereference if the second memory load was not optimized out by the + compiler. + +OpenAFS 1.8.4 + + All platforms + + Build system updates to remove obsolete autoconf macros and remove missing + script warning during builds (13480, 13481, 13482, 13483, 13484, 13486, + 13789, 13790). + + Build system update to fix a conditional check in the pthread.m4 autoconf + file (13595) + + Build system update to create the man3 subdirectory, fixing a + reported build failure (13535). + + Remove the last reference to src/mcas in the documentation (13558). + + All server platforms + + Fix fileserver's parsing of the options -vlruthresh, -vlruinterval, + -vlrumax and -novbc (13680). + + Fixes to make ptserver's behaviour when run in restricted mode consistent + with the documentation: Non-members of the system:administrators group + are no longer allowed to issue the adduser, setfields and delete pts + commands, and all members of system:administrators are now allowed to + issue pts commands in this mode, not just the admin principal (13686..88). + + All client platforms + + Fix missing Rx call clean-up after failing to read dcaches from a file + server (13511). + + Fix an Rx call leak for calls aborted by a connection abort after the call + was initialized but before use (13517). + + Remove the obsolete afs_xosi lock to remove unnecessary serialization of + VOP_GETATTR calls. This can lead to improved performance under heavy + workloads (13529). + + Increase the size of the Directory Name Lookup Cache (DNLC) to improve + cache performance (13559). + + Fix getting tokens for cells with a three character name (13679). + + Avoid a misleading message about the cell being used when aklog is run + with the -cell parameter but the AFSCELL environment variable is set to + a different cell (13676). + + Build system update to honor the CFLAGS environment variable when building + libuafs (13544). + + Linux + + Support for mainline kernels up to 5.3 (13787, 13789). + + More fixes for improper use of ENOENT fixes to avoid incorrect use of linux + negative dentry cache, which can lead to false ENOENT errors (13542, 13543, + 13590, 13692) (RT #134904). + + Return errors instead of returning incomplete directory listings when the + directory objects are incomplete in the cache (13591). + + Add ppc64le_linux26 sysname for the ppc64le architecture (13636, 13637, + 13589). + + Fix configure check for a kernel time function in order to build on + Linux 5.0 (13523). + + RPM packaging update for RHEL8 adding a build requirement to ensure the + kernel module can be built from the SRPM (13563) (RT #134900). + + On systemd based RHEL/Fedora systems, start the client after dkms startup + is finished if the latter is installed and enabled, to avoid attempting + starts without the kernel module being available yet (13674) (RT #134974). + + MacOS + + Build system updates for MacOS (13584). + + Solaris + + Add CTF debugging records to userspace objects to improve debugging + of servers (13487). + + Convert the cache manager vnodes to be non-embebbed on Solaris 11 in order + to make the cache manager more resilient across Solaris 11 changes (13524, + 13525, 13526, 13527, 13528). + + +OpenAFS 1.8.3 + + All platforms + + * Improved diagnostics and error messages (13186 13411 13417) + + * Avoid sending RX packets with random garbage in the userStatus field + (13332) + + * Fixed detection of the RX initialization status (13416) + + * Assorted fixes to avoid segmentation faults and other potential problems + by detecting internal errors rather than letting them go unnoticed + (13329 13372) + + All server platforms + + * Fixed a build problem accidentally introduced in release 1.8.2 (13328) + + * Assorted efficiency improvements in the ubik implementation (13153 13218 + 13188 13353) + + * Fixed locking around transaction list processing in volserver to avoid + segmentation faults and other potential problems (13336 13337) + + * When the volserver attempts to remove a temporary volume after a + transaction, but the volume was already removed, e.g., by the salvager, + this is no longer treated as an error (13235) + + All client platforms + + * Update the CellServDB to the latest version from grand.central.org from + May 14th 2018 (13409) + + * Avoid a panic during cache initialization when allocating the required + memory fails (13307) + + * Add back the packet counters and timestamps to "vos status" output + which had been missing since release 1.8.0 (13421) + + * Correctly handle errors encountered while reading data from the server + and writing it to the cache, e.g., due to a full cache partition (13443) + + * Avoid a panic due to a recoverable error while flushing cache items + (13503) + + Linux clients + + * Support mainline kernels 4.20 and 5.0 and distribution kernels with + backports from those (13405 13406 13440 13441 13442) + + * DKMS-related fixes in Red Hat packaging (13438 13479) + + macOS + + * Support building and packaging on macOS 10.14 "Mojave" (13412 13413) + + +OpenAFS 1.8.2 + + All platforms + + * Fix OPENAFS-SA-2018-002: information leakage in RPC output variables + Various RPC routines did not always initialize all output fields, + exposing memory contents to network attackers. The relevant RPCs include + an AFSCB_ RPC, so cache managers are affected as well as servers. + + All server platforms + + * Fix OPENAFS-SA-2018-003: denial of service due to excess resource consumption + Various RPCs were defined as allowing unbounded arrays as input, allowing + an unauthenticated attacker to cause excess memory allocation and tie up + network bandwidth by sending (or claiming to send) large input arrays. + + * Fix OPENAFS-SA-2018-001: unauthenticated volume operations via butc + On systems using the in-tree backup system, the butc process was running + with administrative credentials, but accepted incoming RPCs over + unauthenticated connections; these incoming RPCs in turn triggered + outgoing RPCs using the administrative credentials. Unauthenticated + attackers could construct volue dumps containing arbitrary contents + and cause these dumps to be restored and overwrite arbitrary volume + contents; afterward, the backup database could be restored to its + initial state, hiding evidence of the unauthorized changes. + + Running butc with -localauth now requires authenticated incoming + connections, and the backup utility makes authenticated connections to + the butc. Audit capabilities have been added to the butc RPC handlers. + Command-line arguments are provided to retain the (insecure) historical + behavior until all systems have been upgraded. + +OpenAFS 1.8.1.1 + + Linux Clients + + * Support for mainline kernel 4.18 and distribution kernels with backports + from it (13268) + +OpenAFS 1.8.1 + + All Platforms + + * Improve the usability and consistency of the public API: install missing + headers, and add additional symbols to the export list for shared libraries. + + * Improved Rx abort generation: use the proper serial number for an existing + connection if possible, and 0 otherwise (to improve debugging). + + * Assorted minor fixes in response to static analysis of the codebase. + + * Fix memory-safety error in XDR decoding of enumerated types. + + All Server Platforms + + * Fix reference counting error that could cause an assertion failure + in some workloads. + + * vldb_check -fix will no longer corrupt the vldb when multiple MH blocks are present. + + * Assorted cleanups and efficiency improvements in the ubik implementation. + + * Return a valid InlineBulkStatus response in error cases. + + * The fileserver now rejects invalid partition names when attaching partitions. + + All Client Platforms + + * Fix volume callbacks (e.g., when running 'vos release'). + + * Treat failure to obtain a DSlot as a hard error for that cache partition, + avoiding a flood of "disk cache read error in CacheItems" log messages, + and reducing the chance of subsequent panic. + + * Improve error messages for invalid values with -volume-ttl. + + * Remove useless error message: + "find_preferred_connection: no connection and !create". + + * Avoid passing NULL to a kernel memory deallocator, which is not guaranteed + to be safe on all systems. + + Linux + + * Add support for 64-bit ARM clients ("arm64"). + + * Fix panic when cache bypass is enabled. + + * Improve cache manager behavior when unable to open cache files. + + * Improvements to the RPM packaging. + + * Detect out-of-memory when using kernel pages for writing. + + Solaris + + * Fix various issues in the build process for recent Solaris versions. + + MacOS + + * Fix clients on OS X 10.13. + + FreeBSD / NetBSD / OpenBSD + + * Fix panic triggered during periodic cleanup operations and shutdown. + +OpenAFS 1.8.0 + + All Platforms + + * Substantial code quality improvements, largely spotted by Coverity and + clang's static analysis. + - Add new library for platform independent functions (opr). + - Remove arbitrary path name length limits. + - Convert to Heimdal's roken library for reliability. + - Avoid garbage in allocated buffers (calloc). + - Modernize signal handling in pthreaded server processes (softsig). + - Improve code comments and additional Doxygen style comments. + - Reduce compiler warnings, dead code, unused variables, and + undefined behavior. + - Fix bugs found by static code analyzer (clang-analyzer). + - Improved unit test coverage. + - Make VLDB flag definitions consistent. + - Improve use of run-time assertions and add static assertions. + - Add compiler attributes to assist static analyzers. + - Clean up include headers in the entire tree. + - Improve command-line handling library (libcmd). + - Replace hash functions with Jenkin's hash function for faster + and more evenly distributed lookups. + - Provide a red-black tree data structure to enable algorithmic speedups. + - Convert backup and salvage servers to the common logging API (libutil). + - Improve volume id data type consistency (VolumeId). + - Import APIs for kerberos-style profile configuration support. + - Add new APIs to support UserList identities. + - Add new APIs to support tabular output from command-line utilities. + - Convert vnode macros to inline-functions. + + * Improved support for non-DES encryption types: + - Convert to Heimdal's hcrypto library to support RFC 3961. + - Add extended key file format replacing rxkad.keytab, and + new key management APIs. + - Add support for extended key types to asetkey. + - Add akeyconvert to assist in upgrading to OpenAFS 1.8.x by converting an + existing rxkad.keytab file to an extended key file. + - Do not install the kaserver and related utilities by default to + discourage the use of these DES-dependent components. + - Remove obsolete klogin and klogin.krb programs. + - Add new token APIs to support new rx security classes. + + * Migrate from LWP to POSIX threads (pthreads): + - Convert the ptserver and vlserver from LWP to pthreads. + - Remove LWP version of the file server binary. + - Convert afsd, aklog, asetkey, klog.krb5, pts, udebug, and vos, from LWP + to pthreads. + + * Improvements to Rx: + - Restructure the Rx API to privatize the implementation. + - Convert rx events to a red-black tree data structure to improve + performance. + - Convert from mutexes to atomic operations for counters to reduce lock + contention. + - Provide per-opcode Rx statistics. + - Add an rx_opaque data type to support non-DES encryption types + and general code cleanup. + - Wake up the application thread after 'twind' is updated to avoid 100ms + transmit delays when the receive window transitions from closed to + open. + - Fix for OPENAFS-SA-2017-001: sanity-check peer transport parmeters + received in ack trailers + + * Libraries (both internal and installed) are built using libtool, including + libuafs. The resulting shared libraries for libafsrpc and libafsauthent + should be more usable than previously. + + * Improvements to the build system: + - Convert to libtool to build shared libraries. + - Clean up and improve the build system. + - Support out of tree builds. + - Add a makefile target to generate Doxygen source code documentation. + - Link the Java API for OpenAFS with libuafs.a and remove the + libjuafs.a library. + - Always build the rxperf tool. + - Fix man-page generation by make after ./regen.sh -q + - Support the SOURCE_DATE_EPOCH environment variable to improve build + reproducibility. + - Modernize language specific SWIG typemaps for libuafs Perl bindings. + - Refactor acinclude.m4 into a set of smaller m4 files (12876, 12877, 12878) + + * Improvements to documentation: + - Document the new KeyFileExt file. + - Reorganized the README files. + - Improvements and fixes to documentation generation. + - Add experimental epub and mobi support + - Remove obsolete LWP information from the file server documentation. + - Update and reorganize the Quick Start Guide. + - Update the Admin Guide. + - Remove AIX, HP-UX, and IRIX information from the Quick Start Guide. + - Document the vldb and prdb (ubik) file formats. + - Add PtLog man page. + - Corrections and clarifications to man pages. + - Add ubik threading analysis doc. + - Normalize the location of text documents in the source tree. + + * Improvements for troublshooting, debugging, and testing: + - Log more details on volume-server-to-fileserver communication errors + when possible. + - Set thread names in pthreaded servers on platforms which support + thread names. + - Add dynroot lock tracking to cmdebug + - Fix tracking of an fstrace call site in the cache manager background + process. + - Add the afsload tool to simulate multiple cache managers for file server + load testing. + - Add run-time checks for refcount imbalances in the cache manager. + - Fix missing newlines in afsd -debug output. + + * Developer tool improvements: + - Improvements and fixes for rxgen (used to generate Rx RPC bindings). + - Add tool for man page verification of command options. + - Add tool to find Unix cache manager lock identification numbers. + - Add an option for pretty build output. + + * RPM packaging updates: + - Update the spec file to keep up with accumulated changes. + - Move the klog.krb5 man page to the openafs-krb5 sub-package. + - Remove stray man pages. (12870, 12871) + - Prevent double-starting client on RHEL7 + - Convert rpm spec file from deprecated 'make dest' to 'make install'. + - Fix rpmbuild command line option default handling. + - Support older versions of rpmbuild which do not support the + rpmbuild %exclude directive. (12873) + - Move the legacy kaserver and related programs to separate sub-packages, + which are only built when rpmbuild is given the '--with kauth' option + (12600, 12872) + - Package the libuafs perl bindings (12921) + + * Add a new protection error code (PRNAMETOOLONG) instead of silently + truncating names which exceed the maximum name length (PR_MAXNAMELEN). + + * Add an implementation limit (50000) on the number of names/ids which can + be transmitted by unauthenticated clients to the ptserver, avoiding + excessive resource consumption from unauthenticated requests. + + * Add the -config option to vos, pts, and aklog to specify the path to the + cell configuration files. + + * Add more details in vos release -verbose output. + + * Add the cacheout -encrypt option to encrypt communication between the + cacheout client and the fileserver. + + * Add the command line options to the afsio program to enable encryption of + traffic between afsio and the fileserver (-clear, -crypt). + + * Add the vos release -force-reclone option to force recloning the volume to + be released without forcing a full volume dump being transmitted to all + remote sites. + + * Fix vos to avoid writing loopback addresses into the VLDB in + certain cases. + + * Print bos and pts error messages to standard error instead of + standard out. + + * Improve formatting of the -help output of all commands. + + * Change -n to -dryrun in all backup subcommands. + + * Change the backup deletedump -port command line option to -portoffset. + + * Add user and build host in the version string returned by + rxdebug -version. + + * Support recent versions of gcc (7.2.1) (12897) + + All Server Platforms + + * Ubik servers using pthreads are now available and are used by default + + * As part of improving Ubik reliability in certain edge cases, an extra + election cycle (about 60 seconds) may be needed before writes are + permitted. This is a conservative change that may be removed in + the future. + + * Avoid continually retransmitting the ubik database to remote sites when + a write transaction occurs as remote sites are attempting to rejoin the + ubik cluster. (12896) + + * Ensure the ubik database version number is updated on remote sites at the + point the database is transferred to remote sites instead of waiting for + the next ubik beacon. This avoids write transaction failures during the + window between the database transfer and the next ubik beacon (12885). + + * Remove periodic background fsync by the fileserver (ihandle fsync thread). + + * Fix potential file handle leak in the file server ihandle caching layer. + + * Disable the so-called "hot threads" feature in the file server. The hot + threads feature was intended as an optimization for dispatching incoming + calls to the current listener thread, but has been reported to incur a + performance penalty on modern multi-core systems. + + * Do not permit creation of users with id of ANONYMOUSID. + + * Do not save/restore host states in the fsstate.dat file for hosts which + are in the process of retrieving CPS information from the ptserver when + the fileserver is being shutdown. This fixes a bug in which the fileserver + will incorrectly block all threads following a restart. + + * Add the ptserver -restrict_anonymous option to inhibit exposure of user + names from the ptserver. + + * Do not truncate server log files by default when server processes + are started. The -transarc-logs option provides backward compatibility + with IBM AFS log handling on server startup. Log messages may be lost + in back-to- back restarts when a server is running in this mode. + + * Reopen server logs on SIGUSR1. This may be used by third-party log + rotation tools, such as logrotate, to reopen the log file handles after + log files have been renamed. + + * Fix various bugs when logging with -mrafslogs enabled. + + * Dynamically reload the kerberos realm to AFS cell mapping (krb.conf) and + exclusions for mapping kerberos principals to AFS identities (krb.excl) + configuration when the CellServDB cell configuration file is touched. + Previously, a restart of the file server was required after updating the + kerberos mapping configuration files. + + * Add a command line option (-restricted_query) to the vlserver and + volserver to restrict information queries about volumes to a specific + group of users. + + * Add a command line option to the server programs to specify an alternate + fully qualified log file name (-logfile). + + * Add a command line option (-config) to the server programs to specify + an alternate path to the server configuration. + + * Add a command line option to the ptserver and vlserver to specify an + alternate path to the database data files. + + * Add a command line option to the volume server to enable encryption of + volume-server-to-volume-server-traffic (-s2scrypt). + + * Increase the maximum number of LWP threads allowed for the ptserver and + vlserver from 16 to 64 (-lwp). + + * Remove an unused file server command line option (-k). + + * Fix an incorrect assertion in Demand Attach File Server which could cause + the file server process to abort in certain rare conditions. + + * Deprecate the -bitmap-later configure option for non-Demand-Attach File + Servers (DAFS). + + * Add -vhashsize support to non-Demand-Attach File Servers (DAFS). + + * Add support for subnet ranges in the NetInfo and NetRestrict + configuration files. + + * Add the GetXStats RPC to the audit log. + + * Fix directory creation by bosserver when built for non-Transarc paths. + + * Fix incomplete list of server addresses retreived by vos listaddr when the + vldb contains unreferenced multi-homed server entries. + + * Remove obsolete bos blockscanner and unblockscanner commands that + were only needed for the removed MR-AFS functionality. + + * Remove obsolete bos salvage options that were only used by the + removed MR-AFS functionality.. + + * Remove calls to the deprecated sbrk() function. + + * Add an experimental feature to database servers to support ubik reads + while write transactions are in progress, enabled at build time with the + --enable-ubik-read-while-write configure option. This feature is not + considered ready for production usage at this time. + + * Avoid filling the FileLog with "Volume x offline: not in service" when + a volume is administratively taken offline with vos offline. + + * Print an error message when bosserver is started with an unknown + command line option. + + * Modify the volume updateDate when the volume is changed by a salvage. + + * Volume usage statistics are now preserved during reclone and restore + operations by default, the behavior previously enabled by + the -preserve-vol-stats flag to the volserver. The historical behavior + can be retained via the -clear-vol-stats argument. + + All Client Platforms + + * Use rxkad_crypt by default for connections to fileservers. This matches + the existing behavior of the Windows client and has been applied by + the distribution packaging on many platforms already. + + * Add support for relative ACL changes with fs setacl. If a single plus (+) + or minus (-) character is appended to the rights' letters argument, the + new rights are computed relatively to the existing ones. + + * Remove afsd -settime and afsd -nosettime support. + + * Add the afsd -inumcalc option to specify the method used to calculate + inode numbers presented by AFS. + + * Add the afsd -volume-ttl option to specify set the maximum amount of time + information retrieved from the vlserver will be cached, regardless of + callback expiry times. + + * Return EIO on internal errors instead of the misleading ENOENT. + + * Log ICMP errors received, if any, for unreachable servers. + + * Improve performance of clients with multiple PAGs for different cells. + + * Fix race condition between changing and using user tokens among cache + manager threads. + + * Fix fs sysname for users with UID 2748 and 2750 when not running + in -rmtsys mode. + + * Add Perl bindings for the user-space cache manager library (libuafs). + + * Fixes to the bypasscache feature. + + * Fix fs getcacheparms miscounts. + + * Remove the obsolete Netscape plugin. + + * Fix building gtx when ncurses is linked against libtinfo. + + * Update to the GCO CellServDB update from 14 March 2017. + + Linux + + * Remove Linux 2.2 and 2.4 support. + + * Changes to avoid EIO errors with multiple processes doing intensive mmap + writing. (Drop PageReclaim AOP_WRITEPAGE_ACTIVATE.) + + * Prevent fakestat data inconsistencies in certain cases (131855). + + * Fix dentry leak which can cause a crash on shutdown. + + * Fix improper use of ENOENT and avoid incorrect use of linux negative + dentry cache. + + * Use a more correct (less aggressive) scheme to react to downward + pressure on cache usage, avoiding d_invalidate(), which can cause + getcwd() failures on RHEL 7.4. + + * Apply a workaround to be compatible with RHEL 7.5's KABI preservation + strategy for reading directories. + + * Improve error reporting when encountering corrupt directories. + + * Improve rx error handling in the Linux cache manager. + + * Rename kpasswd to kapasswd when packaging RPMs to avoid colliding with + Kerberos kpasswd. + + * Do not use the obsolete --enable-largefile-fileservers configure option + when packaging RPMs. + + * In Red Hat packaging, use a separate rpm for kmod debuginfo, + removing a needless tight version dependency on the userspace package. + (12822, 12875) + + * Use the RemainAfterExit systemd feature to avoid premature exit + when -afsdb is not given, for RPM packages. + + * Remove Debian packaging files from the OpenAFS source tree. Debian + packaging files are currently maintained in the downstream Debian + infrastructure. + + * Add the sparc_linux26 sysname. + + * Desupport 32-bit Linux kernels on s390/s390x. + + * Fix Debian/Ubuntu build regression on kernel 3.16.39. + + * Fix --enable-kernel-debug for linux 4.8+. + + * Fix a hang encountered when accessing a previously removed + directory entry (12811). + + * Support linux 4.10, 4.11, 4.12, 4.13, 4.14, 4.15 + + Solaris + + * Remove support for all Solaris and SunOS platforms prior to Solaris 8. + + * Build 64-bit binaries for Solaris x86 by default. + + * Use one-group PAGs on Solaris 11, which is required for PAG support + on Solaris 11 since supplemental groups must be sorted starting with + Solaris 11.1. + + * Update search paths for solaris cc for recent versions Solaris Studio. + + * Modernize declaration of module dependences by converting from the + deprecated _depends_on symbol to ELF dependencies. + + * Avoid BAD TRAP panic due to invalid opcodes on x86 with Studio 12.5. + + * Add ctf debug records to Solaris kernel modules when debug builds + are enabled and the ctf tools are present (ctfconvert/ctfmerge). + + * Save kernel module function arguments on x86 for debugging purposes. + + MacOS + + * Stop processing upcalls once rx shutdown starts. + + * Enable atomics for the darwin kernel. + + * Add a syscall to enable/disable bulkstat at run-time, which is + disabled by default. + + * Fix path to binaries in the prefpane. + + * Fix builds on MacOS 10.12 by building only the active architecture + by default. + + * Support versions up through 10.13 (High Sierra) and APFS + + FreeBSD + + * Use the native kernel module build system instead of an ad hoc + replacement build system. + + * Remove FreeBSD packaging files from the OpenAFS source tree. FreeBSD + packaging files are currently maintained in the downstream FreeBSD Ports + Collection. + + * Stay up to date with new FreeBSD releases (through 10.3). + + * Do not claim AFS_VM_RDWR_ENV + + * Add sysnames and files for i386 and amd64 10.4, 11.1, and 12.0 + (12-CURRENT, at present). (12887, 12888) + + * Remove trailing semicolons to fix the build on FreeBSD (12899) + + NetBSD + + * Stay up to date with new NetBSD releases (through 7.x) + + * Update to use cprng(9) as the randomness source on NetBSD 6.99/7.x. + + * Build system updates for NetBDS 6.99.x + + * Do not claim AFS_VM_RDWR_ENV + + OpenBSD + + * Stay up to date with new OpenBSD releases (through 4.7) + + * Do not claim AFS_VM_RDWR_ENV + + AIX + + * Updates for AIX support. + + * Fix build system for AIX exports. + + * Add the uidpag and localuid runtime options to the aklog LAM plugin. + (These runtime options override the use of UID-based PAGs, which were + introduced to appease the CDE screensaver.) + +OpenAFS 1.6.21 + + All platforms + + * Avoid a possible 100ms transmit delay in the RX protocol when a peer's + receive window transitions from closed to open (12627) + + * Documentation improvements (12476 12477 12559[RT #133339]) + + All server platforms + + * When bosserver is started with an unknown option, print an error message + and exit with a non-zero value rather than failing silently (12631) + + All DB server platforms + + * Hold the DB lock while checking for an aborted write transaction (12516) + + All file server platforms + + * On demand attach fileservers, don't save or restore a client's host + state if CPS ("Current Protection Subdomain") recalculation for it is + in progress, to avoid fileserver thread exhaustion (12568) + + * On demand attach fileservers, avoid flooding the log with error messages, + which could happen when the fileserver was restarted while a volume was + offline (12569) + + * Update a volume's "Last Update" time when its content is modified by + the salvager, to make the change visible in the output of "vos examine" + and to backup services (12633) + + All client platforms + + * Corrected the DCentries bucket counts for very large and zero length + files in the output of "fs getcacheparms -excessive" (12604 12605) + + * Fixed a bug that prevented users with GID 2748 and 2750 from executing + the "fs sysname" command on clients running afsd with -rmtsys (12607) + + * Provide a new -inumcalc switch for afsd to allow enabling the alternative + MD5 method of inode number calculation, which was previously only + possible on Linux and through the sysctl interface (12608 12632) + + Linux clients + + * Support for mainline kernel 4.12 and distribution kernels with backports + from it (12624 12626) + + * Re-added the improved algorithm for freeing unused vcaches to reduce + memory consumption first introduced with the 1.6.18 release, together + with a fix for the issue leading to its removal in 1.6.18.2 (12448..12451) + + macOS clients + + * Fixed a crash while stopping the client on macOS 10.12 "Sierra" (12602) + + +OpenAFS 1.6.20.2 + + All platforms + + * Build fixes required by recent compilers or platforms (12514 12521 12534 + 12536 12538) + + * Allow the bos server to start successfully in the presence of those, by + accepting a now checked return value indicating that the client ThisCell + and CellServDB already exist (12522) + + Linux clients + + * Support for mainline kernels 4.10 and - most likely - 4.11 and + distribution kernels with backports from them (12530 12588..12590 12598) + + * Support for distribution kernels with partial backports from 4.9 (12535) + (RT #134158) + + * In Red Hat packaging, moved the klog.krb5 manual page into the krb5 + subpackage (12511) + + * In Red Hat packaging, prevent systemd from double-starting the client + (12587) + + * Allow aklog to function on current S390/S390x (12499) + + Solaris clients + + * Make process authentication groups work on Solaris 11, now using a single + group ID (12524..12527) + + * Fix a BAD TRAP panic on Solaris 11 clients built with Studio 12.5 (12567) + + macOS clients + + * Fixed the preference pane for OS X 10.11 and later (12512) + +OpenAFS 1.6.20.1 + + All platforms + + * Build fixes required by recent compilers (12482..12484) + + Linux clients + + * Support for mainline kernel 4.9 and distribution kernels with + backports from it (12478..12480) + + * In Red Hat packaging, make systemd deal correctly with the client + when no userland processes remain after starting it (12481) + (RT #133482) + + macOS + + * Support for release 10.12 "Sierra" (12431 12432) + + * Avoid a crash in the Mounts tab of the OpenAFS preference pane (12447) + +OpenAFS 1.6.20 (Security Release) + + All platforms + + * Fix for OPENAFS-SA-2016-003: file and directory names leak due to + reuse of directory objects without zeroing the contents + (12461 12462 12463 12464 12465) + +OpenAFS 1.6.19 + + All platforms + + * Documentation improvements (12304) + * Fixes for test failures (12396 12415) + + All DB server platforms + + * Avoid potentially writing to an out of date volume location or protection + database, or losing a database write, which could happen in rare cases + under special conditions during database leader election + (12339 12389) + + Solaris clients + + * Allow the fsinfo::: DTrace provider to work with AFS files (12371) + + Linux clients + + * Don't commit more data to a file than was actually copied during writes, + which could happen on architectures with a page size > 4 KiB (12413) + * Fixed build on PPC64 with GCC 6.1 (12388) (RT #133407) + * Fixed build on x86_64 with recent GCC (12365 12366) + + +OpenAFS 1.6.18.3 + + Linux clients + + * Support for mainline kernel 4.7 and distribution kernels with + backports from it (12348) + + Solaris clients + + * Fixed memory mapped I/O on files >= 4 GiB (12349 12350) + + Note that there is a suspicion that this might break the client + on very old Solaris releases (2.6). If it does, the breakage should + occur at build time. + + OS X + + * Added tooling to build a package for OS X 10.10 "Yosemite" and + 10.11 "El Capitan" (12335 12351) + + +OpenAFS 1.6.18.2 + + Linux clients + + * Support for mainline kernel 4.6 and distribution kernels with + backports from it (12332) + + * Switch back to the pre-1.6.18 algorithm for freeing unused vcaches. + While the new algorithm is still believed to be correct, it turned + out that at least on some kernels, including 4.5 and 4.6, the dentry + for the current working directory may be erroneously invalidated. + This could lead to errors like "Unable to read current working directory" + when a directory wasn't accessed for a few minutes. (12323) + + * Use a secure URL to retrieve the CellServDB in the script to create + the Red Hat source package (12330) + + FreeBSD + + * Added sysname IDs for 10.2 and 10.3 to fix the build on those platforms + (12322) + + +OpenAFS 1.6.18.1 + + Linux clients + + * Support for mainline kernel 4.5 and distribution kernels with + backports from it (12300..12302) + + +OpenAFS 1.6.18 + + All platforms + + * Documentation improvements (12224 11675 11613 12197) + + * Improved diagnostics and error messages (12129 12207 12185 12211 12113 + 12215 12216) + + * Check that CellServDB entries are valid IPv4 addresses, to avoid + occasional hangs or potentially other erratic behaviour due to invalid + entries (12210) (RT #131794) + + All client platforms + + * Gracefully handle cases where a client shutdown sequence is initiated + while the client is already shutting down, rather than cause a panic + (12179) + + * Fixed several bugs that could cause erratic behaviour when the write + offset into a file was more than 2 GiB beyond the file's current end + on the server (12213 12214) + + All server platforms + + * Avoid a possible volserver crash during volume dump or restore due + to invalid ACL entries (12127) + + * Allow recovering from a DAFS fileserver operation which allocates a + new vnode but fails to update the vnode index, rather than crashing the + server (12209) + + * Fixed a longstanding bug which could damage the volume location database + when "vos changeaddr" was run with "-oldaddr" and "-newaddr" and the + old address was present in a multi-homed entry (12089) + + FreeBSD + + * Added support for releases 10.2 and 10.3 (12232) + + Linux clients + + * Support for mainline kernel 4.4 and distribution kernels with + backports from it, alas at a performance penalty (12226 12227 12228) + (RT #132677 #132819) + + * Avoid using excessive amounts of kernel memory for dynamically + allocated vcaches, by improving the algorithm to free unused ones + (12256 12257) + + * In Red Hat packaging, make the init script use "ip" if available, with + "ifconfig" as a fallback (12193) + + OS X + + * Basic support for release 10.11 "El Capitan" (12212) + + IRIX clients + + * Fixed kernel module builds with optimization (12198) (RT #131261) + + +OpenAFS 1.6.17 (Security Release) + + All server platforms + + * Fix for OPENAFS-SA-2016-001: foreign users can create groups as + if they were an administrator (RT #132822) (CVE-2016-2860) + + All client platforms + + * Fix for OPENAFS-SA-2016-002: information leakage from sending + uninitialized memory over the network. Multiple call sites + were vulnerable, with potential for leaking both kernel and + userland stack data (RT #132847) + + * Update to the GCO CellServDB update from 01 January 2016 (12188) + + Linux clients + + * Fix a crash when the root volume is not found and dynroot is not + in use, a regression introduced in 1.6.14.1 (12166) + + * Avoid introducing a dependency on the kernel-devel package corresponding + to the currently running system while building the srpm (12195) + + * Create systemd unit files with mode 0644 instead of 0755 + (12196) (RT #132662) + +OpenAFS 1.6.16 + + All platforms + + * Documentation improvements (11932 12096 12100 12112 12120) + + * Improved diagnostics and error messages (11586 11587) + + * Distribute the contributor code of conduct with the stable release (12056) + + All server platforms + + * Create PID files in the right location when bosserver is started with + the "-pidfiles" argument and transarc paths are not being used (12086) + + * Several fixes regarding volume dump creation and restore (11433 11553 + 11825 11826 12082) + + * Avoid a reported bosserver crash, and potentially others, by replacing + fixed size buffers with dynamically allocated ones in some user handling + functions (11436) (RT #130719) + + * Obey the "-toname" parameter in "vos clone" operations (11434) + + * Avoid writing a loopback address into the server CellServDB - search + for a non-loopback one, and fail if none is found (12083 12105) + + * Rebuild the vldb free list with "vldb_check -fix" (12084) + + * Fixed and improved the "check_sysid" utility (12090) + + * Fixed and improved the "prdb_check" utility (12101..04) + + All client platforms + + * Avoid a potential denial of service issue, by fixing a bug in pioctl + logic that allowed a local user to overrun a kernel buffer with a single + NUL byte (commit 2ef86372) (RT #132256) (CVE-2015-8312) + + * Refuse to change multi-homed server entries with "vos changeaddr", + unless "-force" is given, to avoid corruption of those entries (12087) + + * Provide a new vos subcommand "remaddrs" for removing server entries, to + replace the slightly confusing "vos changeaddr -remove" (12092 12094) + + * Make "fs flushall" actually invalidate all cached data (11894) + + * Prevent spurious call aborts due to erroneous idle timeouts (11594) + + * Provide a "--disable-gtx" configure switch to avoid building and + installing libgtx and its header files as well as the depending + "scout" and "afsmonitor" applications (12095) + + * Fixed building the gtx applications against newer ncurses (12125) + + * Allow pioctls to work in environments where the syscall emulation + pseudo file is created in a read-only pseudo filesystem, like in + containers under recent versions of docker (12124) + + Linux clients + + * In Red Hat packaging, avoid following a symbolic link when writing + the client CellServDB, which could overwrite the server CellServDB, + by removing an existing symlink before writing the file (12081) + + * In Red Hat packaging, avoid a conflict of openafs-debuginfo with + krb5-debuginfo by excluding our kpasswd executable from debuginfo + processing (12128) (RT #131771) + +OpenAFS 1.6.15 (Security Release) + + All client and server platforms + + * Fix for OPENAFS-SA-2015-007 "Tattletale" + + When constructing an Rx acknowledgment (ACK) packet, Andrew-derived + Rx implementations do not initialize three octets of data that are + padding in the C language structure and were inadvertently included + in the wire protocol (CVE-2015-7762). Additionally, OpenAFS Rx in + versions 1.5.75 through 1.5.78, 1.6.0 through 1.6.14, and 1.7.0 + through 1.7.32 include a variable-length padding at the end of the + ACK packet, in an attempt to detect the path MTU, but only four octets + of the additional padding are initialized (CVE-2015-7763). + +OpenAFS 1.6.14.1 + + Linux clients + + * Support kernels up to 4.2 + + Due to changes to internal data structures with this kernel release, + the OpenAFS client can no longer reset the link count during path + lookups. Since volume root directories must behave like symlinks + instead of normal directories in order to satisfy Linux kernel + invariants, looking up paths containing more than 40 mount points + will fail with ELOOP on such kernels. + +OpenAFS 1.6.14 + + All server platforms + + * Prior to the OpenAFS security release 1.6.13, the Volume Location + Server (vlserver) RPC VL_ListAttributesN2() supported wildcard volume + name lookups via regular expression (regex) pattern matching. This + support was completely disabled in 1.6.13 because it was judged to be + a security risk due to buffer overruns in the implementation, as well + as the possibility of denial of service attacks where certain regular + expressions could cause excessive CPU usage in some regex + implementations. + + Unfortunately, after 1.6.13 was released, it was discovered that + the native OpenAFS 'backup' system uses the VL_ListAttributesN2() + regex support to evaluate configured volume sets. If you use the + OpenAFS 'backup' system (or another backup system which relies on it, + such as Tivoli Storage Manager (TSM, aka Tivoli ADSM)), and are using + volume sets which require regular expressions for the volume name, + then those volume sets cannot be resolved by OpenAFS 1.6.13. The next + paragraph provides details on how to identify any affected volume sets. + + OpenAFS backup volume sets may be described by fileserver, partition + name, and volume name. The fileserver and partition specifications + never require regular expression support. The volume name specification + always requires regular expression support except for when specifying + _all_ volumes via two special cases: the universal wildcard ".*", or "". + For example, volume name "proj" or "*.backup" or "homevol.*" all + require regex support - even if the specification contains no wildcard + characters and/or exactly matches an existing volume name. + + As a result of this issue, OpenAFS 1.6.14 replaces the 1.6.13 changes + to VL_ListAttributesN2. 1.6.14 prevents the buffer overruns and + reenables the regex support, but restricts it to OpenAFS super-users + and -localauth only. This is sufficient to restore the OpenAFS 'backup' + system's ability to work correctly with any previously supported volume + set. The OpenAFS 'backup' commands are already documented to require + super-user authorization, so this restriction is moot for the backup + system. + + There are no other direct consumers of the VL_ListAttributesN2() regex + support in the OpenAFS tree. However, the VL_ListAttributesN2 RPC is + publicly accessible and might be used by third party tools directly or + indirectly via OpenAFS's libadmin. Any such tools that issue + VL_ListAttributesN2 RPCs must now be executed using super-user or + -localauth tokens. + + None of the other security fixes in OpenAFS 1.6.13 are known to have + any issues, and are still included unchanged in OpenAFS 1.6.14. + + If there are any questions concerning the possible impact of OpenAFS + 1.6.13 or 1.6.14 at your site, please contact your OpenAFS support + provider or the openafs-info@openafs.org mailing list for further + assistance. + +OpenAFS 1.6.13 + + All server platforms + + * Fix for CVE-2015-3282: vos leaks stack data onto the wire in the + clear when creating vldb entries + + * Workaround for CVE-2015-3283: bos commands can be spoofed, including + some which alter server state + + * Disabled searching the VLDB by volume name regular expression to avoid + possible buffer overruns in the volume location server + + All client platforms + + * Fix for CVE-2015-3284: pioctls leak kernel memory + + * Fix for CVE-2015-3285: kernel pioctl support for OSD command passing + can trigger a panic + + Solaris clients + + * Fix for CVE-2015-3286: Solaris grouplist modifications for PAGs can + panic or overwrite memory + +OpenAFS 1.6.12 + + All server platforms + + * Avoid database corruption if a database server is shut down and then + brought up again quickly with an altered database (11773 11774) + (RT #131997) + + All client platforms + + * Fixed a potential buffer overflow in aklog (11808) + + * Avoid a bogus warning regarding the checkserver daemon, which could be + logged during startup when the cache initialization was very fast (11680) + + * Added documentation of the inaccuracy of the 'partition' field in + 'fs listquota' output for partitions larger than 2 TiB (11626) + + Linux clients + + * Support kernels up to 4.1 (11872 11873) + + * Avoid spurious EIO errors when writing large chunks of data to + mmapped files (11877) + + OS X + + * Build fixes required at least on OS X 10.10 Yosemite with the latest + XCode (11859 11876 11842..11845 11863 11878 11879) + +OpenAFS 1.6.11.1 + + Linux clients + + * Support kernels up to 4.0 (11760 11761) + + FreeBSD clients + + * Fixed kernel module build on systems with an updated clang which no + longer accepts the -mno-align-long-strings as a no-op (11809) + +OpenAFS 1.6.11 + + All platforms + + * Allow aklog to succeed creating native K5 tokens even when mapping + the K5 principal to a K4 one fails (11538) + + * Build fixes (11435 11636) + + All client platforms + + * Avoid a potential kernel panic due to connection reference overcounts + (11645) (RT #131885) + + * Avoid potential corruption of files written using memory mapped I/O + when the file is larger than the cache (11656) (RT #131976) + + Linux clients + + * Support kernels at least up to 3.19 (11549 11550 11569 11570 11595 + 11658..11662 11694 11752) + + Note: By default this excludes kernels 3.17 to 3.17.2, which will leak + an inode reference when an error occurs in d_splice_alias(). The + module will build and work, but leak kernel memory, leading to + performance degradation and eventually system failure due to + memory exhaustion. Since it's impossible to detect this condition + automatically, the switch --enable-linux-d_splice_alias-extra-iput + must be passed to configure when building the module for those + kernels. The same would be necessary for any kernel with backports + of commit 908790fa3b779d37365e6b28e3aa0f6e833020c3 or commit + 95ad5c291313b66a98a44dc92b57e0b37c1dd589 but not the fix in commit + 51486b900ee92856b977eacfc5bfbe6565028070 in the linux-stable repo + (git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git) or + the corresponding changes on other branches. + + * Fixed a regression introduced in OpenAFS release 1.6.10 which could + make the spurious "getcwd: cannot access parent directories" problem + return (11558 11568) (RT #131780) + + * Avoid leaking memory when scanning a corrupt directory (11707) + + OS X clients + + * Support OS X 10.10 "Yosemite" (11571 11572 11611) (RT #131946) + + Solaris clients + + * Avoid reading random data rather than correct cache content when using + ZFS as the cache file system on Solaris >= 11, and fix potential similar + problems on other platforms (11713 11714) + + FreeBSD + + * Build fix for releases >= 11.0 (11610) + + OpenBSD + + * Support release 5.4 (11700) + + +OpenAFS 1.6.10 + + All platforms + + * Don't hide the "version" subcommand in help output (11214) + + * Documentation improvements (11126 11216 11222 11223 11225 11226) + + * Improved diagnostics and error messages (11154 11246 11247 11249 11181 + 11182 11183) + + * Build system improvements (11158 11221 11224 11225 11227..11241 11282 + 11342 11350 11353 11242 11367 11392) + + * Avoid potentially erratic behaviour under certain error conditions by + either avoiding or at least not ignoring them, in various places (11008 + 11010..11065 11112 11148 11196 11530) + + FreeBSD + + * Support releases 9.3 and 10.1 (11368 11369 11402 11403 11404) + + * Makes a disk cache more likely to work on FreeBSD, though such + configurations remain not very tested (11448) + + All server platforms + + * Added volscan(8) (11252..11280 11387 11388) + + * Fixed a bug causing subgroups not to function correctly if their + ptdb entry had more than one continuation entry (11352) + + * Logging improvements (10946 11153) + + * Allow log rotation via copy and truncate (11193) + + * Avoid a server crash during startup only observed on a single platform + and when using a 3rd party library under certain circumstances, which is + a collateral effect of the security improvements introduced in OpenAFS + release 1.6.5 (11075) (RT #131852) + + All client platforms + + * Raised the free space reported for /afs to the maximum possible value of + just under 2 TiB - the old value was 9 GiB on most platforms (10984) + + * Reduced the amount of stack space used (11162 11163 11203 11164..11167 + 11338 11339 11364..11366 11381) + + * Sped up a periodic client task which could be problematically slow + on systems with a large number of PAGs and files in use (11307) + + * Fixed failure of the up command with large ACLs (11111) + + * Avoid a potential crash of aklog (11218) + + * Avoid potential crashes of scout and xstat_fs_test (11155) + + Linux clients + + * Support kernels up to 3.16 (11308 11309) + + * Fixed a regression introduced in OpenAFS release 1.6.6 that made + checking for existing write locks incorrectly fail on readonly volumes + (11361) + + * Fixed a regression introduced in OpenAFS release 1.6.8 that could + cause VFS cache inconsistencies when a previously-accessed directory + entry was removed and recreated with the same name but pointing to a + different file on another client (11358) + + * Use the right path to depmod in Red Hat packaging to avoid dependency + calculation incorrectly failing unless a link /sbin -> /usr/sbin is + present on the system performing it (11171) (RT #131860) + + * Do not ignore kernel module build errors (11205) + +OpenAFS 1.6.9 + + All server platforms + + * Fix for OPENAFS-SA-2014-002 + +OpenAFS 1.6.8 + + All platforms + + * Documentation improvements (10751 10875 10931 10897 10883 10954 10955) + + * Improved diagnostics and error messages (10756 10814 10949) + + * Fixed a bug in RX that could make errors during packet reception go + unnoticed. (10733) + + * Fixed a bug that made "vos size -dump" display the wrong size for + large volumes. (10933) (RT #131819) + + All server platforms + + * Change the default fileserver sync behavior from "delayed" to "onclose". + This means that explicit syncing only happens when a volume is detached. + (10809) + + * Added the -offline-timeout and -offline-shutdown-timeout options to the + fileserver, to implement interrupting clients accessing volumes we are + trying to take offline. (6266 10799) + + All client platforms + + * When a client is shut down, it will give up its callbacks. The Windows + client has been doing this since 2007. Note that older fileservers + (1.3.50 to 1.4.5 and 1.5.0 to 1.5.27) had a bug in the implementation of + the relevant RPC that could cause crashes or other undefined behavior + when this happens. (6272 8840 10855) + + * Restored the pre-1.6 behavior of "vos e" being an alias for "vos examine". + (10886) + + * Avoid flooding logs with warnings about byte-range locks, by throttling + them per file. Also, make the messages more useful by including the + FID. (10836..10839) + + * Avoid a possible panic during shutdown while tracing. (10932) + + Linux clients + + * Fixed a bug that could cause the "getcwd: cannot access parent + directories" problem (10804 10984) + + * Avoid a delay when accessing uncached data in AFS in a confined + context under SELinux. (10598) + + * Red Hat packaging improvements (10600 10767 10807) + +OpenAFS 1.6.7 + + All server platforms + + * Fix for OPENAFS-SA-2014-001 + + * Fix for a potential DOS attack against RX servers + +OpenAFS 1.6.6 + + All platforms + + * As of this release, OpenAFS no longer ships uncompressed source tarballs. + Tarballs are still shipped with both compression formats, gzip and bzip2. + (10131) + + * Documentation improvements (10136 10314 10601) + + * Improved diagnostics and error messages (9412 10085 10274) + + * Avoid redefining "assert" in our public header files, which could + cause failures when building some applications using them. (10096) + + * Fixes for parallel builds (10005 10309 10337) + + * Added a -s switch to afscp (not installed by default) to help simulate + a slow client. (9416 9417) + + * Added a -probe switch to vlclient test program (not installed by default) + to ping all vlservers in a cell in parallel. (9570) + + All server platforms + * The fileserver now ignores any vice partitions with a NeverAttach flag + file present in the root directory. (RT #130561) (9470 9471) + + * Restrict forcing CPS ("Current Protection Subdomain") recalculation in + the fileserver to administrators. Also fixed a bug that could cause this + operation to be incomplete. (9485 9487) + + * Allow non-DAFS fileservers to attach unusable volumes, restoring pre-1.6 + behaviour. (RT #131505) (9499) + + * Restored the pre-1.6 behaviour when running vos examine for a volume + currently in a transaction, showing the volume as busy again rather than + offline. (9685 9915 9916) + + * Reduced the minimum time a bos salvage takes from 5 seconds to 1. (9476) + + * Fixed buserver to not segfault when started with the -servers option. + (RT #131706) (10166) + + * Salvager fixes, addressing a wide variety of possible problems from + unnecessary salvaging to aborts (9282 9283 9457 9458 9459 9461 9462 9480 + 9481 10165 10167) + + * Fixed a bug that could cause saved state information to be discarded + when restarting a large or busy fileserver, which negatively impacted + performance. (9683) + + * Fixed a bug that could have caused undefined behaviour in the vlserver + in rare cases when a fileserver registered its addresses in the VLDB. + (9429) + + * Added the -preserve-vol-stats switch to volserver, allowing it to keep + the access statistics across volume restore and reclone operations + instead of resetting them. (9477) + + * Inserted an exponential delay between retries when bosserver attempts to + restart a server process. (9571 10199) + + * Improved vldb_check (not installed by default) to cope with broken + vlentry names and volids, and provide more output to aid debugging. + (10268) + + * Releasing a volume after adding a new RO site no longer touches any of + the existing RO sites, if the RW data hasn't changed since the last + release. (10174) + + * Make the copyDate field for RO clones have the same meaning as for + remote RO volumes. Previously, the copyDate field for clones was updated + every time we released. (9451) + + * Fixed potentially undefined behaviour in ptserver when too many pts + ids are allocated. (10124) + + * Note that the server side NAT pings feature present in the prereleases + was removed before the final release, since no positive feedback + was provided during prerelease testing. (9420 10135) + + Linux servers + + * Start bosserver with -nofork in the systemd unit file, to allow systemd + to track its state (10093) + + All client platforms + + * No longer track file locks on read-only volumes. Write locks can't + succeed, read locks always will. Avoids log messages about this kind + of lock. (8910) + + * Added the "fs flushall" subcommand, which makes the client discard all + cached data. This was previously available on Windows only. (9065 9388 + 9389 9390) + + * Fixed a bug that could make the client incorrectly believe its cache + is up to date. This change could negatively impact AFS <-> DFS + translators, should those still be running anywhere. (8898) + + * Several changes to avoid panicing in certain error conditions. + (9131 9287 10354 10355 10356 10357) (partially addressing RT #131747) + + * Added the -rxmaxfrags switch to afsd, allowing to limit the number + of UDP fragments sent or received per RX packet. (9430) + + * Build fixes for aklog on several platforms (RT #131716) (9917 10107 10275) + + * Require that the AFS mountpoint specified in the cacheinfo file is + an absolute path. Relative paths result in a client that basically + works but is not fully functional. (10253) + + * Fixed a bug that could cause one of the afsd threads to enter an infinite + loop (10431 .. 10436) + + Linux clients + + * Support Linux kernels up to 3.13 (10241) + + * Fixed a bug that made readv/writev calls in AFS space fail with Linux + kernels where generic_file_aio_read exists but those operations have + not been switched to using aio_read/aio_write. This was a regression + introduced with release 1.6.3 and affected at least RHEL 5.9 kernels. + (10248) + + * Fixed a similar bug making core dumps fail in AFS space, affecting + a much wider range of kernels including the most recent ones. + (RT #131729) (10254) + + * Enhanced the keyring code to make PAGs work correctly on kernels with a + distribution specific change to the Linux keyring code. This affected at + least SLES 11 SP3 kernels. (10252) + + * Fixed a bug that could make failures during PAG instantiation go + unnoticed. (10255) + + * Fixed a bug that made compilation fail for Linux kernels without + keyring support. This affected at least the SLE 10 SDK and an + OEM version of SLES 11 SP1. (10325) + + * Fixed build for kernels with user namespace support enabled. Likely + to be required for Ubuntu 14.04 and eventually other distributions. + (10456 10457 10458 10518 10472) + + * Support RHEL 6.5 kernels, and possibly others with changes backported + from recent mainline kernels that touch getname/putname, by no longer + using those functions. Previously, the client could cause a kernel + panic when syscall auditing was enabled. (10578) + + * Make tmpfs usable as the cache filesystem again. This had been broken + since kernel 3.1 (9950 10193) + + * When starting the client fails, clean up the backing device information + created in sysfs, to avoid error messages during a subsequent start + and possible system instability later on (10454) + + * Update Red Hat packaging to support Fedora >= 20, RHEL >= 7 and + ELrepo kernels (10597 10619 10622 10703 10704) + + OS X Clients + + * Support OS X 10.9 "Mavericks" (10519 10541 10542 10543 10548 10549) + + AIX clients + + * Fixed a bug that caused the 1.6 AIX client to never receive any RX + packets in the kernel. (RT #131725) + + FUSE client + + * Support Solaris 11 (9454 9455) + + * Allow other users to access filesystems mounted by root. (9452) + + FreeBSD + + * Build tvolser and dvolser on this platform (10122) + * Several fixes to catch up with newer releases (10374 .. 10381) + + NetBSD + + * Build tsalvaged, tvolser and dvolser on this platform (10121) + * Fixed build on NetBSD 5 and newer. (10138) + +OpenAFS 1.6.5 + +All platforms + + * Fixes for OpenAFS-SA-2013-0003 and OpenAFS-SA-2013-0004 + +OpenAFS 1.6.4 + +All platforms + + * Obey the jumbo/nojumbo settings for ubik servers (the DB servers) + too. In previous releases, those servers may have used jumbograms + even if they were not configured to do so. This change corrects + the actual behaviour, and will improve performance and reliability + for sites where jumbograms are problematic. It could cause a decrease + in performance for sites where jumbograms work, but those can turn + them back on manually. + + * Dozens of fixes for common coding problems like use after free, + use of possibly uninitialised memory, reading or writing past the + end of arrays and potential NULL pointer derefences. Spotted by + code analysis tools or human inspection. + + * Documentation improvements. + + * Fixes and improvements to the diagnostic or log messages printed by + vos, the fileserver and others. + + * Build fixes, making parallel builds more reliable with certain + configuration options and helping various platforms including + recent releases of IRIX, Solaris and several flavours of Linux. + + * Avoid sending a small amount of data over the wire unencrypted + under certain conditions, and emit the correct error message in + this case. + +All server platforms + + * Avoid generating duplicate IDs for readonly and backup volumes, + which could happen under certain conditions. + + * Allow the fileserver to return volume data like quota or free space, + which is available publicly elsewhere, without the additional access + check for read permissions on a volume's root directory the fileserver + performed before. + + * The fileserver now emits a log message when it ran out of memory for + callbacks. + + * Avoid several potential fileserver problems, including memory + corruption and segmentation faults, due to client bookkeeping. + + * Avoid known cases of silent data corruption due to background syncs + on the fileserver, especially during Copy on Write. + + * Make the fileserver sync behaviour runtime configurable. Up to 1.4.5, + we had synchronous syncs which were safe but really slow. Since 1.4.5, + we've had asynchronous syncs which are much faster but believed to + be the cause of rare data corruption issues, and while all known cases + of these happening are believed to be fixed in the 1.6.3 release, doubts + remain. This change allows choosing between those, and in addition allows + to turn syncs by the fileserver off altogether, thus relying on the vice + partition's backend filesystem and the operating system, or to just + execute them when a volume is detached. The default behaviour is + unchanged from releases since 1.4.5, but it's highly recommended to + consider the additional options this change provides. Future OpenAFS + releases will default to "-sync=none". + + * For dbservers, avoid a situation where misinterpreting transient + network errors causes long-term issues with achieving ubik quorum. + +All UNIX client platforms + + * Improvements to the detection of an aklog-specific krb5 configuration + file, for the purposes of turning on "weak crypto" for aklog. + + * Fixed a regression introduced in release 1.6.2 which caused the + supposedly persistent disk cache to be discarded upon client start. + (RT #131655) + +Linux clients + + * Support Linux kernels up to 3.10 + + * Fixed two bugs making it impossible to unmount a disk cache filesystem + after it has been used by the client. (RT #131613) + + * Fixed a bug that could cause an oops with kernels 3.6 and later + +OpenBSD + + * Improved support for OpenBSD 4.9 to 5.3 + +OpenAFS 1.6.3 + + This release number had to be skipped for technical reasons. + +OpenAFS 1.6.2.1 + + Linux clients + + * Support Linux kernels up to 3.8. + + * Make the init script cope with the output of ifconfig on recent Fedora. + +OpenAFS 1.6.2 + + All platforms + + * Fix buffer overflows in fileserver and ptserver. + + * Abort an rx connection when given an unknown service (Gerrit 7593). + + * "idle dead" behavior improvements. + + * Documentation updates. + + All server platforms + + * Fix rare file corruption during background sync (Gerrit 8796). + + * Fix corrupting clients' metadata cache during certain errors (Gerrit + 6957). + + * Avoid saying a volume doesn't exist when accessed as the volume is + going offline (Gerrit 7488). + + * Fix fileservers to properly report >2 TiB partitions. + + * Fix stale volume info from vos examine on non-DAFS filservers. + + * Fix possible volume corruption with vos convertROtoRW. + + * Fix bosserver to preserve all command-line options over restart. + + * Fix bosserver to properly kill hung processes during shutdown. + + All UNIX client platforms + + * Fixes for memcache, especially on Solaris. + + * Increase the size of the DNS resolver answer buffer to allow sites + with a long response list to use SRV and AFSDB records. + + * Fix a crash when a server appears to run out of addresses (Gerrit + 7487). + + * Fix cache corruption when reading from a file another client is + simultaneously writing to (Gerrit 7994). + + * Improve handling of disk cache disk errors. + + Linux + + * fix DKMS configuration for DKMS 2.2. + + * Avoid generating inode number 0 with md5 inodes (Gerrit 7276). + + * Fix a crash when reading /proc/fs/openafs/unixusers (Gerrit 7914). + + * Make PAG-less access use the real UID of the calling process + instead of the effective UID, when determining what credentials to + use (Gerrit 7931). + + * Fix possible abuse of fs mkmount. + Prior to 1.6.2, users could crash a client by nesting volume mounts. + + * Fix fileserver memory corruption on RHEL 6 + Prior to 1.6.2, fileservers on RHEL 6 may crash under heavy load. + + * Fix client page cache corruption on Linux + When multiple clients read and write to a file, the reading client + may see first page (4096 bytes) of a file as nulls. + + * Support Linux kernels up to 3.7. + + * Support newer glibc versions. + + * Improve client systemd unit file. + + * Update Red Hat packaging. + + OS X + + * Fix crashes on shutdown. + + * Prevent unloading the module before shutdown completes. + + * Security improvement for the OpenAFS preference pane. + + Solaris + + * Support newer versions of the Sun Studio compiler software. + + * Support compiling on newer versions of Solaris 11 and Solaris 10. + + +OpenAFS 1.6.0 (2011-08-15) + + All platforms + + * Substantial Rx updates to correct erroneous behavior. + + * vos now properly deals with matching sites when servers are + multihomed. + + * Don't stop Rx keepalives after an ackall is received, avoiding + spurious connection timeouts. (128848) + + * Don't retry Rx calls on channels returning busy errors and improve + Rx busy call channel error handling. (128671) + + * Properly enable Rx connection hard timeouts. + + * Rx NAT pings are not enabled until peer has answered. + + * Initialize rx_multi lock before use. + + * Avoid spurious crashes when initializing in "backup" client. + + * Revert UUID support in vos. + + * pt_util fixed to properly create new databases. + + * MTU discovery now properly shut down on call reset. + + * Avoid leaking references to hosts during callback break multi-Rx + operations. (129376) + + * xstat tools now cope with differing timeval structures between + endpoints. + + * Numerous fixes to command argument parsing. + + * Documentation updates. + + All server platforms + + * A file descriptor leak which could result in corrupted files in the + fileserver was fixed. An IMMEDIATE upgrade from previous 1.5 release + fileservers is recommended. + + * Fix ptserver supergroups support on 64 bit platforms. + + * Demand attach salvaging doesn't use freed volume pointers. + + * Properly hold host lock during host enumeration in fileserver. + + * Attempt to recovery more quickly from timed out volume release + transactions. + + * Auditing now properly byte order swaps IP addresses when printing. + + * vos split now has improved error handling. + + * Many changes to again support Windows fileservers. + + * During volume removal, data removal speed improved. + + * Improve CPU utilization during volume attaching by DAFS. + + * In salvager check-only mode, avoid potentially fixing a vnode. + + * Fix support for large (greater than 2gb) volume special files. + + * Salvager will not crash if multiple or bad volume link tables are + encountered. + + * Avoid erroneous full dump by remembering which sites were out of + date at the start of the release. + + * A deleted volume can now be recreated properly. + + * Callbacks are again not broken during whole partition salvages. + + * Positional vectored IO fixed for largefile (>2GB) capable systems. + + * Fileserver per-client thread usage again properly enforced. + + * Anonymous dropbox support improved and drawbacks documented. + + * Demand attach: ensure vnodes are not reallocated while in use due to + volume bitmap errors. + + * Properly support large volume numbers (larger than 2147483647). + + * Allow salvager to be run manually again when DAFS is being + used. (129458) + + * Avoid leaking references to hosts during callback break multi-Rx + operations. (129376) + + * Demand attach: unlink fileserver state file on standalone salvage. + + * Salvager tries harder to detect linktable issues. + + * Demand attach: don't attach volumes with special status set. + + * Avoid crashing on host table exhaustion. Instead, defer clients. + + Microsoft Windows + + * afs_config will not longer set the Tray Icon State in the registry + if the checkbox is not present in the dialog. (128591) + + * AFS Explorer Shell Extension now works from folder backgrounds. + Overlays for mount points and symlinks are present in the dll, but + are not registered at present by the installers. + + * Do not use RankServerInterval registry value as the value for + PerformanceTuningInterval. + + * When the data version of a mountpoint or symlink changes, the target + string in the cm_scache_t object must be cleared. + + * "fs checkservers" now includes vldb servers in the output and only + lists multi-homed servers once. A multi-homed server that has at + least one up interface is no longer considered to be down. + + * When asynchronously storing dirty data buffers to the file server + ensure that (a) the cm_scache_t object and the cm_buf_t object are + for the same File ID so that locking and signalling work properly; + and (b) if the FID no longer exists on the file server, do not + panic, just discard the buffer. + + * When processing VNOVOL, VMOVED and VOFFLINE errors perform server + comparisons by UUID or address and not simply by cm_server_t + pointer. Otherwise, server failover may not succeed. + + * Do not preserve status information for cm_scache_t objects when the + issuing server is multi-homed. + + * Giving up all callbacks when shutting down or suspending the machine + is now significantly faster due to the use of an rx_multi + implementation. (This functionality is still off by default and + must be activated by a registry value.) + + * Race conditions were possible when updating the state of the + cm_volume_t flags and when moving the volumes within the least + recently used list. + + * Ensure that the lanahelper library does not perform a NCBRESET of + each lan adapter when enumerating the current network bindings. + Correcting this permits OpenAFS to work on Windows 7 when the + network adapter settings change. + + * Fix creation of mount points and symlinks as \\AFS\xxxx + + * Icon tray state now conditionally set. (128591) + + * Properly create new cell mount points in freelance mode. + + * Avoid recursive offline volume checks. + + * Fix caching of non-existent volumes. The test to trigger an + immediate CM_ERROR_NOSUCHVOLUME in cm_UpdateVolumeLocation() was + backwards. + + * Prevent the background daemon from checking the status of + non-existent volumes. cm_CheckOfflineVolumes() should skip volume + groups with the CM_VOLUMEFLAG_NOEXIST flag set. + + * The afskfw library should return an error immediately if the + krb5_32.dll library cannot be loaded. Affects afslogon.dll and + afscreds.exe. + + * No longer depend on leashw32.dll in afskfw library. + + * NPLogonNotify must provide the user password in all calls to + KFW_AFS_get_cred(). It cannot count on a credential cache being + preserved between calls. Permits tokens to be acquired for all + cells listed in the TheseCells registry value for a domain. + + * Improve the trace logging from NPLogonNotify(). + + * Avoid a race when writing the cm_scache_t mountPointString + when acquiring mount point or symlink target data via + cm_GetData(). The race could result in bogus target + data being cached. + + * Permit the use of des-cbc-md5 and des-cbc-md4 enctypes + as DES keys in asetkey.exe. + + * aklog supports dotted Kerberos v5 principal names. + + * afskfw library always attempts afs/cell@USER-REALM + + * afskfw library must test return code from krb5_cc_start_seq_get() or + will trigger a null pointer exception when using Heimdal. + + * Lock protected fields must be 32-bit in order to avoid memory + overwrite races. + + * Add support for NTFS symlinks. + + * Handle file search requests for virtual syscall ioctl file. + + * Process SyncOps properly to enforce ordered operations. + + * Avoid recursing during NewServer operations. + + * Correct lock acquisition order during SMB locking. + + * Add shutdown message to event log. + + * Check offline volume status by policy rather than on each daemon + thread run. + + * Return error on directory object not found instead of crashing. + + * Improve error message output. + + * afslogin.dll can start afsd_service if it's not starting or started. + + * Optimize away release lock RPCs for deleted files. + + * Background Daemon will not perform operations on deleted files. + + * Resort recently used directories to the top of the LRU if the + directory is larger than the stat cache. + + * Resort deleted objects to the bottom of the LRU. + + * Use interlocked operations for state and queue fields to allow safe + bit set and clear on multiprocessor systems. + + All UNIX client platforms + + * Servers now marked down when GetCapabilities returns error. + + * In-use vcache count is now properly tracked. + + * Check for /afs existance before starting, unless -nomount is + specified. + + * Avoid a potential panic when using /afs/.:mount syntax. + + * Avoid a panic in memcache mode due to missing CellItems file. + + * FUSE client support fixed for non-/afs mounts. + + * Avoid a potential deadlock (which times out) when we need to + allocate more callback returns and must flush some already in use. + + * Deal with libcom_err conflicts with other packages using it + (e.g. krb5) (128640) + + * Fall back to afs3-vlserver SRV record values when afs3-ptserver SRV + record is not available. + + * Avoid holding unneeded locks when probing server capabilties. + + * Do not attempt page flushes for directories. + + * Rx connection reference counting is enabled. + + * An Rx connection reference count leak is fixed in bulkstat. + + * Handle unparsable directory objects. + + * Handle Kerberos cred cache errors in aklog. + + AIX + + * Fix PAG usage to track by PAG identifier, not group list. + + FreeBSD + + * Fix socket termination on shutdown. + + * Support for 7.2, 7.3, 7.4 and 8.2 included. + + * References to vcaches are no longer leaked during root or reclaim. + + * Remove support for "Giant" lock as we no longer need to use it. + + * Don't sleep with AFS GLOCK. + + * Properly enable 64 bit long long support. + + * Restore support for FreeBSD 7 (128612) + + * Fix locking issues at shutdown and avoid panic at shutdown due to + vcache flushing. + + * Support for virtual network stacks. + + * New RC script, updated packaging. + + IRIX + + * Properly create new vnodes to avoid crashing in the client. + + Linux + + * Support through kernel 2.6.39. Treat Linux 3.0 as Linux 2.6 for + sysname purposes. + + * Use rx_Readv in cache bypass to improve performance. + + * Properly handle 0-length replies during cache bypass operations. + + * Properly handle non-contiguous readpage cache bypass operations. + + * Do proper locking when transitioning to or from cache bypass. + + * Avoid extra runs of vcache freeing routine. (128756) + + * Perform vcache eviction via a fast path before visiting vcaches + where sleep is needed. + + * setpag() errors are now properly reported. + + * Avoid attempting to free stat cache entries when we are below + user-specified number of entries in use. + + * Properly track user-specified number of stat cache entries to use as + a desired usage target. + + * Don't read pages beyond EOF in the cache. (128452) + + * Various corrections and improvements to Red Hat packaging, including + modifying the init script to allow deferring for a new binary + restart and properly supporting RHEL6. + + * Fix lockup in 2.6.38 due to erroneous kernel feature configure test. + + * Improve RPM building tools. + + * Attempt to properly handle SELinux in packaging. + + * Init script properly returns status as exit code. + + * RPM packaging fixes (executable libraries, no postinstall message) + + * Kill i386 from RPM packaging. + + MacOS + + * MacOS 10.7 support. + + * Properly handle setpag errors. PAGs are not supported. + + * Check for unloaded kernel extensions when decoding AFS panics. + + * Disable "get tokens at login" in prefs pane if AD authentication + plugin is configured. + + * aklog AuthorizationPlugin now provided. + + * Preferences Pane behavior fixed for 1.6 series (version detection is + used to select default behavior). + + * A potential kernel panic during bulkstat operations is + fixed. (128511) + + * 64-bit MacOS kernel performance is greatly improved. (128934) + + * Properly shut down AFS, closing the Rx socket in the upcall handler + to avoid attempting to process data after we can no longer do so. + + * Rework logic for bulk status operations to avoid a potential hang. + + * Avoid panic when doing FSEvent synthesis. + + * Fix bug when using non-dynroot. + + * Update Kerberos support in PreferencesPane. + + NetBSD + + * Updates for platform support. + + OpenBSD + + * Bug fixes for issues introduced previously in 1.5 series. + + * Support through OpenBSD 4.8. + + Solaris + + * Switch to ioctl() syscall replacement for Solaris 11 since syscall + 65 is not safe. + + * Fix support for Solaris pre-10. + + * Corrected Solaris 11 startup script. + + * vcache mappings freed on shutdown to avoid panic. + + * Properly report errors for AFS system call callers. + + * Don't leave dangling function references if kernel extension fails + to load. + + * Try harder to avoid deadlocks on file-larger-than-cache operations. + + * Avoid panic on shutdown when mount failed. + + +OpenAFS 1.6.0pre2 + + All systems: Minor bugfixes. + + ADDITIONAL CHANGES IN 1.6.0PRE2 + + All platforms: + + - Documentation updates. + + - Don't stop Rx keepalives after an ackall is received, avoiding + spurious connection timeouts. (128848) + + - Don't retry Rx calls on channels returning busy errors. (128671) + + - vos will not die with a double free error at command completion. + + - Properly enable Rx connection hard timeouts. + + - Initialize rx_multi lock before use. + + - Avoid spurious crashes when initializing in "backup" client. + + All unix platforms: + + - Check for /afs existance before starting, unless -nomount is specified. + + - Avoid a potential panic when using /afs/.:mount syntax. + + - Avoid a panic in memcache mode due to missing CellItems file. + + All server platforms: + + - Attempt to recovery more quickly from timed out volume release + transactions. + + - Auditing now properly byte order swaps IP addresses when printing. + + - vos split now has improved error handling. + + - Many changes to again support Windows fileservers. + + - During volume removal, data removal speed improved. + + - Improve CPU utilization during volume attaching by DAFS. + + - In salvager check-only mode, avoid potentially fixing a vnode. + + - Fix support for large (greater than 2gb) volume special files. + + - Salvager will not crash if multiple or bad volume link tables + are encountered. + + - Avoid erroneous full dump by remembering which sites were out of date + at the start of the release. + + FreeBSD: + + - Remove support for "Giant" lock as we no longer need to use it. + + - Don't sleep with AFS GLOCK. + + - Properly enable 64 bit long long support. + + - Restore support for FreeBSD 7 (128612) + + - Fix locking issues at shutdown. + + Linux: + + - support through kernel 2.6.38. + + - RedHat packaging now properly supports RHEL6. + + - Use rx_Readv in cache bypass to improve performance. + + - Properly handle 0-length replies during cache bypass operations. + + - Properly handle non-contiguous readpage cache bypass operations. + + - Do proper locking when transitioning to or from cache bypass. + + - Avoid extra runs of vcache freeing routine. (128756) + + MacOS: + + - Check for unloaded kernel extensions when decoding AFS panics. + + - Properly handle setpag errors. PAGs are not supported. + + - Disable "get tokens at login" in prefs pane if AD authentication + plugin is configured. + + OpenBSD: + + - support through OpenBSD 4.8. + + Solaris: + + - Fix support for Solaris pre-10. + + Windows: + + - afs_config will not longer set the Tray Icon State + in the registry if the checkbox is not present in + the dialog. (128591) + + - AFS Explorer Shell Extension now works from folder + backgrounds. Overlays for mount points and symlinks + are present in the dll, but are not registered at present + by the installers. + + - Do not use RankServerInterval registry value as the value for + PerformanceTuningInterval. + + - When the data version of a mountpoint or symlink changes, + the target string in the cm_scache_t object must be cleared. + + - "fs checkservers" now includes vldb servers in the output + and only lists multi-homed servers once. A multi-homed + server that has at least one up interface is no longer + considered to be down. + + - When asynchronously storing dirty data buffers to the + file server ensure that (a) the cm_scache_t object and + the cm_buf_t object are for the same File ID so that + locking and signalling work properly; and (b) if the + FID no longer exists on the file server, do not panic, + just discard the buffer. + + - When processing VNOVOL, VMOVED and VOFFLINE errors perform + server comparisons by UUID or address and not simply by + cm_server_t pointer. Otherwise, server failover may not + succeed. + + - Do not preserve status information for cm_scache_t objects + when the issuing server is multi-homed. + + - Giving up all callbacks when shutting down or suspending + the machine is now significantly faster due to the use + of an rx_multi implementation. (This functionality is + still off by default and must be activated by a registry + value.) + + - Race conditions were possible when updating the state + of the cm_volume_t flags and when moving the volumes + within the least recently used list. + + - Ensure that the lanahelper library does not perform a + NCBRESET of each lan adapter when enumerating the + current network bindings. Correcting this permits OpenAFS + to work on Windows 7 when the network adapter settings + change. + + - Fix creation of mount points and symlinks as \\AFS\xxxx + + PREVIOUS CHANGES: + + All platforms: + + - vos now properly deals with matching sites when servers are multihomed. + + All Unix platforms: + + - Servers now marked down when GetCapabilities returns error. + + - In-use vcache count is now properly tracked. + + All server platforms: + + - Fix ptserver supergroups support on 64 bit platforms. + + - Demand attach salvaging doesn't use freed volume pointers. + + - Properly hold host lock during host enumeration in fileserver. + + FreeBSD: + + - Fix socket termination on shutdown. + + - Support for 7.2, 7.3, 7.4 and 8.2 included. + + - References to vcaches are no longer leaked during root or reclaim. + + Linux: + + - Define llseek handler to avoid ESPIPE error in 2.6.37. + + - Mount interface replaces get_sb (new for 2.6.37, not yet required). + + - RedHat init script allows deferring for a new binary restart. + + - DEFINE_MUTEX replaces DECLARE_MUTEX for 2.6.37. + + MacOS: + + - Correct return value from setpag syscall. + + OpenBSD: + + - Bug fixes for issues introduced previously in 1.5 series. + + Solaris: + + - Switch to ioctl() syscall replacement for Solaris 11 since syscall 65 + is not safe. + + +OpenAFS 1.5.78 (2010-11-04) + + All platforms + + * Revisions to Rx to fix performance issues. + + * Make fs getfid behave consistently across all platforms. (128372) + + * Properly check IDs handed to pts when creating users or groups so + useful error messages can be provided. (128343) + + * Correct byte order handling of port in afsconf_LookupServer for SRV + records. + + * Force a full dump when releasing to a site which was previously + marked "don't use", in case the previous clone was out of date. + + All server platforms + + * Demand salvage of attached volumes now correctly track attachment + state. + + * Avoid a potential crash due to failure to hold a lock when attaching + a volume fails. + + Microsoft Windows + + * Track SMB connections by SID rather than username. + + * Error write attempts to known-readonly volumes earlier. + + * Validate directory buffers to avoid potential crashes. + + * Handle VIO errors from bulkstatus. + + * Make PMTU discovery configurable and register error handlers for it. + + All UNIX client platforms + + * Use larger I/O sizes in memcache to improve performance. + + * Avoid potential alignment issues doing I/O for pioctl calls. + + FreeBSD + + * Avoid panicing if the listener process is not findable. + + * Avoid deadlock issues while performing lookups. + + Linux + + * Handle stale file handle errors for some cache partition types. + + * Avoid blocking with xvcache lock when attempting to free in-use + vcaches. + + * Build fixes for older kernels. + + * Properly configure LWP to use ucontext() on platforms where it + should. + + * Eliminate spurious errors from AFS system call returns. (126230) + + MacOS + + * Attempt to honor configured Kerberos defaults in Preferences Pane. + + +OpenAFS 1.5.77 (2010-09-08) + + All platforms + + * Rx path MTU detection will terminate detection in cases where the + minimum required packet size cannot be transferred. + + * vos dryrun mode now shows effects for syncvldb single volume case. + + * vos dryrun mode now shows "status after" for syncvldb and syncserv. + + All server platforms + + * RXAFS_GetStatistics64 now returns statistics properly. + + Microsoft Windows + + * Attempt to properly identify the local system SMB connection for + token tracking. + + * Remap timeout and offline errors to proper NT RPC errors. + + * Properly fail over to other replicas on bulkstat IO errors. + + * Properly error delete-mode createfile if a file is set readonly. + + * Validate directory entry buffers to avoid crashing the service. + + * Log file modes properly. + + * Log cell name when logging server information. + + All UNIX client platforms + + * cacheout program for discarding callbacks is now built. + + * bulkstatus kernel locking is corrected to avoid a potential panic. + + Dragonfly BSD + + * userspace support update + + FreeBSD + + * Updated vnode locking for children returned via lookup(). + + * Avoid file open undercount with needed calls to + FakeOpen/FakeClose(). + + * Use vnode_pager_setsize to properly track file size during kernel + IO. + + * Update system call installation. + + * Fix shutdown of Rx kernel listener to avoid potential dereference + after it's gone. + + * Avoid closing vnodes during vnode recycle. + + * Fix bogus call to FlushVS for vnode reclaims. + + Linux + + * Packaging updated for current configure options and built files. + + * Cache bypass now holds reference on pages during readpage. + + * s390x setgroups32 patching update. + + MacOS + + * DNS resolver is reinitialized on IP address change. (126440) + + +OpenAFS 1.5.76 (2010-08-16) + + All platforms + + * Updates to build-time configuration. + + * Fix XDR support in Rx to match header definition. + + * vos status now shows transaction creation, not action creation. + + * Rx avoids reporting loopback adapters when listing interfaces. + + All server platforms + + * Demand-Attach Fileserver always built and installed (dafileserver, + davolserver, dasalvager). + + * Return VNOVOL from fileserver when a volume is deleted. + + * Ignore duplicate tags during volume restore operation. + + * Update inode array after salvage repairs volume. + + * Zero a corrupted header in memory during salvage to avoid further + corruption. + + * Fix NAMEI backend to allow low-numbered volumes to work properly. + + * ptserver does not include cell name as part of length check for + names. + + * Updated error messages for unblessed volumes. + + * vlserver avoids buffer overflow with regex pattern + + * Attach-time failures now note failures as the rest of the fileserver + would. + + * Server argument logging will no longer overflow stack. + + * Provide fast-restart-like unsafe-nosalvage option for DAFS. + + * Deal with host hash collisions in the fileserver. + + Microsoft Windows + + * Avoid crashing when interpreting a drive letter as potentially + matching a cell name. + + * Properly handle volume package errors. + + * Allow page recycling from known-readonly content without ensuring + they are not dirty. + + * 32 bit tools installer should not override client configuration. + + * Ensure root scache item has a valid callback when use is attempted. + + * Freelance directory changes now properly invalidate and replace the + old root object. + + All UNIX client platforms + + * Support disconnected reconnecting with specified UID for PAGless + platforms. + + * Proper disconnected vnode reference tracking. + + * Update server site blacklisting to not return success if nothing was + blacklisted. + + * Avoid a panic during vcache contention due to CVInit vcache + racing. (127645) + + FreeBSD + + * Update for network stack in 8.1/9.0. + + HP-UX + + * Bug fixes. + + Linux + + * 2.6.36 support + + * Disable PMTU error packet handling. + + * flock() fixes. + + * Debian packaging updated. + + * freezer interface updates. + + MacOS + + * Hold references to disconnected mode written vnodes properly. + + Solaris + + * Handle NFS translator module references for amd64. + + * INODE fileserver backend support now exists for amd64. + + +OpenAFS 1.5.75 (2010-07-07) + + All platforms + + * Prevent rx_rpc_stats global lock from being a bottleneck. + + * Path MTU discovery is now provided to allow traffic to pass networks + with sub-1500 byte MTUs and poor fragment handling. + + * Further reduce Rx NAT ping transmission when enabled. + + * Update Kerberos 5-based token handling in rxkad from upstream + Heimdal. (127554) + + * Update version numbers emitted during build to reflect what is + actually being built. + + * Add "-human" switch for human-readable units in fs diskfree and + listquota. (124529) + + * vos provides reasons for locked volumes when known. + + * Do not count retransmission and ping acks as non-idle for Rx + connections. + + * Rx: provide service-specific data getter and setter routines. + + * Update build-time Kerberos detection. + + * Updated userspace AFS client. + + * Beginning of a modernized test suite. + + * Additional documentation. + + * Updated documentation, notably the Administrators Guide. + + * Substantial code cleanup. + + All server platforms + + * Update handling of vnode allocation failures. + + * DAFS: allow salvaging volumes not known to the fileserver, to allow + cleanup of data not attached to a current volume. + + * Properly handle volumes slated for destruction. + + * Handle volumes with many files properly. + + * Force core file generation in bosserver by overriding default + resource limits when possible. + + * Update vlclient and vldb_check. + + * Avoid potentially corrupting a volume on creation if files are left + from previous failed cleanup. + + * Note volume changed during salvage as needed. + + * DAFS: do not assume invalid addresses are in fileserver address hash + table. + + * Avoid tying up fileserver threads with volumes that are being taken + offline. + + * Do not set inUse on volumes for non-DAFS other than in fileserver. + + * Break origin's callback on target of rename operation. + + * Avoid unneeded parent directory link updates during some rename + operations. + + * Do not open /dev/console for writing in the fileserver. + + * DAFS: avoid spurious restarts when binary restarts are configured. + + * Avoid spurious and unneeded calls to sync(), which can slow down the + fileserver. + + Microsoft Windows + + * Revised SMB QuerySecurityInfo to address issues caused by MS10-020 + (http://support.microsoft.com/kb/980232) + + * Prevent use of the AFSCache file contents if mapped to a new + address. + + * Make fs newcell include behavior compatible with the non-Windows + version. + + * Provide a registry option (FreelanceImportCellServDB) to pre-create + mount points in the AFS root for all cells in CellServDB. + + * Fix a memory leak in the cm_FreeServerList() routine. + + * Reduce privilege when reading registry CellServDB. + + * Add support for RPC Pipe Service NetWkstaGetInfo levels needed for + Windows 7. + + * Prevent overflow when computing quota percentage in Explorer Shell. + (126846) + + * Generate meaningful errors for ACL operations on freelance AFS root. + + * Fix error handling on InlineBulkStatus RPCs. + + * Show configuration pages for all types of MSI installations. + + * Improve freemount AFS root directory handling and operations. + + * Properly validate GetVolumeStatus pioctl responses. + + * Commit file length changes and dirty buffers when flushing a file. + + All UNIX client platforms + + * Update version of files for disk cache. + + * Do not call afs_FlushVCBs with xvcache lock held, to improve + parallelization. + + * Add mariner log messages for creating and removing files. + + * Don't hold xvcache lock while creating symlinks, to improve + parallelization. + + * Provide -dynroot-sparse mode to not show all cells in CellServDB in + dynroot mode. + + * Avoid a potential crash in aklog in linked cell handling. + + * Log MTU-caused packet retransmission. + + * Prevent crashes caused be fs checkservers while cache is being set + up. + + * fs getserverprefs now has a buffer large enough for the default + CellServDB. + + * Report server address when logging warnings. + + * Avoid panic in GetCapabilities when cell is not known. + + * Lock process name and id for advisory lock warnings when possible. + + * Handle need for allocating additional Rx packets. + + * Properly handle errors from InlineBulkStatus operations. + + * Fix errors returned from fcntl() on readonly files locked for write. + + * Flush pending changes to the server on LOCK_EX unlock. + + * Reflect length changes as a result of callbacks even when file is + open for write. + + * Avoid hanging due to error exit when attempting to store a large + file to a non-largefile fileserver. + + * Recover from afs_GetVolSlot errors. + + FreeBSD + + * Bugfixes for kernel VFS and network routines. + + IRIX + + * Provide makesname(). + + Linux + + * Avoid syscall probes when keyrings are present, by default. (125215) + + * Remove "Big Kernel Lock" from VFS operations. + + * Use filehandles for all Linux 2.6 versions to avoid need for matched + afsd. (127530) + + * Updated RPM packaging. + + * Fix dkms configuration provided with RPMs. + + * Hold reference on pages during background I/O for cache bypass. + + * Fix cache bypass handling of non-largefile fileservers. + + * Protect truncate_inode_pages mappings with mutex or semaphore as + needed. + + * Fix pagevec use in cache bypass. (127505) + + * Updates for 2.6.35 + + MacOS + + * Improve launchd configuration. + + * Avoid hanging on recursive cache file lock acquisition when user + notification is enabled. + + * Fix and re-enable bulkstat mode. + + OpenBSD + + * Build updates. + + Solaris + + * Precluding unmount while AFS is busy. + + * Avoid deadlocking when releasing the VFS object. + + * Stop network interface poller in kernel on AFS shutdown. + + * Avoid issues with lookups on empty directory names. (127356) + + +OpenAFS 1.5.74 (2010-04-22) + + All platforms + + * Add "vos setaddrs" command. + + * Rx library lock contention avoidance between rx_NewCall and + rx_EndCall. + + * Rx library races due to inconsistent use of rx_connection + conn_data_lock to protect the flags field. + + * Rx library inconsistent use of RX_CALL_TQ_WAIT which could result in + deadlocks. + + * Rx library must signal transmit queue waiters when flushing. + + * afsmonitor shows busy counts now. + + * afsmonitor displays xstat callback statistics. + + * Provide expandgroups for pts mem on a supergroups server. + + * Provide supergroup option to liste nested groups during pts mem. + + All server platforms + + * Avoid volume lock contention during DAFS startup. + + Microsoft Windows + + * Avoid a race when updating cell vldb server lists that can result in + a crash. + + * Avoid a deadlock when managing CM_SCACHESYNC_STOREDATA state + operations for directory objects. + + * Add new Windows Application Event log messages for VBUSY, + VRESTARTING, ALL_BUSY, ALL_OFFLINE, and ALL_DOWN. + + * Reduce lock contention by waiting for cm_buf_t I/O operations. + + * Split the cm_buf_t flags field to separate the flags that are + protected by the cm_buf_t mutex from those protected by the + buf_globalLock. + + * In cm_UpdateVolumeLocation, avoid searching for a ".readonly" volume + on a numeric volume name. + + * File buffer allocations whose offsets are beyond server EOF should + be locally allocated and zero filled. The file server should not be + issued a FetchData rpc which is guaranteed to fail. + + * Enable integrated logon to work with Windows 7/2008 when user logons + are performed with a non-Domain Kerberos principal. + + * Add Protection Error messages to aklog output. + + All UNIX client platforms + + * Provide a FUSE-interfacing userspace afs client. + + * Updates to libuafs userspace cache manager. + + * Probe servers using GetCapabilities instead of GetTime, thus + requiring fewer RPCs. + + * Fix DNS SRV record handling for cell lookup. + + FreeBSD + + * Fix sleep/wakeup routines. + + * Update for 8.0 release. + + Linux + + * Handle high memory addresses correctly. + + MacOS + + * Make 32 bit AFS syscalls work again. + + * Work around finder "Duplicate" failure (caused by setting modes on + symlinks). + + * Disable bulkstat again (will be re-enabled at or before .75). + + * Provide symlink type hints during readdir. + + +OpenAFS 1.5.73 (2010-03-24) + + All systems: Minor bugfixes. New features. + + * New functionality: + + All systems: + + - NAT keepalive support at Rx level. + + * Bugfixes: + + All systems: + + - Corrected server IP address output in vos syncvldb verbose mode. + + - Corrected server IP address output for last "yes" host in udebug. + + - Corrected SRV record support for canonicalizing cell names. + + All UNIX clients: + + - Fixed a potential race in Disconnected AFS "remove" support. + + - Fix a potential blocking condition in fakestat mode. + + - Avoid some errors and stack overflow reports when vos is interrupted. + (33360,125535) + + - Clean up several minor memory leaks. + + - If a large file is stored to a non-largefile fileserver, avoid + a potential deadlock. + + - Increase maximum number of sysnames to 32. + + - Readd fs mariner "storing" message, missing since AFS 3.3. + + - Attempt timeouts on AFSDB lookups in userspace. + + - Avoid interrupting writes due to an idle deadtime timeout. + + All server platforms: + + - Properly notify only affected hosts for volume callbacks. (126497) + + - Allow volumes with trashed root directory to be recovered. (94658) + + - Hold lock in file and volservers when traversing partition list. + + - Use finer-grained locking in DAFS: volume, instead of partition locks. + + - Schedule all DAFS salvages via FSSYNC. + + - Avoid stale ptserver credential caching issue on keyfile update. + + - Improve callback table overflow handling. (126451) + + - Preclude deadlocks on when attempting to save DAFS state. + + - Avoid races deleting hosts. (126454) + + - Improve salvage speed for DAFS (124488) + + - The bosserver now handles SIGTERM. + + Microsoft Windows + + - Prevent the Explorer Shell extension from crashing if symlink + creation failed. (126406) + + - A Rx level NAT ping has been implemented. A registry value enables. + + - Adds krb5 error message translation to aklog, afscreds, + afslogon.dll, the network identity manager afs provider and + translate_et. + + - Default mode bit settings for file and directory creation are now + provided, and can be configured. + + - An SMB request trace facility is provided and can be enabled for + debugging. + + AIX: + + - Clean up properly on mount failure. + + - Add entry to /etc/vfs to allow umount to work. + + FreeBSD: + + - Additional work to support FreeBSD 8-current. + + IRIX: + + - Fix build issues with library order. + + Linux: + + - Fix s390 support conflict with executable stack patches. + + - Don't count root's AFS session keyrings against quota. + + - Correct dkms support in RPM config file. + + - Keyring destructor now properly cleans up all tokens. + + - Build again on old 2.6 kernels. + + - Avoid GLOCK leak when updating CellServDB in-core. + + - Fix byte-range lock handling. + + - Attempt to deal with bdi issues. (126514) + + MacOS: + + - Some FSEvents hinting for authentication events now done. (23781) + + - Update uninstaller. (125634) + + - Rewrite afssettings and fstab code to avoid licensing issue with APSL. + + - Growl client for user monitoring of AFS events included. + + - Properly support insert-only dropboxes. + + - Add bulkstat support. + + - Include support for moving in Finder across mount points. + + - Preferences Pane includes support for Kerberos 5 ticket renewal. + + OpenBSD: + + - Some support for OpenBSD 4.7. + + +OpenAFS 1.5.72 (2010-02-15) + + All platforms + + * Provide internationalization support in com_err. + + * Fix array length checking to avoid crashes when checking for a + volume type based on name in vos. + + All server platforms + + * Provide backward compatible "-f" flag to salvager for force mode. + + Microsoft Windows + + * Restore use of DNS AFSDB and SRV records by kaserver clients. + + All UNIX client platforms + + * Fix client cache file truncation to not lose chunks when truncating + a large file. + + * Ensure a cache writeback hook is installed in the client (bug from + 1.5.71). + + * Avoid spurious free memory warnings during clean shutdown. + + * Fakestat mode avoids AFSDB lookups. + + * "fs storebehind" now correctly reports errors on readonly volumes. + + * Additional documentation for "fs getcacheparms" + + * Forced new uuid generation with "fs uuid -generate" now works + enforced permission correctly. + + MacOS + + * Add optimized Rx event handler in kernel. + + * Installer now allows installing an older version. + + * Panic decoder can now deal with MacOS 10.5 again. + + * MacOS ._ files are now correctly not looked up as cellnames. + + Linux + + * To deal with SELinux file labeling, try cache accesses with current + credentials in event of failure. + + * Rx XDR encoding bug on i386 Linux is fixed (bug introduced in + 1.5.71). + + IRIX + + * Code compilation fixes. + + OpenBSD + + * Update for OpenBSD 4.6. + + +OpenAFS 1.5.69 (2010-01-19) + + All platforms + + * Configuration of BOSserver no longer defaults to weekly restarts + enabled. + + * Provide BOS restricted mode by default. + + * Add support for "vos endtrans" command. + + * Default to providing full output from vos listvol. + + * Correct additional-address tracking in the fileserver. + + * Improve Rx performance by not unnecessarily dropping and reacquiring + call locks in read and write processes. + + * Avoid crashes when monitoring volserver transactions across + potential transaction garbage collection. + + * Numerous warning fixes. + + All server platforms + + * Avoid saving fileserver state in demand attach fileserver when + panicing. + + * Demand attach fileserver allows other callers to schedule salvages. + + * Demand attach "bos salvage" now works correctly with restricted + mode. + + Microsoft Windows: + + * Numerous changes to the client-internal btree directory handling to + prevent errors. + + * fs examine reports owner and group ids as signed values (PTS groups + are negative). + + * Preclude corruption due to races writing to smb buffers. + + * Allow MTU settings in registry to be used. + + * Apply MTU to both send and receive sizes. + + All UNIX client platforms + + * Avoid double-freeing Rx call structure if reading a response from + the file server results in a short read. + + * Handle negative lengths in FetchStatus results correctly. + + * Properly clean up allocated memory at shutdown. + + * Default to AFSDB compiled into the cache manager. + + * Avoid inadvertant disclosure of stat() information to clients not so + entitled. + + * Correct a bug with AFSDB lookups introduced with SRV record support. + + MacOS + + * Install kernel panic processing tool in /Library/OpenAFS/Tools. + + * Include debugging symbols for kernel extension in additional package. + + * Support "Application Firewall" users. + + * Avoid ._cellname AFSDB lookups. + + * Compile preferences pane as a universal binary. + + Linux + + * Use splice to speed up storing files. + + * When using memcache, avoid duplicating work in readpages. + + * Use dget_parent to safely find an inode's parent. + + * Disable access time updates in our superblock. + + * Avoid crashing doing writeback if no credentials were stashed at + file open. + + * Simplify keyring support. + + * Properly clean up vcache in event of failed mount. + + FreeBSD + + * Update for current FreeBSD 8. + + Solaris + + * Abstractly manipulate groups as now required. + + * Abstractly access time instead of using lbolt directly. + + +OpenAFS 1.5.68 (2009-12-08) + + All platforms + + * aklog now attempts to convert non-AFS errors to human-readable + strings. + + * Make stack not executable when compiling assembler source with GCC. + + * Numerous source warning cleanups and code reorganization. + + All server platforms + + * Compute midnight for volume statistics calculation from local time. + + * Salvager now orphans duplicate special inodes when running to allow + recovery in event of a problem, instead of simply ignoring the + issue. + + * Support to ensure a server panic attempt leaves a core and thus + restarts in a timely manner, rather than potentially hanging. Use + panic to attempt cleanup before leaving a core when possible. + + * Volume sync data reported during bulkstatus is now set correctly. + + * Provide better tuning for fileserver file descriptor caching. + + * Allow more than 128 threads in fileserver by modifying host + structure in-use tracking. + + * Avoid crashes getting volume server status during transaction + cleanup. + + * Improved logging of offline volume conditions. + + * Correct volume statistics when cloning a volume. + + * Avoid referencing host structures in the fileserver which are marked + for deletion. + + * Demand attach fileserver corrections to avoid coring during an + aborted startup. + + * host array bounds checking corrections to avoid buffer overflow. + + * Handle special inodes correctly when promoting an inode fileserver + readonly volume to read-write. + + Microsoft Windows + + * Set the DOS Readonly attribute on a file/directory whenever the unix + mode combined with the mask 0200 is true. Previously there was a + discrepency between the mask used for testing for readonly behavior + and that used for setting the attribute. + + * Disable AFSVolSync based .readonly "whole-volume callback" support + because the all file servers prior to 1.5.67 (and perhaps 1.4.12) do + not properly assign a value to the AFSVolSync structure in bulk + status RPC responses. + + * Improve the error output from aklog to output the value from krb5 + error_message() if the afs_com_err output indicates an unknown + value. + + * Convert VBUSY and VRESTARTING to CM_ERROR_ALLBUSY and do not permit + them to be exposed to the smb redirector. + + * Convert STATUS_TIMEOUT responses to STATUS_IO_TIMEOUT to avoid + confusion within the smb redirector. + + * Fix the byte order assigned to port numbers associated with AFSDB + record lookups. They must be network byte order not host byte + order. + + * Add dynamic server ranking based on RPC round trip time + measurements. + + All UNIX client platforms + + * Additional shutdown-time memory leaks removed. + + * Improved logging of resource contention. + + * Provide dumping for Rx debug packet tracking support in source. + + * Update afscp test client to build, and provide an unlock client. + + * Client buffers for directory parsing can now be allocated beyond the + fixed set formerly provided. + + * Work around race condition when manipulating read-only volume + callbacks. + + * Bugfixes to get PAG value pioctl. + + * Bugfixes to SRV record support. + + Linux + + * Path MTU tracking code cleanup. + + * Avoid an oops due to racing with vcache recycling thread. + + * Changes to keyring PAG handling: for sufficiently new kernels, use + only keyring-based PAGs, and disable group PAGs entirely. + + * Updates to the kernel page cache interface: writing pages will now + not spuriously leak page locks, and will avoid requiring duplicate + work. + + * Credential references are now tracked using native atomic counters. + + * Kernel mutex/semaphore lock ordering fix to avoid deadlocks. + + * Manipulate disk cache with credentials used to initialize it, to + avoid security issues. + + MacOS + + * Fix fstrace message catalog location. + + * Fix kernel fstrace logging. + + +OpenAFS 1.5.66 (2009-10-25) + + All platforms + + * Avoid calling exit() in library code. + + * Add rx window size and peer timeout tuning APIs. + + * Correct rx peer timeout handling to disallow 0ms timeouts. + + * Correct calculation of rx RTT by disregarding retransmitted packets. + + * vos manpages updated to reflect changes in recent versions. + + * GNU-style long options (e.g. --cell) are now supported in all + commands. + + * fs listacl can now print a command to recreate the current ACL. + + All server platforms + + * Fix a race on transaction objects in the volserver which can cause a + crash. + + * Avoid destroying and setting to NULL the callback connection when it + could still be being used. + + * Correct unlink handling in salvager. + + * Improve error messages due to I/O errors in the volserver. + + * Correct an issue which caused converted RO to RW volumes on namei + fileservers to not come online immediately. + + Microsoft Windows + + * Official support for Windows 7 and Server 2008 R2. + + * Prevent a file server bug (FetchData returning an invalid length + instead of zero) from causing an "unexpected network error" when + writing to files. + + * Promote DNS SRV records as superior to DNS AFSDB records. Support + arbitrary port numbers for vldb servers. + + * Add AFSVolSync based .readonly "whole-volume callback" support. + With this functionality, multiple objects from a .readonly volume + can have their status validated by issuing a single + RXAFS_FetchStatus RPC. + + * Remove drive mapping functionality and service start/stop from + afscreds.exe. + + * Remove drive mapping functionality from afs_config.exe. + + * Use {HKLM,HKCU}\SOFTWARE\OpenAFS\Client DWORD "ShowMountTab" to + restore access to drive mapping functionality in afscreds.exe and + afs_config.exe. + + * Adjust SMB error return codes to avoid returning STATUS_TIMEOUT + which results in the SMB redirector disconnecting. + + * Network Identity Manager OpenAFS Provider now provides its own "AFS + lock" notification icon to report the status of "have tokens, have + no tokens, service not started, service started but inaccessible". + Hovering over the icon lists the cells for which tokens exist (if + any) and the OpenAFS version number. Double-clicking executes the + Network Identity Manager default action. + + * Prevent pioctl calls from retrying indefinitely when a sharing + violation error occurs. + + All UNIX client platforms + + * Correct a condition which could discard the error from initializing + a fetch request. + + * Avoid using invalid references to afs_Conn connection structures, + and thus potentially producing invalid data when a retry is needed. + + * SRV records are now supported for discovering AFS servers. + + Linux + + * Correct writepage behavior. + + * Fix error code handling in the writepage code. + + * Avoid leaking page locks, which could potentially hang a machine. + + MacOS X + + * Preferences Pane improvements. + + HP-UX + + * Avoiding attempting to handle critical signals in servers, so that + core file handling works correctly. + + +OpenAFS 1.5.65 (2009-10-06) + + All platforms + + * Code compilation warning fixes, to enable better finding and + tracking bugs. + + * Provide configure-time switch to enable code warning compilation. + + All server platforms + + * Demand-attach fileserver now makes volume LRU list operations + exclusive operations to avoid races during adding to the list. + + * Fileservers now avoid potential "negative length" fetches. + + * A leak in host tracking objects in the fileserver has been fixed. + + * Salvager now unlinks all files by full path, to deal with the change + to not chdir for core file tracking. + + * Salvager avoids asserting if the volume header is unreadable. + + * Demand-attach fileserver puts back volume references from fssync + handlers when done. + + Microsoft Windows + + * Improved service response to suspend and shutdown event + notifications. + + * Avoid a bug in the file server that can result in an invalid length + being returned as part of a fetch data response if the client + attempts to read beyond the length of the file. + + * Do not publish a default stream object for directories and mount + point objects. This was impacting the ability of some Windows XP + systems to save roaming profiles. + + All UNIX client platforms + + * A bug which could cause erroneous handling of lengths on data reads + has been fixed. + + * A bug where erroneous length returns from the fileserver could + result in a false error has been fixed. + + Linux + + * Background page copies are now supported for enhanced disk cache + read performance. + + * Blocking readahead is supported in readpages() to reduce overhead. + + * Use readpage() instead of read() to access cache data to avail disk + cache users of the kernel backing cache for improved performance. + + * Minimize credential handling for improved performance. + + MacOS X + + * Preferences Pane cleanup. + + Solaris + + * Provide a fs_pathconf method with sensible defaults. + + * Provide a _PC_FILESIZEBITS method to fix some NFS translator + consumers. + + +OpenAFS 1.5.64 (2009-09-22) + + All server platforms + + * The demand attach fileserver now puts back volume references gotten + via the fssync interface. + + * The demand attach fileserver had a structure reference error, which + has been correected. + + Microsoft Windows + + * Restores Windows 2000 compatibility. + + * Fixes a data consistency error between the output of NetWkstaGetInfo + and NetServerGetInfo RPCs, specify the Lan workstation group name + "AFS", and report server name as "AFS" instead of "\\AFS" when the + caller asks for "\\AFS". + + * Enables executables to be run from \\AFS on Windows 7. Returns + "Name not found" instead of "File not found" when a directory or + file name cannot be found. This avoids loader errors when system + dlls cannot be located in the executable directory. + + * Prevents cache manager from marking the file server "down" when the + data returned in response to either RXAFS_FetchData64 or + RXAFS_StoreData64 is invalid. + + * Adds pioctl data validation to the AFS Explorer Shell extension. + + All UNIX client platforms + + * A bug which could cause a kernel panic in 1.5.63 has been corrected. + This would manifest as a GetDCache panic or oops. + + Linux + + * aklog -setpag works again with recent kernels when keyring is in + use. + + MacOS + + * When Fast User Switch is in use, AFS login is now handled correctly + by the integration tool included with the preferences pane. + + * Several packaging bugs have been corrected. + + +OpenAFS 1.5.63 (2009-09-11) + + All platforms + + * The restorevol command is now documented and installed as a user + command. + + * The uss command now properly translates vldb entries to its expected + format when handling them in all cases. + + * Documentation now refers to Kerberos instead of kaserver. + + All server platforms + + * bosserver now handles BosConfig.new when restarting, allowing + configuration to be replaced at restart time rather than with bos + delete and bos create. Documentation is updated to reflect this. + + * The demand attach fileservice not longer potentially hangs trying to + terminate demand-salvages which have already exited. + + * The demand attach fileservice has been modified to avoid spurious + 'SYNC_putRes: write failed' warnings when some protocol messages + cannot be acknowledged due to the sender terminating the connection. + + * In the event of failure to contact the vlserver or ptserver, the + fileserver will not exit and trigger a forced salvage. It will + continue to try in the background to contact the needed services. + + * The salvager can now repair certain cases of a damamged vnode index. + + * The accessDate metadata for a volume is now updated correctly. + + Microsoft Windows + + * CRITICAL: Some applications for example those based on Cygwin were + unable to access data stored in the AFS name space. Explorer Shell + also experienced inconsistent behavior. This is fixed. + + * CRITICAL: Multiple AFS pioctl requests issued nearly simultaneously + by applications could result in pioctl responses being received by + the wrong requester. This in turn could result in application + crashes. symlink.exe, fs.exe, afslogon.dll, afscreds.exe, and the + netidmgr afscred.dll plugin were all affected. + + * Some XP machines running 1.5.62 had trouble saving roaming profile + data. This is fixed. + + * Integrated Logon (afslogon.dll) did not function with domain + specific configurations. + + * Ensure that access denied and over quota errors experienced while + storing data to the file server do not result in on-going retry + attempts. + + All UNIX client platforms + + * Except on Solaris and AIX, the compiler may now be overriden at + configure time by setting the CC environment variable. + + * afsd now properly deals with large cache partitions. + + FreeBSD + + * Build shared libafsauthent and libafsrpc. + + Linux + + * Kernel module DKMS support now installs an unstripped module to + allow debugging information to be collected. + + MacOS + + * Preferences pane properly updates token information. + + MacOS 10.6 + + * klog will now properly handle passwords of 8 or fewer characters + with an AFS string to key on hosts able to run 64 bit binaries. + + * A panic at AFS shutdown due to "NO PCB" on a udp_lock has been + addressed. + + * The panic decoder script included in the source now properly handles + 32 and 64 bit panics. + + NetBSD + + * Avoid defining AFS_KERBEROS_ENV globally as it creates a circular + dependency. + + * Build shared libafsauthent and libafsrpc. + + OpenBSD + + * Build shared libafsauthent and libafsrpc. + + +OpenAFS 1.5.62 (2009-08-28) + + All platforms + + * Numerous invisible changes to improve code maintainability, + portability and enhanceability. + + Microsoft Windows + + * CRITICAL: Fixes two errors that can result in data loss when storing + data to the file server. + 1. Failure to Store Portions of Unaligned Writes + 2. Failure to Store Data to File Servers Lacking Large File Support + Read the announcement for more details: + http://www.openafs.org/pipermail/openafs-announce/2009/000305.html + + * CRITICAL: The cache manager daemon thread could terminate when the + machine enters suspend mode. This daemon thread performs the + background check of down servers, offline volumes, callback + expirations, etc. + + * CRITICAL: Integrated Logon (afslogon.dll) was terminating + unexpectedly. Error checking has been improved and NULL pointer + dereferences after Lsa API calls fail have been eliminated. + + * For the first time, the OpenAFS SMB Server supports the DCE RPC + services SRVSVC and WKSSVC. Browsing \\AFS with the Explorer Shell + or NET VIEW will now be faster and provide additional functionality. + No longer will cell names longer than 12 characters be truncated. + + * Improvements to DFS Referral request processing have been + implemented. + + * Unnecessary DNS lookups of share names are avoided improving + performance. + + All UNIX client platforms + + * Non-Kerberos PAM modules work correctly again. + + MacOS X + + * MacOS 10.6 (Snowleopard) is now supported, both 32 and 64 bit mode. + + * Updates to the AFSCommander preferences pane. + + * Installer now permits cell names with dashes. + + +OpenAFS 1.5.61 (2009-08-06) + + All platforms + + * Correct another race condition in the Rx library that could result + in an unexpected panic while freeing the Rx call iovq. + + * rx packet resend and data packets sent counts were incorrect. + + * fs setquota, fs setcachesize, vos setfields, and vos create now + accept human readable orders of magnitude. (K, M, G) + + * fs listquota fixed to permit large quota sizes to be displayed. + + * Correct documentation of bosserver permissions requirements. + + * Modify vlserver to avoid potentially corrupting the database through + volume id reuse. + + * Generalized support for fast Rx timeout due to network + down/unreachable. + + All server platforms + + * Allow audit logs to be sent via sys5 IPC message queues instead of + logged directly. + + Microsoft Windows + + * If a file server becomes inaccessible while the cache manager has + dirty buffers to write, the afsd_service buf_IncrSync thread can + attempt to use 100% of the cpu. + + * Fix "fs newcell" which was broken in 1.5.60. + + * Do not attempt to synchronize dirty buffers if the associated volume + is known to be unavailable. + + * Modify behavior of a Freelance mountpoint target that does not + specify a cell. Instead of assuming the target volume is in the + Freelance.Local cell, use the workstation "Cell" specified in the + registry. A mountpoint target of "#root.cell." will now mean the + root.cell volume in the workstation cell for the current session. + If the workstation cell changes from "athena.mit.edu" to + "andrew.cmu.edu", the referenced volume will also change without + requiring that the mount point targets be altered. + + * Add cm_FindServerByUuid(). Re-implement RXAFS_InitCallBackState3() + to permit the server Uuid to be used to lookup the server object and + from that determine the cell. This permits callbacks that are + received from alternate addresses to be processed with a known + server object. Previously a request from an unknown server would + clear all callbacks from all cells. + + * Fix a bug that prevented optimal performance when using a non-zero + value for 'daemonCheckVolCBInterval'. As a reminder, when + "daemonCheckVolCBInterval" is set to a non-zero value, all .readonly + volume callbacks are automatically renewed 90 minutes before their + expiration. + + * Fix automatic ranking of vldb servers whose values are obtained from + the CellServDB file. + + * Add failover for RX CALL TIMEOUT errors when the volume is readonly + or the call is to a vldb server. + + * Add registry based cell search functionality to NetIdMgr, + afs_config.exe, and klog.exe. + + * afsconf_GetCellInfo() has been modified to perform gethostbyname() + lookups on the host names in the CellServDB instead of using the + specified IP addresses. This provides aklog, pts, vos, etc. the + same CellServDB behavior that the Windows Cache Manager uses. + + * When updating the stat cache entry callback of a .readonly object + from the volume group object, update the file server reference to + ensure it matches the most update to date callback. + + * Add proper support for processing callbacks from multi-homed file + servers. Instead of comparing servers by cm_server_t pointer, + compare them by UUID when the UUID is known. + + * During a shutdown short circuit the offline volume check daemon + functionality. + + * Return the error code of RXAFS_FetchData / RXAFS_StoreData in + preference to an error code reported by rx_EndCall. + + * Add "PerFileAccessCheck" registry value to permit testing against + experimental file servers that include per-file acl support. This + value is intentionally undocumented. It is not to be used by + production environment deployments. + + * Fix a bug introduced in 1.5.60 that prevents the afs netidmgr + provider from obtaining tokens when referrals are in play. + + * Add "fs chown" and "fs chgrp" commands to permit the owner and group + of objects stored in AFS to be set from Windows. + + * Avoid performing background daemon operations when the machine is + going into suspend mode. + + * Perform offline volume checks in most recently used order. + + * Prevent crash when a data version for a cache object goes backwards. + + * Multi-thread safe library versions are now being generated and used. + mtafsubik.lib, mtafsutil.lib, mtafsvldb.lib, mtafsvol.lib. + + * Microsoft SMB Redirector (mrxsmb.sys) support for + ExtendedSessTimeout values are now available on XP through Windows + 7. Add functionality to autodetect if such support is present on + the machine. If so, configure it if necessary and dynamically + adjust the AFS Rx timeout values accordingly. + + All UNIX client platforms + + * Fix out-of-tree source builds. + + MacOS + + * GUI installer now asks for local cell information. + + * AFS Commander preferences pane is now installed by default. + + Solaris + + * Avoid kernel panics due to null pointer dereferences in the network + interface poller kernel thread. + + +OpenAFS 1.5.60 (2009-05-31) + + All platforms + + * Retry volserver transaction creation on failure. + + * Allow building HTML and PDF documentation from included XML copies + of User Guide, Admin Guide and Quick Start Guide for Unix. + + * Documentation updates and additional documentation. + + * Add -encrypt support to pts client. + + * Convert MR-AFS fs commands to OSD commands. + + All server platforms + + * Updated background sync process in fileserver to avoid a race which + could result in a volume being taken offline. + + Microsoft Windows + + * On April 9th Microsoft released a Hot Fix for Windows Server 2003 + SP2 that corrects a deadlock in the smb redirector and also adds new + functionality that permits the AFS SMB server to be given a longer + timeout than is normally the case. New functionality has been added + to configure these additional LanmanWorkstation\Parameter values. + (This functionality has been backported to XP SP3 and is scheduled + to be released on June 5th.) + + * Fix RT#124787, a race condition between "fs flush ", "fs + flushvolume", or "fs flushall" and on-going directory operations + that can result in afsd_service.exe crashing. + + * Release Notes, User and Administrator guides are now shipped as + indexed Windows HtmlHelp Files. (.chm). Shortcuts are provided from + the Start Menu. + + * A method of specifying Client CellServDB information within the + registry has been added that can be used to either override the + CellServDB file or force the use of DNS lookups for a given cell. + See the release notes for details. + + * The pioctl interface now properly handles drive letter substitution + to UNC paths. (SUBST <\\afs\cell\path>) + + * The BackConnectionHostNames registry value configuration was broken + when dynamic re-establishment of Netbios Name registrations was + added. This release restores the functionality. + + * All hidden vos.exe commands are now revealed. + + * Attempts to store the same dirty file chunk from multiple threads + are now prevented. + + * The IsPathInAfs test in Explorer Shell Extension and fs.exe now + permits broken symlinks to be treated as being in AFS. + + * vos.exe commands that output 64-bit integer values once again do so. + This was broken in 1.5.59. + + * Cygwin Import Libraries are provided in the SDK for all OpenAFS + DLLs. This permits building cygwin applications against OpenAFS + libraries. + + * NSIS installer does a much better job of cleaning up files left over + from previous installs. + + * libafsconf.dll moved from Client\Program to Common directory as is + is now used by all modules for CellServDB processing. + + All UNIX client platforms + + * Write back changes on last store for memcache to avoid discarding + changes. + + * Abstract disk cache support to allow for path, fh, inode based + caches with no need for messy ifdef structures each time a new type + is added. + + DragonflyBSD + + * Support as a userland port. + + FreeBSD + + * Corrected structure definition for userspace cache manager to allow + builds to complete. + + Linux + + * Corrected client locking support. + + * Updated patch to stop deadlocking in the kernel during mmap. + + * Avoid oops when setting up groups for PAGs to match keyrings. + + * Use Linux fh-based cache in cases where possible by default. + + MacOS 10.3: + + * Corrected structure definition for userspace cache manager to allow + builds to complete. + + OpenBSD + + * Support for OpenBSD 4.5. + + Solaris + + * Corrected support for server-side vos split interface. + + +OpenAFS 1.5.59 (2009-04-06) + + Microsoft Windows + + * Increased service priority class to "High" to match the priority of + system components that are dependent upon the a timely response. + + * SMB error responses avoid returning errors that could confuse the + Microsoft SMB redirector into disconnecting the connection to \\AFS. + + All UNIX client platforms (except MacOS X 10.4 and 10.5) + + * OpenAFS 1.5.59 contains fixes for the client issues addressed by the + security advisories OPENAFS-SA-2009-001 and OPENAFS-SA-2009-002. + + Linux platforms + + * Support for prerelease Linux 2.6.30 kernels. + + +OpenAFS 1.5.58 (2009-03-30) + + All platforms + + * Code cleanup and prototyping. + + * Avoid unnecessary blocking in Rx periodic cleanup code. + + All server platforms + + * Fileserver CopyOnWrite routine optimized for performance. + + * Make fileserver callback dumps 64 bit safe. + + * Fix byte order issues with fileserver host hashing. + + * Fix buffer size issues with butc. + + * Fix several Ubik recovery issues. + + * Avoid leaking file references in the fileserver. + + * Fix a race in DAFS while closing vnodes, and another offlining + volumes. + + * volserver interfaces for volume splitting client. + + Microsoft Windows + + * [RT 124293] A race condition exists which can result in a crash. + + * [RT 124276] If the vldb is out of sync with the contents of the file + servers, afsd_service will retry too many times when a file server + reports a volume as not being present. Now if the list reported by + the vldb is the same as the previously seen list, then the retry is + aborted. + + * [RT 124276] Read-only volume failover was broken in 1.5.53 whenever + accessing a volume results in VNOVOL or VMOVED. + + * [RT 124276] Prior to 1.3.70 the volume server reference list was not + reference counted and would be prematurely freed while in use. When + reference counting was added in 1.3.70 a bug was introduced that + could result in service reference list corruption. + + * Add Windows Application Event Log warning messages for "Client SMB + MPX value too large" and "Client SMB Buffer Size too small". + + * Renaming of files across directory boundaries would result in an + invalid handle error when attempting to access the files after the + move. + + * Fix the handling of Tran2 Set Path Info RPCs. Do not fail when a + smb file descriptor cannot be found. The whole point of using a + Path Info function is because an smb file descriptor wasn't + allocated. + + * More edge cases in which dynamic addition of Freelance root.afs + entries would get the wrong FID or where the root.afs directory + would not be refreshed. + + * Buffer overflow could occur if the workstation cell name was longer + than 64 characters. Crashes could occur in afscreds.exe, + afslogon.dll, and afsd_service.exe. + + * VNOSERVICE and VOFFLINE errors were leaking and were exposed to the + smb client. + + * Log file server uuid values as part of the cm_server object when + available. Dump the cm_server object list in response to "fs + memdump". + + * Optimize the performance of resetting access control lists when + tokens are set or removed. + + * Remove symlink recursion tests and increase max symlink count to 64 + from 16. + + * Windows specific Rx performance improvements. + + * Support for Network Identity Manager 2.0 + + All UNIX client platforms + + * Avoid issues with freeing resources at shutdown. + + * Numerous fixes to disconnected AFS. + + * Disconnected AFS fixes for replaying changes without double-freeing. + + * Attempt to use krb524 principal conversion in aklog if available. + + AIX + + * Kerberos configuration at build time corrected. + + Linux + + * Default to dynamic allocation of AFS kernel cache entries to allow + growth for inotify()-pinned entries. (beagle, famd, etc) + + * Change client truncation routines to avoid locking issues. + + * IA64 port clients fixed on Linux 2.6. + + * RPMs now install fstrace message catalog. + + * Support through kernel 2.6.29 tested. + + * Fix locking issues on CellServDB file in /proc. + + OpenBSD + + * Support OpenBSD 4.4 + + +OpenAFS 1.5.57 (2009-01-23) + + All platforms + + * Conditional compilation of rxdebug support is now possible. + + * Documentation updates. + + * Further race connditions in Rx have been corrected. + + All server platforms + + * Salvager no longer attempts to recreate headers in the wrong + partition. + + * Volumes are properly marked in use on creation and subsequently on + examination with vos. + + Microsoft Windows + + * Undo the "UAC manifest fix" applied to afs_config.exe. + + * Ensure that Freelance allocation of vnodes follow the AFS convention + of odd vnodes are directories and everything else is an even vnode. + + * Add Freelance logic to mount point and symlink evaluation functions. + + * Enhance smb_ParseASCIIBlock() so that it can handle all of the + STRING formats defined by the CIFS Technical Report 1.0. + + * Validate the output of smb_ParseASCIIBlock() in all callers. Return + CM_ERROR_BADSMB if the STRING field cannot be parsed. + CM_ERROR_BADSMB will cause the contents of the packet to be logged. + + * If multiple SMB Raw Write operations were taking place at the same + time, there could be data corruption because unique event objects + were not generated for each Netbios receive operation. + + All UNIX client platforms + + * Userspace AFS library can now deal with large files when supported + by the platform. + + * Numerous updates to disconnected AFS support, including changes to + allow reconnection to work in more circumstances. + + FreeBSD + + * FreeBSD unstrategy code has been updated. + + Linux + + * A race during file truncation has been corrected. + + * System call probing routines have been updated. + + * 2.6.29 is now supported. + + MacOS + + * 10.3 support has been corrected. + + OpenBSD + + * Initial OpenBSD 4.4 support. + + Solaris + + * Updates to allow compiling on newer OpenSolaris are now included. + + +OpenAFS 1.5.56 (2008-12-30) + + All platforms + + * libuafs (userspace cache manager) updated to correct several errors. + + * Additional rx debugging support is available as a conditional + compile. + + * A race condition in Rx leading to a panic has been corrected. + + * Rx idle time tracking has been corrected. + + * ubik clone server support has been corrected. + + All server platforms + + * Salvager no longer leaves cores in vice partitions. + + * The vol-dump tool now supports dumps larger than 2gb where possible. + + * Operations on multiple files now report all FIDs in the audit log. + + * butc XBSA support now works correctly on amd64. + + Microsoft Windows + + * The NetIDMgr AFS Provider automated configuration logic was broken + by the introduction of Kerberos referrals. If the realm of the + identity cannot be determined, the workstation cell is now assumed + to belong to the newly created identity. + + * Avoid a reference count under flow during rename operations. + + * Avoid a crash caused by treating an arbitrary length directory + search mask as an 8.3 mask. + + * Prevent rename operations if a case insensitive match for the target + name already exists and does not refer to the object being renamed. + + * Increase the maximum number of background daemons to 64. + + * Fix the UAC manifest applied to afs_config.exe + + All UNIX client platforms + + * Updates to disconnected AFS support. + + FreeBSD + + * FreeBSD 7.1 is now supported. + + * amd64 FreeBSD is now supported. + + Linux + + * Generic fh (exportfs API) cache type is now available. + + * Avoid some oopses due to backing_dev_info inode fields not being + filled. + + * 2.6.28 is now supported. + + MacOS + + * 10.3 support has been corrected. + + Solaris + + * Large partition support has been corrected. + + * Filesystem-agnostic cache is now available on Solaris 10 and 11. + + +OpenAFS 1.5.55 (2009-11-10) + + All platforms + + * Salvager avoids leaving core files in vice partitions. + + * NFS translator fixes. + + * Unresponsive server handling fixes. + + * A volserver race which could result in duplicate transactions is + fixed. + + Microsoft Windows + + * Fixes a panic caused by corruption of the SMB virtual circuit list. + (race condition) + + * Fixes a panic caused by receipt of a UTF-16 string that cannot be + converted to UTF-8. + + * Implements a more aggressive recovery algorithm for Netbios errors + that result in loss of communication to the AFS SMB server. + + * Improve pioctl response time when testing whether or not a PATH is + in AFS. + + * Adds support for linked cells. + + * Increases the length of the cell and realm names that can be input + into the Network Identity Manage AFS provider configuration dialog. + + All UNIX client platforms + + * Disconnected AFS avoids infinite recursion during rmdir. + + Linux + + * Support for 2.6.28 (not complete for NFS translator modules). + + * Support for using exportfs API for filesystem-agnostic cache. + + * Disable backing store readahead. + + * Avoid deadlocks when writing back mmapped files larger than the + cache. + + * Avoid Oops when doing PAG garbage collection. + + +OpenAFS 1.5.54 (2008-10-08) + + All platforms + + * Updates for new Tivoli X/Open API finding. + + * A double-free is corrected in Rx. + + All server platforms + + * Ubik cleans up file descriptor cache correctly when doing recovery. + + * Enhanced vldb error checker included. + + Microsoft Windows + + * Prevent a crash that could occur when multiple file / directory + change notifications are processed simultaneously. + + MacOS + + * AFS claims more free space so Finder will attempt file copies. + + Linux + + * Avoid spurious ENOENT when calling gwtcwd() on a volume root. + + * Avoid spurious ENOTDIR during fakestat. + + +OpenAFS 1.5.53 (2008-09-26) + + All platforms + + * rx avoids many packet leaks. + + * rx jumbogram disabling now works (and is the default). + + All server platforms + + * Demand Attach fileserver tries to avoid issues tracking offline + status of volumes. + + Microsoft Windows + + * Many potential deadlock conditions due to out of order lock + acquisitions have been corrected. + + * A race condition resulting in an undercount on the cm_scache_t + reference counts has been corrected. + + * An empty string when sent as an ioctl path is now properly + interpreted as meaning the current directory. This affects "fs + lsm", "symlink list", etc. + + * Fix smb string parsing differences where the smb protocol + documentation does not match the actual Windows implementation. + + * Random access denied errors fixed. + + * A file server lock synchronization issue was corrected in SMB + NTCreateX and NTTranCreate operations. This bug prevented properly + operation when loading roaming profiles. + + * Fix a heap overwrite error during server probe operations if a new + server is added while a probe operation is in progress. + + * Fix an LSA memory leak that was the result of an LSA error. + + * Do not leak cm_cell_t objects if the VLDB server lookup fails. + + * Only initialize rx mutex/lock objects once. + + * Do not nul terminate the AFS volume name when reported to Windows. + + * Improve VNOVOL error handling. Prevent updated vl information from + being destroyed immediately after it was acquired. This bug + prevented proper fail over when volumes are moved or removed from a + server. + + * Remove volume id from the server volume list in response to VMOVED + and VNOVOL errors. + + * "fs flushXXX" commands now destroy locally built B+ directory trees. + + * Prevent mixture of locally modified directory pages and file server + directory pages. + + * Fail over to alternate vl servers if a ubik error is returned. + + All UNIX client platforms + + * Disconnected AFS now supports read-write mode. + + * volserver now builds correctly. + + AIX + + * AIX 6 is now supported. + + FreeBSD + + * FreeBSD 7 is now supported. + + Linux + + * cache bypass is now supported. + + * 2.6.x kmod compilation now uses kernel compile options always. + + * Support through 2.6.27. + + MacOS + + * Show more space free so Finder doesn't get confused. + + Solaris 10 + + * Default to namei rather than inode. + + +OpenAFS 1.5.52 (2008-08-18) + + All platforms + + * Initialize volume updateDate at volume creation. + + * Avoid potential corruption of directories during salvage. + + * Check for out of memory condition during allocation of additional Rx + packets. + + Microsoft Windows + + * Restore support for Windows 2000 (broken in 1.5.50). + + * Perform additional validation on volume names in mount points during + creation and evaluation. + + * Fix several deadlocks, races, and reference count issues. + + * Further optimize SMB Directory Search processing and minimize the + number of InlineBulkStatus RPCs sent to the file server. + + * Enable "bos restricted" operations. + + * Fix the create of submounts used by the AFSCreds and afs_config + drive mapping tabs. + + * Fix a short name truncation bug. (1.5.50) + + * Fix the error code reported when attempting to delete a file on a + readonly volume or one that is marked with the readonly DOS + attribute. + + * Fix a heap corruption error when reading the CellServDB file + location. + + * Add the "RxUdpBufSize" registry value. The new default is 256KB. + + * Do not include trailing NULs in the directory search output. + (1.5.50) + + * Pre-allocate 64 Rx Packet buffers per thread in order to improve + performance. + + * For debugging: add smb lock requests and stat cache lock allocations + to the output from "fs memdump". + + NetBSD + + * Workaround broken sigwait() to allow fileserver to shut down + correctly pre NetBSD 5.0. + + Solaris 10 + + * Default to namei fileserver; Allow inode fileserver at configure + time by override. + + NFS translator + + * Try harder to avoid kernel panics for malformed requests. + + +OpenAFS 1.5.51 (2008-07-29) + + All platforms + + * salvager tries harder to arrange for clients to get VBUSY while + salvaging single volumes. + + * salvager avoids certain corruption when salvaging directories. + + * Rx connection clones disabled. + + Microsoft Windows + + * The 32-bit EXE 1.5.50 installer failed to properly install the C + Runtime library. When used as an upgrade OpenAFS would continue to + work but when used as a new installation, OpenAFS binaries would + fail to load. + + * Fixes the "fs" and "symlink" commands to properly parse Unicode path + prefixes during the pioctl remote procedure call. This bug would + result in file not found errors for files and directories that + clearly exist. (Bug introduced in 1.5.50) + + * Large File support is disabled. (Bug introduced in 1.5.50) + + * Removes the possibility of a deadlock during volume location update + operation if all of the reported file servers are unreachable at the + time of the update. + + * Ensures that reference counts are properly incremented/decremented + on Rx connection objects used for volume location RPCs. + + * Over Quota errors during cm_FSync() calls would lead to an infinite + loop as the error was never propagated to the caller. + + All UNIX client platforms + + * Bugfixes to disconnected AFS support in the cache manager. + + +OpenAFS 1.5.50 (2008-07-16) + + All platforms + + * volserver puts recloned volumes back online before returning the + volume to the fileserver, avoiding spurious VNOVOL errors. + + * Updated TSM X/Open API support available. + + * Demand Attach fileserver will not crash due to accesses during + volume cloning. + + * Substantial documentation updates. + + * Demand Attach fileserver state tracking and analyzer tool + improvements. + + * UAFS userspace cachemanager updates. + + * Corrected support for anti-meltdown protection in the client. + + Microsoft Windows + + * UNICODE Character Set Support. + + * Pioctl interfaces to the cache manager have been refactored to + provide layering between the SMB specific code and the general + purpose ioctl operation. + + * Garbage collect dead SMB virtual circuits as soon as they are no + longer being referenced. This avoids problems with outstanding + locks not being dropped when the virtual circuit becomes invalid. + + * Remove the IBM Administration Reference documentation and replace it + with the OpenAFS Command Reference Manual. + + * Avoid calling rx_SetDeadTime and rx_SetHardDeadTime functions each + time a connection is about to be used. Do not hold a lock on the rx + connection object while it is being selected. This avoids a race + between threads attempting to set the timeout values and removes a + bottleneck that was hampering performance. + + * Ensure that the smb directory attribute is set for all directory + objects. + + * Replace the VC Runtime EXE installer with the MSI installer in the + NSIS installer scripts. + + Solaris + + * Support for updates to OpenSolaris. + + Linux + + * Correct dentry revalidation for cross-directory renames. + + * Updated rpm packaging materials for 1.5 release series and 2.4 + kernels. + + * Corrected syscall table probing. + + * NFS translator updates for current kernels. + + +OpenAFS 1.5.39 (2008-06-24) + + All platforms + + * Updates for Demand Attach fileserver. + + Microsoft Windows + + * Fix two memory leaks. + + * Fix one missing lock. + + * Handle access denied errors when writing dirty buffers. + + * Fix two errors that would cause the *experimental* AFS Servers + to crash. + + +OpenAFS 1.5.38 (2008-05-24) + + All platforms + + * Add read-only disconnected support. + + +OpenAFS 1.5.37 (2008-05-21) + + All platforms + + * Includes a number of optimizations for testing. + + +OpenAFS 1.5.36 (2008-05-09) + + All platforms + + * Rx optimizations now attempt to deal with high latency WANs. + + * Client will not wait infinitely for a server which is not providing + data. Additional servers will be polled without marking the server + which is not providing data down. + + * vos move will not erroneously unlock locked vldb entries on failure. + + All server platforms + + * Fileserver avoids a potential infinite loop when a client + relinquishes an address. + + * Fileserver large setting now configures more threads. + + * Fileserver properly registers uuids of new clients. + + * Ubik servers do not improperly hide updates from clients. + + * Fileservers reserve enough file descriptors such that each thread + can cache one to avoid spurious errors. + + Microsoft Windows + + * Fix a cm_buf_t reference count leak when attempts to write dirty + buffers to the file server from within cm_IncrSyncer() fail. + + * Prevent udebug from crashing. + + * Another VNOVNODE issue fixed. When writing a dirty buffer to the + file server, if VNOVNODE is received, mark all buffers as invalid + without further attempts to contact the file server. + + +OpenAFS 1.4.12 + + All client systems: Major bugfixes. + File servers: Major bugfixes. + + * New functionality: + + All systems: + + - Provide portable (pioctl) method for discovering what PAG a user is + in. Required to support userspace PAG information collection on AIX + 5.1, and knowing whether Linux uses one group, two group, or only + keyring based PAGs. (124709) + + * Bugfixes: + + All systems: + + - Fixes to avoid issues cleaning up deleted hosts in the fileserver (126454) + + - Fixes to avoid dropping writes due to server idle timeouts. + + - Don't miss cache chunks of large files while truncating. + + - Avoid null pointer dereference for unexpected volume names in volume + utilities. + + - Don't mark connections waiting for additional packet window availability + idle. + + - Kerberos 5 utilities (klog.krb5, aklog) enable weak encryption support. + + - Avoid a double-free of an Rx call structure during a client fetch error. + + - Avoid losing hosts during address changes. (125215) + + - Clients shouldn't trust Fetchdata replies for the size of returned data. + + - fileserver will not hang when attempting to cleanup and dump core. + + - salvager will not leave core files in random directories. + + - avoid letting retransmit timer get to 0 seconds. + + - in event of dbserver contact failure, shut fileserver down cleanly. + + - handle large partitions during check for needed disk space at + client start. + + - time out Rx connections if network unreachable error received. + + - avoid dereferencing NULL pointer freeing Rx packets in receive. (125110) + + - mark stack not executable in LWP. (125491) + + - return a correct VolumeSync structure from Bulkstat RPCs in fileserver. + + - client attempts to better free memory at shutdown. + + - clear rx call queue safely. (125110) + + - retry VLserver registration on failure in fileserver. + + - update accessdate for volumes on access in fileserver. + + - additional safety checks on vlserver operations to avoid + database corruption. + + - make ktc_curpag available on all builds. (125155) + + FreeBSD: + + - Build fixes. + + Linux: + + - Handle kernel changes through 2.6.33. + + - Fix oops in clear_inode due to missed locking. (125589) + + - Better handle /afs mount failures. + + - Clean up after failures creating our kernel kmem cache. + + - Work around memory management issues with some kernels when configuring + the buffer cache/bdi (126514) + + - Rename compile_et to afs_compile_et to avoid RPM conflicts. + + - Handle whole-file locks properly. (126561) + + - Deal with kernel autoconf header renaming. + + - Handle SELinux cache backing file labels better to avoid potential oops. + (92944,125544) + + MacOS: + + - klog now works correctly on 64 bit machines. + + - launchd now used to launch AFS at boot. + + - Preferences pane included for 10.4 and later. + + - Older versions can now be installed from packages. + + - Finder does not trigger bogus AFSDB lookups in /afs in dynroot mode. + + - Include package with debug kernel module symbols. + + OpenBSD: + + - Build fixes. + + - Support for x86_64. + + Solaris: + + - Handle ZFS caches usefully. (125365) + + - Implement additional pathconf support. + +OpenAFS 1.4.11 + + Linux client systems: Major bugfixes. + All client systems: Minor bugfixes. + File servers: Major bugfixes. + + * New functionality: + + All systems: + + - Provide portable (pioctl) method for discovering what PAG a user is + in. Required to support userspace PAG information collection on AIX + 5.1, and knowing whether Linux uses one group, two group, or only + keyring based PAGs. (124709) + + * Bugfixes: + + All systems: + + - Fix bosserver to invoke salvager with "-force" instead of ambiguous + "-f". (124916) + + - Cleanup for ptserver argument parsing to allow debug mode to work. (124893) + + - Sanity checking for ptserver log levels. (124894) + + - Fix for uninitialized memory dereference in klog.krb5. + + - Fix an overflow in the cellconfig code used by client and server. (124891) + + - Fix an erroneous vos verbose mode format string. + + - Avoid losing writes on mmap()ed files when cache is memcache. (124671) + + - Provide an afsd switch to allow override of the maximum MTU. (124880) + + - Provide support for encrypt mode in pts. + + - Fix race in background sync code which could cause volumes to go offline. + (124359) + + - Fix fileserver to avoid a null pointer dereference in client identity + lookup routines. (125020) + + - Improve handling of moves of volumes from 1.5 series fileservers. (18349) + + FreeBSD: + + - UKERNEL build fix. (124681) + + Linux: + + - Allow syscall probing to be disabled by switch to configure at build time. + + - Fix bug in anti-recursion protection for mmap clients. (124627) + + - Avoid a panic caused by changing credentials during VFS operations. (124737) + + - Avoid need for rcu subsystem when unavailable. (124986) + + - Improve keyring PAG setup code. (125001) + + - Avoid possible ext3 cache truncation issues. (124942) + + MacOS: + + - MacOS 10.3 UKERNEL build fix. (124681) + + OpenBSD: + + - Update support for 4.5 (124719) + + OpenSolaris: + + - Updates for newer OpenSolaris kernels. (124116, 124924) + +OpenAFS 1.4.10 + + All client systems: Security fixes. + File servers: Major bugfixes. + All systems: Minor bugfixes. + + * Security fixes: + + All client systems: + + - Avoid a potential kernel memory overrun if more items than requested are + returned from an InlineBulk or BulkStatus message. (124579) + + Linux client systems: + + - Avoid converting negative errors into invalid kernel memory pointers. (124580) + + * Bugfixes: + + AIX: + + - Don't build aklog NAS module when krb5 is not available. (124522) + + FreeBSD: + + - Additional fixes and support. (124107, 123917) + + Linux: + + - Support 2.6.28. (123580) + + - Support 2.6.29. (124115) + + - Attempt to support 2.6.30 (124560) + + - Avoid race during truncation. (124094) + + - Dynamic vcache allocation support, to deal with inotify vcache pinning. (124334) + + - Correct use of truncate_inode_pages to vmtruncate for locking issues. (124128) + + - Update RPM configuration. (123650, 102673, 124272) + + - Update kernel feature detection. (124507, 123604) + + - Do appropriate locking for CellServDB in /proc. (124407) + + MacOS: + + - Fix MacOS 10.3 support. + + - Add candidate Darwin 10 support. + + NetBSD: + + - Corrected NetBSD version tests. (123647) + + OpenBSD: + + - Update support for 4.4 (124541) + + Solaris: + + - Support cache filesystems which do not allow open by inode number, enabled by + default on Solaris 9 and later. (123677) + + - Improve error code return quality. (124426) + + - Allow large partitions on Solaris servers. + + All client systems: + + - Avoid improper error messages about key version when krb5 is in use. (124220) + + - Avoid attempting to free kernel memory which was already freed. (124531) + + - Properly count offline volumes in vos client. (124333) + + All server systems: + + - Avoid 64 bit time issues in callback dump files. (124451) + + - Support more than one local Kerberos realm; Usernames are assumed to be the + same across realms. + + - Ubik recovery is corrected to avoid spurious errors. (123723) + + - Do proper host address hashing for little endian machines in fileserver. (124447) + + - Update backup utility to properly compute header needs in the backup buffer. + (124425) + + - Avoid blocking during Rx unused connection reaping. + + - Avoid leaking file handles in the fileserver when closing a volume. (124359) + + - Fix bosserver corefile naming to be y2k-safe. (124340) + + - Avoid potential infinite loop in deleted host handling in the fileserver. + + - Support large volume dumps in vol-dump. (123984) + + - Build butc XBSA support on 64 bit systems. + + All systems: + + - Properly track Rx connection idleness for timeouts. + + - Additional documentation. (124472) + + - Avoid a race which may result in an in-use Rx packet being freed. (123799) + +OpenAFS 1.4.9 + + All client systems: Security fixes. + + * Security fixes: + + All client systems: + + - Avoid a potential kernel memory overrun if more items than requested are + returned from an InlineBulk or BulkStatus message. (124579) + + Linux client systems: + + - Avoid converting negative errors into invalid kernel memory pointers. (124580) + +OpenAFS 1.4.8 + + File servers: Major bugfixes. + All systems: Minor bugfixes. + + * Bugfixes: + + AIX: + + - AIX 6.1 is now supported. + + - Unpin kernel memory references after free. (99456) + + FreeBSD: + + - FreeBSD 7 is now supported. + + Linux: + + - Avoid deadlock when writing back pages in an mmap()ed file larger than + the cache. (120491) + + - Update process tree walking for PAG garbage collection to avoid oopses. + (116603) + + - fakestat mode now correctly avoids spurious ENOTDIR errors. + + - Use kernel build system for all platforms. + + - Remove openafs directory from proc in correct order. (112910) + + - Handle renames across directories correctly in the linux dcache. (74672) + + - Probe syscall table when possible. (105457) + + - Mount point parsing is now updated to handle only well-formed mount + points rather than similarly-formed symlinks. (113558, 100836) + + - ucontext-style LWP is now anbled for glibc versions newer than 2.3. + + MacOS: + + - Update available space shown. (112910) + + NetBSD: + + - Work around broken SIGWAIT. (111404) + + Solaris: + + - Solaris 10 now defaults to namei fileservers. + + - NFS translator issues fixed. + + - Changes to address Solaris updates. (105495) + + All client systems: + + - udebug correctly displays the last "yes" host. + + - Allow more vldb lookups to be cached in the client. + + - Fix aklog to not be excessively verbose when not requested. + + - Add support for timing out accesses which are not completing in a timely + manner. + + - Properly flag backup volumes being added to the vldb by vos syncvldb. + + All server systems: + + - fileserver "large" setting now implies 128 threads instead of 12. + + - fileserver check for duplicate uuids is now applied correctly. + + - Newer xbsa APIs are supported for TSM integration in butc. + + - salvager avoids corrupting length of directory objects. (111585, 107767) + + - volserver avoids a race during volume release so a volume will not + appear to be offline. (107258) + + - Add support for returning errors when accesses are not completing + in a timely manner. + + - Avoid potential race in the volserver when creating transactions. (121263) + + - Return sensible error when a release or restore exhausts server + resources. (121040) + + - volserver now returns EXDEV if a new replica would duplicate one which + already existed elsewhere on the server. + + - Disable jumbograms by default. + + - volserver updates a volume's updateDate on volume creation. (110943) + + - Partitions over 2tb are now supported. (88811) + + All systems: + + - Re-enable Rx client keepalives. (20727) + + - Support autoconf 2.62. (118058) + + - Update Rx to avoid leaking packets. + + - vos supports the -noresolve options to avoid issues with 127.0.0.1 being + named in /etc/hosts. + + - Additional documentation. (104110) + +OpenAFS 1.4.7 + + File servers: Major bugfixes. + All systems: Minor bugfixes. + + * Bugfixes: + + AIX: + + - Kerberos as included in AIX has missing symbols. AFS krb5 tools now + deal correctly. + + - AIX LAM aklog plugin can now be used CDE screenlocker. + + - Add support for getting the current PAG in pagsh and PAM. + + - Avoid sending a terminal hangup to STREAMS in aklog. + + - Fix afsdb support in the client. + + Linux: + + - Kernels through 2.6.25 are now supported. (77370,88000,83716,83890,80463) + + - Client now only hashes dirty inodes. (78544) + + - Fix to avoid returning invalid mount point data when -fakestat-all is in use. + (93898) + + - RPM build system updates. (93616) + + - Restored write-on-close-or-fsync semantics when possible. (17509) + + - Enabled support for flock() on files in AFS. (53457) + + - ARM Linux now supported. + + - Kernel keyring support updated. + + - Fix client-displayed timestamp ordering by zeroing nanosecond field. + + MacOS: + + - Boot time init script now uses afs.conf to store config options. (81825) + + - Avoid kernel panic due to excessive lock tracking when removing files. + + - Avoid leaking kernel memory when trying to read() a directory. + + Solaris: + + - Avoid potential kernel panic if the root vnode of AFS changes. + + - Avoid potential kernel panic when shutting down if contracts are in use. + + - Avoid potential delays when creating new PAGs if the system clock + has gone backwards. + + All client systems: + + - At client shutdown, try harder to clean up in-use resources. (74479) + + - When fakestat is in use, enable optimization for Gnome Nautilus lookups. + + - Properly hold lock when updating disk cache metadata to avoid + kernel panic. (59136) + + - Avoid wrapping to the start of a file when attempting to write a large file + to a pre-largefile fileserver. (73720) + + All server systems: + + - Fixed to avoid truncating ubik databases during recovery. (77183) + + - fileserver issue with internal file cache filling has been fixed. (87977) + + - fileserver thread quota enforcement now done in all cases. (87416) + + - fileserver avoids potential network-related deadlock when breaking + callbacks. + + - fileserver avoids crash due to race of resource creation and user requests + at startup. + + - fileserver avoids crash when reinitializing Ubik connections. + + - volserver fixed to avoid leaving orphaned files during restore. (46937) + + - volserver now supports convertROtoRW for inode fileservers. + + - Support disabling kerberos 4 style username protection in servers. (75101) + + All systems: + + - Fix to butc to avoid crash due to threaded library variant. + + - Fix to avoid network retransmission issues if the system clock goes + backwards. + + - vos syncvldb and syncserver now support a dryrun (do nothing) mode. + + - vos addsite now supports adding a site where a replica is already + available. + + - vos clone now supports creating properly-named readonly and backup clones. + + - vos restore now allows an older copy of a volume at an alternate site to + not be removed. + + - cmdebug now supports dumping a client's CellServDB. + + - cmdebug now supports showing human-readable expiration times. + + - aklog now handles Kerberos referrals. + + - Additional documentation now included. (89288,89289,86677) + +OpenAFS 1.4.6 + + All systems: Major bugfixes. + + * Bugfixes: + + All systems: + + - fileserver host tracking code had a missing lock on a host structure; + that lock has been added. + + - fileserver handling for clients which are giving up callbacks did not + hold a lock, making it unsafe and allowing clients to potentially + crash the server by racing. + + - fileserver will now leave a corefile when it is doing a shutdown due + to error conditions. + + - fileserver again allows ufs as a valid filesystem type (regression in 1.4.5). + + - cbd handler for fileserver status data has an interpretation error which + could cause crashes corrected. + + - fileserver accurately tracks number of callbacks on a given file. + +OpenAFS 1.4.5 + + All systems: Minor bugfixes. + New systems: MacOS 10.5. + + All systems: + + - fileserver address tracking is improved to avoid potentially merging + unrelated hosts. + + - Documentation updates. + + - namei fileserver now does fsync()s in background batches for performance + improvements. + + - Kerberos ticket support corrected in bundled Kerberos 4 utilities on 64 + bit platforms. + + - fileserver includes limited per-host thread quota support to avoid + resource starvation. + + - fileserver deals with more damaged volumes without asserting. + + - vos validates dumpfiles before attempting restores. + + - vos clone will no longer potentially delete the parent volume. + + - Client no longer permits empty UUID to be created. + + - fs uuid command for checking, regenerating UUID added. + + - Updates for gcc 4.2. + + - fileserver treats w (write) permission as granting read lock permission + in addition to write. + + AIX: + + - Bundled NAS Kerberos is now supported. (5.x) + + - LAM aklog module is provided. (5.x) + + - Associate cache files with correct filesystem to avoid snapshots when + performing maintenance on local filesystems. + + Irix: + + - Makefile updates. + + Linux: + + - Kernels throigh 2.6.23 are known to work. + + - Updates to syscall table probing. + + - Bug fix in keyring PAG support to avoid oops. + + - updated sample RPM configuration. + + - sparc32 lwp support updated. + + - Avoid potential oops in symlink support in certain older kernels. + + - Avoid potential deadlock during vmalloc. + + - Corrected locking while interacting with kernel task list. + + MacOS: + + - Several panics fixed, including remove_fsref. (10.4 and later) + + - IP address changes now tracked. + + - Corrected support for dropboxes (li access without r) with cp and Finder. + + - fstrace and ancillary files now included. + + - man pages are now installed in the default MANPATH. + + - Servers will be timed out quickly if there is no route available. + + - Temporary files from remove-while-busy now cleaned up correctly. + + Solaris: + + - Updates to accomodate kernel interface changes. (10u4 and later) + + - knfs and NFS translator support updated. + + - Changes to accomodate version 5.4 xbsa library. + + - Updates for new SunStudio defaults. + +OpenAFS 1.4.2 + + All systems: Major bugfixes. + + * Bugfixes: + + All systems: + + * A bug in the namei volserver which could erroneously make a replicated or + moved volume go offline has been fixed. + + * Volume package users (fileserver, volserver, salvager) avoid using lockf to + avoid leaking byte range locks on volume internal files. + + MacOS 10.4: + + * A bug where the client kernel module could free stack memory (which caused + issues with 64 bit Intel most commonly) has been fixed. + + Linux: + + * A missing kernel feature test has been fixed. + + * group based PAG support is still enabled when possible. + + * ia32 syscall table support for amd64 has build fixes for modern kernels. + + Solaris: + + * fopen() is not safe for use with more than 255 file descriptors open; + Emulate it in the afsconf package so afsconf can be used in the fileserver. + + Windows: + + * DNS registration is disabled for the loopback adapter, and we make sure + Netbios is turned on. + + Since 1.4.1: + + All platforms: + * Remove use of ubik_Call in the source code so prototypes are used. + + * Avoid synchrony in call from the fileserver to the ptserver. + + * Fix a bug in the backup suite when restoring. + + * fileserver and volserver now log for error conditions which may cause + exiting. + + * rx avoids a stack overrun when more packets are needed. + + * volserver avoids holding a lock too long when purging volumes. + + * volserver lock initialization fixes + + * volserver volume nuke fixes to avoid leaving files behind + + * fileserver avoids error when authenticating ptserver requests + + * fileserver no longer crashes when GetCPS fails + + * salvager enhancements to deal better with corrupt volumes for namei + + Unix: + + * aklog deals with KDCs which give "generic" replies to principals not + existing. + + * Fix bug in cache parameter autotuning + + RedHat: + + * packaging fixes + + Linux: + + * amd64 pthread library family updates. + + * autoconf fixes for kernel feature testing + + * keyring PAG support now only enabled if needed features are present + and other updates + + * inline a version of BUG() so we get better oopses + + AIX: + + * tsm is updated to work with the new AIX 5 interface. + + MacOS: + + * Cross compile fixes + + * Packaging improvements + + * Large file support fixed (Thanks to Chaskiel Grundman) + + * Fixes for Leopard seed. + + * Installer image updates + + Windows: + + * Removes race conditions and a deadlock introduced in 1.4.1 + + * Fixes ANSI filename option. + + * Establishes new connections to file servers when + IP address configuration changes are detected. + + * Improved CIFS compatibility + + * Cache Manager optimizations + + * Fixes vlserver failover when mounting 'root.afs' + (Freelance mode disabled) + + * Installs help files in the correct location for use by afscreds.exe + and afs control panel. + + * Improve reporting of "over quota" and "disk full" errors. + + * Prevent crash when evaluating mount points to volumes that do + not exist + + * Removes auto-registration of AFS ID in foreign ptservers from + Integrated Logon DLL. This prevents crashes if the DLL is loaded + and unloaded prior to termination of the process. + + * SDK moved to \Program Files\OpenAFS\SDK + + * NSIS and WiX Installer Frameworks update to the latest versions + + * Improvements to the Kerberos Logon Integration + + * Prevents exception in Integrated Logon DLL during SysPrep + + * Prevents displays of MessageBox dialogs in response to Network Adapter + errors + + * Hard Dead and Connection Timeout values restricted to the CIFS Session + Timeout value. + + * Correct writing of BackConnectionsHostNames registry value. + + * Properly recycles Volume entries + + * The AFS Explorer Shell Extension always finds its resource library. + + * The export list for AFSAUTHENT.DLL has been corrected. (The AFS + plugin for NetIDMgr will no longer use 100% of CPU.) + + * Renaming files on Microsoft Vista Build 5536 works. + + * Better handling of "." directory in fs commands + + * Add OpenAFS License text to installers + + * fs setquota and fs mkmount commands behave the same as the UNIX + version + +OpenAFS 1.4.2 + + All systems: Major bugfixes. + + * Bugfixes: + + All systems: + + - Volume dump parsing code in the volserver has better error checking. + + - salvager has improved damaged volume handling on namei fileservers. + + - fileserver has size validity checks for when large file support is disabled. + + - fileserver avoids potentially multiply adding a host to its hash table. + + - rxkad client private data storage is allocated dynamically on ticket size. + + - Handle universal error code translation for file locking. + + - fileserver needs to swap callback connections on a client IP change. + + - fileserver host package revised to reduce lock contention. + + - Rx has been fixed to count hard acks, thus opening the congestion window. + + - All servers support bound Rx sockets (on one interface). + + - namei fileserver no longer use lockf() to avoid range locking issues. + + - most binaries now support the -version switch. + + - backup suite fixes for 64 bit platforms. + + - volserver avoids holding holds during volume purges. + + - volserver avoids losing files on namei during vos zap. + + AIX: + + - fileserver now properly supports large files. + + - TSM updates for AIX 5 + + - Kernel module avoids leaking Rx packets. + + - Avoid use of global ubik client structure in fileserver. + + - Update ubik call client interface to allow for prototyping. + + - audit logging fixes when stdarg does not provide integral va_list type. + + MacOS 10.4: + + - A bug where the client kernel module could free stack memory (which + caused issues with 64 bit Intel most commonly) has been fixed. + + - Packaging fixes and updates. + + - Uninstaller added. + + - Fix large file support. + + Linux: + + - autoconf kernel feature testing has been restructured. + + - PAG garbage collection is enabled by default. + + - Kerberos updates for RHEL3. + + - Fix POSIX lock enrollment for older Linux kernels. + + - Updates for new 2.6 kernels. + + - Avoid deadlocks in put_inode handler. + + - Keyring-based PAG support. + + - Fixes to avoid getting better oops info in the kernel. + + Solaris: + + - Remove some kernel symbol bindings for symbols we don't use. + + - Cleanup for loopback mount of AFS on Solaris 10. + + - Avoid issues with stdio not supporting file descriptors above 255 on + Solaris 8 and lower in the fileserver. + +OpenAFS 1.4.1 + + All systems: Major bugfixes. + New systems: MacOS 10.4 (PowerPC and Intel) + + * Bugfixes: + + All systems: + + - Several race conditions in the host tracking and handling in the fileserver + which could cause inconsistent behavior and crashes have been fixed. + + - A fileserver bug where a reference to a volume could be leaked and later + cause a deadlock as a result of a bulk status call + + - Reference counting of fileserver objects in unsigned 32 bit integers + instead of signed 16 bit integers. + + - Avoid type mismatches when handling time values (betweemn 32 bit and 64 bit + variables). + + - Fix a memory leak during multilevel packet queue handling. + + - Audit log output had been updated to include FIDs for newly created files. + + HP-UX 11i: + + - 64 bit (large file) inodes are supported. + + - Salvager will now handle large (>4gb) partitions. + + * New features: + + All systems: + + - asetkey is now included to ease Kerberos 5 integration for server + administrators. + + - A new fileserver statistics collection including callback statistics was + added. + + - man pages are now generated. + + Microsoft Windows: + + - Fixes error message problems experienced by fs.exe and the AFS Explorer + Shell Extensions related to the use of Universal Error Codes by the + AFS File Server + + - Adds full SMB/CIFS support for byte range locking. In this implementation + all locks are allocated locally and the AFS lock privilege is ignored. + While this will not prevent two processes on different machines from + simultaneously writing to the same file, it will prevent two processes + on the same machine from doing so. + + - The UP server check period has been reduced to once every ten minutes to + match the period used by the UNIX clients. The shorter period will + assist clients maintain RX connections through NATs. + + - Fixes the DOWN server check logic to ensure that any server that responds + to a check is marked UP unless it is in the process of restarting. + + - Add logic to better handle objects that no longer exist on the file server. + (VNOVNODE errors.) + + - Prevent the removal of existing drive mappings by "afscreds.exe -M" + + - Fixes the procmgmt library so that it doesn't cause applications that + unload it to crash. + + - Improves the warnings written to the afsd_init.log file when the + Windows RPC Protocol drivers are improperly configured. + + - Fixes "fs setserverprefs -vlserver". Multiple calls with the same + server parameter could result in a crash of afsd_service.exe. + + - The SMB/CIFS layer was audited for reference miscounts and memory leaks. + All SMB objects are now properly counted, locked, and released when + their work is done. + + - Prevent file truncation of the user does not have the appropriate access. + + - Token management was re-written to allow user tokens to be preserved + during integrated login and freed after logoff is complete. + + - Added a mechanism by which abandoned SMB virtual circuits can be + detected and the associated resources cleaned up. + + - Prevent the allocation of SMB file handles with a value of 0 or 0xFFFF + which would be considered invalid by Windows applications. + + - Fixed the processing of cell names to ensure that they are always + treated as case insensitive strings. + + - Fixed the network provider code to avoid querying the profile location + if integrated login is disabled. + + - If a mount point string is empty, return Path Not Found to the application. + + - Windows returns WSAECONNRESET when an ICMP packet is received in response + to a transmitted UDP packet that cannot be delivered. Do not mark the + connection as bad but instead retry the request. + + - Fix the data written to the registry as part of the BackConnectionHostnames + values. + + - Fixed the rx-lwp implementation to always generate unique rx call + identitiers. + + - The default "fs minidump" type now includes data segments. + + +OpenAFS 1.3 + + * -nosettime is now the default for afsd. Use "-settime" to get the + old behavior. + + * OpenBSD is now supported. + + * Mountpoint directory information is now only faked for cross-cell + mountpoints when using the -fakestat flag (e.g. for the directories + under /afs, but not for most other volumes mounted inside the cell). + The -fakestat-all switch can be used to fake information for all + mountpoints. + + * When fakestat is enabled on MacOSX, the Finder can be used to browse + a fully-populated /afs directory. However, this precludes reliable + use of entire volumes as MacOS bundles (i.e. containing a Contents + directory in the root of the volume). + + * Mountpoint directory information can be faked by the cache manager, + making operations such as stat'ing all cells under /afs much faster. + This is enabled by passing -fakestat to afsd, but might not be stable + on all platforms. + + +OpenAFS 1.2.9 + + * The kaserver now defaults to not allowing interrealm authentication, + due to security vulnerabilities in the krb4 protocol. The new + "-crossrealm" flag to the kaserver is provided to reenable interrealm + authentication if desired. + + * RedHat Linux 9.0 is now supported. + + * Solaris 9 12/02 is now supported. Solaris 7 and 8 x86 should now + work again. + + * On Linux machines using 2.2 series kernels, 2.2.19 or higher is now + required. + + * An OpenAFS 1.2.9 afsd will not work with kernel modules built from + an earlier OpenAFS release. In general, using a mismatched afsd and + kernel modules set is unsupported; it is not recommended that you use + such a configuration on a regular basis. + + +OpenAFS 1.2.8 + + * Mountpoint directory information is now only faked for cross-cell + mountpoits when using the -fakestat flag (e.g. for the directories + under /afs, but not for most other volumes mounted inside the cell). + The -fakestat-all switch can be used to fake information for all + mountpoints. + + * HPUX 11.0 is now supported. + + * It is now possible for AFS to use Kerberos 5 directly, via rxkad 2b. + See the OpenAFS 1.2.8 Release Notes for more information on using this + capability. + + * An NFS translator kernel module is now included and compiled by + default for Solaris only. + + +OpenAFS 1.2.7 + + * MacOS X 10.2 is now supported. FreeBSD 4.3 and later support is + included in this release, but is still under active development and + should only be used by those doing active development on the OpenAFS + FreeBSD client. + + * When fakestat is enabled on MacOSX, the Finder can be used to browse a + fully-populated /afs directory. However, this precludes reliable use + of entire volumes as MacOS bundles (i.e. containing a Contents + directory in the root of the volume). + + * The fileserver will now use Rx pings to determine if clients are + reachable prior to allocating resources to them, to prevent asymmetric + clients from consuming all fileserver resources. + + +OpenAFS 1.2.6 + + * Mountpoint directory information can be faked by the cache manager, + making operations such as stat'ing all cells under /afs much faster. + This is enabled by passing -fakestat to afsd. + + * Solaris 9 FCS and Solaris 7 and 8 x86 are now supported. + + +OpenAFS 1.2.5 + + * A remote denial of service attack in the AIX and IRIX clients has been + fixed. Users of those platforms are strongly encouraged to upgrade. + + * Fixed race conditions in fileserver that could result in crash. + + +OpenAFS 1.2.4 + + * Server logfiles now more consistant about format in which hosts are + referred to. + + * vfsck on Solaris will now allow force runs (using -y flag) even if old + inodes exist. + + +OpenAFS 1.2.3 + + * Cell aliases for dynroot can be specified in the CellAlias file in + /usr/vice/etc or /usr/local/etc/openafs, in format "realname alias", + one per line. They can also be managed at runtime with "fs newalias" + and "fs listaliases". + + +OpenAFS 1.2.2 + + * Solaris 9 and Linux PA-RISC are now supported. + + * fileserver will not erroneously delay legitimate errors for 3 seconds + after 10 errors are returned (e.g. stat() on a directory you can't + read). + + * Rx MTU calculation now works for Irix, Solaris and Linux + + * If afsd is started with the -dynroot flag, /afs will be locally + generated from the CellServDB. AFSDB cells will be mounted + automatically upon access. + + * The namei fileserver allows vice "partitions" to be directories + instead of partitions and will attach and display accordingly. + Creating the file "AlwaysAttach" in the /vicepX directory is used as + the trigger to attach it. + + * TSM support for butc no longer requires editing a Makefile, simply + specify the --enable-tivoli-tsm configure option. + + * Linux builds no longer require source changes every time the kernel + inode structure changes; the OpenAFS sources will now configure itself + to the actual inode structure as defined in the kernel sources. + + +OpenAFS 1.2.1 + + * vfsck on Digital UNIX and Solaris will now refuse to fsck mounted + mounted partitions. + + +OpenAFS 1.2.0 + + * AFS now supports --prefix and the other directory options of + configure. By default AFS builds assuming it will be installed in + /usr/local. In order to get traditional AFS directory paths (/usr/afs + and /usr/vice/etc) use the --enable-transarc-paths option to + configure. More details on the new directory layout are found in + README. + + +OpenAFS 1.1.1a + + * Windows 95/98/ME/NT/2000 - Consistent versioning: Installation, AFS + Control Center, Client dialog boxes and properties pages for + executables display a consistent OpenAFS version number. Installation + detects previous installation and prompts the user for upgrade + options. + + * Windows 95/98/ME/NT/2000 - Installation features: During installation + the user can select the source of the CellservDB file, AFS home cell, + and drive mappings. During installation a drive path mapping can + include a variable that will be substituted with the current UserName + that is logged in. + + * Windows 2000/NT - Integrated logon: The Integrated Logon feature + works now. + + * Windows 95/98/ME - Logon script features: The Windows 95/98/ME client + now offers a command-line option for starting up the AFS client + without authenication. It is now possilbe to start the AFS client + first and obtain tokens, and map drives all through Windows scripts. + This helps using Windows 95/98/ME client in Kerberos 5 environment. + + * Windows 2000/NT - LANA numbers: AFS client now scans the LANA numbers + to establish the correct NETBIOS connection. NetBEUI is no longer + needed. The user no longer needs to find the correct LANA number. + + * Windows 2000/NT - OpenAFS naming consistancy: Further progress has + been made to remove references to "Transarc AFS" and replace with + "OpenAFS". + + +OpenAFS 1.0 + + * AFS now builds with configure. The README for building has been + updated and includes full details. + + * A client system can now have multiple sysname values for @sys. They + will be searched in order when looking up files in AFS. The + -newsysname argument to fs sysname can be repeated to set multiple + sysnames. + + * A new system group is created for new cells (system:ptsviewers with id + -203). If this group exists, members of this group can examine and + read the entire protection database. They can examine all users and + groups and can get the membership of any group. + + * A new program, pt_util has been added to the distribution. This + program allows users to print the contents of the protection database + or to edit the protection database without running a ptserver. It can + be used to set up a new cell without ever running in noauth mode. Run + pt_util -h for help. + + * The fs setcrypt and fs getcrypt commands have been added. These + commands allow the system administrator to require that the client + encrypt all authenticated traffic between the client workstation and + AFS. The encryption used is weak, but is likely better than sending + unencrypted traffic in most environments. Some functions, such as + looking for a volume may not be encrypted, but data transfer certainly + is. By default data is not encrypted. At this time no significant + experimentation with server performance has been conducted. + + * By default AFS is compiled with AFS_AFSDB_ENV, enabling the -afsdb + option to be given to afsd on startup. If this option is used, then + new cells will be looked up using AFSDB records stored in DNS if they + are not found in CellServDB. This means that users can create + cross-cell mountpoints in directories they control to access cells not + in root.afs, and that cells in root.afs need not be in the client's + CellServDB. + + * AFS database servers can be marked as read-only clones. Surround the + hostname in square brackets on the bos addhost command and the + database server will never be elected sync site. This is useful for + cells distributed over a wide region. + + * The AFS servers now support the -syslog flag. This flag causes them + to log to syslog rather than to files. This flag is not supported on + NT. For all servers besides the salvager, the flag can also be + specified as -syslog=facility, where facility is an integer facility + code from syslog.h. A -syslogfacility option is provided for the + salvager to accomplish the same goal. + + * If the --enable-fast-restart flag is given when configuring AFS, then + the salvager supports the -dontsalvage flag which causes it to exit + without salvaging any volumes. If this is configured into the third + command of a fs process, then the fileserver will start without + salvaging. It will fail to attach volumes that need salvaging and + they can be salvaged manually. This provides significantly better + server startup performance at the cost of administrative complexity. + + * If the --enable-bitmap-later flag is given when configuring AFS, then + the fileserver creates bitmaps for free vnodes on demand, allowing + faster starts. + + * If bosserver finds a BosConfig.new file at startup, it reads this file + and renames it to BosConfig. This allows bosserver to be reconfigured + at next restart. + + * The bosserver can be placed in a restricted mode in which AFS + superusers are only granted limited access to the server host. The + following functionality is disabled when restricted mode is in use: + + bos exec + bos getlog (except for files with no '/'s in their name)* + bos create * + bos delete + bos install + bos uninstall + + specific exceptions are made for functionality that "bos salvage" + uses: + + A cron bnode who's name is "salvage-tmp", time is now, and command + begins with "/usr/afs/bin/salvager" may be created. This bnode deletes + itself when complete, so no special "delete" support is needed. This + functionality may be removed in the future if a "Salvage" RPC is + implimented. + + The file with the exact path /usr/afs/logs/SalvageLog may be fetched, + since that is how bos salvage [...] -showlog is implimented. + + Restricted mode is enabled using a new bos command (bos setrestricted) + or bossever command line switch (bosserver -restricted). Restricted + mode can be disabled by a) sending the bosserver process a SIGFPE + (which will then allow restricted operations until the next restart or + setrestricted command) or b) editing /usr/afs/local/BosConfig (or + BosConfig.new), and restarting the bosserver. + + * The bos UserList of trusted administrators can now contain cross-realm + Kerberos principals. + + * udebug now takes --server not --servers. + + * Several error messages have been improved to include volume numbers. + + * Several new ports have been included for UNIX platforms: Darwin + (ppc_darwin_12 and ppc_darwin_13), Linux 2.4 (i386_linux24), Linux on + the Powerpc (ppc_linux22 and ppc_linux24), Linux on the Sparc + (sparc_linux22, sparc64_linux22 and sparc64_linux24). + + * Incomplete FreeBSD and Alpha Linux ports are included. The FreeBSD + port has a working server and the Alpha Linux port has a partially + working client. + + * A native client for Windows 95/98/ME has been added to the + distribution. With this program, a gateway machine is no longer + required for Windows 9x to access AFS files. One drive letter will be + created on your machine by default - Z:. The Z: drive will be the + root of the AFS tree, allowing you to browse all sites that have AFS + servers available. Additional drive letters can be defined for other + AFS directories. A Windows Explorer shell extension is included that + allows you to right click on items within an AFS tree to bring up an + "AFS" menu item and perform various operations on a file or directory. + The most useful item is "Access Control Lists", which allows you to + view and edit the permissions of a particular directory. Command line + tools are also available in the install directory. These commands + include klog, unlog, tokens, kpasswd, symlink, fs and pts. The + installable includes a readme file that contains more information on + how to use the client program and known issues. + + * Support for large caches in afsd. Cachefiles are stored in + subdirectories. The default is 2048 files per subdirectory, which + should work fine in most situations. You can use the new afsd option + -files_per_subdir to change this number. Note that the first time you + run afsd with this patch, your cachefiles will get moved into + subdirectories. If you subsequently run an older version of afsd, you + will lose all your cached files. diff --git a/NTMakefile b/NTMakefile new file mode 100644 index 0000000..4b28fda --- /dev/null +++ b/NTMakefile @@ -0,0 +1,831 @@ +# Copyright 2000, International Business Machines Corporation and others. +# All Rights Reserved. +# +# This software has been released under the terms of the IBM Public +# License. For details, see the LICENSE file in the top-level source +# directory or online at http://www.openafs.org/dl/license10.html + +# Top level nmake NTMakefile driver for building AFS. +# +# This file simply imposes a reasonable total ordering on the set of +# directories to build; this ordering is of course more strict than the +# partial ordering established by the actual directory dependencies. +# +# When porting a new directory, simply add the directory into the +# dependence chain at the earliest point possible, updating its successor +# appropriately; if the new directory is the last in the chain, then +# update the 'finale' dependency to be the new directory. + +# These three macros define the source, object, and destination folders +SRC=$(AFSROOT)\src +DOC=$(AFSROOT)\doc +TESTS=$(AFSROOT)\tests + +#If AFS_OBJDIR is not defined then use obj as relative obj folder +!IFNDEF AFS_OBJDIR +AFS_OBJDIR=$(AFSROOT)\obj\$(SYS_NAME) +!ENDIF + +!IFNDEF DESTDIR +DESTDIR=$(AFSROOT)\dest\$(SYS_NAME) +!ENDIF + +!IFNDEF NOCYGWIN +WIXCYGOPT=-dCygwinArchives +!ELSE +WIXCYGOPT= +!ENDIF + +CD = cd +MKDIR = md + +NTMAKE = nmake /nologo /f ntmakefile install +NTMAKELANG = nmake /nologo /f ntmakefile en_US +NTMAKE_HEADERS = nmake /nologo /f ntmakefile install_headers +NTMAKE_OBJS = nmake /nologo /f ntmakefile install_objs + +#debug statement support jumping to last known error +DOCD=$(SRC)\DOLASTCMP.BAT + +config: + @echo ***** $@ + $(DOCD) $(SRC)\config + $(CD) $(SRC)\config + $(NTMAKE) + $(CD) ..\.. + +procmgmt_headers: config + @echo ***** $@ + $(DOCD) $(SRC)\procmgmt + $(CD) $(SRC)\procmgmt + $(NTMAKE_HEADERS) + $(CD) ..\.. + +afsreg_headers: + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\afsreg + $(CD) $(SRC)\WINNT\afsreg + $(NTMAKE_HEADERS) + $(CD) ..\..\.. + +libafscp_headers: + @echo ***** $@ + $(DOCD) $(SRC)\libafscp + $(CD) $(SRC)\libafscp + $(NTMAKE_HEADERS) + $(CD) ..\..\.. + +lwp_headers: + @echo ***** $@ + $(DOCD) $(SRC)\lwp + $(CD) $(SRC)\lwp + $(NTMAKE_HEADERS) + $(CD) ..\.. + +rx_headers: + @echo ***** $@ + $(DOCD) $(SRC)\rx + $(CD) $(SRC)\rx + $(NTMAKE_HEADERS) + $(CD) ..\.. + +util_headers: opr_headers + @echo ***** $@ + $(DOCD) $(SRC)\util + $(CD) $(SRC)\util + $(NTMAKE_HEADERS) + $(CD) ..\.. + +opr_headers: roken_headers + @echo ***** $@ + $(DOCD) $(SRC)\opr + $(CD) $(SRC)\opr + $(NTMAKE_HEADERS) + $(CD) ..\.. + +roken_headers: + @echo ***** $@ + $(DOCD) $(SRC)\roken + $(CD) $(SRC)\roken + $(NTMAKE_HEADERS) + $(CD) ..\.. + +hcrypto_headers: util_headers + @echo ***** $@ + $(DOCD) $(SRC)\crypto\hcrypto + $(CD) $(SRC)\crypto\hcrypto + $(NTMAKE_HEADERS) + $(CD) ..\..\.. + +pthread: hcrypto_headers + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +util: procmgmt_headers afsreg_headers lwp_headers rx_headers opr + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +comerr: util + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +afs: comerr + @echo ***** $@ + $(DOCD) $(SRC)\afs + $(CD) $(SRC)\afs + $(NTMAKE) + $(CD) ..\.. + +cmd: afs + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +afsreg: cmd + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +eventlog: afsreg + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +lwp: eventlog + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +rxgen: lwp + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +opr: rfc3961 + @echo ***** $@ + $(DOCD) $(SRC)\opr + $(CD) $(SRC)\opr + $(NTMAKE) + $(CD) ..\..\.. + +hcrypto: roken + @echo ***** $@ + $(DOCD) $(SRC)\crypto\hcrypto + $(CD) $(SRC)\crypto\hcrypto + $(NTMAKE) + $(CD) ..\..\.. + +rfc3961: hcrypto + @echo ***** $@ + $(DOCD) $(SRC)\crypto\$@ + $(CD) $(SRC)\crypto\$@ + $(NTMAKE) + $(CD) ..\..\.. + +roken: pthread + @echo ***** $@ + $(DOCD) $(SRC)\roken + $(CD) $(SRC)\roken + $(NTMAKE) + $(CD) ..\.. + +rx: rxgen + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +rxdebug: rx + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +ubik_headers: rxdebug + @echo ***** $@ + $(DOCD) $(SRC)\ubik + $(CD) $(SRC)\ubik + $(NTMAKE_HEADERS) + $(CD) ..\.. + +rxstat: ubik_headers + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +rxkad: rxstat + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +procmgmt: rxkad + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +fsint: procmgmt + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +audit: fsint + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +osi_headers: audit + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\client_osi + $(CD) $(SRC)\WINNT\client_osi + $(NTMAKE_HEADERS) + $(CD) ..\..\.. + +libacl_headers: osi_headers + @echo ***** $@ + $(DOCD) $(SRC)\libacl + $(CD) $(SRC)\libacl + $(NTMAKE_HEADERS) + $(CD) ..\.. + +cm_headers: libacl_headers + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\afsd + $(CD) $(SRC)\WINNT\afsd + $(NTMAKE_HEADERS) + $(CD) ..\..\.. + +auth_headers: cm_headers + @echo ***** $@ + $(DOCD) $(SRC)\auth + $(CD) $(SRC)\auth + $(NTMAKE_HEADERS) + $(CD) ..\.. + +vlserver_headers: auth_headers + @echo ***** $@ + $(DOCD) $(SRC)\vlserver + $(CD) $(SRC)\vlserver + $(NTMAKE_HEADERS) + $(CD) ..\.. + +afsdobjs: vlserver_headers + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\afsd + $(CD) $(SRC)\WINNT\afsd + $(NTMAKE_OBJS) + $(CD) ..\..\.. + +sys: afsdobjs + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +auth: sys + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +ubik: auth + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +ptserver: ubik + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +libacl: ptserver + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +kauth: libacl + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +vlserver: kauth + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +usd: vlserver + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +bubasics: usd + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +budb: bubasics + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. +butm: budb + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +dir: butm + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +libafsrpc: dir + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +rxtests: libafsrpc + @echo ***** $@ + $(DOCD) $(SRC)\rx\test + $(CD) $(SRC)\rx\test + $(NTMAKE) + $(CD) ..\..\.. + +vol: rxtests + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +volser: vol + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +update: volser + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +bucoord: update + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +butc: bucoord + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +bozo: butc + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +bosctlsvc: bozo + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +bu_utils: bosctlsvc + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +libafsauthent: bu_utils + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +viced: libafsauthent + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +tvolser: viced + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +dviced: tvolser + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +dvolser: dviced + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +tbutc: dvolser + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +talocale: tbutc + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +talocale_unicode: talocale + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +license: talocale_unicode + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +client_osi: license + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +afsd: client_osi libafscp + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +libadmin: afsd + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +adminutil: libadmin + @echo ***** $@ + $(DOCD) $(SRC)\libadmin\$@ + $(CD) $(SRC)\libadmin\$@ + $(NTMAKE) + $(CD) ..\..\.. + +vos: adminutil + @echo ***** $@ + $(DOCD) $(SRC)\libadmin\$@ + $(CD) $(SRC)\libadmin\$@ + $(NTMAKE) + $(CD) ..\..\.. + +client: vos + @echo ***** $@ + $(DOCD) $(SRC)\libadmin\$@ + $(CD) $(SRC)\libadmin\$@ + $(NTMAKE) + $(CD) ..\..\.. + +kas: client + @echo ***** $@ + $(DOCD) $(SRC)\libadmin\$@ + $(CD) $(SRC)\libadmin\$@ + $(NTMAKE) + $(CD) ..\..\.. + +pts: kas + @echo ***** $@ + $(DOCD) $(SRC)\libadmin\$@ + $(CD) $(SRC)\libadmin\$@ + $(NTMAKE) + $(CD) ..\..\.. + +bos: pts + @echo ***** $@ + $(DOCD) $(SRC)\libadmin\$@ + $(CD) $(SRC)\libadmin\$@ + $(NTMAKE) + $(CD) ..\..\.. + +cfg: bos + @echo ***** $@ + $(DOCD) $(SRC)\libadmin\$@ + $(CD) $(SRC)\libadmin\$@ + $(NTMAKE) + $(CD) ..\..\.. + +admintest: cfg + @echo ***** $@ + $(DOCD) $(SRC)\libadmin\test + $(CD) $(SRC)\libadmin\test + $(NTMAKE) + $(CD) ..\..\.. + +afsadmsvr: admintest + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +afsusrmgr: afsadmsvr + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +afssvrmgr: afsusrmgr + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +afssvrcfg: afssvrmgr + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +afssvrcpa: afssvrcfg + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +client_talocale: afssvrcpa + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\talocale + $(CD) $(SRC)\WINNT\talocale + $(NTMAKE) + $(CD) ..\..\.. + +client_cpa: client_talocale + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +client_config: client_cpa + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +client_exp: client_config + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +client_creds: client_exp + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +aklog: client_creds + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +xstat: aklog + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +netidmgr_plugin: xstat + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. + +afsrdr: config + echo ***** $@ + $(DOCD) $(SRC)\WINNT\afsrdr + $(CD) $(SRC)\WINNT\afsrdr + $(NTMAKE) + $(CD) ..\..\.. + +rpctestlib: config fsint libafsrpc + @echo ***** $@ + $(DOCD) $(TESTS)\$@ + $(CD) $(TESTS)\$@ + $(NTMAKE) + $(CD) ..\.. + +libafscp: libafscp_headers util afs volser vlserver rx auth fsint afsdobjs + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +extra: config +! IF EXIST($(SRC)\WINNT\extra) && EXIST($(SRC)\WINNT\extra\NTMakefile) + @echo ***** $@ + $(DOCD) $(SRC)\WINNT\$@ + $(CD) $(SRC)\WINNT\$@ + $(NTMAKE) + $(CD) ..\..\.. +! ELSE + @echo ***** Skipping $@ ***** Not found. +! ENDIF + +tools: config + @echo ***** $@ + $(DOCD) $(SRC)\tools\rxperf + $(CD) $(SRC)\tools\rxperf + $(NTMAKE) + $(CD) ..\..\.. + +finale: netidmgr_plugin + @echo ***** $@ + $(DOCD) $(SRC)\$@ + $(CD) $(SRC)\$@ + $(NTMAKE) + $(CD) ..\.. + +install: finale afsrdr tools rpctestlib extra + @echo Build Finished Successfully + + +# Clean target for obj tree +clean: + $(CD) $(SRC)\config + nmake /nologo /f ntmakefile version langsetup + $(CD) ..\.. + nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile clean" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile clean" "NTMAKE_OBJS = nmake /nologo /f ntmakefile clean" media + $(CD) $(SRC)\config + nmake /nologo /f ntmakefile clean_final + $(CD) ..\.. + +# Language-only build target +lang: + nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile lang" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile lang" install + +mkdir: + -mkdir $(AFS_OBJDIR) + -mkdir $(DESTDIR) + -mkdir $(AFS_OBJDIR)\checked + -mkdir $(AFS_OBJDIR)\free + -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\checked\ + -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\free\ + -mkdir $(DESTDIR)\checked + -mkdir $(DESTDIR)\free + -mkdir $(DESTDIR)\checked\bin + -mkdir $(DESTDIR)\free\bin + -@copy $(SRC)\config\NTLANG.BAT . + +loopback: + @echo ***** Making Loopback Adapter Utility DLL + $(DOCD) $(SRC)\WINNT\install\$@ + $(CD) $(SRC)\WINNT\install\$@ + $(NTMAKE) + $(CD) ..\..\..\.. + +man-pages: config + @echo ***** $@ + $(DOCD) $(DOC)\man-pages + $(CD) $(DOC)\man-pages + $(NTMAKE) + $(CD) ..\.. + +documentation: config + @echo ***** $@ + $(DOCD) $(DOC)\xml\ReleaseNotesWindows + $(CD) $(DOC)\xml\ReleaseNotesWindows + $(NTMAKE) + $(DOCD) ..\UserGuide + $(CD) ..\UserGuide + $(NTMAKE) + $(DOCD) ..\AdminGuide + $(CD) ..\AdminGuide + $(NTMAKE) + $(DOCD) ..\..\.. + $(CD) ..\..\.. + +NSIS.i386: loopback man-pages documentation + @echo ***** Making NSIS Installer + $(DOCD) $(SRC)\WINNT\install\NSIS + $(CD) $(SRC)\WINNT\install\NSIS + $(NTMAKE) + $(CD) ..\..\..\.. + +NSIS.AMD64: + @echo Skipping NSIS Installer on non-x86 platforms; not implemented + +NSIS: NSIS.$(CPU) + +wix: loopback man-pages documentation + @echo ***** Making Wix MSI Installer + $(DOCD) $(SRC)\WINNT\install\$@ + $(CD) $(SRC)\WINNT\install\$@ + $(NTMAKE) + $(CD) ..\..\..\.. + +wix-lite: loopback man-pages documentation + @echo ***** Making Wix MSI Installer (Lite) + $(DOCD) $(SRC)\WINNT\install\wix + $(CD) $(SRC)\WINNT\install\wix + $(NTMAKE) LITECLIENT=1 + $(CD) ..\..\..\.. + +install-nsis: install NSIS + +install-wix: install wix + +install-wix-lite: install wix-lite + +media: install-wix + diff --git a/README b/README new file mode 100644 index 0000000..53f5437 --- /dev/null +++ b/README @@ -0,0 +1,20 @@ +AFS is a distributed file system that enables users to share and +access all of the files stored in a network of computers as easily as +they access the files stored on their local machines. The file system is +called distributed for this exact reason: files can reside on many +different machines, but are available to users on every machine. + +OpenAFS 1.0 was originally released by IBM under the terms of the +IBM Public License 1.0 (IPL10). For details on IPL10 see the LICENSE +file in this directory. The current OpenAFS distribution is licensed +under a combination of the IPL10 and many other licenses as granted by +the relevant copyright holders. The LICENSE file in this directory +contains more details, thought it is not a comprehensive statement. + +See INSTALL for information about building and installing OpenAFS +on various platforms. + +See CODING for developer information and guidelines. + +See NEWS for recent changes to OpenAFS. + diff --git a/README-WINDOWS b/README-WINDOWS new file mode 100644 index 0000000..4f9af25 --- /dev/null +++ b/README-WINDOWS @@ -0,0 +1,449 @@ +This software has been released under the terms of the IBM Public +License. For details, see the LICENSE file in the top-level source +directory or on-line at http://www.openafs.org/dl/license10.html + +The document now provides a step by step procedure that takes the user +from a basic Windows 2000/XP/2003/Vista/2008/Win7 workstation to an OpenAFS +development environment. Details are provided so that a 'beginning' +windows developer can build an OpenAFS installable package for Windows +2000/XP/2003/Vista/2008/Win7. + +NOTE 1: +As of the OpenAFS 1.3 release series, Windows platforms released +prior to Windows 2000 are no longer supported. As of the OpenAFS 1.5 +series, the Windows 9x components are being removed from the source tree. + + +****** Windows XP/2003/Vista/2008/Win7/2008-R2 Build Process ****** + +Building OpenAFS for Windows requires configuring a Windows +development system by installing compilation tools and header files. +OpenAFS Software development can be done on XP, 2003, Vista, Win7, +or 2008 system. The target system, where OpenAFS will be installed, +can be one of: + + * Windows XP + * Windows XP SP2 + * Windows 2003 + * Windows 2003 SP1 + * Windows XP 64 + * Windows 2003 64 + * Windows 2003 R2 (32 or 64) + * Windows Vista (32 or 64) + * Windows 2008 (64) + * Windows 7 (32 or 64) + * Windows 2008 R2 (64) + +The build process is controlled by a nmake file that generates the +necessary binaries and binds them into an install package. + +The following steps describe how to configure the development environment: + + A. Obtain a copy of the OpenAFS Source Tree + B. Install Compiler and Development tools. + C. Install SDK header files + D. Configure NTBUILD.BAT + E. Set program version Level + F. Build the binaries + I. Install Wix 2.0.5805 + J. Build Wix MSI Install Package + K. Final Results + L. Optional Items + +The Microsoft development tools require anywhere from 660 MB to 1.8GB +of storage depending on which compilers are selected. The following +versions are supported: + + Microsoft Visual Studio .NET 2005 + available via a MSDN subscription + (used for OpenAFS.org distribution) + Visual Studio 2005 SP1 is required to use Win7 as a development environment + + Microsoft Visual Studio 2008 + available via a MSDN subscription + +Under some conditions, a conflict between Windows SDK headers and Windows DDK +headers causes difficulties using Visual Studio 2008 as a development +environment. Visual Studio 2005 does not suffer from this issue. + +One of the following Microsoft SDKs is required: + + Microsoft SDK for Windows 6.1 + Microsoft SDK for Windows 7.0 + +One of the following Microsoft DDK/WDK is required: + + Microsoft Windows Driver Kit 7600 + +NOTE: Not all combinations of Visual Studio, SDK, and DDK/WDK are +known to work. OpenAFS for Windows is packaged by Secure Endpoints Inc. +using the following configurations: + + 32-bit Packages: + Built on Windows 7 + Visual Studio 2008 + Windows [Platform] SDK 6.0a + Windows DDK 7600 + Target: i386_w2k + APPVER: 5.0 + + 64-bit Packages: + Built on Windows 7 + Visual Studio 2008 + Windows [Platform] SDK 6.0a + Windows DDK 7600 + Target: amd64_w2k + APPVER: 5.02 + +The Microsoft HTML Help Workshop is required: + + http://www.microsoft.com/downloads/details.aspx?familyid=00535334-c8a6-452f-9aa0-d597d16580cc&displaylang=en + +The Microsoft Internationalized Domain Names (IDN) Mitigation APIs 1.1 is required: + + http://www.microsoft.com/en-us/download/details.aspx?id=734 + +ActiveState Perl 5.10 is required for man-page generation + + http://www.activestate.com/activeperl/ + +Cygwin is required for Docbook to HTML and Docbook to HTMLHelp conversion + + http://cygwin.com/setup.exe + +Doxygen is required for Developer Documentation generation + + http://www.stack.nl/~dimitri/doxygen/ + +The WiX installer requires about 18 MB of storage. The following +version is supported: + + WiX 2.0.5805.0 + http://wix.codeplex.com/releases/view/44405 + +Newer versions of WiX (e.g., the 3.x series) are not supported. + +The OpenAFS Source directory requires about 360 MB storage. The Source +directory size includes additional space for files that will be +generated during the build process. A full build of Free and Checked +installers on 64-bit Windows will require up to 1GB of storage. + + +STEP A. Obtain a copy of the Open AFS Source Tree. + +Transfer OpenAFS source tree onto your hardrive. The source can be +downloaded from the OpenAFS web site: + http://www.OpenAFS.org/release/snapindex.html. + +For this example, download source for version 1.7.25 using the +following URL: +http://www.openafs.org/dl/openafs/1.7.25/openafs-1.7.25-src.tar +http://www.openafs.org/dl/openafs/1.7.25/openafs-1.7.25-doc.tar + +HINT: DailySnapShots are pre-release source trees and much more +likely to have compilation errors. If this is your first attempt, do +your build based on a release version of the source, e.g. 1.7.25. Once +you have completed a build process successfully, you can experiment with +other source trees. + +You will need an unzip utility that can expand compressed tar files. +For example "Pkzip for Windows" from Pkware will uncompress tar files. +(http://www.pkware.com/) + +Expand the downloaded tar files into target directory (c:\OpenAFS), +the unzip routine will expand the source into a subdirectory tree: + c:\OpenAFS\OpenAFS-1.7.25\ + +Copy the file 'ntbuild.bat' from the 'src' subdirectory to the OpenAFS +base directory (aka %AFSROOT%): + + From a DOS command prompt window, enter the following copy commands: + + cd c:\OpenAFS\OpenAFS-1.7.25 + copy src\ntbuild.bat . + +The OpenAFS base directory should look something like the following: + + c:\OpenAFS\OpenAFS-1.7.25\ + NTMakefile + ntbuild.bat + src + doc + +STEP B. Install compiler and development tools. + +Install a copy of Microsoft Visual Studio .NET 2005. Visual Studio 2008 +can be used to produce builds but the resulting binaries cannot be used +on Windows 2000. + +(1) You can reduce the installation size by selecting "Custom" install +and remove all but the following Options: + + Microsoft Visual C++ + Data Access + +(2) When asked, Select to Register Environment Variables. + + +STEP C. Install SDK header files. + +Files from Microsoft's Platform SDK for Windows Server 2003 SP1 are +required to complete a build on Windows 2000/XP/2003. At a minimum the +following components are known to be required: + + * Core + * Data Access + * Installer + * Windows Management Instrumentation + * Web Workshop (IE) + +It is advised that you install the entire SDK. The SDK can be obtained +from: + + http://www.microsoft.com/en-us/download/details.aspx?id=6510 + +The header files that are required from a Microsoft SDK/WDK are: + + npapi.h (Windows 2000,XP,2003 builds) + netcfgx.h (NSIS Loopback Adapter installer - Windows 2000,XP,2003 builds) + netcfgn.h (NSIS Loopback Adapter installer - Windows 2000,XP,2003 builds) + normalization.h (AFS Cache Manager) + +These files come from the following Microsoft DDKs/SDKs: + + npapi.h: + Windows XP SP2 Platform SDK - include/ + + netcfgn.h, netcfgx.h: + Windows XP/2003 DDK - inc/wxp/ + + normalization.h: + Microsoft IDN Mitigation APIs 1.1 - include/ + +The Windows DDK can be obtained from: + + http://www.microsoft.com/en-us/download/details.aspx?id=11800 + +STEP D. Configure NTBUILD.BAT. + +The NTBUILD.BAT file copied to the OpenAFS base directory must be +customized for use on your development system. The provided NTBUILD.BAT +was developed for use with Visual Studio 2005 and the Windows Server 2008 +Platform SDK. It requires significant modification to construct a build +environment, due to differences between systems. + +The following variables must be defined to match your configuration: + + AFSVER_CL: Set to 1200 if using MS Visual C++ 6.0 + Set to 1300 if using MS Visual Studio .NET + Set to 1310 if using MS Visual Studio .NET 2003 + Set to 1400 if using MS Visual Studio .NET 2005 + Set to 1500 if using MS Visual Studio 2008 + Set to 1600 if using MS Visual Studio 2010 + Set to 1700 if using MS Visual Studio 2012 + + MSVCDIR: Set to the short name version of the directory into which + the visual C++ compiler was installed regardless of version + + MSVCDIR64: On AMD64 systems, set to the 64-bit visual C++ compiler + + MSSDKDIR: Set to the short name of the directory into which + the Platform SDK was installed + + NTDDKDIR: Set to the short name of the INC\WNET DDK directory + + NTDDKDIR2: Set to the short name of the INC\CRT DDK directory + + MSIDNNLS: Set the the name of the Microsoft IDN Mitigation APIs 1.1 + directory + + AFSROOT: Set to the short name of the OpenAFS Base directory. This + cannot be set to a UNC path. + + SYS_NAME: One of "i386_w2k" or "amd64_w2k" + + APPVER: 5.0 for Windows 2000 and above; 5.1 for AMD64 systems + + _WIN32_IE: 0x500 for Windows 2000 and above; 0x502 for AMD64 systems + + CODESIGN_DESC: Product Name + + CODESIGN_TIMESTAMP: Time Stamp Service for Code Signing Certificate + + CODESIGN_URL: Support URL Displayed to End Users + + CODESIGN_CROSS_CERT: Path to Microsoft Cross Signing Certificate + (if you have one) + +If no code signing tools are available, the resulting driver will not be +usable on 64-bit Vista and Win7 and newer systems, unless the system is +booted with the disable signing checks option from the F8 menu. + + +STEP E. Set version and installation options (optional) + +Add a CellServDB file to install area. CellServDB contains the entries +for the various cell names. You can download a general purpose one +from: + http://grand.central.org/dl/cellservdb/CellServDB +then copy it to %AFSROOT%\src\WINNT\install\NSIS and name it afsdcell.ini + +Edit file %AFSROOT%\src\config\NTMakefile.i386_w2k or NTMakefile.amd64_w2k +as appropriate: + + AFSPRODUCT_VER_MAJOR - Version Major Number + AFSPRODUCT_VER_MINOR - Version Minor Number + AFSPRODUCT_VER_PATCH - Version Patch Number + AFSPRODUCT_VER_BUILD - Version Build Number + CELLSERVDB_INSTALL - The default file name for the CellServDB + included in the install Package. + CELLNAME_DEFAULT - The default home cell name. + CELLSERVDB_WEB - The default web address to obtain CellServDB + +For example: in the file %AFSROOT%\src\config\NTMakefile.i386_w2k you would +see the following: + + AFSPRODUCT_VER_MAJOR=1 + AFSPRODUCT_VER_MINOR=7 + AFSPRODUCT_VER_PATCH=2500 + AFSPRODUCT_VER_BUILD=0 + CELLNAME_DEFAULT=openafs.org + CELLSERVDB_INSTALL=CellServDB.GrandCentral + CELLSERVDB_WEB=http://grand.central.org/dl/cellservdb/CellServDB + +During the OpenAFS installation process the user will be presented +with two choices for the CellServDB: Local copy (CELLSERVDB_INSTALL) and +one that can be downloaded from the web (CELLSERVDB_WEB). + +IMPORTANT: When building your own binaries, you must set the AFSPRODUCT_VER_BUILD +value to a number greater than 1023. All values 0 to 1023 are reserved for use +by official OpenAFS.org releases. A failure to do so will result in Windows +Crash Reports for your binaries being delivered to OpenAFS.org for analysis. + + +STEP F. Begin the build + +(1) Open a Command Prompt window (cmd.exe) + + Enable delayed variable expansion with "cmd /v" + +(2) Change to the %AFSROOT% directory + +(3) Configure the environment variables: + + For a release build (SMB version): + + (a) Execute the VCVARS32.BAT or VSVARS32.BAT file which part of the + Visual Studio environment you installed. + + (b) Execute the SETENV.CMD file from the Windows SDK with the parameters + "/2000 /RETAIL" + + (c) Execute the NTBUILD.BAT file with the parameter "free" + + For a debug build (SMB version): + + (a) Execute the VCVARS32.BAT or VSVARS32.BAT file which part of the + Visual Studio environment you installed. + + (b) Execute the SETENV.CMD file from the Windows SDK with the parameters + "/2000 /DEBUG" + + (c) Execute the NTBUILD.BAT file with the parameter "checked" + +(4) Build the complete Windows 2000/XP/2003 development environment. + + nmake /f NTMakefile install + +While the build is running you will see many compile warnings. This +behavior is normal; the build process is successful as long as the build +process doesn't terminate with an error ("nmake.exe return code 0x2") +and it displays 'Build Finished Successfully'. Note that although the +the build target is "install", it does not install OpenAFS. + +(5) Before rebuilding you must clean the work area: + + nmake /f NTMakefile clean + + +STEP G. NSIS is no longer used, it does not support 64-bit systems + +STEP I. Install Wix MSI Installer + +Download the WiX 2.0.5805.0 binaries from + + http://wix.codeplex.com/releases/view/44405 + +STEP J. Build Wix MSI install package + +From the %AFSROOT% directory execute: + + nmake /f NTMakefile wix + +Make sure the binaries installed to \src\wix\release\ship are +available in the PATH environment variable + + +STEP K. Final Results + +The build process generates its binaries in %AFSROOT%\DEST. The subdirectory +would look like the following: + +%AFSROOT%\DEST\{checked,free}\ + bin + etc + include + lib + root.client + root.server + WinInstall + + Bin - contains build utilities. + root.client - contains Open AFS binaries + root.server - contain Open AFS Server binaries + WinInstall\OpenAFSforWindows.exe - is the NSIS install package + WinInstall\openafs-en_US.msi - is the WiX MSI install package + + +STEP L. Optional Items + +The build process has an error table that is compiled for many OpenAFS +applications. This table is generated by Unix based tools. It is not +normally necessary to modify this table so pre-generated source files +are included in the OpenAFS source. If you need to make modifications +in these areas the Unix base tools that run on Windows can be found on +the web. For example: + + http://cygwin.com/ + +Below is a short explanation how to update the error table. + +(1) Install flex and bison from a Unix based tool provider. + +(2) Make changes to the source files. + +There are two files in the source tree that are processed with lex +and yacc on UNIX systems, src/comerr/et_lex.lex.l and +src/comerr/error_table.y, that when processed produce the files +et_lex.lex_nt.c, error_table_nt.c, and error_table_nt.h. + +Since NT does not include lex and yacc or any equivalent tools, we +have provided the output files that lex and yacc produce (using Win32 +ports of flex and bison). This will allow builds to work for anyone +who does not need to change the .l and .y files. + +If you do need to change et_lex.lex.l, then you will need to install +Win32 port of flex on your system. Put flex.exe in a directory on the +path and rebuild. + +If you do need to change error_table.y, then you will need to install +a Win32 port of bison on your system. Put bison.exe in a directory on +the path, configure bison as explained in step 5, and rebuild. + +You can also attempt to use other replacements for lex and yacc. This +will require modifying the LEX and YACC settings in +/config/NTMakefile.i386_nt40. If the replacements require different +command line options than flex and bison, then you may also need to +change src/comerr/NTMakefile. + +(3) Generate new OpenAFS binaries diff --git a/acinclude.m4 b/acinclude.m4 new file mode 100644 index 0000000..c06945c --- /dev/null +++ b/acinclude.m4 @@ -0,0 +1,83 @@ +dnl This file contains the common configuration code which would +dnl otherwise be duplicated between configure and configure-libafs. +dnl +dnl NB: Because this code is a macro, references to positional shell +dnl parameters must be done like $[]1 instead of $1 + +AC_DEFUN([OPENAFS_CONFIGURE_COMMON],[ +OPENAFS_AUTOHEADER_BOTTOM +AC_CANONICAL_HOST +SRCDIR_PARENT=`pwd` + +#BOZO_SAVE_CORES pam +OPENAFS_OPTIONS +OPENAFS_DOC + +dnl Checks for UNIX variants. +AC_SEARCH_LIBS([strerror],[cposix]) + +dnl Various compiler setup. +AC_TYPE_PID_T +AC_TYPE_SIZE_T + +dnl Checks for programs. +AC_PROG_INSTALL +AC_PROG_LN_S +AC_PROG_RANLIB +AC_PROG_YACC +OPENAFS_LEX + +dnl Checks +OPENAFS_FORCE_ABS_INSTALL +OPENAFS_CHECK_BIGENDIAN +OPENAFS_PRINTF_TAKES_Z_LEN +OPENAFS_OSTYPE +OPENAFS_SYSNAME +OPENAFS_OSCONF +OPENAFS_LINUX_CHECKS +OPENAFS_C_ATOMIC_CHECKS +OPENAFS_SOCKET_CHECKS +OPENAFS_LIBRARY_CHECKS +AC_CHECK_RESOLV_RETRANS +OPENAFS_SOCKOPT_CHECK +OPENAFS_PTHREAD_CHECKS +HOST_CPU="$host_cpu" +OPENAFS_BSD_CHECKS +OPENAFS_OPTION_TESTS +OPENAFS_TIVOLI_TESTS +OPENAFS_HEADER_CHECKS +OPENAFS_MEMBER_CHECKS +OPENAFS_LIBINTL_CHECKS +OPENAFS_MORE_OPTION_TESTS +OPENAFS_FUNCTION_CHECKS +OPENAFS_ROKEN +OPENAFS_HCRYPTO +OPENAFS_CURSES +OPENAFS_C_ATTRIBUTE +OPENAFS_C_PRAGMA +OPENAFS_MORE_ROKEN_CHECKS +OPENAFS_NETDB_CHECKS +AC_HEADER_TIME +OPENAFS_ROKEN_HEADERS +OPENAFS_BSWAP_CHECKS +OPENAFS_HPUX_CHECKS +OPENAFS_REGEX_CHECKS +OPENAFS_MORE_PTHREAD_CHECKS +OPENAFS_TYPE_CHECKS +RRA_HEADER_PAM_CONST +OPENAFS_DIRECTORY_PATHS +OPENAFS_YET_MORE_OPTION_TESTS +OPENAFS_OUTPUT_VARIABLES +OPENAFS_FUSE +OPENAFS_SWIG +OPENAFS_TOPDIRS +OPENAFS_CROSSTOOLS +OPENAFS_LINT +OPENAFS_JAVA +OPENAFS_CRYPT_CHECKS +OPENAFS_C_STRUCT_LABEL_CHECK +OPENAFS_DIRENT_CHECKS +OPENAFS_SYS_RESOURCE_CHECKS +OPENAFS_UUID_CHECKS +OPENAFS_CTF_TOOLS_CHECKS +]) diff --git a/build-tools/.gitignore b/build-tools/.gitignore new file mode 100644 index 0000000..1be67b6 --- /dev/null +++ b/build-tools/.gitignore @@ -0,0 +1,5 @@ +/config.guess +/config.sub +/install-sh +/ltmain.sh +/missing diff --git a/build-tools/git-version b/build-tools/git-version new file mode 100755 index 0000000..ff55b4a --- /dev/null +++ b/build-tools/git-version @@ -0,0 +1,32 @@ +#!/bin/sh + +srcdir=$1 +fallback=$2 + +if [ "x$fallback" = "x" ]; then + fallback=UNKNOWN +fi + +if [ -f $srcdir/.version ] ; then + git_version=`cat $srcdir/.version` +else + if which git > /dev/null; then + cd $srcdir + git_version=`git describe --abbrev=4 HEAD 2>/dev/null` + if [ $? = 0 ]; then + # Is the working tree dirty? + if git diff-index --quiet --cached HEAD && \ + git diff-files --quiet ; then + : + else + git_version="$git_version-dirty" + fi + else + git_version=$fallback + fi + else + git_version=$fallback + fi +fi + +echo "$git_version" | sed -e 's/openafs-[^-]*-//' -e 's/_/./g' | tr -d '\012' diff --git a/build-tools/libafsdep b/build-tools/libafsdep new file mode 100644 index 0000000..f7bfa3a --- /dev/null +++ b/build-tools/libafsdep @@ -0,0 +1,6 @@ +config.guess +config.sub +git-version +install-sh +missing +mkinstalldirs diff --git a/build-tools/make-release b/build-tools/make-release new file mode 100755 index 0000000..a8ba7ba --- /dev/null +++ b/build-tools/make-release @@ -0,0 +1,173 @@ +#!/usr/bin/perl +use warnings; +use strict; + +use Getopt::Long; +use Pod::Usage; +use File::Path; +use File::Temp; + +my $help; +my $man; +my $tagPoint; +my $last; +my $outDir = "."; + +GetOptions("help|?" => \$help, + "man" => \$man, + "tagpoint=s" => \$tagPoint, + "last=s" => \$last, + "dir=s" => \$outDir) or pod2usage(2); + +pod2usage(1) if $help; +pod2usage(-exitstatus => 0, -verbose => 2) if $man; + +my $tagName = shift; +my $version = shift; + +pod2usage(2) if !defined($tagName); + +# Tag the repository + +if ($tagPoint) { + system ("git tag -s $tagName $tagPoint") == 0 + or die "git tag failed with : $!"; + + # Push the tag upstream + system ("git push ssh://gerrit.openafs.org:29418/openafs tag $tagName") == 0 + or die "git push failed with : $!"; +} + +$version = `git describe --abbrev=4 $tagName`; +chomp $version; +$version=~s/openafs-[^-]*-//; +$version=~s/_/./g; + +# Grab the tagged code into a temporary directory + +my $name = "openafs-".$version; + +my $tempDir = File::Temp::tempdir(); +system ("git archive --format=tar --prefix=$name/ $tagName ". + " | tar -C $tempDir -x") == 0 + or die "Git archive failed with: $?"; + +# Construct the ChangeLog +if ($last) { + system("git log $last..$tagName > $outDir/ChangeLog"); +} else { + system("git log $tagName > $outDir/ChangeLog"); +} + +# Describe the tree +system("git describe --abbrev=4 $tagName > $tempDir/$name/.version"); + +# Run regen.sh to create the rest of the tree +system ("cd $tempDir/$name && ./regen.sh") == 0 + or die $!; + +# A list of files to compress +my @toCompress; + +# Create the documentation tarball +system("tar -cf $outDir/$name-doc.tar -C $tempDir $name/doc") == 0 + or die "Unable to create documentation tarball : $!"; +push @toCompress, "$outDir/$name-doc.tar"; + +# Remove the docs directory (we've already build a tarball for it) +File::Path::rmtree("$tempDir/$name/doc"); + +# Create the source tarball (both .gz and .bz2) +system("tar -cf $outDir/$name-src.tar -C $tempDir $name") == 0 + or die "Unable to create source code tarball : $!"; +push @toCompress, "$outDir/$name-src.tar"; + +# Construct the diffs, and zip them +if ($last) { + system("git diff $last..$tagName > $outDir/$name.diff") == 0 + or die "Unable to create diff : $!"; + push @toCompress, "$outDir/$name.diff"; +} + +my @toMD5; + +# Compress everything that needs squashing, +# and also set up a list for md5 checksumming. +foreach my $file (@toCompress) { + system("gzip < $file > $file.gz") == 0 + or die "Unable to create gzip file of '$file' : $!"; + push @toMD5, "$file.gz"; + + system("bzip2 < $file > $file.bz2") == 0 + or die "Unable to create bzip file of '$file' : $!"; + push @toMD5, "$file.bz2"; + + # Delete the uncompressed tar files. + if ($file =~ /\.tar$/) { + unlink($file); + } else { + # Otherwise, queue this file for md5 checksumming. + push @toMD5, $file; + } +} + +foreach my $file (@toMD5) { + if (-x "/sbin/md5") { + system("/sbin/md5 -q $file > $file.md5"); + } elsif (-x "/usr/bin/md5sum") { + system("/usr/bin/md5sum $file > $file.md5"); + } else { + print STDERR "No md5 utiltiy found. Not producing checksums\n"; + } +} + + +__END__ + +=head1 NAME + +make_release - Make an OpenAFS release from git + +=head1 SYNOPSIS + +make_release [options] [] + + Options: + --help brief help message + --man full documentation + --tagpoint create new tag + --last generate changelog and diffs from this point + --dir output results into this directory + +=head1 DESCRIPTION + +make_release constructs an OpenAFS release from a local git clone. If run +with just the standard arguments, it will extract the contents of the +specified tag into the current directory, creating src and doc tarballs, +gziping and bziping them, and generating md5 hashes. It will also create a +ChangeLog file, listing all of the changes in that release. + +This standard behaviour may be modified by the following options + +=head1 OPTIONS + +=over 8 + +=item B<--last> I + +Generate the ChangeLog starting from I. Also generate a +openafs-$version.diff file in the output directory containing all of the +changes between I and the current tag + +=item B<--dir> I + +Instead of generating all of the output in the current directory, place it +in , which must already exist. + +=item B<--tagpoint> I + +Rather than using an existing tag, create a new one on the specified commit, +or on the tip of the specified branch. This will GPG sign the new tag, and +push it into gerrit. + +=cut diff --git a/build-tools/mkinstalldirs b/build-tools/mkinstalldirs new file mode 100755 index 0000000..d0fd194 --- /dev/null +++ b/build-tools/mkinstalldirs @@ -0,0 +1,40 @@ +#! /bin/sh +# mkinstalldirs --- make directory hierarchy +# Author: Noah Friedman +# Created: 1993-05-16 +# Public domain + +# $Id$ + +errstatus=0 + +for file +do + set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` + shift + + pathcomp= + for d + do + pathcomp="$pathcomp$d" + case "$pathcomp" in + -* ) pathcomp=./$pathcomp ;; + esac + + if test ! -d "$pathcomp"; then + echo "mkdir $pathcomp" 1>&2 + + mkdir "$pathcomp" || lasterr=$? + + if test ! -d "$pathcomp"; then + errstatus=$lasterr + fi + fi + + pathcomp="$pathcomp/" + done +done + +exit $errstatus + +# mkinstalldirs ends here diff --git a/configure-libafs.ac b/configure-libafs.ac new file mode 100644 index 0000000..df418e3 --- /dev/null +++ b/configure-libafs.ac @@ -0,0 +1,27 @@ +AC_PRERQ([2.60]) +AC_INIT([OpenAFS],[m4_esyscmd(build-tools/git-version .)],[openafs-bugs@openafs.org],[],[http://www.openafs.org/]) +AC_CONFIG_AUX_DIR([build-tools]) +AC_CONFIG_SRCDIR([src/libafs/Makefile.common.in]) + +AC_CONFIG_HEADER([src/config/afsconfig.h]) +MACOS_VERSION=1.8.5 + +AC_SUBST([MACOS_VERSION]) + +dnl If the user hasn't specified CFLAGS don't let configure pick -g -O2 +AS_IF([test -z "$CFLAGS"], [CFLAGS=" "], []) +AC_PROG_CC + +OPENAFS_CONFIGURE_COMMON + +AC_CONFIG_FILES([ + Makefile + src/config/Makefile + src/config/Makefile.config + src/config/Makefile.lwp + src/config/Makefile.version-CML + src/config/Makefile.version-NOCML + src/libafs/Makefile.common + src/libafs/MakefileProto +]) +AC_OUTPUT diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..d710ed9 --- /dev/null +++ b/configure.ac @@ -0,0 +1,292 @@ +AC_PREREQ([2.60]) +AC_INIT([OpenAFS],[m4_esyscmd(build-tools/git-version .)],[openafs-bugs@openafs.org],[],[http://www.openafs.org/]) +AC_CONFIG_AUX_DIR([build-tools]) +AC_CONFIG_MACRO_DIR([src/cf]) +AC_CONFIG_SRCDIR([src/config/stds.h]) + +AC_CONFIG_HEADER([src/config/afsconfig.h]) +MACOS_VERSION=1.8.5 +LINUX_PKGREL=1.8.5 + +AC_SUBST([MACOS_VERSION]) + +dnl If the user hasn't specified CFLAGS don't let configure pick -g -O2 +AS_IF([test -z "$CFLAGS"], [CFLAGS=" "]) + +AC_USE_SYSTEM_EXTENSIONS + +AFS_LT_INIT + +AC_PROG_CC + +AC_PATH_PROGS([PATH_CPP], [cpp], [${CC-cc} -E], [$PATH:/lib:/usr/ccs/lib]) +AC_SUBST([PATH_CPP]) +OPENAFS_CONFIGURE_COMMON + +dnl Probe for Kerberos. We have a few platform-specific overrides due to +dnl weird Kerberos implementations and installation locations. +AS_CASE([$AFS_SYSNAME], + [*_obsd*], + [KRB5_CPPFLAGS="-I/usr/include/kerberosV"], + + [ppc_darwin_70], + [KRB5_CPPFLAGS="-I/usr/include" + KRB5_LDFLAGS="-L/usr/lib -Wl,-search_paths_first"]) +RRA_LIB_KRB5_OPTIONAL +AS_CASE([$AFS_SYSNAME], + [hp_ux*|*_hpux*], + [KRB5_LIBS="-l:libkrb5.sl -l:libcom_err.sl"]) + +dnl Check for the characteristics of whatever Kerberos we found, if we found +dnl one. +BUILD_KRB5=no +MAKE_KRB5="#" +AS_IF([test x"$KRB5_LIBS" != x], + [BUILD_KRB5=yes + MAKE_KRB5= + RRA_LIB_KRB5_SWITCH + AC_CHECK_FUNCS([add_error_table \ + add_to_error_table \ + encode_krb5_enc_tkt_part \ + encode_krb5_ticket \ + krb5_524_conv_principal \ + krb5_allow_weak_crypto \ + krb5_c_encrypt \ + krb5_decode_ticket \ + krb5_enctype_enable \ + krb5_free_keytab_entry_contents \ + krb5_free_unparsed_name \ + krb5_get_init_creds_opt_alloc \ + krb5_get_prompt_types \ + krb5_princ_size \ + krb5_principal_get_comp_string]) + AC_CHECK_FUNCS([krb5_524_convert_creds], [], + [AC_CHECK_FUNCS([krb524_convert_creds_kdc], [], + [AC_CHECK_LIB([krb524], [krb524_convert_creds_kdc], + [LIBS="-lkrb524 $LIBS" + KRB5_LIBS="-lkrb524 $KRB5_LIBS" + AC_CHECK_LIB([krb524], [krb5_524_conv_principal], + [AC_DEFINE([HAVE_KRB5_524_CONV_PRINCIPAL], [1], + [Define to 1 if you have the `krb5_524_conv_principal' function.]) + ]) + AC_DEFINE([HAVE_KRB524_CONVERT_CREDS_KDC], [1], + [Define to 1 if you have the `krb524_convert_creds_kdc' function.]) + ]) + ]) + ]) + AC_CHECK_HEADERS([kerberosIV/krb.h]) + AC_CHECK_HEADERS([kerberosV/heim_err.h]) + AC_CHECK_HEADERS([com_err.h et/com_err.h krb5/com_err.h]) + AS_IF([test x"$ac_cv_header_com_err_h" != xyes \ + && test x"$ac_cv_header_et_com_err_h" != xyes \ + && test x"$ac_cv_header_krb5_com_err_h" != xyes], + [AC_MSG_ERROR([Cannot find a usable com_err.h])]) + AC_CHECK_MEMBERS([krb5_creds.keyblock, krb5_creds.keyblock.enctype, krb5_creds.session, + krb5_prompt.type], [], [], [#include ]) + AC_CHECK_MEMBERS([krb5_keytab_entry.key, krb5_keytab_entry.keyblock], + [], [], [#include ]) +dnl If we have krb5_creds.session, we are using heimdal +dnl If we're using heimdal, aklog needs libasn1 for encode_EncTicketPart and a +dnl few other functions. But just aklog; not any of the other stuff that uses +dnl krb5. + AS_IF([test x"$ac_cv_member_krb5_creds_session" = xyes], + [AC_CHECK_LIB([asn1], [encode_EncTicketPart], + [AKLOG_KRB5_LIBS="-lasn1"]) + ]) + RRA_LIB_KRB5_RESTORE +]) +AC_SUBST([BUILD_KRB5]) +AC_SUBST([MAKE_KRB5]) +AC_SUBST([AKLOG_KRB5_LIBS]) + +dnl Probe for GSSAPI +RRA_LIB_GSSAPI +dnl Check for the characteristics of whatever GSSAPI we found, if we found one +BUILD_GSSAPI=no +AS_IF([test x"$GSSAPI_LIBS" != x], + [BUILD_GSSAPI=yes +]) +AC_SUBST([BUILD_GSSAPI]) + +dnl Checks for summary +OPENAFS_SUMMARY_CHECK_NAMEI + +AS_IF([test -d 'doc/man-pages'], + [MAN_MAKEFILE="doc/man-pages/Makefile doc/man-pages/install-man"], + [MAN_MAKEFILE=]) +AS_IF([test -f 'doc/xml/AdminGuide/Makefile.in'], + [ADMINGUIDE_MAKEFILE="doc/xml/AdminGuide/Makefile"], + [ADMINGUIDE_MAKEFILE=]) +AS_IF([test -f 'doc/xml/QuickStartUnix/Makefile.in'], + [QSUNIX_MAKEFILE="doc/xml/QuickStartUnix/Makefile"], + [QSUNIX_MAKEFILE=]) +AS_IF([test -f 'doc/xml/UserGuide/Makefile.in'], + [USERGUIDE_MAKEFILE="doc/xml/UserGuide/Makefile"], + [USERGUIDE_MAKEFILE=]) +AS_IF([test -f 'doc/xml/AdminRef/Makefile.in'], + [ADMINREF_MAKEFILE="doc/xml/AdminRef/Makefile"], + [ADMINREF_MAKEFILE=]) +AS_IF([test -f 'doc/xml/mobi-fixup.xsl.in'], + [MOBI_FIXUP_XSL="doc/xml/mobi-fixup.xsl"], + [MOBI_FIXUP_XSL=]) +AS_IF([test -f 'doc/doxygen/Doxyfile.in'], + [DOXYFILE="doc/doxygen/Doxyfile"], + [DOXYFILE=]) + +AC_CONFIG_FILES([ + Makefile + ${MAN_MAKEFILE} + ${ADMINGUIDE_MAKEFILE} + ${QSUNIX_MAKEFILE} + ${USERGUIDE_MAKEFILE} + ${ADMINREF_MAKEFILE} + ${MOBI_FIXUP_XSL} + ${DOXYFILE} + src/afs/Makefile + src/afsd/Makefile + src/afsmonitor/Makefile + src/afsweb/Makefile + src/aklog/Makefile + src/audit/Makefile + src/auth/Makefile + src/auth/test/Makefile + src/bozo/Makefile + src/bozo/test/Makefile + src/bu_utils/Makefile + src/bubasics/Makefile + src/bucoord/Makefile + src/budb/Makefile + src/tbudb/Makefile + src/butc/Makefile + src/butm/Makefile + src/cmd/Makefile + src/cmd/test/Makefile + src/comerr/Makefile + src/comerr/test/Makefile + src/config/Makefile + src/config/Makefile.config + src/config/Makefile.libtool + src/config/Makefile.lwp + src/config/Makefile.lwptool + src/config/Makefile.pthread + src/config/Makefile.version-CML + src/config/Makefile.version-NOCML + src/config/cc-wrapper + src/config/shlib-build + src/config/shlib-install + src/crypto/hcrypto/Makefile + src/crypto/rfc3961/Makefile + src/dir/Makefile + src/dir/test/Makefile + src/dviced/Makefile + src/dvolser/Makefile + src/export/Makefile + src/finale/Makefile + src/fsint/Makefile + src/fsprobe/Makefile + src/gtx/Makefile + src/JAVA/libjafs/Makefile + src/kauth/Makefile + src/kauth/test/Makefile + src/kopenafs/Makefile + src/libacl/Makefile + src/libacl/test/Makefile + src/libadmin/Makefile + src/libadmin/adminutil/Makefile + src/libadmin/bos/Makefile + src/libadmin/cfg/Makefile + src/libadmin/cfg/test/Makefile + src/libadmin/client/Makefile + src/libadmin/kas/Makefile + src/libadmin/pts/Makefile + src/libadmin/samples/Makefile + src/libadmin/test/Makefile + src/libadmin/vos/Makefile + src/libafs/Makefile.common + src/libafs/MakefileProto.${MKAFS_OSTYPE} + ${DARWIN_PLIST} + src/libafsauthent/Makefile + src/libafsrpc/Makefile + src/libuafs/Makefile.common + src/libuafs/MakefileProto.${MKAFS_OSTYPE} + src/log/Makefile + src/log/test/Makefile + src/lwp/Makefile + src/lwp/test/Makefile + src/opr/Makefile + src/packaging/MacOS/OpenAFS-debug.Description.plist + src/packaging/MacOS/OpenAFS-debug.Info.plist + src/packaging/MacOS/OpenAFS.Description.plist + src/packaging/MacOS/OpenAFS.Info.plist + src/packaging/MacOS/OpenAFS.info + src/packaging/MacOS/buildpkg.sh + src/packaging/MacOS/pkgbuild.sh + src/pam/Makefile + src/platform/Makefile + src/platform/${MKAFS_OSTYPE}/Makefile + src/platform/DARWIN/growlagent/Makefile + src/procmgmt/Makefile + src/procmgmt/test/Makefile + src/ptserver/Makefile + src/tptserver/Makefile + src/roken/Makefile + src/rx/Makefile + src/rx/bulk.example/Makefile + src/rx/bulktest/Makefile + src/rx/multi.example/Makefile + src/rx/simple.example/Makefile + src/rx/test/Makefile + src/rxdebug/Makefile + src/rxgen/Makefile + src/rxkad/Makefile + src/rxkad/test/Makefile + src/rxosd/Makefile + src/rxstat/Makefile + src/scout/Makefile + src/sys/Makefile + src/tbutc/Makefile + src/tests/Makefile + src/tests/run-tests + src/tools/Makefile + src/tools/dumpscan/Makefile + src/tools/rxperf/Makefile + src/tsalvaged/Makefile + src/tsm41/Makefile + src/tvolser/Makefile + src/ubik/Makefile + src/tubik/Makefile + src/update/Makefile + src/usd/Makefile + src/usd/test/Makefile + src/uss/Makefile + src/util/Makefile + src/util/test/Makefile + src/libafscp/Makefile + src/venus/Makefile + src/venus/test/Makefile + src/vfsck/Makefile + src/viced/Makefile + src/vlserver/Makefile + src/tvlserver/Makefile + src/vol/Makefile + src/vol/test/Makefile + src/volser/Makefile + src/xstat/Makefile + src/helper-splint.sh + tests/Makefile + tests/auth/Makefile + tests/cmd/Makefile + tests/common/Makefile + tests/opr/Makefile + tests/rpctestlib/Makefile + tests/rx/Makefile + tests/tap/Makefile + tests/util/Makefile + tests/volser/Makefile]) +AC_CONFIG_COMMANDS([default],[chmod a+x src/config/shlib-build + chmod a+x src/config/shlib-install + chmod a+x src/config/cc-wrapper],[]) +AC_OUTPUT + +# print a final summary +OPENAFS_SUMMARY diff --git a/doc/LICENSE b/doc/LICENSE new file mode 100644 index 0000000..9252889 --- /dev/null +++ b/doc/LICENSE @@ -0,0 +1,417 @@ + IBM Public License Version 1.0 + + THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS IBM + PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF + THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. + + 1. DEFINITIONS + + "Contribution" means: + a) in the case of International Business Machines Corporation ("IBM"), + the Original Program, and + + b) in the case of each Contributor, + + i) changes to the Program, and + + ii) additions to the Program; + + where such changes and/or additions to the Program originate from and + are distributed by that particular Contributor. A Contribution + 'originates' from a Contributor if it was added to the Program by + such Contributor itself or anyone acting on such Contributor's + behalf. Contributions do not include additions to the Program + which: (i) are separate modules of software distributed in + conjunction with the Program under their own license agreement, + and (ii) are not derivative works of the Program. + + "Contributor" means IBM and any other entity that distributes the + Program. + + "Licensed Patents " mean patent claims licensable by a Contributor + which are necessarily infringed by the use or sale of its Contribution + alone or when combined with the Program. + + "Original Program" means the original version of the software + accompanying this Agreement as released by IBM, including source code, + object code and documentation, if any. + + "Program" means the Original Program and Contributions. + + "Recipient" means anyone who receives the Program under this + Agreement, including all Contributors. + + 2. GRANT OF RIGHTS + a) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free + copyright license to reproduce, prepare derivative works of, + publicly display, publicly perform, distribute and sublicense the + Contribution of such Contributor, if any, and such derivative + works, in source code and object code form. + + b) Subject to the terms of this Agreement, each Contributor hereby + grants Recipient a non-exclusive, worldwide, royalty-free patent + license under Licensed Patents to make, use, sell, offer to sell, + import and otherwise transfer the Contribution of such + Contributor, if any, in source code and object code form. This + patent license shall apply to the combination of the Contribution + and the Program if, at the time the Contribution is added by the + Contributor, such addition of the Contribution causes such + combination to be covered by the Licensed Patents. The patent + license shall not apply to any other combinations which include + the Contribution. No hardware per se is licensed hereunder. + + c) Recipient understands that although each Contributor grants the + licenses to its Contributions set forth herein, no assurances are + provided by any Contributor that the Program does not infringe the + patent or other intellectual property rights of any other entity. + Each Contributor disclaims any liability to Recipient for claims + brought by any other entity based on infringement of intellectual + property rights or otherwise. As a condition to exercising the + rights and licenses granted hereunder, each Recipient hereby + assumes sole responsibility to secure any other intellectual + property rights needed, if any. For example, if a third party + patent license is required to allow Recipient to distribute the + Program, it is Recipient's responsibility to acquire that license + before distributing the Program. + + d) Each Contributor represents that to its knowledge it has sufficient + copyright rights in its Contribution, if any, to grant the + copyright license set forth in this Agreement. + + 3. REQUIREMENTS + + A Contributor may choose to distribute the Program in object code form + under its own license agreement, provided that: + a) it complies with the terms and conditions of this Agreement; and + + b) its license agreement: + + i) effectively disclaims on behalf of all Contributors all warranties + and conditions, express and implied, including warranties or + conditions of title and non-infringement, and implied warranties + or conditions of merchantability and fitness for a particular + purpose; + + ii) effectively excludes on behalf of all Contributors all liability + for damages, including direct, indirect, special, incidental and + consequential damages, such as lost profits; + + iii) states that any provisions which differ from this Agreement are + offered by that Contributor alone and not by any other party; and + + iv) states that source code for the Program is available from such + Contributor, and informs licensees how to obtain it in a + reasonable manner on or through a medium customarily used for + software exchange. + + When the Program is made available in source code form: + a) it must be made available under this Agreement; and + + b) a copy of this Agreement must be included with each copy of the + Program. + + Each Contributor must include the following in a conspicuous location + in the Program: + + Copyright © {date here}, International Business Machines Corporation + and others. All Rights Reserved. + + In addition, each Contributor must identify itself as the originator + of its Contribution, if any, in a manner that reasonably allows + subsequent Recipients to identify the originator of the Contribution. + + 4. COMMERCIAL DISTRIBUTION + + Commercial distributors of software may accept certain + responsibilities with respect to end users, business partners and the + like. While this license is intended to facilitate the commercial use + of the Program, the Contributor who includes the Program in a + commercial product offering should do so in a manner which does not + create potential liability for other Contributors. Therefore, if a + Contributor includes the Program in a commercial product offering, + such Contributor ("Commercial Contributor") hereby agrees to defend + and indemnify every other Contributor ("Indemnified Contributor") + against any losses, damages and costs (collectively "Losses") arising + from claims, lawsuits and other legal actions brought by a third party + against the Indemnified Contributor to the extent caused by the acts + or omissions of such Commercial Contributor in connection with its + distribution of the Program in a commercial product offering. The + obligations in this section do not apply to any claims or Losses + relating to any actual or alleged intellectual property infringement. + In order to qualify, an Indemnified Contributor must: a) promptly + notify the Commercial Contributor in writing of such claim, and b) + allow the Commercial Contributor to control, and cooperate with the + Commercial Contributor in, the defense and any related settlement + negotiations. The Indemnified Contributor may participate in any such + claim at its own expense. + + For example, a Contributor might include the Program in a commercial + product offering, Product X. That Contributor is then a Commercial + Contributor. If that Commercial Contributor then makes performance + claims, or offers warranties related to Product X, those performance + claims and warranties are such Commercial Contributor's responsibility + alone. Under this section, the Commercial Contributor would have to + defend claims against the other Contributors related to those + performance claims and warranties, and if a court requires any other + Contributor to pay any damages as a result, the Commercial Contributor + must pay those damages. + + 5. NO WARRANTY + + EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS + PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY + WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY + OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely + responsible for determining the appropriateness of using and + distributing the Program and assumes all risks associated with its + exercise of rights under this Agreement, including but not limited to + the risks and costs of program errors, compliance with applicable + laws, damage to or loss of data, programs or equipment, and + unavailability or interruption of operations. + + 6. DISCLAIMER OF LIABILITY + + EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR + ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING + WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR + DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED + HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + + 7. GENERAL + + If any provision of this Agreement is invalid or unenforceable under + applicable law, it shall not affect the validity or enforceability of + the remainder of the terms of this Agreement, and without further + action by the parties hereto, such provision shall be reformed to the + minimum extent necessary to make such provision valid and enforceable. + + If Recipient institutes patent litigation against a Contributor with + respect to a patent applicable to software (including a cross-claim or + counterclaim in a lawsuit), then any patent licenses granted by that + Contributor to such Recipient under this Agreement shall terminate as + of the date such litigation is filed. In addition, If Recipient + institutes patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Program + itself (excluding combinations of the Program with other software or + hardware) infringes such Recipient's patent(s), then such Recipient's + rights granted under Section 2(b) shall terminate as of the date such + litigation is filed. + + All Recipient's rights under this Agreement shall terminate if it + fails to comply with any of the material terms or conditions of this + Agreement and does not cure such failure in a reasonable period of + time after becoming aware of such noncompliance. If all Recipient's + rights under this Agreement terminate, Recipient agrees to cease use + and distribution of the Program as soon as reasonably practicable. + However, Recipient's obligations under this Agreement and any licenses + granted by Recipient relating to the Program shall continue and + survive. + + IBM may publish new versions (including revisions) of this Agreement + from time to time. Each new version of the Agreement will be given a + distinguishing version number. The Program (including Contributions) + may always be distributed subject to the version of the Agreement + under which it was received. In addition, after a new version of the + Agreement is published, Contributor may elect to distribute the + Program (including its Contributions) under the new version. No one + other than IBM has the right to modify this Agreement. Except as + expressly stated in Sections 2(a) and 2(b) above, Recipient receives + no rights or licenses to the intellectual property of any Contributor + under this Agreement, whether expressly, by implication, estoppel or + otherwise. All rights in the Program not expressly granted under this + Agreement are reserved. + + This Agreement is governed by the laws of the State of New York and + the intellectual property laws of the United States of America. No + party to this Agreement will bring a legal action under this Agreement + more than one year after the cause of action arose. Each party waives + its rights to a jury trial in any resulting litigation. + +OpenAFS contains code licensed under a standard 3-term BSD license with +the following names as copyright holders: + +Kungliga Tekniska Högskolan + (Royal Institute of Technology, Stockholm, Sweden) +Sine Nomine Associates + +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * 3. Neither the name of the copyright holder nor the names of its + * contributors may be used to endorse or promote products derived from + * this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +Some code in rxkad/ticket5.c is subject to the following copyright: +/* + * Copyright 1992, 2002 by the Massachusetts Institute of Technology. + * All Rights Reserved. + * + * Export of this software from the United States of America may + * require a specific license from the United States Government. + * It is the responsibility of any person or organization contemplating + * export to obtain such a license before exporting. + * + * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and + * distribute this software and its documentation for any purpose and + * without fee is hereby granted, provided that the above copyright + * notice appear in all copies and that both that copyright notice and + * this permission notice appear in supporting documentation, and that + * the name of M.I.T. not be used in advertising or publicity pertaining + * to distribution of the software without specific, written prior + * permission. Furthermore if you modify this software you must label + * your software as modified software and not distribute it in such a + * fashion that it might be confused with the original M.I.T. software. + * M.I.T. makes no representations about the suitability of + * this software for any purpose. It is provided "as is" without express + * or implied warranty. + */ + +aklog/ka-forwarder.c is subject to the following copyright: +/* + * Copyright (c) 1993 Carnegie Mellon University + * All Rights Reserved. + * + * Permission to use, copy, modify and distribute this software and its + * documentation is hereby granted, provided that both the copyright + * notice and this permission notice appear in all copies of the + * software, derivative works or modified versions, and any portions + * thereof, and that both notices appear in supporting documentation. + * + * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" + * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR + * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. + * + * Carnegie Mellon requests users of this software to return to + * + * Software Distribution Coordinator or Software_Distribution@CS.CMU.EDU + * School of Computer Science + * Carnegie Mellon University + * Pittsburgh PA 15213-3890 + * + * any improvements or extensions that they make and grant Carnegie Mellon + * the rights to redistribute these changes. + */ + +Some portions of Rx are subject to the following license: +/* + * Sun RPC is a product of Sun Microsystems, Inc. and is provided for + * unrestricted use provided that this legend is included on all tape + * media and as a part of the software program in whole or part. Users + * may copy or modify Sun RPC without charge, but are not authorized + * to license or distribute it to anyone else except as part of a product or + * program developed by the user or with the express written consent of + * Sun Microsystems, Inc. + * + * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE + * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR + * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. + * + * Sun RPC is provided with no support and without any obligation on the + * part of Sun Microsystems, Inc. to assist in its use, correction, + * modification or enhancement. + * + * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE + * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC + * OR ANY PART THEREOF. + * + * In no event will Sun Microsystems, Inc. be liable for any lost revenue + * or profits or other special, indirect and consequential damages, even if + * Sun has been advised of the possibility of such damages. + * + * Sun Microsystems, Inc. + * 2550 Garcia Avenue + * Mountain View, California 94043 + */ + +src/afs/LINUX/osi_flush.s included code under IBM Public License with +permission of the author, Paul MacKerras. + +=========================================================== + +Personal contributions made by Jason Edgecombe + that refer to the "BSD license" are subject +to the following license: + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + * Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + * Neither the name of OpenAFS nor the names of its + contributors may be used to endorse or promote products + derived from this software without specific prior written + permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF + THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +==================================================== + +The files src/cf/krb5.m4, src/cf/lib-depends.m4, and +src/cf/lib-pathname.m4 are covered by the following license: + + Copyright 2005, 2006, 2007, 2008, 2009, 2010 + Board of Trustees, Leland Stanford Jr. University + + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, + provided that the above copyright notice appear in all copies and that + both that copyright notice and this permission notice appear in + supporting documentation, and that the name of Stanford University not + be used in advertising or publicity pertaining to distribution of the + software without specific, written prior permission. Stanford + University makes no representations about the suitability of this + software for any purpose. It is provided "as is" without express or + implied warranty. + + THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED + WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. diff --git a/doc/README b/doc/README new file mode 100644 index 0000000..4988494 --- /dev/null +++ b/doc/README @@ -0,0 +1,22 @@ +What's in the "doc" subdirectory + +** doc/man-pages +pod sources for man pages (converted from original IBM html source). + +** doc/xml +xml sources for manuals (converted from original IBM html source). +Note: The doc/xml/AdminRef uses doc/xml/AdminRef/pod2refentry to convert the +pod man pages to xml for printing. pod goes directly to html just fine. + +** doc/pdf +Old Transarc (and possibly pre-Transarc) protocol and API documentation for +which we have no other source. + +** doc/txt +Technical notes, Windows notes, and examples. + +** doc/doxygen +Configuration files for the doxygen tool to generate documentation from +the annotated sources. See the 'dox' Makefile target in the top level +Makefile. + diff --git a/doc/doxygen/.gitignore b/doc/doxygen/.gitignore new file mode 100644 index 0000000..43cb5d6 --- /dev/null +++ b/doc/doxygen/.gitignore @@ -0,0 +1,3 @@ +Makefile +Doxyfile +output/ diff --git a/doc/doxygen/Doxyfile.in b/doc/doxygen/Doxyfile.in new file mode 100644 index 0000000..c95a1c9 --- /dev/null +++ b/doc/doxygen/Doxyfile.in @@ -0,0 +1,59 @@ +# +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for OpenAFS. +# + +PROJECT_NAME = "OpenAFS" +PROJECT_BRIEF = "OpenAFS distributed network file system" +PROJECT_LOGO = src/WINNT/afsd/OpenAFS.ico +OUTPUT_DIRECTORY = doc/doxygen/output + +ABBREVIATE_BRIEF = "The $name class" "The $name widget" "The $name file" \ + is provides specifies contains represents a an the +QT_AUTOBRIEF = YES +OPTIMIZE_OUTPUT_FOR_C = YES +SYMBOL_CACHE_SIZE = 7 +LOOKUP_CACHE_SIZE = 2 +CASE_SENSE_NAMES = NO +HIDE_SCOPE_NAMES = YES + +GENERATE_DOCSET = YES +GENERATE_TREEVIEW = YES +GENERATE_LATEX = NO + +DOCSET_BUNDLE_ID = org.openafs.Project +DOCSET_PUBLISHER_ID = org.openafs.Publisher +QHP_NAMESPACE = org.openafs.Project +ECLIPSE_DOC_ID = org.openafs.Project + +HAVE_DOT = @HAVE_DOT@ +DOT_PATH = @DOT_PATH@ +CALL_GRAPH = YES +CALLER_GRAPH = YES + +EXTRACT_ALL = YES +INPUT = doc/doxygen/input src +RECURSIVE = YES +EXCLUDE = \ + src/cf \ + src/config \ + src/dviced \ + src/dvolser \ + src/external \ + src/finale \ + src/JAVA \ + src/kauth \ + src/libafs \ + src/NTObjdir \ + src/packaging \ + src/shlibafsrpc \ + src/tbudb \ + src/tbutc \ + src/tests \ + src/tools \ + src/tptserver \ + src/tsalvaged \ + src/tubik \ + src/tvlserver \ + src/tvolser \ + diff --git a/doc/doxygen/input/mainpage.h b/doc/doxygen/input/mainpage.h new file mode 100644 index 0000000..c670c02 --- /dev/null +++ b/doc/doxygen/input/mainpage.h @@ -0,0 +1,10 @@ +/*! + * \mainpage OpenAFS Code Documentation + * + * \section section_intro Intro + * + * \subsection step1 Subintro + * + * OpenAFS is a cross-platform distributed filesystem. + * + */ diff --git a/doc/man-pages/.gitignore b/doc/man-pages/.gitignore new file mode 100644 index 0000000..f3811dd --- /dev/null +++ b/doc/man-pages/.gitignore @@ -0,0 +1,10 @@ +# After changing this file, please run +# git ls-files -i --exclude-standard +# to check that you haven't inadvertently ignored any tracked files. + +html +install-man +man1 +man3 +man5 +man8 diff --git a/doc/man-pages/Makefile.in b/doc/man-pages/Makefile.in new file mode 100644 index 0000000..882dd48 --- /dev/null +++ b/doc/man-pages/Makefile.in @@ -0,0 +1,92 @@ +# Makefile for AFS man pages + +srcdir=@srcdir@ +include @TOP_OBJDIR@/src/config/Makefile.config + +all: prep-noinstall + +maintclean: + rm -rf html man1 man3 man5 man8 + +html: + perl generate-html + +LINKEDPAGES = klog pagsh tokens +FSSYNCDEBUG_PAGES = attach callback detach error header leaveoff list mode \ + move offline online query stats vgcadd vgcdel vgcquery \ + vgcscan vgcscanall vnode volop + +KAUTH_MAN = man1/klog.1 man1/knfs.1 man1/kpasswd.1 man5/kaserver.DB0.5 \ + man5/kaserverauxdb.5 man8/ka-forwarder.8 man8/kadb_check.8 man8/kas.8 \ + man8/kas_apropos.8 man8/kas_create.8 man8/kas_delete.8 \ + man8/kas_examine.8 man8/kas_forgetticket.8 man8/kas_help.8 \ + man8/kas_interactive.8 man8/kas_list.8 man8/kas_listtickets.8 \ + man8/kas_noauthentication.8 man8/kas_quit.8 man8/kas_setfields.8 \ + man8/kas_setpassword.8 man8/kas_statistics.8 man8/kas_stringtokey.8 \ + man8/kas_unlock.8 man8/kaserver.8 man8/kdb.8 man8/kpwvalid.8 \ + man1/klog.krb.1 + +INSTALL_KAUTH = @INSTALL_KAUTH@ + +# This really depends on the options to configure, but configure will +# regenerate the Makefile so this is a reasonable proxy. +prep-noinstall: Makefile + rm -f man*/*.noinstall + if [ "$(INSTALL_KAUTH)" = "no" ] ; then \ + mkdir -p man1 man3 man5 man8; \ + for M in $(KAUTH_MAN); do \ + touch $$M.noinstall; \ + done; \ + fi + +dest: prep-noinstall + chmod +x install-man + mkdir -p $(DEST)/man/man1 $(DEST)/man/man3 \ + $(DEST)/man/man5 $(DEST)/man/man8 + set -e; for M in man1/*.1 man3/*.3 man5/*.5 man8/*.8 ; do \ + if ! [ -e $$M.noinstall ] ; then \ + ./install-man $$M $(DEST)/man/$$M ; \ + fi ; \ + done + set -e; for M in ${LINKEDPAGES}; do \ + if ! [ -e man1/$$M.1.noinstall ] ; then \ + test -h $(DEST)/man/man1/$$M.krb.1 \ + || ln -s $$M.1 $(DEST)/man/man1/$$M.krb.1 ; \ + fi ; \ + done + test -h $(DEST)/man/man8/dafssync-debug.8 \ + || ln -s fssync-debug.8 $(DEST)/man/man8/dafssync-debug.8 + set -e; for M in ${FSSYNCDEBUG_PAGES} ; do \ + test -h $(DEST)/man/man8/dafssync-debug_$$M.8 \ + || ln -s fssync-debug_$$M.8 $(DEST)/man/man8/dafssync-debug_$$M.8 ; \ + done + set -e; if [ -n "@ENABLE_FUSE_CLIENT@" ] ; then \ + test -h $(DEST)/man/man8/afsd.fuse.8 \ + || ln -s afsd.8 $(DEST)/man/man8/afsd.fuse.8; \ + fi + +install: prep-noinstall $(MAN1) $(MAN8) + chmod +x install-man + mkdir -p $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man3 \ + $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man8 + set -e; for M in man1/*.1 man3/*.3 man5/*.5 man8/*.8 ; do \ + if ! [ -e $$M.noinstall ] ; then \ + ./install-man $$M $(DESTDIR)$(mandir)/$$M ; \ + fi; \ + done + set -e; for M in ${LINKEDPAGES}; do \ + if ! [ -e man1/$$M.1.noinstall ] ; then \ + test -h $(DESTDIR)$(mandir)/man1/$$M.krb.1 \ + || ln -s $$M.1 $(DESTDIR)$(mandir)/man1/$$M.krb.1 ; \ + fi ; \ + done + test -h $(DESTDIR)/$(mandir)/man8/dafssync-debug.8 \ + || ln -s fssync-debug.8 $(DESTDIR)/$(mandir)/man8/dafssync-debug.8 + set -e; for M in ${FSSYNCDEBUG_PAGES} ; do \ + test -h $(DESTDIR)/$(mandir)/man8/dafssync-debug_$$M.8 \ + || ln -s fssync-debug_$$M.8 $(DESTDIR)/$(mandir)/man8/dafssync-debug_$$M.8 ; \ + done + set -e; if [ -n "@ENABLE_FUSE_CLIENT@" ] ; then \ + test -h $(DESTDIR)$(mandir)/man8/afsd.fuse.8 \ + || ln -s afsd.8 $(DESTDIR)$(mandir)/man8/afsd.fuse.8; \ + fi diff --git a/doc/man-pages/NTMakefile b/doc/man-pages/NTMakefile new file mode 100644 index 0000000..eb6e4c5 --- /dev/null +++ b/doc/man-pages/NTMakefile @@ -0,0 +1,415 @@ +# Copyright 2008, Secure Endpoints Inc. +# All Rights Reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# +# - Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# - Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions and the following disclaimer in the documentation +# and/or other materials provided with the distribution. +# - Neither the name of Secure Endpoints Inc. nor the names of its contributors +# may be used to endorse or promote products derived from this software without +# specific prior written permission from Secure Endpoints Inc.. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +# PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +# OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +!INCLUDE ..\..\src\config\NTMakefile.$(SYS_NAME) + +PODS = \ + pod1\afs.pod \ + pod1\afsmonitor.pod \ + pod1\aklog.pod \ + pod1\cmdebug.pod \ + pod1\afs_compile_et.pod \ + pod1\copyauth.pod \ + pod1\dlog.pod \ + pod1\fs.pod \ + pod1\fs_apropos.pod \ + pod1\fs_bypassthreshold.pod \ + pod1\fs_checkservers.pod \ + pod1\fs_checkvolumes.pod \ + pod1\fs_chgrp.pod \ + pod1\fs_chown.pod \ + pod1\fs_cleanacl.pod \ + pod1\fs_copyacl.pod \ + pod1\fs_cscpolicy.pod \ + pod1\fs_diskfree.pod \ + pod1\fs_examine.pod \ + pod1\fs_exportafs.pod \ + pod1\fs_flush.pod \ + pod1\fs_flushall.pod \ + pod1\fs_flushmount.pod \ + pod1\fs_flushvolume.pod \ + pod1\fs_getcacheparms.pod \ + pod1\fs_getcalleraccess.pod \ + pod1\fs_getcellstatus.pod \ + pod1\fs_getclientaddrs.pod \ + pod1\fs_getcrypt.pod \ + pod1\fs_getfid.pod \ + pod1\fs_getserverprefs.pod \ + pod1\fs_getverify.pod \ + pod1\fs_help.pod \ + pod1\fs_listacl.pod \ + pod1\fs_listaliases.pod \ + pod1\fs_listcells.pod \ + pod1\fs_listquota.pod \ + pod1\fs_lsmount.pod \ + pod1\fs_memdump.pod \ + pod1\fs_messages.pod \ + pod1\fs_minidump.pod \ + pod1\fs_mkmount.pod \ + pod1\fs_monitor.pod \ + pod1\fs_newalias.pod \ + pod1\fs_newcell.pod \ + pod1\fs_quota.pod \ + pod1\fs_rmmount.pod \ + pod1\fs_rxstatpeer.pod \ + pod1\fs_rxstatproc.pod \ + pod1\fs_setacl.pod \ + pod1\fs_setcachesize.pod \ + pod1\fs_setcbaddr.pod \ + pod1\fs_setcell.pod \ + pod1\fs_setclientaddrs.pod \ + pod1\fs_setcrypt.pod \ + pod1\fs_setquota.pod \ + pod1\fs_setserverprefs.pod \ + pod1\fs_setverify.pod \ + pod1\fs_setvol.pod \ + pod1\fs_storebehind.pod \ + pod1\fs_sysname.pod \ + pod1\fs_trace.pod \ + pod1\fs_uuid.pod \ + pod1\fs_whereis.pod \ + pod1\fs_whichcell.pod \ + pod1\fs_wscell.pod \ + pod1\klog.krb5.pod \ + pod1\klog.pod \ + pod1\knfs.pod \ + pod1\kpasswd.pod \ + pod1\livesys.pod \ + pod1\pagsh.pod \ + pod1\pts.pod \ + pod1\pts_adduser.pod \ + pod1\pts_apropos.pod \ + pod1\pts_chown.pod \ + pod1\pts_creategroup.pod \ + pod1\pts_createuser.pod \ + pod1\pts_delete.pod \ + pod1\pts_examine.pod \ + pod1\pts_help.pod \ + pod1\pts_interactive.pod \ + pod1\pts_listentries.pod \ + pod1\pts_listmax.pod \ + pod1\pts_listowned.pod \ + pod1\pts_membership.pod \ + pod1\pts_quit.pod \ + pod1\pts_removeuser.pod \ + pod1\pts_rename.pod \ + pod1\pts_setfields.pod \ + pod1\pts_setmax.pod \ + pod1\pts_sleep.pod \ + pod1\pts_source.pod \ + pod1\restorevol.pod \ + pod1\rxdebug.pod \ + pod1\rxgen.pod \ + pod1\scout.pod \ + pod1\symlink.pod \ + pod1\symlink_list.pod \ + pod1\symlink_make.pod \ + pod1\symlink_remove.pod \ + pod1\sys.pod \ + pod1\tokens.pod \ + pod1\translate_et.pod \ + pod1\udebug.pod \ + pod1\unlog.pod \ + pod1\up.pod \ + pod1\vos.pod \ + pod1\vos_addsite.pod \ + pod1\vos_apropos.pod \ + pod1\vos_backup.pod \ + pod1\vos_backupsys.pod \ + pod1\vos_changeaddr.pod \ + pod1\vos_changeloc.pod \ + pod1\vos_clone.pod \ + pod1\vos_convertROtoRW.pod \ + pod1\vos_copy.pod \ + pod1\vos_create.pod \ + pod1\vos_delentry.pod \ + pod1\vos_dump.pod \ + pod1\vos_examine.pod \ + pod1\vos_help.pod \ + pod1\vos_listaddrs.pod \ + pod1\vos_listpart.pod \ + pod1\vos_listvldb.pod \ + pod1\vos_listvol.pod \ + pod1\vos_lock.pod \ + pod1\vos_move.pod \ + pod1\vos_offline.pod \ + pod1\vos_online.pod \ + pod1\vos_partinfo.pod \ + pod1\vos_release.pod \ + pod1\vos_remove.pod \ + pod1\vos_remsite.pod \ + pod1\vos_rename.pod \ + pod1\vos_restore.pod \ + pod1\vos_setfields.pod \ + pod1\vos_shadow.pod \ + pod1\vos_size.pod \ + pod1\vos_status.pod \ + pod1\vos_syncserv.pod \ + pod1\vos_syncvldb.pod \ + pod1\vos_unlock.pod \ + pod1\vos_unlockvldb.pod \ + pod1\vos_zap.pod \ + pod1\xstat_cm_test.pod \ + pod1\xstat_fs_test.pod \ + pod3\AFS.ukernel.pod \ + pod5\afs.pod \ + pod5\afsmonitor.pod \ + pod5\afszcm.cat.pod \ + pod5\afs_cache.pod \ + pod5\afs_volume_header.pod \ + pod5\AuthLog.dir.pod \ + pod5\AuthLog.pod \ + pod5\BackupLog.pod \ + pod5\bdb.DB0.pod \ + pod5\BosConfig.pod \ + pod5\BosLog.pod \ + pod5\butc.pod \ + pod5\butc_logs.pod \ + pod5\cacheinfo.pod \ + pod5\CellAlias.pod \ + pod5\CellServDB.pod \ + pod5\FileLog.pod \ + pod5\fms.log.pod \ + pod5\FORCESALVAGE.pod \ + pod5\kaserver.DB0.pod \ + pod5\kaserverauxdb.pod \ + pod5\KeyFile.pod \ + pod5\krb.conf.pod \ + pod5\NetInfo.pod \ + pod5\NetRestrict.pod \ + pod5\NoAuth.pod \ + pod5\prdb.DB0.pod \ + pod5\SALVAGE.fs.pod \ + pod5\salvage.lock.pod \ + pod5\SalvageLog.pod \ + pod5\sysid.pod \ + pod5\tapeconfig.pod \ + pod5\ThisCell.pod \ + pod5\UserList.pod \ + pod5\uss.pod \ + pod5\uss_bulk.pod \ + pod5\vldb.DB0.pod \ + pod5\VLLog.pod \ + pod5\VolserLog.pod \ + pod8\afsd.pod \ + pod8\asetkey.pod \ + pod8\backup.pod \ + pod8\backup_adddump.pod \ + pod8\backup_addhost.pod \ + pod8\backup_addvolentry.pod \ + pod8\backup_addvolset.pod \ + pod8\backup_apropos.pod \ + pod8\backup_dbverify.pod \ + pod8\backup_deldump.pod \ + pod8\backup_deletedump.pod \ + pod8\backup_delhost.pod \ + pod8\backup_delvolentry.pod \ + pod8\backup_delvolset.pod \ + pod8\backup_diskrestore.pod \ + pod8\backup_dump.pod \ + pod8\backup_dumpinfo.pod \ + pod8\backup_help.pod \ + pod8\backup_interactive.pod \ + pod8\backup_jobs.pod \ + pod8\backup_kill.pod \ + pod8\backup_labeltape.pod \ + pod8\backup_listdumps.pod \ + pod8\backup_listhosts.pod \ + pod8\backup_listvolsets.pod \ + pod8\backup_quit.pod \ + pod8\backup_readlabel.pod \ + pod8\backup_restoredb.pod \ + pod8\backup_savedb.pod \ + pod8\backup_scantape.pod \ + pod8\backup_setexp.pod \ + pod8\backup_status.pod \ + pod8\backup_volinfo.pod \ + pod8\backup_volrestore.pod \ + pod8\backup_volsetrestore.pod \ + pod8\bos.pod \ + pod8\bosserver.pod \ + pod8\bos_addhost.pod \ + pod8\bos_addkey.pod \ + pod8\bos_adduser.pod \ + pod8\bos_apropos.pod \ + pod8\bos_create.pod \ + pod8\bos_delete.pod \ + pod8\bos_exec.pod \ + pod8\bos_getdate.pod \ + pod8\bos_getlog.pod \ + pod8\bos_getrestart.pod \ + pod8\bos_getrestricted.pod \ + pod8\bos_help.pod \ + pod8\bos_install.pod \ + pod8\bos_listhosts.pod \ + pod8\bos_listkeys.pod \ + pod8\bos_listusers.pod \ + pod8\bos_prune.pod \ + pod8\bos_removehost.pod \ + pod8\bos_removekey.pod \ + pod8\bos_removeuser.pod \ + pod8\bos_restart.pod \ + pod8\bos_salvage.pod \ + pod8\bos_setauth.pod \ + pod8\bos_setcellname.pod \ + pod8\bos_setrestart.pod \ + pod8\bos_setrestricted.pod \ + pod8\bos_shutdown.pod \ + pod8\bos_start.pod \ + pod8\bos_startup.pod \ + pod8\bos_status.pod \ + pod8\bos_stop.pod \ + pod8\bos_uninstall.pod \ + pod8\bos_util.pod \ + pod8\buserver.pod \ + pod8\butc.pod \ + pod8\dafileserver.pod \ + pod8\dasalvager.pod \ + pod8\davolserver.pod \ + pod8\fileserver.pod \ + pod8\fms.pod \ + pod8\fstrace.pod \ + pod8\fstrace_apropos.pod \ + pod8\fstrace_clear.pod \ + pod8\fstrace_dump.pod \ + pod8\fstrace_help.pod \ + pod8\fstrace_lslog.pod \ + pod8\fstrace_lsset.pod \ + pod8\fstrace_setlog.pod \ + pod8\fstrace_setset.pod \ + pod8\ka-forwarder.pod \ + pod8\kadb_check.pod \ + pod8\kas.pod \ + pod8\kaserver.pod \ + pod8\kas_apropos.pod \ + pod8\kas_create.pod \ + pod8\kas_delete.pod \ + pod8\kas_examine.pod \ + pod8\kas_forgetticket.pod \ + pod8\kas_help.pod \ + pod8\kas_interactive.pod \ + pod8\kas_list.pod \ + pod8\kas_listtickets.pod \ + pod8\kas_noauthentication.pod \ + pod8\kas_quit.pod \ + pod8\kas_setfields.pod \ + pod8\kas_setpassword.pod \ + pod8\kas_statistics.pod \ + pod8\kas_stringtokey.pod \ + pod8\kas_unlock.pod \ + pod8\kdb.pod \ + pod8\kpwvalid.pod \ + pod8\prdb_check.pod \ + pod8\ptserver.pod \ + pod8\pt_util.pod \ + pod8\read_tape.pod \ + pod8\rmtsysd.pod \ + pod8\salvager.pod \ + pod8\salvageserver.pod \ + pod8\upclient.pod \ + pod8\upserver.pod \ + pod8\uss.pod \ + pod8\uss_add.pod \ + pod8\uss_apropos.pod \ + pod8\uss_bulk.pod \ + pod8\uss_delete.pod \ + pod8\uss_help.pod \ + pod8\vldb_check.pod \ + pod8\vldb_convert.pod \ + pod8\vlserver.pod \ + pod8\voldump.pod \ + pod8\volinfo.pod \ + pod8\volscan.pod \ + pod8\volserver.pod \ + pod8\vsys.pod \ + pod8\xfs_size_check.pod + +html\index.html: $(PODS) + @echo Building man pages in HTML format + $(PERL) generate-html + + +install: html\index.html + +clean:: + $(CD) html + $(DEL) /s *.html + $(CD) .. + $(DEL) pod1\fs_listquota.pod + $(DEL) pod1\fs_quota.pod + $(DEL) pod1\fs_setquota.pod + $(DEL) pod1\fs_setvol.pod + $(DEL) pod1\pts_adduser.pod + $(DEL) pod1\pts_chown.pod + $(DEL) pod1\pts_creategroup.pod + $(DEL) pod1\pts_createuser.pod + $(DEL) pod1\pts_delete.pod + $(DEL) pod1\pts_examine.pod + $(DEL) pod1\pts_interactive.pod + $(DEL) pod1\pts_listentries.pod + $(DEL) pod1\pts_listmax.pod + $(DEL) pod1\pts_listowned.pod + $(DEL) pod1\pts_membership.pod + $(DEL) pod1\pts_quit.pod + $(DEL) pod1\pts_removeuser.pod + $(DEL) pod1\pts_rename.pod + $(DEL) pod1\pts_setfields.pod + $(DEL) pod1\pts_setmax.pod + $(DEL) pod1\pts_sleep.pod + $(DEL) pod1\pts_source.pod + $(DEL) pod1\vos.pod + $(DEL) pod1\vos_addsite.pod + $(DEL) pod1\vos_backup.pod + $(DEL) pod1\vos_clone.pod + $(DEL) pod1\vos_copy.pod + $(DEL) pod1\vos_dump.pod + $(DEL) pod1\vos_create.pod + $(DEL) pod1\vos_examine.pod + $(DEL) pod1\vos_move.pod + $(DEL) pod1\vos_partinfo.pod + $(DEL) pod1\vos_shadow.pod + $(DEL) pod1\vos_zap.pod + $(DEL) pod8\dafileserver.pod + $(DEL) pod8\dasalvager.pod + $(DEL) pod8\davolserver.pod + $(DEL) pod8\fileserver.pod + $(DEL) pod8\salvager.pod + $(DEL) pod8\volserver.pod + +.SUFFIXES: .pod.in + +{pod1}.pod.in{pod1}.pod:: + $(PERL) merge-pod $< + +{pod3}.pod.in{pod3}.pod:: + $(PERL) merge-pod $< + +{pod5}.pod.in{pod5}.pod:: + $(PERL) merge-pod $< + +{pod8}.pod.in{pod8}.pod:: + $(PERL) merge-pod $< diff --git a/doc/man-pages/README b/doc/man-pages/README new file mode 100644 index 0000000..679abfd --- /dev/null +++ b/doc/man-pages/README @@ -0,0 +1,282 @@ + OpenAFS Man Pages + +Overview + + This directory contains the POD source and (in releases) the generated + man pages for OpenAFS commands and files. The man pages are based on + the original IBM AFS Administration Reference manual, released with the + rest of AFS under the IBM Public License 1.0. They were converted from + HTML to POD, editing, and are currently maintained in POD. + + The man pages are very much a work in progress. The original source + material dated from IBM's public release of AFS, and many changes since + made in OpenAFS are not reflected in the man pages. Help and + contributions are actively solicited. Please see "How You Can Help" + below for more information. + + The long-term goal is for every command shipped with OpenAFS and every + configuration or data file written or read by OpenAFS to have its own + man page. Section one is used for commands that don't require special + privileges, section eight for commands for AFS administrators and local + system administrators, and section five for file formats and + configuration files, with the exception that command suites are kept + together (so, for instance, all fs commands are documented in section + one even though some of them are only usable by a local system + administrator). + + The OpenAFS man pages are discussed on the openafs-doc mailing list at + openafs.org. If you plan on contributing to the man page project, + please join that mailing list and send suggestions, patches*, and + contributions there. The coordinator of the OpenAFS man page project is + Russ Allbery ; feel free to contact me directly with + questions (although using the mailing list is generally better and will + probably result in a faster response). + + * Although we still accept patch submissions to the list, it is + greatly preferred that you make your submission through Git to + the OpenAFS Gerrit instance (code review system). Information + can be found at + +POD and Man Page Generation + + The OpenAFS man pages are maintained in POD (Plain Old Documentation), + the documentation system originally developed for Perl. This is not an + uncontroversial choice, since POD isn't as rich and full-featured as + other possible alternatives such as Docbook RefEntry. On the other + hand, POD is very close to plain text, can be easier to edit and + maintain for those not familiar with the documentation format, and has + more mature tools for conversion to formatted man pages, an output + format that is particularly important on Unix/Linux. There are many + good arguments either way, and fundamentally the decision was made to + use POD because I prefer it and I'm volunteering to write and edit the + pages and maintain them going forward. + + To convert the POD source to formatted man pages, you need the pod2man + utility. This utility has come with Perl for many years, so if you have + Perl installed, you almost certainly have some version of it available. + For the best results, install Pod::Simple 3.03 or later and podlators + 2.00 or later from CPAN and use that pod2man, but the results from the + pod2man that comes with Perl 5.8 or later will be very good. If you are + using earlier versions of Perl, the output should be adequate and + readable but may contain some formatting glitches. + + Preformatted man pages will be included in distribution tarballs, but + those man pages may be generated with older versions of the conversion + utilities. To regenerate the man pages, run regen.sh at the top of the + OpenAFS source tree (this will also regenerate the Autoconf scripts). + + Conversion to HTML can be done via any of the POD to HTML converters + available (there are many of them), but for best results (particularly + for crosslinks), use the generate-html script in this directory. You + will need to have the Pod::Simple Perl module installed. If your Perl + is not in /usr/bin, run generate-html explicitly with: + + perl generate-html + + It will generate HTML pages in the html subdirectory of this directory. + +Formatting Standards + + Each command or configuration file should have a separate man page in a + separate POD file. Command suites (fs, pts, vos, etc.) should have an + overview man page that lists the available subcommands by category, + documents common options, and discusses the general use of the suite. + Then, each operation code in the suite should have a separate man page, + named after the command with the space between the command suite and the + operation code replaced with an underscore. The NAME section of the + operation man page must also use an underscore (fs_listacl, not fs + listacl) for compatibility with some man programs. The SYNOPSIS section + should, of course, use a space, since that's what the user must type. + + All man pages must follow the standard layout for man page sections and + formatting. The best general reference is the pod2man man page, + although the sections used for OpenAFS man pages aren't quite the same + (see below). In particular, please use the following markup: + + * B<> for all commands, command/operation code pairs, and options. + * F<> for file names, directory names, partition names, or paths. + * > for user-provided arguments (note the surrounding <>). + * I<> for terms being defined or titles of works. + * C<> for command examples, ACL characters, and example arguments. + * S<<<>>> for text with non-breaking spaces (usually in synopsis). + + Also see the afs(1) man page for general rules about how OpenAFS man + pages are formatted and for standard terminology to use when talking + about OpenAFS commands. + + Each man page should have the following sections: NAME, SYNOPSIS (for + commands only), DESCRIPTION, CAUTIONS, OPTIONS (for commands only), + OUTPUT (where appropriate), EXAMPLES, PRIVILEGE REQUIRED (for commands + only), SEE ALSO, and COPYRIGHT, generally in that order. Be sure to + include the IBM copyright in all man pages derived from the original IBM + documentation. If you wrote the man page yourself, please include your + own copyright and a statement that the man page is released under the + IBM Public License Version 1.0, or under some other license that is + sufficiently compatible that we can use your work. If you use another + license and that license isn't "public domain" or one of the ones + already listed in our LICENSE file, you have to give the full license + text in the man page; please don't use a license so long that this is + annoying. + + The SYNOPSIS section should start with the full command name and the + full names of all options, and then have a second section showing the + most abbreviated form of the command name and its options. If the + command has aliases, it should have additional sections showing those. + Please be sure to follow all of the formatting requirements for + commands, flags, and options. Enclose optional arguments in [] and + choices in () separated by |. Command names and options are marked up + with B<> as mentioned above; all other literal text that should be + entered on the command line gets no markup. + + References to other OpenAFS man pages should be given as L. + Other man pages should be noted like df(1), without the L<> markup. + References to functions should be noted like function() with the + trailing parens. The POD converters know how to format these sorts of + references appropriately. References to other sections in the same page + should be given as L
. Man pages for all other AFS commands or + file formats referenced in the page should be listed in the SYNOPSIS. + List each reference on its own line for easier addition of other + references later, but don't put blank lines between them. Don't forget + the commas at the end of each line but the last. + + Command and output examples should be indented three spaces. Commands + entered by the user should be given on a line beginning with %. If the + command doesn't fit in 80 columns, put in a backslash at a logical break + point and continue the line with an additional four spaces of + indentation. Output examples may be wrapped with an additional four + spaces of indentation but probably shouldn't be; not wrapping makes the + man page look somewhat less readable, but is less confusing when + converted to other formats such as HTML. + + POD does not allow markup in verbatim paragraphs (which are indicated by + indenting the first line of the paragraph), so metasyntactic variables + in examples should be shown like with simple angle brackets + surrounding the variable. For consistency in formatting, references to + those variables should be formatted the same in following text. + +Man Page Sections + + The section of a man page is determined by which directory it's in. + pod1 will be section 1 man pages, pod3 will be section 3, pod5 will be + section 5, and pod8 will be section 8. + + The breakdown between section 1 and section 8 is fuzzy and it's hard to + get right. The current layout balances the following goals: + + * In general, section 1 is used for commands that can be executed by any + user and section 8 is used for commands that can only be meaningfully + issued as root. If a command can be run with AFS privileged + credentials but still as a regular user on the local system, the + preference is for it to be in section 1, although some pages of that + type are in section 8. + + * All the commands for a given suite should be kept together. So, for + example, there are fs commands that can only be issued as root, but + since most of the suite is available to any user, all of the fs + commands are in section 1. + + * The sections of the man pages should roughly correspond to the + installation paths of the binaries. Binaries installed in bin should + have man pages in section 1 and binaries installed in sbin should have + man pages in section 8. + + Section 5 should be used for all documentation of configuration files + and file formats. + +How You Can Help + + A lot of work remains to be done on the OpenAFS man page project. Any + and all contributions are greatly appreciated. What follows is a list + of the ways that you can help in order of increasing helpfulness. If + you only have time to do something near the top of the list, please do; + every little bit helps. If you have more time and can do something + closer to the bottom of the list, that's even better and your + contribution can be included more rapidly. + + * Point out places OpenAFS behavior has changed since the documentation + was written, or point out missing documentation. Please check the + "Known Problems" list below to make sure that the item is not already + noted. + + * Point out formatting problems, typos, formatting inconsistency, and + other markup or language problems in the man pages. + + * Provide missing documentation in some form (text, HTML, whatever) + that can be incorporated into the man pages, or detailed explanations + of how the existing documentation needs to be changed to match what + the tools actually do. + + * Provide missing man pages in POD format suitable for immediate + inclusion in the documentation. Please try to follow the formatting + standards documented in the "Formatting Standards" section above, and + look at the existing man pages for examples. + + * Provide patches against the POD source that correct formatting + problems, typos, formatting inconsistencies, or other markup or + language problems with the man pages. + + * Provide patches against the POD source that add or correct the + documentation of commands or file formats for changes in OpenAFS. + + Please submit contributions to Gerrit or send them either to the + openafs-doc list or as bugs filed via the bug reporting instructions at + . If you do submit a bug, please send me a + note at rra@stanford.edu with the bug number so that I'm aware of it, as + I don't always notice new bugs. + + You can test your new POD documentation by running the check-pod script + in this directory with "prove check-pod". (And check other people's + documentation and find any problems that have crept in.) You will need + to have Test::Pod installed. + +Known Problems + + The current man pages have the following known deficiencies. Please + don't just report the deficiency again, but any contributions towards + fixing it are greatly appreciated. + + * We need a way to add links to other man pages (kinit most notably) + without creating dangling links in the HTML output. This probably + means that the HTML conversion script needs to generate at startup + a list of all valid man page link targets and not linkify the ones + that don't match a valid target. + + * Provide a way to substitute the correct paths into the HTML output + from Autoconf results. + + * Review the sections used for all man pages against what directories + the commands are installed into. (In some cases, it may be better to + change the directory than the section of the man page.) + + * Consider using M4 or similar to operate on POD text before output. + This would allow common options like vos -c,-noa,-l,-v,-e,-nor to be + documented once and automatically included in all vos_ reference + pages, much like the vos.c source includes those arguments as + COMMONPARMS. + + * Check that suite intro pages mention all subcommands + + Changes needed to have vos suite commands completely up to date, + including the 1.5 branch: + + * Document vos create -minquota which is available since 1.5.61 + + * Document vos restore -creation/-lastupdate and -nodelete + + Man section 8 suite commands: + + * Mention bos (un)blockscanner in bos.pod text, not just in See Also + at the end + + * Update backup source to include option descriptions (for content, + use existing manpage information "condensed" to half line of text) + + * Document backup deletedump -port/-groupid/-dbonly/-force/-noexecute + + * Document backup help -admin + + * Document backup volrestore -usedump. + + If you notice other problems, please send them to the openafs-doc list + even if you don't have time to fix them. Someone else might, and we + want to track all of the issues. diff --git a/doc/man-pages/check-pod b/doc/man-pages/check-pod new file mode 100755 index 0000000..0b79e38 --- /dev/null +++ b/doc/man-pages/check-pod @@ -0,0 +1,35 @@ +#!/usr/bin/perl +# +# Written by Jason Edgecombe based on the Test::Pod documentation. The +# best way to run it is to run: +# +# prove check-pod +# +# from the doc/man-pages directory, which will show any errors found in +# any of the POD files. +# +# Extended by Davor Ocelic to support explicit list of POD files or +# sections to check: +# +# check-pod pod1/fs.pod +# check-pod pod5 +# check-pod pod1 pod8/volserver.pod +# + +use strict; +use Test::More; +eval "use Test::Pod 1.00"; + +plan skip_all => "Test::Pod 1.00 required for testing POD" if $@; +my @poddirs = qw( pod1 pod3 pod5 pod8 ); + +my @list; +for ( @ARGV ? @ARGV : @poddirs ) { + if ( -f ) { + push @list, $_ + } elsif ( -d ) { + push @list, grep { !m,fragments/, } all_pod_files( $_ ) + } +} + +all_pod_files_ok( @list ); diff --git a/doc/man-pages/checkman b/doc/man-pages/checkman new file mode 100755 index 0000000..8462743 --- /dev/null +++ b/doc/man-pages/checkman @@ -0,0 +1,303 @@ +#!/usr/bin/perl +# +# Copyright (c) 2013 Sine Nomine Associates +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS +# IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR +# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# checkman - run everything in the given directory of binaries, and try to +# find mismatches between the -help output, and the man page for that command + +use strict; +use warnings; + +use Getopt::Long; +use File::Find; + +my $bindir; +my $mandir; + +sub usage { + print STDERR "WARNING: Running checkman can be dangerous, as it tries to \n"; + print STDERR "blindly run almost everything in the given binaries dir.\n\n"; + print STDERR "Usage: $0 --bindir --mandir "; +} + +GetOptions( + "b|bindir=s" => \$bindir, + "M|mandir=s" => \$mandir, +) or die("Error while parsing options\n"); + +if (not defined($bindir)) { + usage(); +} +if (not defined($mandir)) { + usage(); +} + +if (not -d $bindir) { + die("--bindir $bindir is not a directory\n"); +} +if (not -d $mandir) { + die("--mandir $mandir is not a directory\n"); +} +if (not -d "$mandir/man1") { + die("--mandir must point to a dir containing man1, man8, etc\n"); +} + +my %cmd_blacklist = ( + rmtsysd => '', + pagsh => '', + 'pagsh.krb' => '', + kpwvalid => '', + 'afs.rc' => '', +); + +my %cmd_map; +my $mismatch = 0; + +# find a list of all possible commands we can run, and map them to their full +# path +find(sub { + if (-f and -x and -s) { + $cmd_map{$_} = $File::Find::name; + } +}, $bindir); + +my %opt_map; +my @error_cmds; + +sub parsehelp($$;$); + +sub +check_opts($$) +{ + my ($manstr, $helpout) = @_; + + my %help_opts; + + my %syn_opts; + my %man_opts; + my %man_just_opts; + + $helpout =~ tr/\n/ /; + + # match everything that looks like an option + # basically, find stuff that begins with a hyphen, and is surrounded by + # brackets or spaces, or precedes a '=' + for ($helpout =~ m/(?:\[| )-([a-zA-Z0-9_-]+)(?=\s|[][]|=)/g) { + #print " help str $manstr opt -$_\n" if ($manstr =~ /ptserver/); + if ($_ eq 'c') { + # Almost everything lists '-c' as an alias for '-cell'. + # We don't put that in the first synopsis for each man + # page, so just pretend it's not there. + next; + } + $help_opts{$_} = 1; + } + + my $manout = `man -s 8,1 -M '$mandir' $manstr 2>/dev/null`; + + my $insyn = 0; + my $inopts = 0; + + my $syn_sections = 0; + my $lastline; + my $curline; + + for (split /^/, $manout) { + $lastline = $curline if (defined($curline)); + $curline = $_; + + if (m/^SYNOPSIS$/) { + $insyn = 1; + $inopts = 0; + next; + } + if (m/^OPTIONS$/) { + $insyn = 0; + $inopts = 1; + next; + } + if (m/^[A-Z]+$/) { + if ($inopts) { + # don't need anything after OPTIONS + $inopts = 0; + last; + } + $insyn = 0; + next; + } + if (m/^\s+[a-z]/ and $insyn) { + $syn_sections++; + if ($syn_sections > 1) { + # don't need anything in the synopsis after the first area + $insyn = 0; + next; + } + } + + if ($insyn) { + # check for options in the synopsis... + for (m/(?:\[|\s)-([a-zA-Z0-9_-]+)(?=\s|\]|\[)/g) { + #print " man page $manstr syn opt -$_\n" if ($manstr =~ /ptserver/); + $syn_opts{$_} = 1; + } + } + if ($inopts) { + # check for options in the OPTIONS section + #print "last: $lastline, cur: $_\n"; + if ($lastline =~ m/^(\s*|OPTIONS)$/ && m/^\s+-[a-zA-Z0-9_-]+/) { + # Options only appear after a blank line (or right after the + # OPTIONS line), so only go here if the last + # line was blank, and we see what looks like an + # option as the first thing on the current + # line. + + # Find all options on the current line. Option + # aliases can appear on the same =items line, + # so get all of the aliases. + for (m/\s-([a-zA-Z0-9_-]+)/g) { + $man_just_opts{$_} = 1; + if (exists $syn_opts{$_}) { + # only count them if they also appeared in the synopsis earlier + $man_opts{$_} = 1; + } + } + } + } + } + + if (not %man_opts and not %syn_opts) { + # we found no options in the man page output; so probably, we didn't + # actually get a man page back. just print a single message, so we don't + # print out something for every single option + print "man page $manstr missing\n"; + return; + } + + for (keys %help_opts) { + if (not exists $man_opts{$_}) { + my $extra = ''; + if (exists $syn_opts{$_}) { + $extra = " from OPTIONS"; + } elsif (exists $man_just_opts{$_}) { + $extra = " from synopsis"; + } + + print "man page $manstr missing option -$_$extra\n"; + $mismatch = 1; + } + } + my %tmphash = (%syn_opts, %man_just_opts); + for (keys %tmphash) { + if (not exists $help_opts{$_}) { + my $extra = ''; + if (not exists $syn_opts{$_}) { + $extra = " in OPTIONS"; + } elsif (not exists $man_just_opts{$_}) { + $extra = " in synopsis"; + } + + print "man page $manstr extra option -$_$extra\n"; + $mismatch = 1; + } + } +} + +sub +parsehelp($$;$) { + my ($cmd, $path, $subcmd) = @_; + + my $runstr; + my $manstr; + + $runstr = $path; + $manstr = $cmd; + + if (defined($subcmd)) { + $runstr = "$path $subcmd"; + if ($subcmd ne "initcmd") { + $manstr = "$cmd"."_"."$subcmd"; + } + } + + if (defined($cmd_blacklist{$cmd})) { + return; + } + + my $out = `$runstr -help 2>&1`; + if (defined($out)) { + if ($out =~ m/^Usage: /) { + # actual help output, listing options etc + check_opts($manstr, $out); + return; + } + + if ($out =~ m/Commands are:$/m) { + # multi-command program + if (defined($subcmd)) { + die("Subcommand $cmd $subcmd gave more subcommands?"); + } + + if ($out =~ m/^initcmd.*initialize the program$/m) { + # not actually multi-command; we just need to give the initcmd + # pseudo-subcommand + parsehelp($cmd, $path, "initcmd"); + return; + } + + # find all of the subcommands, and call parsehelp() on them + for (split /^/, $out) { + chomp; + next if m/Commands are:$/; + next if m/^apropos\s/ or m/^help\s/; + if (m/^(\S+)\s+[\S ]+$/) { + parsehelp($cmd, $path, $1); + } else { + print "for cmd $cmd got unmatched line $_\n"; + } + } + + return; + } + } + + if (not defined($subcmd)) { + $subcmd = ""; + } + + print "Skipped command $path $subcmd\n"; + + # not sure what to do about this one + push @error_cmds, "$path $subcmd"; +} + +for my $cmd (keys %cmd_map) { + my $path = $cmd_map{$cmd}; + + parsehelp($cmd, $path); +} + +exit($mismatch); diff --git a/doc/man-pages/generate-html b/doc/man-pages/generate-html new file mode 100755 index 0000000..d46c80f --- /dev/null +++ b/doc/man-pages/generate-html @@ -0,0 +1,183 @@ +#!/usr/bin/perl -w +package OpenAFS::HTML; + +use strict; +use vars qw(@ISA); + +use Pod::Simple::Search; +@ISA = qw(Pod::Simple::HTML); + +# Add a link back to the index page to the top and bottom of each generated +# page. +# +# The hideous approach we have to use is because, unless we create a +# Pod::Simple::HTML object and then rebless it, the html_header_after_title +# and html_footer subs are placed in the OpenAFS::HTML package. That means we +# can't override them in a subclass and still call the SUPER version since +# we'll be overwriting the SUPER version, and there aren't other good +# opportunities to change the default values that I can see. +sub new { + my $class = shift; + my $self = Pod::Simple::HTML->new (@_); + bless ($self, 'OpenAFS::HTML'); + my $link = '' . "\n"; + my $after = $self->html_header_after_title; + $self->html_header_after_title ($after . $link); + my $end = $self->html_footer; + $self->html_footer ($link . $end); + return $self; +} + +sub do_man_link { + my ($self, $token) = @_; + my $page = $token->attr ('to'); + my ($name, $section) = ($page =~ /^([^\(]+)\((\d+)\)$/); + return unless $name; + my @url = ('..', $section, $name); + return join ('/', map { $self->pagepath_url_escape ($_) } @url) + . $Pod::Simple::HTML::HTML_EXTENSION; +} + +# Underscore isn't allowed in man page names in Pod::Simple 3.04, so links +# like L show up as POD links. Discover that case and dispatch +# everything else to the standard do_pod_link implementation. +sub do_pod_link { + my ($self, $token) = @_; + my $target = $token->attr ('to'); + if ($target && $target =~ /^([^\s\(]+)\((\d+)\)$/) { + return $self->do_man_link ($token); + } else { + return $self->SUPER::do_pod_link ($token); + } +} + +sub VERSION () { '1.1' } + +$Pod::Simple::HTML::Tagmap{'item-bullet'} = '
  • '; +$Pod::Simple::HTML::Tagmap{'/item-bullet'} = '

  • '; +$Pod::Simple::HTML::Tagmap{'item-number'} = '
  • '; +$Pod::Simple::HTML::Tagmap{'/item-number'} = '

  • '; + +# This horrific hack is required because Pod::Simple::HTMLBatch has no way +# of setting search options and we have to set laborious to true in order +# to pick up man pages like krb.conf(5). +package OpenAFS::Search; + +use strict; +use vars qw(@ISA); + +use Pod::Simple::Search; +@ISA = qw(Pod::Simple::HTML); + +sub new { + my $class = shift; + my $object = Pod::Simple::Search->new; + $object->laborious (1); + return $object; +} + +package main; + +use strict; + +use File::Copy; +use Pod::Simple::HTMLBatch; + +# Override the search class to set laborious. +$Pod::Simple::HTMLBatch::SEARCH_CLASS = 'OpenAFS::Search'; + +our $HEADER = <<'EOH'; + + + OpenAFS Reference Manual + + + +

    OpenAFS Reference Manual

    +EOH + +our %HEADINGS = (1 => 'User Commands', + 3 => 'C Library Functions', + 5 => 'Configuration and Data Files', + 8 => 'Administrator Commands'); + +# Scan all of the POD files and build a list of section, name, and short +# description, returning that as an array. +sub scan_names { + my @index; + for my $dir (qw(pod1 pod3 pod5 pod8)) { + my $section = $dir; + $section =~ s/^pod//; + opendir (D, $dir) or die "Cannot open $dir: $!\n"; + for my $file (sort grep { !/^\./ && /\.pod$/ } readdir D) { + open (F, "$dir/$file") or die "Cannot open $dir/$file: $!\n"; + my ($name, $desc); + local $_; + while () { + last if /^=head1/ && !/^=head1\s+NAME\b/; + next unless /\s+-\s+/; + ($name, $desc) = split (/\s+-\s+/, $_, 2); + } + unless ($name) { + warn "$dir/$file: cannot find NAME section, skipping\n"; + } + $name =~ s/^(backup|bos|fs|fstrace|kas|pts|symlink|uss|vos)_/$1 /; + if ($section eq '3') { + $name =~ s/^AFS\./AFS::/; + } + if ($section eq '5') { + $name =~ s/_/ /g; + } + my $page = $file; + $page =~ s/\.pod$//; + push (@index, [ $section, $name, $page, $desc ]); + } + closedir D; + } + return @index; +} + +unless (-d 'html') { + mkdir ('html', 0755) or die "Cannot create html directory: $!\n"; +} +for my $dir (qw(pod1 pod3 pod5 pod8)) { + my $section = $dir; + $section =~ s/^pod//; + mkdir ("html/$section", 0755) unless -d "html/$section"; + + my $conv = Pod::Simple::HTMLBatch->new; + $conv->verbose (0); + $conv->index (undef); + $conv->contents_file (undef); + $conv->add_css ('../style.css', 1); + $conv->css_flurry (0); + $conv->javascript_flurry (0); + $conv->html_render_class ('OpenAFS::HTML'); + $conv->batch_convert ($dir, "html/$section"); +} +copy ('style.css', 'html/style.css') or die "Cannot copy style.css: $!\n"; + +open (INDEX, '> html/index.html') + or die "Cannot create html/index.html: $!\n"; +print INDEX $HEADER; +print INDEX "\n"; +my @index = scan_names; +my $current; +for my $entry (@index) { + my ($section, $name, $page, $desc) = @$entry; + for ($name, $desc) { + s/&/>/g; + s//>/g; + } + if (!$current || $section != $current) { + print INDEX qq(\n); + print INDEX qq(\n); + $current = $section; + } + print INDEX qq(); + print INDEX qq(\n); +} +print INDEX "
     
    ); + print INDEX qq($HEADINGS{$section}
    $name$desc
    \n\n\n"; diff --git a/doc/man-pages/generate-man b/doc/man-pages/generate-man new file mode 100755 index 0000000..726e0cb --- /dev/null +++ b/doc/man-pages/generate-man @@ -0,0 +1,77 @@ +#!/bin/sh +# +# Generate the OpenAFS man pages from POD source. This script is normally +# invoked by regen.sh but may be run at any time to rebuild all of the man +# pages (with a newer version of pod2man than was used for the release, for +# instance). + +# Exit on any error. +set -e + +if [ ! -d pod1 ] ; then + echo 'generate-man must be run from the doc/man-pages directory' >&2 + exit 1 +fi + +if pod2man pod1/afs.pod > /dev/null ; then + : +else + echo 'pod2man not found, skipping man page generation' >&2 + exit 1 +fi +if perl -e 'use Pod::Man 2.04' > /dev/null 2>&1 ; then + : +else + echo 'Pod::Man is older than the recommended version of 2.04 or later' >&2 + echo 'Continuing with man page generation anyway' >&2 +fi + +# Create the directories. We generate each section into its own directory +# to make installation rules easier. +[ -d man1 ] || mkdir man1 +[ -d man3 ] || mkdir man3 +[ -d man5 ] || mkdir man5 +[ -d man8 ] || mkdir man8 + +# Generate each set of man pages. For each, allow for the case of the +# directory being empty. In that case, for won't expand the wildcard, and +# we want to avoid running pod2man with a wildcard as an argument. +pod1=`ls pod1` +if [ -n "$pod1" ] ; then + cd pod1 + for f in *.pod ; do + pod2man -c 'AFS Command Reference' -r 'OpenAFS' -s 1 "$f" \ + > ../man1/`echo "$f" | sed 's/\.pod$//'`.1 + done + cd .. +fi +pod3=`ls pod3` +if [ -n "$pod3" ] ; then + cd pod3 + for f in *.pod ; do + pod2man -c 'AFS Library Reference' -r 'OpenAFS' -s 3 "$f" \ + > ../man3/`echo "$f" | sed -e 's/\.pod$//' -e 's/^AFS\./AFS::/'`.3 + # Perl module manpages are named AFS.foo instead of AFS::foo, since + # we cannot have colons in filenames on Windows. So here, we assume + # anything with "AFS." should be "AFS::" instead. + done + cd .. +fi +pod5=`ls pod5` +if [ -n "$pod5" ] ; then + cd pod5 + for f in *.pod ; do + pod2man -c 'AFS File Reference' -r 'OpenAFS' -s 5 "$f" \ + > ../man5/`echo "$f" | sed 's/\.pod$//'`.5 + done + cd .. +fi +pod8=`ls pod8` +if [ -n "$pod8" ] ; then + cd pod8 + for f in *.pod ; do + pod2man -c 'AFS Command Reference' -r 'OpenAFS' -s 8 "$f" \ + > ../man8/`echo "$f" | sed 's/\.pod$//'`.8 + done + cd .. +fi diff --git a/doc/man-pages/install-man.in b/doc/man-pages/install-man.in new file mode 100644 index 0000000..a8f5bfd --- /dev/null +++ b/doc/man-pages/install-man.in @@ -0,0 +1,52 @@ +#!/bin/sh +# +# Install a man page, but fixing up paths as we go. All of the man pages +# are written to use the Transarc paths, and this script fixes those paths to +# be correct for the chosen configure options as the man pages are installed. +# Takes the source man page file and the destination path as arguments. + +set -e + +manpage="$1" +dest="$2" + +INSTALL="@INSTALL@" +install="@INSTALL_DATA@" + +# We have to include all of the variables here since several of them refer to +# each other and this is the only way we get them all expanded. +prefix=@prefix@ +exec_prefix=@exec_prefix@ +datarootdir=@datarootdir@ +bindir=@bindir@ +includedir=@includedir@ +libdir=@libdir@ +libexecdir=@libexecdir@ +localstatedir=@localstatedir@ +mandir=@mandir@ +sbindir=@sbindir@ +sysconfdir=@sysconfdir@ +afsbackupdir=@afsbackupdir@ +afsbosconfigdir=@afsbosconfigdir@ +afsconfdir=@afsconfdir@ +afsdbdir=@afsdbdir@ +afslocaldir=@afslocaldir@ +afslogsdir=@afslogsdir@ +afssrvbindir=@afssrvbindir@ +afskerneldir=@afskerneldir@ +afssrvlibexecdir=@afssrvlibexecdir@ +afssrvsbindir=@afssrvsbindir@ +viceetcdir=@viceetcdir@ + +# Substitute the paths into a local temporary file and then install it with +# $install. +sed -e "s%/usr/afs/local/BosConfig%${afsbosconfigdir}/BosConfig%g" \ + -e "s%/usr/afs/etc%${afsconfdir}%g" \ + -e "s%/usr/afs/backup%${afsbackupdir}%g" \ + -e "s%/usr/afs/bin%${afssrvlibexecdir}%g" \ + -e "s%/usr/afs/db%${afsdbdir}%g" \ + -e "s%/usr/afs/local%${afslocaldir}%g" \ + -e "s%/usr/afs/logs%${afslogsdir}%g" \ + -e "s%/usr/vice/etc%${viceetcdir}%g" "$manpage" > "$manpage".tmp +$install "$manpage".tmp "$dest" +rm "$manpage".tmp diff --git a/doc/man-pages/merge-pod b/doc/man-pages/merge-pod new file mode 100755 index 0000000..15ccc54 --- /dev/null +++ b/doc/man-pages/merge-pod @@ -0,0 +1,47 @@ +#!/usr/bin/perl -w +# +# POD currently doesn't support any sort of =include directive. This +# processor works around that limitation. It takes a list of files ending in +# *.in as its argument and processes any POD directives of the form =include +# in that file, generating a file with the *.in suffix removed. All +# paths are taken to be relative to the directory containing the file being +# processed. +# +# Currently, only single include nesting is supported. The included file is +# not processed for additional =include statements. + +require 5.00503; + +use Cwd qw(getcwd); +use File::Basename qw(dirname basename); + +my $start = getcwd; +for my $file (@ARGV) { + chdir $start or die "cannot chdir to $start: $!\n"; + $file =~ s:\\:/:g if $^O eq 'cygwin'; + my $dir = dirname ($file); + my $out = $file; + unless ($out =~ s/\.in\z//) { + die "input file $file does not end in .in\n"; + } + open (FILE, "< $file") or die "cannot open $file: $!\n"; + binmode FILE, ':crlf' if $^O eq 'MSWin32'; + binmode FILE, ':crlf' if $^O eq 'cygwin'; + open (OUT, "> $out") or die "cannot open $out: $!\n"; + chdir $dir or die "cannot chdir to $dir: $!\n"; + local $/ = ''; + local $_; + while () { + if (/^=include\s+(\S+)/) { + open (INCLUDE, "< $1") or die "cannot open $1: $!\n"; + local $/; + print OUT or die "cannot read/write from $1: $!\n"; + close INCLUDE or die "cannot read from $1: $!\n"; + print OUT "\n" or die "cannot write to $out: $!\n"; + } else { + print OUT $_ or die "cannot write to $out: $!\n"; + } + } + close OUT or die "cannot write to $out: $!\n"; + close FILE or die "cannot read from $file\n"; +} diff --git a/doc/man-pages/pod1/.gitignore b/doc/man-pages/pod1/.gitignore new file mode 100644 index 0000000..63ac918 --- /dev/null +++ b/doc/man-pages/pod1/.gitignore @@ -0,0 +1,65 @@ +# After changing this file, please run +# git ls-files -i --exclude-standard +# to check that you haven't inadvertently ignored any tracked files. + +/fs_listquota.pod +/fs_quota.pod +/fs_setquota.pod +/fs_setvol.pod +/pts_adduser.pod +/pts_chown.pod +/pts_creategroup.pod +/pts_createuser.pod +/pts_delete.pod +/pts_examine.pod +/pts_interactive.pod +/pts_listentries.pod +/pts_listmax.pod +/pts_listowned.pod +/pts_membership.pod +/pts_quit.pod +/pts_removeuser.pod +/pts_rename.pod +/pts_setfields.pod +/pts_setmax.pod +/pts_sleep.pod +/pts_source.pod +/vos.pod +/vos_addsite.pod +/vos_backup.pod +/vos_backupsys.pod +/vos_changeaddr.pod +/vos_changeloc.pod +/vos_convertROtoRW.pod +/vos_copy.pod +/vos_clone.pod +/vos_create.pod +/vos_delentry.pod +/vos_dump.pod +/vos_endtrans.pod +/vos_examine.pod +/vos_listaddrs.pod +/vos_listpart.pod +/vos_listvldb.pod +/vos_listvol.pod +/vos_lock.pod +/vos_move.pod +/vos_offline.pod +/vos_online.pod +/vos_partinfo.pod +/vos_release.pod +/vos_remaddrs.pod +/vos_remove.pod +/vos_remsite.pod +/vos_rename.pod +/vos_restore.pod +/vos_setaddrs.pod +/vos_setfields.pod +/vos_shadow.pod +/vos_size.pod +/vos_status.pod +/vos_syncserv.pod +/vos_syncvldb.pod +/vos_unlock.pod +/vos_unlockvldb.pod +/vos_zap.pod diff --git a/doc/man-pages/pod1/afs.pod b/doc/man-pages/pod1/afs.pod new file mode 100644 index 0000000..a65cb1c --- /dev/null +++ b/doc/man-pages/pod1/afs.pod @@ -0,0 +1,564 @@ +=head1 NAME + +afs - Introduction to AFS commands + +=head1 DESCRIPTION + +AFS provides many commands that enable users and system administrators to +use and customize its features. Many of the commands belong to the +following categories, called I. + +=over 4 + +=item backup + +Interface for configuring and operating the AFS Backup System. + +=item bos + +Interface to the Basic Overseer (BOS) Server for administering server +processes and configuration files. + +=item fs + +Interface for administering access control lists (ACLs), the Cache +Manager, and other miscellaneous file system functions. + +=item fstrace + +Interface for tracing Cache Manager operations when debugging problems. + +=item kas + +Interface to the Authentication Server for administering security and +authentication information. This aspect of OpenAFS has been deprecated. + +=item pts + +Interface to the Protection Server for administering AFS ID and group +membership information. + +=item uss + +Interface for automated administration of user accounts. Deprecated, may +be removed from a future version of OpenAFS. See B man page for more +detail. + +=item vos + +Interface to the Volume Server and Volume Location (VL) Server for +administering volumes. + +=back + +In addition, there are several commands that do not belong to +suites. + +=head2 AFS Command Syntax + +AFS commands that belong to suites have the following structure: + +I I B<-switch> >[+] [B<-flag>] + +=head3 Command Names + +Together, the I and I make up the I. + +The I specifies the group of related commands to which the +command belongs, and indicates which command interpreter and server +process perform the command. AFS has several command suites, including +B, B, B, B, B (deprecated) and B. +Some of these suites have an interactive mode in which the issuer omits the +I portion of the command name. + +The I tells the command interpreter and server process +which action to perform. Most command suites include several operation +codes. The man pages for each command name describe each operation code in +detail, and the I describes how to use them +in the context of performing administrative tasks. + +Several AFS commands do not belong to a suite and so their names do not +have a I portion. Their structure is otherwise similar to +the commands in the suites. + +=head3 Options + +The term I