static gfarm_error_t usage_user_all() { struct gfarm_user_info *users; gfarm_error_t e, e_save = GFARM_ERR_NO_ERROR; int nusers, i, success = 0; e = gfm_client_user_info_get_all(gfm_server, &nusers, &users); if (e != GFARM_ERR_NO_ERROR) { fprintf(stderr, "%s: gfm_client_user_info_get_all: %s\n", program_name, gfarm_error_string(e)); return (e); } print_header_user(); for (i = 0; i < nusers; i++) { e = print_usage_user(users[i].username); if (e == GFARM_ERR_NO_ERROR) success++; else { /* GFARM_ERR_NO_SUCH_OBJECT is preferred */ if (e == GFARM_ERR_NO_SUCH_OBJECT) e_save = e; if (e_save == GFARM_ERR_NO_ERROR) e_save = e; } gfarm_user_info_free(&users[i]); } free(users); if (success > 0) return (GFARM_ERR_NO_ERROR); else return (e_save); }
static gfarm_error_t gfarm_set_global_user_by_gsi(void) { gfarm_error_t e = GFARM_ERR_NO_ERROR; #ifdef HAVE_GSI struct gfarm_user_info user; char *gsi_dn; /* Global user name determined by the distinguished name. */ gsi_dn = gfarm_gsi_client_cred_name(); if (gsi_dn != NULL) { e = gfm_client_user_info_get_by_gsi_dn(gfarm_metadb_server, gsi_dn, &user); if (e == GFARM_ERR_NO_ERROR) { e = gfarm_set_global_username(user.username); gfarm_user_info_free(&user); } } #endif return (e); }