Re: [PATCH] cifs-utils: Add uid/gid to SID mapping functions (try #3)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 19 Oct 2011 13:13:23 -0500
Shirish Pargaonkar <shirishpargaonkar@xxxxxxxxx> wrote:

> On Tue, Aug 9, 2011 at 12:34 PM,  <shirishpargaonkar@xxxxxxxxx> wrote:
> > From: Shirish Pargaonkar <shirishpargaonkar@xxxxxxxxx>
> >
> >
> > Add functions to map a uid and gid to a SID.  These functions are
> > similar to SID to uid and gid mapping functions.
> > A SID is what is returned to the cifs module.
> >
> >
> > Signed-off-by: Shirish Pargaonkar <shirishpargaonkar@xxxxxxxxx>
> > ---
> >  cifs.idmap.c |   37 +++++++++++++++++++++++++++++++++++++
> >  1 files changed, 37 insertions(+), 0 deletions(-)
> >
> > diff --git a/cifs.idmap.c b/cifs.idmap.c
> > index 56edb58..80802d7 100644
> > --- a/cifs.idmap.c
> > +++ b/cifs.idmap.c
> > @@ -134,6 +134,43 @@ cifs_idmap(const key_serial_t key, const char *key_descr)
> >                goto cifs_idmap_ret;
> >        }
> >
> > +       sidstr = strget(key_descr, "oi:");
> > +       if (sidstr) {
> > +               uid = atoi(sidstr);
> > +               syslog(LOG_DEBUG, "SID: %s, uid: %d", sidstr, uid);
> > +               rc = wbcUidToSid(uid, &sid);
> > +               if (rc)
> > +                       syslog(LOG_DEBUG, "uid %d to SID  error: %d", uid, rc);
> > +               if (!rc) { /* SID has been mapped to a uid */
> > +                       rc = keyctl_instantiate(key, &sid,
> > +                                       sizeof(struct wbcDomainSid), 0);
> > +                       if (rc)
> > +                               syslog(LOG_ERR, "%s: key inst: %s",
> > +                                       __func__, strerror(errno));
> > +               }
> > +
> > +               goto cifs_idmap_ret;
> > +       }
> > +
> > +       sidstr = strget(key_descr, "gi:");
> > +       if (sidstr) {
> > +               gid = atoi(sidstr);
> > +               syslog(LOG_DEBUG, "SID: %s, gid: %d", sidstr, gid);
> > +               rc = wbcGidToSid(gid, &sid);
> > +               if (rc)
> > +                       syslog(LOG_DEBUG, "gid %d to SID error: %d", gid, rc);
> > +               if (!rc) { /* SID has been mapped to a gid */
> > +                       rc = keyctl_instantiate(key, &sid,
> > +                                       sizeof(struct wbcDomainSid), 0);
> > +                       if (rc)
> > +                               syslog(LOG_ERR, "%s: key inst: %s",
> > +                                       __func__, strerror(errno));
> > +               }
> > +
> > +               goto cifs_idmap_ret;
> > +       }
> > +
> > +
> >        syslog(LOG_DEBUG, "Invalid key: %s", key_descr);
> >
> >  cifs_idmap_ret:
> > --
> > 1.6.0.2
> >
> >
> 
> Hi Jeff, would you consider this patch for a possible merge?
> The corrosponding kernel code has been merged in 3.2.
> in Steve's git repository.
> 
> Regards,
> 
> Shirish

Thanks for reminding me. Committed...

Am I missing anything else? As far as I know, I think the only thing
left is my manpage update for the rsize option, but I don't want to
merge that until Steve finishes merging the kernel code for it.
-- 
Jeff Layton <jlayton@xxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux