Acked-by: Igor Mammedov <[email protected]>

On Fri, Jan 7, 2011 at 5:11 PM, Jeff Layton <[email protected]> wrote:
> Signed-off-by: Jeff Layton <[email protected]>
> ---
>  cifs.upcall.c |   17 +++++++++++++++++
>  1 files changed, 17 insertions(+), 0 deletions(-)
>
> diff --git a/cifs.upcall.c b/cifs.upcall.c
> index d83dddf..12df8cc 100644
> --- a/cifs.upcall.c
> +++ b/cifs.upcall.c
> @@ -444,12 +444,14 @@ handle_krb5_mech(const char *oid, const char 
> *principal, DATA_BLOB * secblob,
>  #define DKD_HAVE_UID           0x10
>  #define DKD_HAVE_PID           0x20
>  #define DKD_HAVE_CREDUID       0x40
> +#define DKD_HAVE_USERNAME      0x80
>  #define DKD_MUSTHAVE_SET (DKD_HAVE_HOSTNAME|DKD_HAVE_VERSION|DKD_HAVE_SEC)
>
>  struct decoded_args {
>        int ver;
>        char *hostname;
>        char *ip;
> +       char *username;
>        uid_t uid;
>        uid_t creduid;
>        pid_t pid;
> @@ -495,6 +497,20 @@ decode_key_description(const char *desc, struct 
> decoded_args *arg)
>                                return 1;
>                        }
>                        retval |= DKD_HAVE_IP;
> +               } else if (strncmp(tkn, "user=", 5) == 0) {
> +                       if (pos == NULL)
> +                               len = strlen(tkn);
> +                       else
> +                               len = pos - tkn;
> +
> +                       len -= 5;
> +                       SAFE_FREE(arg->username);
> +                       arg->username = strndup(tkn + 5, len);
> +                       if (arg->username == NULL) {
> +                               syslog(LOG_ERR, "Unable to allocate memory");
> +                               return 1;
> +                       }
> +                       retval |= DKD_HAVE_USERNAME;
>                } else if (strncmp(tkn, "pid=", 4) == 0) {
>                        errno = 0;
>                        arg->pid = strtol(tkn + 4, NULL, 0);
> @@ -865,6 +881,7 @@ out:
>        SAFE_FREE(ccname);
>        SAFE_FREE(arg.hostname);
>        SAFE_FREE(arg.ip);
> +       SAFE_FREE(arg.username);
>        SAFE_FREE(keydata);
>        return rc;
>  }
> --
> 1.7.3.4
>
>
N�����r��y����b�X��ǧv�^�)޺{.n�+����{�r'��{ay�ʇڙ�,j��f���h���z��w���
���j:+v���w�j�m��������zZ+�����ݢj"��!�i

Reply via email to