X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=utils%2Fgssd%2Fsvcgssd_proc.c;h=79813990c518c2dca579aaceded088e15ee08106;hb=ad7dd95f8e6b93b2db436e3131ca42e4a623d306;hp=3d67dc678b7f45fc8bdd63b328f28a7eddc3dafa;hpb=37a6d1755af236449987de6e5acb42d4b96b09ed;p=nfs-utils.git diff --git a/utils/gssd/svcgssd_proc.c b/utils/gssd/svcgssd_proc.c index 3d67dc6..7981399 100644 --- a/utils/gssd/svcgssd_proc.c +++ b/utils/gssd/svcgssd_proc.c @@ -140,7 +140,7 @@ send_response(FILE *f, gss_buffer_desc *in_handle, gss_buffer_desc *in_token, return -1; } *bp = '\0'; - printerr(1, "writing message: %s", buf); + printerr(3, "writing message: %s", buf); if (write(g, buf, bp - buf) == -1) { printerr(0, "WARNING: failed to write message\n"); close(g); @@ -220,18 +220,18 @@ get_ids(gss_name_t client_name, gss_OID mech, struct svc_cred *cred) nfs4_init_name_mapping(NULL); /* XXX: should only do this once */ res = nfs4_gss_princ_to_ids(secname, sname, &uid, &gid); if (res < 0) { - printerr(0, "WARNING: get_ids: unable to map " - "name '%s' to a uid\n", sname); /* * -ENOENT means there was no mapping, any other error * value means there was an error trying to do the * mapping. + * If there was no mapping, we send down the value -1 + * to indicate that the anonuid/anongid for the export + * should be used. */ if (res == -ENOENT) { - cred->cr_uid = -2; /* XXX */ - cred->cr_gid = -2; /* XXX */ - cred->cr_groups[0] = -2;/* XXX */ - cred->cr_ngroups = 1; + cred->cr_uid = -1; + cred->cr_gid = -1; + cred->cr_ngroups = 0; res = 0; goto out_free; }