diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 06:03:02 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 06:03:02 +0000 |
commit | 4897093455a2bf08f3db3a1132cc2f6f5484d77c (patch) | |
tree | 9e6373544263f003139431fb4b08f9766e1ed530 /support/junction/display.c | |
parent | Initial commit. (diff) | |
download | nfs-utils-4897093455a2bf08f3db3a1132cc2f6f5484d77c.tar.xz nfs-utils-4897093455a2bf08f3db3a1132cc2f6f5484d77c.zip |
Adding upstream version 1:2.6.4.upstream/1%2.6.4upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'support/junction/display.c')
-rw-r--r-- | support/junction/display.c | 139 |
1 files changed, 139 insertions, 0 deletions
diff --git a/support/junction/display.c b/support/junction/display.c new file mode 100644 index 0000000..e1e1af1 --- /dev/null +++ b/support/junction/display.c @@ -0,0 +1,139 @@ +/** + * @file support/junction/display.c + * @brief Shared display helper functions + */ + +/* + * Copyright 2010, 2018 Oracle. All rights reserved. + * + * This file is part of nfs-utils. + * + * nfs-utils is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2.0 as + * published by the Free Software Foundation. + * + * nfs-utils is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License version 2.0 for more details. + * + * You should have received a copy of the GNU General Public License + * version 2.0 along with nfs-utils. If not, see: + * + * http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt + */ + +#include <stdbool.h> +#include <stdint.h> +#include <stdlib.h> +#include <stdio.h> +#include <string.h> + +#include "junction.h" + +/** + * Return human-readable equivalent of a FedFsStatus value + * + * @param status FedFsStatus code + * @return a static NUL-terminated C string + */ +const char * +nsdb_display_fedfsstatus(const FedFsStatus status) +{ + switch (status) { + case FEDFS_OK: + return "FEDFS_OK"; + case FEDFS_ERR_ACCESS: + return "FEDFS_ERR_ACCESS"; + case FEDFS_ERR_BADCHAR: + return "FEDFS_ERR_BADCHAR"; + case FEDFS_ERR_BADNAME: + return "FEDFS_ERR_BADNAME"; + case FEDFS_ERR_NAMETOOLONG: + return "FEDFS_ERR_NAMETOOLONG"; + case FEDFS_ERR_LOOP: + return "FEDFS_ERR_LOOP"; + case FEDFS_ERR_BADXDR: + return "FEDFS_ERR_BADXDR"; + case FEDFS_ERR_EXIST: + return "FEDFS_ERR_EXIST"; + case FEDFS_ERR_INVAL: + return "FEDFS_ERR_INVAL"; + case FEDFS_ERR_IO: + return "FEDFS_ERR_IO"; + case FEDFS_ERR_NOSPC: + return "FEDFS_ERR_NOSPC"; + case FEDFS_ERR_NOTJUNCT: + return "FEDFS_ERR_NOTJUNCT"; + case FEDFS_ERR_NOTLOCAL: + return "FEDFS_ERR_NOTLOCAL"; + case FEDFS_ERR_PERM: + return "FEDFS_ERR_PERM"; + case FEDFS_ERR_ROFS: + return "FEDFS_ERR_ROFS"; + case FEDFS_ERR_SVRFAULT: + return "FEDFS_ERR_SVRFAULT"; + case FEDFS_ERR_NOTSUPP: + return "FEDFS_ERR_NOTSUPP"; + case FEDFS_ERR_NSDB_ROUTE: + return "FEDFS_ERR_NSDB_ROUTE"; + case FEDFS_ERR_NSDB_DOWN: + return "FEDFS_ERR_NSDB_DOWN"; + case FEDFS_ERR_NSDB_CONN: + return "FEDFS_ERR_NSDB_CONN"; + case FEDFS_ERR_NSDB_AUTH: + return "FEDFS_ERR_NSDB_AUTH"; + case FEDFS_ERR_NSDB_LDAP: + return "FEDFS_ERR_NSDB_LDAP"; + case FEDFS_ERR_NSDB_LDAP_VAL: + return "FEDFS_ERR_NSDB_LDAP_VAL"; + case FEDFS_ERR_NSDB_NONCE: + return "FEDFS_ERR_NSDB_NONCE"; + case FEDFS_ERR_NSDB_NOFSN: + return "FEDFS_ERR_NSDB_NOFSN"; + case FEDFS_ERR_NSDB_NOFSL: + return "FEDFS_ERR_NSDB_NOFSL"; + case FEDFS_ERR_NSDB_RESPONSE: + return "FEDFS_ERR_NSDB_RESPONSE"; + case FEDFS_ERR_NSDB_FAULT: + return "FEDFS_ERR_NSDB_FAULT"; + case FEDFS_ERR_NSDB_PARAMS: + return "FEDFS_ERR_NSDB_PARAMS"; + case FEDFS_ERR_NSDB_LDAP_REFERRAL: + return "FEDFS_ERR_NSDB_LDAP_REFERRAL"; + case FEDFS_ERR_NSDB_LDAP_REFERRAL_VAL: + return "FEDFS_ERR_NSDB_LDAP_REFERRAL_VAL"; + case FEDFS_ERR_NSDB_PARAMS_LDAP_REFERRAL: + return "FEDFS_ERR_NSDB_PARAMS_LDAP_REFERRAL"; + case FEDFS_ERR_PATH_TYPE_UNSUPP: + return "FEDFS_ERR_PATH_TYPE_UNSUPP"; + case FEDFS_ERR_DELAY: + return "FEDFS_ERR_DELAY"; + case FEDFS_ERR_NO_CACHE: + return "FEDFS_ERR_NO_CACHE"; + case FEDFS_ERR_UNKNOWN_CACHE: + return "FEDFS_ERR_UNKNOWN_CACHE"; + case FEDFS_ERR_NO_CACHE_UPDATE: + return "FEDFS_ERR_NO_CACHE_UPDATE"; + default: + break; + } + return "an unrecognized error code"; +} + +/** + * Display human-readable FedFsStatus on stderr + * + * @param status FedFsStatus value to display + */ +void +nsdb_print_fedfsstatus(const FedFsStatus status) +{ + if (status == FEDFS_OK) { + printf("Call completed successfully\n"); + return; + } + + fprintf(stderr, "Server returned %s\n", + nsdb_display_fedfsstatus(status)); +} |