Re: [PATCH v2 15/16] contrib/git-credential-gnome-keyring.c: support ancient gnome-keyring

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

 



On Mon, Sep 23, 2013 at 1:49 PM, Brandon Casey <bcasey@xxxxxxxxxx> wrote:
> From: Brandon Casey <drafnel@xxxxxxxxx>
>
> The gnome-keyring lib distributed with RHEL 5.X is ancient and does
> not provide a few of the functions/defines that more recent versions
> do, but mostly the API is the same.  Let's provide the missing bits
> via macro definitions and function implementation.
>
> Signed-off-by: Brandon Casey <drafnel@xxxxxxxxx>
> ---
>  .../gnome-keyring/git-credential-gnome-keyring.c   | 58 ++++++++++++++++++++++
>  1 file changed, 58 insertions(+)
>
> diff --git a/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c b/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c
> index 447e9aa..e1bc3fa 100644
> --- a/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c
> +++ b/contrib/credential/gnome-keyring/git-credential-gnome-keyring.c
> @@ -28,8 +28,66 @@
>  #include <stdlib.h>
>  #include <glib.h>
>  #include <gnome-keyring.h>
> +
> +#ifdef GNOME_KEYRING_DEFAULT
> +
> +   /* Modern gnome-keyring */
> +
>  #include <gnome-keyring-memory.h>
>
> +#else
> +
> +   /*
> +    * Support ancient gnome-keyring, circ. RHEL 5.X.
> +    * GNOME_KEYRING_DEFAULT seems to have been introduced with Gnome 2.22,
> +    * and the other features roughly around Gnome 2.20, 6 months before.
> +    * Ubuntu 8.04 used Gnome 2.22 (I think).  Not sure any distro used 2.20.
> +    * So the existence/non-existence of GNOME_KEYRING_DEFAULT seems like
> +    * a decent thing to use as an indicator.
> +    */
> +
> +#define GNOME_KEYRING_DEFAULT NULL
> +
> +/*
> + * ancient gnome-keyring returns DENIED when an entry is not found.
> + * Setting NO_MATCH to DENIED will prevent us from reporting DENIED
> + * errors during get and erase operations, but we will still report
> + * DENIED errors during a store.
> + */
> +#define GNOME_KEYRING_RESULT_NO_MATCH GNOME_KEYRING_RESULT_DENIED
> +
> +#define gnome_keyring_memory_alloc g_malloc
> +#define gnome_keyring_memory_free gnome_keyring_free_password
> +#define gnome_keyring_memory_strdup g_strdup
> +
> +static const char* gnome_keyring_result_to_message(GnomeKeyringResult result)

The style is:
static const char *gnome_keyring_result_to_message

There might not be a need to reroll, depending on what Junio says.

-- 
Felipe Contreras
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]