[fedfs-utils] [PATCH 2/4] fedfsc: Fix result type in fedfs-get-limited-nsdb-params
Chuck Lever
chuck.lever at oracle.com
Tue Dec 10 10:16:13 PST 2013
A copy-and-paste error resulted in the wrong RPC result type being
used in fedfs-get-limited-nsdb-params. This goes back to commit
0520ee72 "Initial commit" Mar 29 15:37:40 2011.
The rpcgen-created data types are so unwieldy that typically they
are always type-cast. Thus the compiler cannot check whether the
correct type is used, and problems like this are missed.
Signed-off-by: Chuck Lever <chuck.lever at oracle.com>
---
src/fedfsc/fedfs-get-limited-nsdb-params.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/src/fedfsc/fedfs-get-limited-nsdb-params.c b/src/fedfsc/fedfs-get-limited-nsdb-params.c
index 59c3035..3d10aa0 100644
--- a/src/fedfsc/fedfs-get-limited-nsdb-params.c
+++ b/src/fedfsc/fedfs-get-limited-nsdb-params.c
@@ -97,10 +97,8 @@ fedfs_get_limited_nsdb_params_usage(const char *progname)
* @param result NSDB information to display
*/
static void
-fedfs_get_limited_nsdb_params_print_result(FedFsGetNsdbParamsRes result)
+fedfs_get_limited_nsdb_params_print_result(FedFsGetLimitedNsdbParamsRes result)
{
- FedFsNsdbParams *params = &result.FedFsGetNsdbParamsRes_u.params;
-
if (result.status == FEDFS_ERR_NSDB_PARAMS) {
printf("No connection parameters found\n");
return;
@@ -110,7 +108,7 @@ fedfs_get_limited_nsdb_params_print_result(FedFsGetNsdbParamsRes result)
if (result.status != FEDFS_OK)
return;
- switch (params->secType) {
+ switch (result.FedFsGetLimitedNsdbParamsRes_u.secType) {
case FEDFS_SEC_NONE:
printf("ConnectionSec: FEDFS_SEC_NONE\n");
break;
@@ -119,7 +117,7 @@ fedfs_get_limited_nsdb_params_print_result(FedFsGetNsdbParamsRes result)
break;
default:
printf("Unrecognized FedFsConnectionSec value: %u\n",
- params->secType);
+ result.FedFsGetLimitedNsdbParamsRes_u.secType);
}
}
@@ -136,7 +134,7 @@ static FedFsStatus
fedfs_get_limited_nsdb_params_call(const char *hostname, const char *nettype,
char *nsdbname, const unsigned short nsdbport)
{
- FedFsGetNsdbParamsRes result;
+ FedFsGetLimitedNsdbParamsRes result;
enum clnt_stat status;
FedFsNsdbName arg;
CLIENT *client;
More information about the fedfs-utils-devel
mailing list