mirror of
https://git.openafs.org/openafs.git
synced 2025-01-18 15:00:12 +00:00
4baeaf1d9f
Errors from GetCell() are reported a bit oddly in its three callers: - In WhichCellCmd() (and GetFidCmd() before change Idd4727304061e1ec4eeddd98bd9eaab5de96e2b6), we print an odd "no such cell" error for ENOENT, and a more normal message for all other errors. - In BadName() (and GetFidCmd() after change Idd4727304061e1ec4eeddd98bd9eaab5de96e2b6), we don't print an error at all, sometimes making it not obvious that an error has occurred. (BadName() is called from 'fs cleanacl'.) The ENOENT message can be confusing to users, since ENOENT is the error code we get if the given path doesn't exist. This is easy to see with 'fs whichcell': $ fs whichcell notexist fs: no such cell as 'notexist' The VIOC_FILE_CELL_NAME pioctl also never returns ENOENT itself, so this only happens if the given file doesn't exist. This behavior goes back to OpenAFS 1.0. To improve this, change GetCell() to report errors itself. So now errors are reported from it consistently, and are printed for all callers. For example: $ fs whichcell notexist fs: Failed to get cell for 'notexist' fs: File 'notexist' doesn't exist The message is a little redundant, but this lets us use the existing error reporting from Die() while still providing context for what is failing, since it may not be obvious for 'fs cleanacl' or 'fs getfid'. Change-Id: Ib4a84288a9c2d94b2b0d3c4c360fc5c014e98b30 Reviewed-on: https://gerrit.openafs.org/15586 Reviewed-by: Mark Vitale <mvitale@sinenomine.net> Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net> Reviewed-by: Cheyenne Wills <cwills@sinenomine.net> Reviewed-by: Andrew Deason <adeason@sinenomine.net> Tested-by: BuildBot <buildbot@rampaginggeek.com> |
||
---|---|---|
build-tools | ||
doc | ||
src | ||
tests | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.splintrc | ||
acinclude.m4 | ||
CODING | ||
configure-libafs.ac | ||
configure.ac | ||
CONTRIBUTING | ||
INSTALL | ||
libafsdep | ||
LICENSE | ||
Makefile-libafs.in | ||
Makefile.in | ||
NEWS | ||
NTMakefile | ||
README | ||
README-WINDOWS | ||
regen.sh |
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.