+2014-06-24 Jussi Laako <jussi.laako@linux.intel.com>
+
+Update version to 2.2.0
+
+2014-06-23 Jussi Laako <jussi.laako@linux.intel.com>
+
+identity: remove unnecessary FIXME
+
+2014-06-19 Imran Zaman <imran.zaman@intel.com>
+
+removed appcontext from query identities call
+
+2014-06-18 Jussi Laako <jussi.laako@linux.intel.com>
+
+identity: fix signal documentation
+
+2014-06-17 Jussi Laako <jussi.laako@linux.intel.com>
+
+auth-session: make state changed signal enumeration public
+
+2014-06-11 Jussi Laako <jussi.laako@linux.intel.com>
+
+utils: add necessary header and footer to have right calling convention with c++ code
+
+2014-06-10 Jussi Laako <jussi.laako@linux.intel.com>
+
+identity: emit signal when identity is removed
+
+2014-06-10 Imran Zaman <imran.zaman@intel.com>
+
+corrected documentation
+
+2014-06-09 Imran Zaman <imran.zaman@intel.com>
+
+fixed networktimeout as long
+
+2014-06-09 Jussi Laako <jussi.laako@linux.intel.com>
+
+auth-service: implement database clear method
+
+2014-06-09 Jussi Laako <jussi.laako@linux.intel.com>
+
+utils: publish utility functions, especially useful for writing bindings to other languages
+
+2014-06-09 Jussi Laako <jussi.laako@linux.intel.com>
+
+identity: fix/add _request_credentials_update() prototype
+
+2014-06-06 Imran Zaman <imran.zaman@intel.com>
+
+moved startSession method to Identity object
+
+2014-06-03 Imran Zaman <imran.zaman@intel.com>
+
+Fixed spelling mistake
+
+2014-06-02 Jussi Laako <jussi@sonarnerd.net>
+
+identity: implement VerifyUser and RequestCredentialsUpdate
+
+2014-06-02 Jussi Laako <jussi@sonarnerd.net>
+
+widl: create a separate SecurityContext dictionary for owner/ACL
+
+2014-05-27 Alexander Kanavin <alex.kanavin@gmail.com>
+
+doc: don't show how to add *:* ACL, as this is not a good idea
+
+2014-04-03 Jussi Laako <jussi.laako@linux.intel.com>
+
+debian: include gsso-example in dev package
+
+2014-04-03 Jussi Laako <jussi.laako@linux.intel.com>
+
+widl: fix some spec bugs
+
+2014-04-02 Jussi Laako <jussi.laako@linux.intel.com>
+
+widl: update with proposed changes
+
+2014-03-28 Jussi Laako <jussi.laako@linux.intel.com>
+
+widl: initial draft
+
+2014-03-21 Jussi Laako <jussi.laako@linux.intel.com>
+
+tizen: split docs to separate package and add manifest
+
+2014-03-18 Jussi Laako <jussi.laako@linux.intel.com>
+
+configure: fix broken libgsignon-glib.pc
+
+2014-03-18 Jussi Laako <jussi@sonarnerd.net>
+
+suse: update spec
+
+2014-03-18 Imran Zaman <imran.zaman@intel.com>
+
+tizen: fix build/release script and package group
+
+2014-03-13 Jussi Laako <jussi.laako@linux.intel.com>
+
+tizen: force remove old versions
+
2014-03-12 Jussi Laako <jussi.laako@linux.intel.com>
tizen: update package group
tizen: fix build and release script
+2014-03-07 Jussi Laako <jussi.laako@linux.intel.com>
+
+Release 2.1.0
+
+2014-03-07 Imran Zaman <imran.zaman@intel.com>
+
+fixed tizen prepare script for packaging folder
+
2014-03-07 Imran Zaman <imran.zaman@intel.com>
fixed tizen prepare script for packaging folder
fi[]dnl
])# PKG_CHECK_MODULES
+
+# PKG_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable pkgconfigdir as the location where a module
+# should install pkg-config .pc files. By default the directory is
+# $libdir/pkgconfig, but the default can be changed by passing
+# DIRECTORY. The user can override through the --with-pkgconfigdir
+# parameter.
+AC_DEFUN([PKG_INSTALLDIR],
+[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
+m4_pushdef([pkg_description],
+ [pkg-config installation directory @<:@]pkg_default[@:>@])
+AC_ARG_WITH([pkgconfigdir],
+ [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
+ [with_pkgconfigdir=]pkg_default)
+AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
+m4_popdef([pkg_default])
+m4_popdef([pkg_description])
+]) dnl PKG_INSTALLDIR
+
+
+# PKG_NOARCH_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable noarch_pkgconfigdir as the location where a
+# module should install arch-independent pkg-config .pc files. By
+# default the directory is $datadir/pkgconfig, but the default can be
+# changed by passing DIRECTORY. The user can override through the
+# --with-noarch-pkgconfigdir parameter.
+AC_DEFUN([PKG_NOARCH_INSTALLDIR],
+[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
+m4_pushdef([pkg_description],
+ [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
+AC_ARG_WITH([noarch-pkgconfigdir],
+ [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
+ [with_noarch_pkgconfigdir=]pkg_default)
+AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
+m4_popdef([pkg_default])
+m4_popdef([pkg_description])
+]) dnl PKG_NOARCH_INSTALLDIR
+
+
+# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+# -------------------------------------------
+# Retrieves the value of the pkg-config variable for the given module.
+AC_DEFUN([PKG_CHECK_VAR],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
+
+_PKG_CONFIG([$1], [variable="][$3]["], [$2])
+AS_VAR_COPY([$1], [pkg_cv_][$1])
+
+AS_VAR_IF([$1], [""], [$5], [$4])dnl
+])# PKG_CHECK_VAR
+
# Copyright (C) 2002-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
#! /bin/sh
# Attempt to guess a canonical system name.
-# Copyright 1992-2013 Free Software Foundation, Inc.
+# Copyright 1992-2014 Free Software Foundation, Inc.
-timestamp='2013-06-10'
+timestamp='2014-03-23'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright 1992-2013 Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
LIBC=gnu
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
;;
esac
*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit ;;
- i*:MSYS*:*)
+ *:MSYS*:*)
echo ${UNAME_MACHINE}-pc-msys
exit ;;
i*:windows32*:*)
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
;;
- or1k:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ openrisc*:Linux:*:*)
+ echo or1k-unknown-linux-${LIBC}
exit ;;
- or32:Linux:*:*)
+ or32:Linux:*:* | or1k*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
padre:Linux:*:*)
if test "$UNAME_PROCESSOR" = unknown ; then
UNAME_PROCESSOR=powerpc
fi
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- case $UNAME_PROCESSOR in
- i386) UNAME_PROCESSOR=x86_64 ;;
- powerpc) UNAME_PROCESSOR=powerpc64 ;;
- esac
+ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
fi
+ elif test "$UNAME_PROCESSOR" = i386 ; then
+ # Avoid executing cc on OS X 10.9, as it ships with a stub
+ # that puts up a graphical alert prompting to install
+ # developer tools. Any system running Mac OS X 10.7 or
+ # later (Darwin 11 and later) is required to have a 64-bit
+ # processor. This is not true of the ARM version of Darwin
+ # that Apple uses in portable devices.
+ UNAME_PROCESSOR=x86_64
fi
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit ;;
exit ;;
esac
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- c34*)
- echo c34-convex-bsd
- exit ;;
- c38*)
- echo c38-convex-bsd
- exit ;;
- c4*)
- echo c4-convex-bsd
- exit ;;
- esac
-fi
-
cat >&2 <<EOF
$0: unable to guess system type
#! /bin/sh
# Configuration validation subroutine script.
-# Copyright 1992-2013 Free Software Foundation, Inc.
+# Copyright 1992-2014 Free Software Foundation, Inc.
-timestamp='2013-08-10'
+timestamp='2014-05-01'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
version="\
GNU config.sub ($timestamp)
-Copyright 1992-2013 Free Software Foundation, Inc.
+Copyright 1992-2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
| hexagon \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
+ | k1om \
| le32 | le64 \
| lm32 \
| m32c | m32r | m32rle | m68000 | m68k | m88k \
| mips64vr5900 | mips64vr5900el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
+ | mipsisa32r6 | mipsisa32r6el \
| mipsisa64 | mipsisa64el \
| mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64r6 | mipsisa64r6el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
| mipsr5900 | mipsr5900el \
| nds32 | nds32le | nds32be \
| nios | nios2 | nios2eb | nios2el \
| ns16k | ns32k \
- | open8 \
- | or1k | or32 \
+ | open8 | or1k | or1knd | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle \
| pyramid \
c6x)
basic_machine=tic6x-unknown
;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown
os=-none
;;
| hexagon-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
+ | k1om-* \
| le32-* | le64-* \
| lm32-* \
| m32c-* | m32r-* | m32rle-* \
| mips64vr5900-* | mips64vr5900el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
+ | mipsisa32r6-* | mipsisa32r6el-* \
| mipsisa64-* | mipsisa64el-* \
| mipsisa64r2-* | mipsisa64r2el-* \
+ | mipsisa64r6-* | mipsisa64r6el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipsr5900-* | mipsr5900el-* \
| nios-* | nios2-* | nios2eb-* | nios2el-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| open8-* \
+ | or1k*-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
mips*-*)
os=-elf
;;
- or1k-*)
- os=-elf
- ;;
or32-*)
os=-coff
;;
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for libgsignon-glib 2.1.0.
+# Generated by GNU Autoconf 2.69 for libgsignon-glib 2.2.0.
#
# Report bugs to <http://code.google.com/p/accounts-sso/issues/entry>.
#
# Identity of this package.
PACKAGE_NAME='libgsignon-glib'
PACKAGE_TARNAME='libgsignon-glib'
-PACKAGE_VERSION='2.1.0'
-PACKAGE_STRING='libgsignon-glib 2.1.0'
+PACKAGE_VERSION='2.2.0'
+PACKAGE_STRING='libgsignon-glib 2.2.0'
PACKAGE_BUGREPORT='http://code.google.com/p/accounts-sso/issues/entry'
PACKAGE_URL='http://code.google.com/p/accounts-sso/'
-ac_unique_file="libgsignon-glib.pc.in"
# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures libgsignon-glib 2.1.0 to adapt to many kinds of systems.
+\`configure' configures libgsignon-glib 2.2.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of libgsignon-glib 2.1.0:";;
+ short | recursive ) echo "Configuration of libgsignon-glib 2.2.0:";;
esac
cat <<\_ACEOF
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-libgsignon-glib configure 2.1.0
+libgsignon-glib configure 2.2.0
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by libgsignon-glib $as_me 2.1.0, which was
+It was created by libgsignon-glib $as_me 2.2.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
-
am__api_version='1.14'
# Find a good install program. We prefer a C program (faster),
# Define the identity of the package.
PACKAGE='libgsignon-glib'
- VERSION='2.1.0'
+ VERSION='2.2.0'
cat >>confdefs.h <<_ACEOF
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by libgsignon-glib $as_me 2.1.0, which was
+This file was extended by libgsignon-glib $as_me 2.2.0, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-libgsignon-glib config.status 2.1.0
+libgsignon-glib config.status 2.2.0
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ([2.64])
AC_INIT([libgsignon-glib],
- [2.1.0],
+ [2.2.0],
[http://code.google.com/p/accounts-sso/issues/entry],
[libgsignon-glib],
[http://code.google.com/p/accounts-sso/])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_HEADERS([config.h])
-AC_CONFIG_SRCDIR([libgsignon-glib.pc.in])
AC_CONFIG_MACRO_DIR([m4])
AM_INIT_AUTOMAKE([1.11 nostdinc silent-rules subdir-objects tar-pax -Wno-portability])
+libgsignon-glib (2.1.0-5) unstable; urgency=low
+
+ * Include gsso-example in dev package
+
+ -- Jussi Laako <jussi.laako@linux.intel.com> Thu, 03 Apr 2014 16:46:00 +0300
+
libgsignon-glib (2.1.0-4) unstable; urgency=low
* Release 2.1.0
+/usr/bin/gsso-example
/usr/include/libgsignon-glib/*
/usr/lib/libgsignon-glib.so
/usr/lib/libgsignon-glib*.la
Name: libgsignon-glib
Summary: GLib API for the SSO framework
Version: 2.1.0
-Release: 1
+Release: 2
Group: System/Libraries
License: LGPL-2.1
Source: %{name}-%{version}.tar.gz
Requires: gsignon
Requires(post): /sbin/ldconfig
Requires(postun): /sbin/ldconfig
-BuildRequires: pkgconfig(gtk-doc)
BuildRequires: pkgconfig(check)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gobject-2.0)
%prep
%setup -q -n %{name}-%{version}
-gtkdocize
-autoreconf -f -i
+#gtkdocize
+#autoreconf -f -i
%build
%configure \
- --enable-gtk-doc \
- --enable-gtk-doc-html \
--enable-python \
--enable-dbus-type=%{dbus_type}
make %{?_smp_mflags}
--- /dev/null
+<manifest>
+ <request>
+ <domain name="_"/>
+ </request>
+</manifest>
Release: 2
Group: Security/Accounts
License: LGPL-2.1
-Source: %{name}-%{version}.tar.gz
+Source: %{name}-%{version}.tar.gz
+Source1: %{name}.manifest
URL: https://01.org/gsso
Requires: dbus-1
Requires: gsignon
%package devel
Summary: Development files for %{name}
-Group: Development/Libraries
+Group: SDK/Libraries
Requires: %{name} = %{version}-%{release}
%description devel
%{summary}.
+%package doc
+Summary: Documentation files for %{name}
+Group: SDK/Documentation
+Requires: %{name}-devel = %{version}-%{release}
+
+%description doc
+%{summary}.
+
+
%prep
%setup -q -n %{name}-%{version}
+cp %{SOURCE1} .
%build
%files
%defattr(-,root,root,-)
+%manifest %{name}.manifest
%doc AUTHORS COPYING ChangeLog INSTALL NEWS README
%{_libdir}/%{name}.so.*
%files devel
%defattr(-,root,root,-)
+%manifest %{name}.manifest
%{_includedir}/%{name}/*.h
%{_libdir}/%{name}.so
%{_libdir}/pkgconfig/%{name}.pc
-%{_datadir}/gtk-doc/html/%{name}/*
%{_bindir}/gsso-example
+
+%files doc
+%defattr(-,root,root,-)
+%{_datadir}/gtk-doc/html/%{name}/*
+
</computeroutput></literallayout>
</para>
<para>
- To add security context to identity's Access Control List, use <userinput>--add-context</userinput> option
- with identity id:
+ To add a security context to identity's Access Control List, use <userinput>--add-context</userinput> option
+ with an identity id:
<literallayout><computeroutput>
-<userinput>> gsso-example --add-context=28 --system-context=* --application-context=*</userinput>
+<userinput>> gsso-example --add-context=28 --system-context=/path/to/executable --application-context=</userinput>
Identity stored with id 28
</computeroutput></literallayout>
</para>
<para>
- To remove security context from identity's Access Control List, use <userinput>--remove-context=</userinput> option
+ /path/to/executable should be used if gsso is configured to use the
+ default ACL extension, otherwise the system context value is defined by the extension
+ that is in use.
+ </para>
+ <para>
+ To remove a security context from identity's Access Control List, use <userinput>--remove-context=</userinput> option
with identity id:
<literallayout><computeroutput>
-<userinput>> gsso-example --remove-context=28 --system-context=* --application-context=*</userinput>
+<userinput>> gsso-example --remove-context=28 --system-context=/path/to/executable --application-context=</userinput>
Identity stored with id 28
</computeroutput></literallayout>
</para>
<span class="returnvalue">void</span>
</td>
<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="SignonAuthService.html#SignonClearCb" title="SignonClearCb ()">*SignonClearCb</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="SignonAuthService.html#SignonQueryIdentitiesCb" title="SignonQueryIdentitiesCb ()">*SignonQueryIdentitiesCb</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<a class="link" href="SignonAuthService.html#signon-auth-service-query-identities" title="signon_auth_service_query_identities ()">signon_auth_service_query_identities</a> <span class="c_punctuation">()</span>
</td>
</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="SignonAuthService.html#signon-auth-service-clear" title="signon_auth_service_clear ()">signon_auth_service_clear</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="SignonAuthService.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+<pre class="screen"> GObject
<span class="lineart">╰──</span> SignonAuthService
</pre>
</div>
<a name="SignonQueryMethodsCb"></a><h3>SignonQueryMethodsCb ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonQueryMethodsCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> *auth_service</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **methods</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gchar</span> **methods</code></em>,
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Callback to be passed to <a class="link" href="SignonAuthService.html#signon-auth-service-query-methods" title="signon_auth_service_query_methods ()"><code class="function">signon_auth_service_query_methods()</code></a>.</p>
<div class="refsect3">
<a name="id-1.3.3.2.7.2.5"></a><h4>Parameters</h4>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<a name="SignonQueryMechanismCb"></a><h3>SignonQueryMechanismCb ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonQueryMechanismCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> *auth_service</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *method</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **mechanisms</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *method</code></em>,
+ <em class="parameter"><code><span class="type">gchar</span> **mechanisms</code></em>,
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Callback to be passed to <a class="link" href="SignonAuthService.html#signon-auth-service-query-mechanisms" title="signon_auth_service_query_mechanisms ()"><code class="function">signon_auth_service_query_mechanisms()</code></a>.</p>
<div class="refsect3">
<a name="id-1.3.3.2.7.3.5"></a><h4>Parameters</h4>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, <code class="literal">NULL</code> otherwise.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>the user data that was passed when installing this callback.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonClearCb"></a><h3>SignonClearCb ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+<span class="c_punctuation">(</span>*SignonClearCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> *auth_service</code></em>,
+ <em class="parameter"><code><span class="type">gboolean</span> success</code></em>,
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
+<p>Callback to be passed to <a class="link" href="SignonAuthService.html#signon-auth-service-clear" title="signon_auth_service_clear ()"><code class="function">signon_auth_service_clear()</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.3.2.7.4.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>auth_service</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>success</p></td>
+<td class="parameter_description"><p>TRUE if clear succeeded.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>error</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonQueryIdentitiesCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> *auth_service</code></em>,
<em class="parameter"><code><a class="link" href="SignonAuthService.html#SignonIdentityList" title="SignonIdentityList"><span class="type">SignonIdentityList</span></a> *identities</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Callback to be passed to <a class="link" href="SignonAuthService.html#signon-auth-service-query-identities" title="signon_auth_service_query_identities ()"><code class="function">signon_auth_service_query_identities()</code></a>.</p>
<div class="refsect3">
-<a name="id-1.3.3.2.7.4.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.2.7.5.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
</tr>
<tr>
<td class="parameter_name"><p>identities</p></td>
-<td class="parameter_description"><p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> based list of <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>. </p></td>
+<td class="parameter_description"><p> <span class="type">GList</span> based list of <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
signon_auth_service_new ();</pre>
<p>Create a new <a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a>.</p>
<div class="refsect3">
-<a name="id-1.3.3.2.7.5.5"></a><h4>Returns</h4>
+<a name="id-1.3.3.2.7.6.5"></a><h4>Returns</h4>
<p> an instance of an <a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a>.</p>
<p></p>
</div>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_auth_service_query_methods (<em class="parameter"><code><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> *auth_service</code></em>,
<em class="parameter"><code><a class="link" href="SignonAuthService.html#SignonQueryMethodsCb" title="SignonQueryMethodsCb ()"><span class="type">SignonQueryMethodsCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Lists all the available authentication methods.</p>
<div class="refsect3">
-<a name="id-1.3.3.2.7.6.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.2.7.7.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<a name="signon-auth-service-query-mechanisms"></a><h3>signon_auth_service_query_mechanisms ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_auth_service_query_mechanisms (<em class="parameter"><code><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> *auth_service</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *method</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *method</code></em>,
<em class="parameter"><code><a class="link" href="SignonAuthService.html#SignonQueryMechanismCb" title="SignonQueryMechanismCb ()"><span class="type">SignonQueryMechanismCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Lists all the available mechanisms for an authentication method.</p>
<div class="refsect3">
-<a name="id-1.3.3.2.7.7.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.2.7.8.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<pre class="programlisting"><span class="returnvalue">void</span>
signon_auth_service_query_identities (<em class="parameter"><code><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> *auth_service</code></em>,
<em class="parameter"><code><a class="link" href="SignonAuthService.html#SignonIdentityFilter" title="SignonIdentityFilter"><span class="type">SignonIdentityFilter</span></a> *filter</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *application_context</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *application_context</code></em>,
<em class="parameter"><code><a class="link" href="SignonAuthService.html#SignonQueryIdentitiesCb" title="SignonQueryIdentitiesCb ()"><span class="type">SignonQueryIdentitiesCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Query available identities, possibly applying a filter. </p>
<p><em class="parameter"><code>filter</code></em>
- is a <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> that contains filter conditions in the form of
-string keys and <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> values. Currently the following keys are supported:</p>
+ is a <span class="type">GHashTable</span> that contains filter conditions in the form of
+string keys and <span class="type">GVariant</span> values. Currently the following keys are supported:</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>"Owner". The value should be a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> (use
-<a class="link" href="SignonSecurityContext.html#signon-security-context-build-variant" title="signon_security_context_build_variant ()"><code class="function">signon_security_context_build_variant()</code></a> to create a <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a>).
+<a class="link" href="SignonSecurityContext.html#signon-security-context-build-variant" title="signon_security_context_build_variant ()"><code class="function">signon_security_context_build_variant()</code></a> to create a <span class="type">GVariant</span>).
Identites whose owner doesn't match will be filtered out. This key has
effect only if the requesting application is a keychain application as determined
by <a href="http://gsignon-docs.accounts-sso.googlecode.com/git/gsignond/GSignondAccessControlManager.html"><span class="type">GSignondAccessControlManager</span></a>.</p></li>
can still be set in the <em class="parameter"><code>filter</code></em>
).</p>
<div class="refsect3">
-<a name="id-1.3.3.2.7.8.8"></a><h4>Parameters</h4>
+<a name="id-1.3.3.2.7.9.8"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
</tr>
<tr>
<td class="parameter_name"><p>filter</p></td>
-<td class="parameter_description"><p>filter variant dictionary based on <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a>.</p></td>
+<td class="parameter_description"><p>filter variant dictionary based on <span class="type">GHashTable</span>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>application_context</p></td>
-<td class="parameter_description"><p>application security context, can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
+<td class="parameter_description"><p>application security context, can be <code class="literal">NULL</code>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p> callback to be invoked. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-auth-service-clear"></a><h3>signon_auth_service_clear ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_auth_service_clear (<em class="parameter"><code><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> *auth_service</code></em>,
+ <em class="parameter"><code><a class="link" href="SignonAuthService.html#SignonClearCb" title="SignonClearCb ()"><span class="type">SignonClearCb</span></a> cb</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
+<p>Clears / wipes out all stored data.</p>
+<div class="refsect3">
+<a name="id-1.3.3.2.7.10.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>auth_service</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> <em class="structfield"><code><a name="SignonAuthServiceClass.parent-class"></a>parent_class</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">GObjectClass</span> <em class="structfield"><code><a name="SignonAuthServiceClass.parent-class"></a>parent_class</code></em>;</p></td>
<td class="struct_member_description"><p>a reference to the parent class</p></td>
<td class="struct_member_annotations"> </td>
</tr></tbody>
<a name="SignonIdentityFilter"></a><h3>SignonIdentityFilter</h3>
<pre class="programlisting">typedef GHashTable SignonIdentityFilter;
</pre>
-<p><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> based filter variant dictionary.</p>
+<p><span class="type">GHashTable</span> based filter variant dictionary.</p>
</div>
</div>
</div>
</td>
</tr>
<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="SignonAuthSession.html#signon-auth-session-get-method" title="signon_auth_session_get_method ()">signon_auth_session_get_method</a> <span class="c_punctuation">()</span>
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
+<span class="returnvalue">GVariant</span> *
</td>
<td class="function_name">
<a class="link" href="SignonAuthSession.html#signon-auth-session-process-finish" title="signon_auth_session_process_finish ()">signon_auth_session_process_finish</a> <span class="c_punctuation">()</span>
<tbody><tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="SignonAuthSession.html#SignonAuthSession-state-changed" title="The “state-changed” signal">state-changed</a></td>
-<td class="signal_flags"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td>
+<td class="signal_flags">Action</td>
</tr></tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="SignonAuthSession.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+<pre class="screen"> GObject
<span class="lineart">╰──</span> SignonAuthSession
</pre>
</div>
<div class="refsect2">
<a name="signon-auth-session-new"></a><h3>signon_auth_session_new ()</h3>
<pre class="programlisting"><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="returnvalue">SignonAuthSession</span></a> *
-signon_auth_session_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *method_name</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **err</code></em>);</pre>
+signon_auth_session_new (<em class="parameter"><code><span class="type">gint</span> id</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *method_name</code></em>,
+ <em class="parameter"><code><span class="type">GError</span> **err</code></em>);</pre>
<p>Creates a new <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>, which can be used to authenticate using
the specified method.</p>
<div class="refsect3">
<a name="signon-auth-session-new-for-identity"></a><h3>signon_auth_session_new_for_identity ()</h3>
<pre class="programlisting"><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="returnvalue">SignonAuthSession</span></a> *
signon_auth_session_new_for_identity (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *identity</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *method_name</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **err</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *method_name</code></em>,
+ <em class="parameter"><code><span class="type">GError</span> **err</code></em>);</pre>
<p>Creates a new <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>, which can be used to authenticate using
the specified method.</p>
<div class="refsect3">
<hr>
<div class="refsect2">
<a name="signon-auth-session-get-method"></a><h3>signon_auth_session_get_method ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *
signon_auth_session_get_method (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>);</pre>
<p>Get the current authentication method.</p>
<div class="refsect3">
</div>
<div class="refsect3">
<a name="id-1.3.3.6.9.4.6"></a><h4>Returns</h4>
-<p> the authentication method being used, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure.</p>
+<p> the authentication method being used, or <code class="literal">NULL</code> on failure.</p>
<p></p>
</div>
</div>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonAuthSessionQueryAvailableMechanismsCb<span class="c_punctuation">)</span>
(<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **mechanisms</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gchar</span> **mechanisms</code></em>,
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Callback to be passed to <a class="link" href="SignonAuthSession.html#signon-auth-session-query-available-mechanisms" title="signon_auth_session_query_available_mechanisms ()"><code class="function">signon_auth_session_query_available_mechanisms()</code></a>.</p>
<div class="refsect3">
<a name="id-1.3.3.6.9.5.5"></a><h4>Parameters</h4>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_auth_session_query_available_mechanisms
(<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> **wanted_mechanisms</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> **wanted_mechanisms</code></em>,
<em class="parameter"><code><a class="link" href="SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb" title="SignonAuthSessionQueryAvailableMechanismsCb ()"><span class="type">SignonAuthSessionQueryAvailableMechanismsCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<div class="warning"><p><code class="literal">signon_auth_session_query_available_mechanisms</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Queries the mechanisms available for this authentication session. The result
will be the intersection between <em class="parameter"><code>wanted_mechanisms</code></em>
</tr>
<tr>
<td class="parameter_name"><p>wanted_mechanisms</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of mechanisms supported by the client.</p></td>
+<td class="parameter_description"><p>a <code class="literal">NULL</code>-terminated list of mechanisms supported by the client.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<a name="SignonAuthSessionProcessCb"></a><h3>SignonAuthSessionProcessCb ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonAuthSessionProcessCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *session_data</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">GHashTable</span> *session_data</code></em>,
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<div class="warning"><p><code class="literal">SignonAuthSessionProcessCb</code> is deprecated and should not be used in newly-written code.</p></div>
<p>This callback is invoked when the authentication plugin delivers the result
of the <a class="link" href="SignonAuthSession.html#signon-auth-session-process" title="signon_auth_session_process ()"><code class="function">signon_auth_session_process()</code></a> operation.</p>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<a name="signon-auth-session-process"></a><h3>signon_auth_session_process ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_auth_session_process (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *session_data</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *mechanism</code></em>,
+ <em class="parameter"><code><span class="type">GHashTable</span> *session_data</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *mechanism</code></em>,
<em class="parameter"><code><a class="link" href="SignonAuthSession.html#SignonAuthSessionProcessCb" title="SignonAuthSessionProcessCb ()"><span class="type">SignonAuthSessionProcessCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<div class="warning">
<p><code class="literal">signon_auth_session_process</code> has been deprecated since version 1.8 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()"><code class="function">signon_auth_session_process_async()</code></a> instead.</p>
<a name="signon-auth-session-process-async"></a><h3>signon_auth_session_process_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_auth_session_process_async (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *session_data</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *mechanism</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> *cancellable</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html#GAsyncReadyCallback"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">GVariant</span> *session_data</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *mechanism</code></em>,
+ <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
+ <em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Performs one step of the authentication process.
<em class="parameter"><code>session_data</code></em>
should be used to add additional authentication parameters to the
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
-<td class="parameter_description"><p> optional <a href="http://library.gnome.org/devel/gio/unstable/GCancellable.html"><span class="type">GCancellable</span></a> object, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. </p></td>
+<td class="parameter_description"><p> optional <span class="type">GCancellable</span> object, <code class="literal">NULL</code> to ignore. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<hr>
<div class="refsect2">
<a name="signon-auth-session-process-finish"></a><h3>signon_auth_session_process_finish ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
+<pre class="programlisting"><span class="returnvalue">GVariant</span> *
signon_auth_session_process_finish (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html"><span class="type">GAsyncResult</span></a> *res</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+ <em class="parameter"><code><span class="type">GAsyncResult</span> *res</code></em>,
+ <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Collect the result of the <a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()"><code class="function">signon_auth_session_process_async()</code></a> operation.</p>
<div class="refsect3">
<a name="id-1.3.3.6.9.10.5"></a><h4>Parameters</h4>
</tr>
<tr>
<td class="parameter_name"><p>res</p></td>
-<td class="parameter_description"><p>A <a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html"><span class="type">GAsyncResult</span></a> obtained from the <a href="http://library.gnome.org/devel/gio/unstable/GAsyncResult.html#GAsyncReadyCallback"><span class="type">GAsyncReadyCallback</span></a> passed to
+<td class="parameter_description"><p>A <span class="type">GAsyncResult</span> obtained from the <span class="type">GAsyncReadyCallback</span> passed to
<a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()"><code class="function">signon_auth_session_process_async()</code></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>return location for error, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
+<td class="parameter_description"><p>return location for error, or <code class="literal">NULL</code>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</div>
<div class="refsect3">
<a name="id-1.3.3.6.9.10.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> of type <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariantType.html#G-VARIANT-TYPE-VARDICT:CAPS"><code class="literal">G_VARIANT_TYPE_VARDICT</code></a> containing the
+<p> a <span class="type">GVariant</span> of type <code class="literal">G_VARIANT_TYPE_VARDICT</code> containing the
authentication reply. As with <a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()"><code class="function">signon_auth_session_process_async()</code></a>, specific
-parameters contained in the <a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> can be found from plugins' documentation:
+parameters contained in the <span class="type">GVariant</span> can be found from plugins' documentation:
<a href="http://gsignon-docs.accounts-sso.googlecode.com/git/gsignond/GSignondPlugin.html#GSignondPlugin-response-final"><span class="type">“response-final”</span></a> for the final response, and <a href="http://gsignon-docs.accounts-sso.googlecode.com/git/gsignond/GSignondPlugin.html#GSignondPlugin-response"><span class="type">“response”</span></a>
for the intermediate responses. See, for example, <a href="http://gsignon-docs.accounts-sso.googlecode.com/git/gsignond/GSignondPasswordPlugin.html"><span class="type">GSignondPasswordPlugin</span></a>
and <a href="http://gsignon-docs.accounts-sso.googlecode.com/git/gsignond/GSignondDigestPlugin.html"><span class="type">GSignondDigestPlugin</span></a>.</p>
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> <em class="structfield"><code><a name="SignonAuthSessionClass.parent"></a>parent</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">GObjectClass</span> <em class="structfield"><code><a name="SignonAuthSessionClass.parent"></a>parent</code></em>;</p></td>
<td class="struct_member_description"><p>reference to the parent class</p></td>
<td class="struct_member_annotations"> </td>
</tr></tbody>
<a name="SignonAuthSession-state-changed"></a><h3>The <code class="literal">“state-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *auth_session,
- <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> state,
- <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *message,
- <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
+ <span class="type">gint</span> state,
+ <span class="type">gchar</span> *message,
+ <span class="type">gpointer</span> user_data)</pre>
<p>Emitted when the state of the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> changes. The state change
is initiated by <a href="http://gsignon-docs.accounts-sso.googlecode.com/git/gsignond/GSignondPlugin.html"><span class="type">GSignondPlugin</span></a> via <a href="http://gsignon-docs.accounts-sso.googlecode.com/git/gsignond/GSignondPlugin.html#GSignondPlugin-status-changed"><span class="type">“status-changed”</span></a> signal.</p>
<div class="refsect3">
</tbody>
</table></div>
</div>
-<p>Flags: <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
+<p>Flags: Action</p>
</div>
</div>
</div>
</td>
</tr>
<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> *
+<td class="function_type">const <span class="returnvalue">GError</span> *
</td>
<td class="function_name">
<a class="link" href="SignonIdentity.html#signon-identity-get-last-error" title="signon_identity_get_last_error ()">signon_identity_get_last_error</a> <span class="c_punctuation">()</span>
<span class="returnvalue">void</span>
</td>
<td class="function_name">
-<a class="link" href="SignonIdentity.html#signon-identity-verify-secret" title="signon_identity_verify_secret ()">signon_identity_verify_secret</a> <span class="c_punctuation">()</span>
+<a class="link" href="SignonIdentity.html#signon-identity-verify-user" title="signon_identity_verify_user ()">signon_identity_verify_user</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<span class="returnvalue">void</span>
</td>
<td class="function_name">
+<a class="link" href="SignonIdentity.html#signon-identity-request-credentials-update" title="signon_identity_request_credentials_update ()">signon_identity_request_credentials_update</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
<a class="link" href="SignonIdentity.html#signon-identity-signout" title="signon_identity_signout ()">signon_identity_signout</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tbody>
<tr>
<td class="property_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td>
+<span class="type">gchar</span> *</td>
<td class="property_name"><a class="link" href="SignonIdentity.html#SignonIdentity--app-ctx" title="The “app-ctx” property">app-ctx</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
-<td class="property_type"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></td>
+<td class="property_type"><span class="type">guint</span></td>
<td class="property_name"><a class="link" href="SignonIdentity.html#SignonIdentity--id" title="The “id” property">id</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<col width="300px" class="signals_name">
<col width="200px" class="signals_flags">
</colgroup>
-<tbody><tr>
+<tbody>
+<tr>
+<td class="signal_type"><span class="returnvalue">void</span></td>
+<td class="signal_name"><a class="link" href="SignonIdentity.html#SignonIdentity-removed" title="The “removed” signal">removed</a></td>
+<td class="signal_flags">No Hooks</td>
+</tr>
+<tr>
<td class="signal_type"><span class="returnvalue">void</span></td>
<td class="signal_name"><a class="link" href="SignonIdentity.html#SignonIdentity-signout" title="The “signout” signal">signout</a></td>
-<td class="signal_flags"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-NO-HOOKS:CAPS">No Hooks</a></td>
-</tr></tbody>
+<td class="signal_flags">No Hooks</td>
+</tr>
+</tbody>
</table></div>
</div>
<div class="refsect1">
</tr>
<tr>
<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="SignonIdentity.html#SignonIdentityCredentialsUpdatedCb" title="SignonIdentityCredentialsUpdatedCb">SignonIdentityCredentialsUpdatedCb</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
<td class="function_name"><a class="link" href="SignonIdentity.html#SignonIdentitySignedOutCb" title="SignonIdentitySignedOutCb">SignonIdentitySignedOutCb</a></td>
</tr>
<tr>
</div>
<div class="refsect1">
<a name="SignonIdentity.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="screen"> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+<pre class="screen"> GObject
<span class="lineart">╰──</span> SignonIdentity
</pre>
</div>
and depending on how gSSO is configured it's also possible to provide a list
with a wildcard item to relax the access control restriction
(see <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>).</p></li>
-<li class="listitem"><p>Methods is a <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> containing method names as keys, and lists of
+<li class="listitem"><p>Methods is a <span class="type">GHashTable</span> containing method names as keys, and lists of
allowed mechanisms as values (also, a special value "*" means that any
mechanism is allowed). Only those methods and mechanisms that are in the table
are allowed to be used in authentication sessions. Default is an empty list.</p></li>
<a name="SignonIdentityVoidCb"></a><h3>SignonIdentityVoidCb ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonIdentityVoidCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Generic callback to be passed to several <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> methods.</p>
<div class="refsect3">
<a name="id-1.3.3.3.9.2.5"></a><h4>Parameters</h4>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, or <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<p>Construct an identity object associated with an existing identity
record.
This is essentially equivalent to calling
-<a class="link" href="SignonIdentity.html#signon-identity-new-with-context-from-db" title="signon_identity_new_with_context_from_db ()"><code class="function">signon_identity_new_with_context_from_db()</code></a> and passing <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> as the
+<a class="link" href="SignonIdentity.html#signon-identity-new-with-context-from-db" title="signon_identity_new_with_context_from_db ()"><code class="function">signon_identity_new_with_context_from_db()</code></a> and passing <code class="literal">NULL</code> as the
application context.</p>
<p>Applications can determine the <em class="parameter"><code>id</code></em>
either by enumerating the identities with
signon_identity_new ();</pre>
<p>Construct a new, empty, identity object.
This is essentially equivalent to calling <a class="link" href="SignonIdentity.html#signon-identity-new-with-context" title="signon_identity_new_with_context ()"><code class="function">signon_identity_new_with_context()</code></a>
-and passing <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> as the application context.</p>
+and passing <code class="literal">NULL</code> as the application context.</p>
<div class="refsect3">
<a name="id-1.3.3.3.9.4.5"></a><h4>Returns</h4>
<p> an instance of an <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a>.</p>
<pre class="programlisting"><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="returnvalue">SignonIdentity</span></a> *
signon_identity_new_with_context_from_db
(<em class="parameter"><code><span class="type">guint32</span> id</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *application_context</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *application_context</code></em>);</pre>
<p>Construct an identity object associated with an existing identity
record. See <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> for a discussion of <em class="parameter"><code>application_context</code></em>
contents.
</tr>
<tr>
<td class="parameter_name"><p>application_context</p></td>
-<td class="parameter_description"><p>application security context, can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
+<td class="parameter_description"><p>application security context, can be <code class="literal">NULL</code>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
<div class="refsect2">
<a name="signon-identity-new-with-context"></a><h3>signon_identity_new_with_context ()</h3>
<pre class="programlisting"><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="returnvalue">SignonIdentity</span></a> *
-signon_identity_new_with_context (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *application_context</code></em>);</pre>
+signon_identity_new_with_context (<em class="parameter"><code>const <span class="type">gchar</span> *application_context</code></em>);</pre>
<p>Construct a new, empty, identity object. See <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> for a
discussion of <em class="parameter"><code>application_context</code></em>
contents. <em class="parameter"><code>application_context</code></em>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>application_context</p></td>
-<td class="parameter_description"><p>application security context, can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p></td>
+<td class="parameter_description"><p>application security context, can be <code class="literal">NULL</code>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
<hr>
<div class="refsect2">
<a name="signon-identity-get-last-error"></a><h3>signon_identity_get_last_error ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> *
+<pre class="programlisting">const <span class="returnvalue">GError</span> *
signon_identity_get_last_error (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *identity</code></em>);</pre>
<p>Get the most recent error that occurred on <em class="parameter"><code>identity</code></em>
.</p>
</div>
<div class="refsect3">
<a name="id-1.3.3.3.9.7.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> containing the most recent error, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure.</p>
+<p> a <span class="type">GError</span> containing the most recent error, or <code class="literal">NULL</code> on failure.</p>
<p></p>
</div>
</div>
<a name="signon-identity-create-session"></a><h3>signon_identity_create_session ()</h3>
<pre class="programlisting"><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="returnvalue">SignonAuthSession</span></a> *
signon_identity_create_session (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *method</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *method</code></em>,
+ <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Creates an authentication session for this identity. If the identity has been
retrieved from the database, the authentication method must be one of those
listed in <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-methods" title="signon_identity_info_get_methods ()"><code class="function">signon_identity_info_get_methods()</code></a>, otherwise it can be any method
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonIdentityStoreCredentialsCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
<em class="parameter"><code><span class="type">guint32</span> id</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-store-credentials-with-args" title="signon_identity_store_credentials_with_args ()"><code class="function">signon_identity_store_credentials_with_args()</code></a> or
<a class="link" href="SignonIdentity.html#signon-identity-store-credentials-with-info" title="signon_identity_store_credentials_with_info ()"><code class="function">signon_identity_store_credentials_with_info()</code></a>.</p>
<div class="refsect3">
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, or <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
(<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityStoreCredentialsCb" title="SignonIdentityStoreCredentialsCb ()"><span class="type">SignonIdentityStoreCredentialsCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Stores the data contained in <em class="parameter"><code>info</code></em>
into the identity record in the database.
See above for the detailed discussion of the meaning of various fields and
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_store_credentials_with_args
(<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *username</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *secret</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> store_secret</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *methods</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *caption</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> * const *realms</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *username</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *secret</code></em>,
+ <em class="parameter"><code>const <span class="type">gboolean</span> store_secret</code></em>,
+ <em class="parameter"><code><span class="type">GHashTable</span> *methods</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *caption</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> * const *realms</code></em>,
<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *owner</code></em>,
<em class="parameter"><code><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *access_control_list</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="type">SignonIdentityType</span></a> type</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityStoreCredentialsCb" title="SignonIdentityStoreCredentialsCb ()"><span class="type">SignonIdentityStoreCredentialsCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Stores the given data into the identity. See above for the meaning
of the specific fields.</p>
<div class="refsect3">
<a name="SignonIdentityVerifyCb"></a><h3>SignonIdentityVerifyCb ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonIdentityVerifyCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> valid</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
-<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-verify-secret" title="signon_identity_verify_secret ()"><code class="function">signon_identity_verify_secret()</code></a>.</p>
+ <em class="parameter"><code><span class="type">gboolean</span> valid</code></em>,
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
+<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-verify-user" title="signon_identity_verify_user ()"><code class="function">signon_identity_verify_user()</code></a>.</p>
<div class="refsect3">
<a name="id-1.3.3.3.9.12.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
</tr>
<tr>
<td class="parameter_name"><p>valid</p></td>
-<td class="parameter_description"><p>whether the secret is valid.</p></td>
+<td class="parameter_description"><p>whether the verification succeeded.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, or <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-verify-secret"></a><h3>signon_identity_verify_secret ()</h3>
+<a name="signon-identity-verify-user"></a><h3>signon_identity_verify_user ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
-signon_identity_verify_secret (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *secret</code></em>,
- <em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityVerifyCb" title="SignonIdentityVerifyCb ()"><span class="type">SignonIdentityVerifyCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
-<p>Verifies the given secret. Not currently supported by gSSO.</p>
+signon_identity_verify_user (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
+ <em class="parameter"><code><span class="type">GVariant</span> *args</code></em>,
+ <em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityVerifyCb" title="SignonIdentityVerifyCb ()"><span class="type">SignonIdentityVerifyCb</span></a> cb</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
+<p>Asks user to enter his credentials to verify the current user.</p>
<div class="refsect3">
<a name="id-1.3.3.3.9.13.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td class="parameter_name"><p>secret</p></td>
-<td class="parameter_description"><p>the secret (password) to be verified.</p></td>
+<td class="parameter_name"><p>args</p></td>
+<td class="parameter_description"><p>optional extra arguments (vardict) controlling SignOn UI.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonIdentityInfoCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()"><code class="function">signon_identity_query_info()</code></a>.</p>
<div class="refsect3">
<a name="id-1.3.3.3.9.14.5"></a><h4>Parameters</h4>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, or <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_query_info (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityInfoCb" title="SignonIdentityInfoCb ()"><span class="type">SignonIdentityInfoCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Fetches the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> data associated with this
identity.</p>
<div class="refsect3">
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_remove (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityRemovedCb" title="SignonIdentityRemovedCb"><span class="type">SignonIdentityRemovedCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Removes the corresponding credentials record from the database.</p>
<div class="refsect3">
<a name="id-1.3.3.3.9.16.5"></a><h4>Parameters</h4>
</div>
<hr>
<div class="refsect2">
+<a name="signon-identity-request-credentials-update"></a><h3>signon_identity_request_credentials_update ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_identity_request_credentials_update
+ (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *message</code></em>,
+ <em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityCredentialsUpdatedCb" title="SignonIdentityCredentialsUpdatedCb"><span class="type">SignonIdentityCredentialsUpdatedCb</span></a> cb</code></em>,
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
+<p>Requests user to re-enter his credentials.</p>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.17.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>message</p></td>
+<td class="parameter_description"><p>message to be displayed to the user.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p> callback to be called when the operation has completed. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user_data to pass to the callback.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
<a name="signon-identity-signout"></a><h3>signon_identity_signout ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_signout (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentitySignedOutCb" title="SignonIdentitySignedOutCb"><span class="type">SignonIdentitySignedOutCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Asks signond to close all authentication sessions for this
identity, and to remove any stored secrets associated with it (password and
authentication tokens).</p>
<div class="refsect3">
-<a name="id-1.3.3.3.9.17.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.3.9.18.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<a name="signon-identity-add-reference"></a><h3>signon_identity_add_reference ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_add_reference (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *reference</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *reference</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityReferenceAddedCb" title="SignonIdentityReferenceAddedCb"><span class="type">SignonIdentityReferenceAddedCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Adds named reference to identity. Not currently supported by gSSO.</p>
<div class="refsect3">
-<a name="id-1.3.3.3.9.18.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.3.9.19.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<a name="signon-identity-remove-reference"></a><h3>signon_identity_remove_reference ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_remove_reference (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *reference</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *reference</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentityReferenceRemovedCb" title="SignonIdentityReferenceRemovedCb"><span class="type">SignonIdentityReferenceRemovedCb</span></a> cb</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
+ <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Removes named reference from identity. Not currently supported by gSSO.</p>
<div class="refsect3">
-<a name="id-1.3.3.3.9.19.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.3.9.20.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<a name="SignonIdentitySessionReadyCb"></a><h3>SignonIdentitySessionReadyCb ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*SignonIdentitySessionReadyCb<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> *error</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/gio/unstable/GDBusConnection.html"><span class="type">GDBusConnection</span></a> *connection</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *bus_name</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *object_path</code></em>);</pre>
+ <em class="parameter"><code><span class="type">GError</span> *error</code></em>,
+ <em class="parameter"><code><span class="type">GDBusConnection</span> *connection</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *bus_name</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *object_path</code></em>);</pre>
<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-get-auth-session" title="signon_identity_get_auth_session ()"><code class="function">signon_identity_get_auth_session()</code></a>.</p>
<div class="refsect3">
-<a name="id-1.3.3.3.9.20.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.3.9.21.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> if an error occurred, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> otherwise.</p></td>
+<td class="parameter_description"><p>a <span class="type">GError</span> if an error occurred, or <code class="literal">NULL</code> otherwise.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>connection</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gio/unstable/GDBusConnection.html"><span class="type">GDBusConnection</span></a> for the session.</p></td>
+<td class="parameter_description"><p>a <span class="type">GDBusConnection</span> for the session.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_get_auth_session (<em class="parameter"><code><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *self</code></em>,
<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *session</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *method</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *method</code></em>,
<em class="parameter"><code><a class="link" href="SignonIdentity.html#SignonIdentitySessionReadyCb" title="SignonIdentitySessionReadyCb ()"><span class="type">SignonIdentitySessionReadyCb</span></a> cb</code></em>);</pre>
<p>Obtain a remote object for a local session object. Should not be used by
applications.</p>
<div class="refsect3">
-<a name="id-1.3.3.3.9.21.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.3.9.22.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody><tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> <em class="structfield"><code><a name="SignonIdentityClass.parent-class"></a>parent_class</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">GObjectClass</span> <em class="structfield"><code><a name="SignonIdentityClass.parent-class"></a>parent_class</code></em>;</p></td>
<td class="struct_member_description"><p>reference to a parent class</p></td>
<td class="struct_member_annotations"> </td>
</tr></tbody>
</div>
<hr>
<div class="refsect2">
+<a name="SignonIdentityCredentialsUpdatedCb"></a><h3>SignonIdentityCredentialsUpdatedCb</h3>
+<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentityCredentialsUpdatedCb;
+</pre>
+<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-request-credentials-update" title="signon_identity_request_credentials_update ()"><code class="function">signon_identity_request_credentials_update()</code></a>.</p>
+</div>
+<hr>
+<div class="refsect2">
<a name="SignonIdentitySignedOutCb"></a><h3>SignonIdentitySignedOutCb</h3>
<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentitySignedOutCb;
</pre>
<a name="SignonIdentity.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="SignonIdentity--app-ctx"></a><h3>The <code class="literal">“app-ctx”</code> property</h3>
-<pre class="programlisting"> “app-ctx” <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre>
+<pre class="programlisting"> “app-ctx” <span class="type">gchar</span> *</pre>
<p>Set/Get Application Security Context.</p>
<p>Flags: Read / Write</p>
<p>Default value: ""</p>
<hr>
<div class="refsect2">
<a name="SignonIdentity--id"></a><h3>The <code class="literal">“id”</code> property</h3>
-<pre class="programlisting"> “id” <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a></pre>
+<pre class="programlisting"> “id” <span class="type">guint</span></pre>
<p>Set/Get Identity ID.</p>
<p>Flags: Read / Write</p>
<p>Default value: 0</p>
<div class="refsect1">
<a name="SignonIdentity.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
+<a name="SignonIdentity-removed"></a><h3>The <code class="literal">“removed”</code> signal</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+user_function (<a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *arg0,
+ <span class="type">gpointer</span> user_data)</pre>
+<p>Emitted when the identity was removed (deleted).</p>
+<div class="refsect3">
+<a name="id-1.3.3.3.12.2.5"></a><h4>Parameters</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<p>Flags: No Hooks</p>
+</div>
+<hr>
+<div class="refsect2">
<a name="SignonIdentity-signout"></a><h3>The <code class="literal">“signout”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *arg0,
- <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre>
+ <span class="type">gpointer</span> user_data)</pre>
<p>Emitted when the identity was signed out.</p>
<div class="refsect3">
-<a name="id-1.3.3.3.12.2.5"></a><h4>Parameters</h4>
+<a name="id-1.3.3.3.12.3.5"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
</tr></tbody>
</table></div>
</div>
-<p>Flags: <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-NO-HOOKS:CAPS">No Hooks</a></p>
+<p>Flags: No Hooks</p>
</div>
</div>
</div>
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<span class="returnvalue">gint</span>
</td>
<td class="function_name">
<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-id" title="signon_identity_info_get_id ()">signon_identity_info_get_id</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-username" title="signon_identity_info_get_username ()">signon_identity_info_get_username</a> <span class="c_punctuation">()</span>
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-storing-secret" title="signon_identity_info_get_storing_secret ()">signon_identity_info_get_storing_secret</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-caption" title="signon_identity_info_get_caption ()">signon_identity_info_get_caption</a> <span class="c_punctuation">()</span>
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *
+<span class="returnvalue">GHashTable</span> *
</td>
<td class="function_name">
<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-methods" title="signon_identity_info_get_methods ()">signon_identity_info_get_methods</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
+<td class="function_type">const <span class="returnvalue">gchar</span> * const *
</td>
<td class="function_name">
<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-realms" title="signon_identity_info_get_realms ()">signon_identity_info_get_realms</a> <span class="c_punctuation">()</span>
</div>
<div class="refsect3">
<a name="id-1.3.3.4.7.4.6"></a><h4>Returns</h4>
-<p> a copy of the given <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on failure.</p>
+<p> a copy of the given <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>, or <code class="literal">NULL</code> on failure.</p>
<p></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="signon-identity-info-get-id"></a><h3>signon_identity_info_get_id ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a>
+<pre class="programlisting"><span class="returnvalue">gint</span>
signon_identity_info_get_id (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);</pre>
<p>Get the numeric identity ID of <em class="parameter"><code>info</code></em>
.</p>
<hr>
<div class="refsect2">
<a name="signon-identity-info-get-username"></a><h3>signon_identity_info_get_username ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *
signon_identity_info_get_username (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);</pre>
<p>Get the username associated with an identity.</p>
<div class="refsect3">
</div>
<div class="refsect3">
<a name="id-1.3.3.4.7.6.6"></a><h4>Returns</h4>
-<p> the username, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</p>
+<p> the username, or <code class="literal">NULL</code>.</p>
<p></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="signon-identity-info-get-storing-secret"></a><h3>signon_identity_info_get_storing_secret ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+<pre class="programlisting"><span class="returnvalue">gboolean</span>
signon_identity_info_get_storing_secret
(<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);</pre>
<p>Get whether the secret of <em class="parameter"><code>info</code></em>
</div>
<div class="refsect3">
<a name="id-1.3.3.4.7.7.6"></a><h4>Returns</h4>
-<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if gSSO must store the secret, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
+<p> <code class="literal">TRUE</code> if gSSO must store the secret, <code class="literal">FALSE</code> otherwise.</p>
<p></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="signon-identity-info-get-caption"></a><h3>signon_identity_info_get_caption ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *
signon_identity_info_get_caption (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);</pre>
<p>Get the display name of <em class="parameter"><code>info</code></em>
.</p>
<hr>
<div class="refsect2">
<a name="signon-identity-info-get-methods"></a><h3>signon_identity_info_get_methods ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *
+<pre class="programlisting"><span class="returnvalue">GHashTable</span> *
signon_identity_info_get_methods (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);</pre>
<p>Get a hash table of the methods and mechanisms of <em class="parameter"><code>info</code></em>
. See
<hr>
<div class="refsect2">
<a name="signon-identity-info-get-realms"></a><h3>signon_identity_info_get_realms ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const *
+<pre class="programlisting">const <span class="returnvalue">gchar</span> * const *
signon_identity_info_get_realms (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);</pre>
<p>Get an array of the allowed realms of <em class="parameter"><code>info</code></em>
.</p>
</div>
<div class="refsect3">
<a name="id-1.3.3.4.7.10.6"></a><h4>Returns</h4>
-<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminated array of realms. </p>
+<p> a <code class="literal">NULL</code> terminated array of realms. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<a name="signon-identity-info-set-username"></a><h3>signon_identity_info_set_username ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_set_username (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *username</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *username</code></em>);</pre>
<p>Sets the username for the identity.</p>
<div class="refsect3">
<a name="id-1.3.3.4.7.14.5"></a><h4>Parameters</h4>
<a name="signon-identity-info-set-secret"></a><h3>signon_identity_info_set_secret ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_set_secret (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *secret</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> store_secret</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *secret</code></em>,
+ <em class="parameter"><code><span class="type">gboolean</span> store_secret</code></em>);</pre>
<p>Sets the secret (password) for the identity, and whether the gSSO daemon
should remember it.</p>
<div class="refsect3">
<a name="signon-identity-info-set-caption"></a><h3>signon_identity_info_set_caption ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_set_caption (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *caption</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *caption</code></em>);</pre>
<p>Sets the caption (display name) for the identity.</p>
<div class="refsect3">
<a name="id-1.3.3.4.7.16.5"></a><h4>Parameters</h4>
<a name="signon-identity-info-set-methods"></a><h3>signon_identity_info_set_methods ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_set_methods (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *methods</code></em>);</pre>
+ <em class="parameter"><code><span class="type">GHashTable</span> *methods</code></em>);</pre>
<p>Set authentication methods that are allowed to be used with this identity.</p>
<div class="refsect3">
<a name="id-1.3.3.4.7.17.5"></a><h4>Parameters</h4>
<a name="signon-identity-info-own-methods"></a><h3>signon_identity_info_own_methods ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_own_methods (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *methods</code></em>);</pre>
+ <em class="parameter"><code><span class="type">GHashTable</span> *methods</code></em>);</pre>
<p>Set authentication methods that are allowed to be used with this identity.</p>
<p>This function will just increment reference count of hash table, so
-it should be constructed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#g-hash-table-new-full"><span class="type">g_hash_table_new_full</span></a>.</p>
+it should be constructed with <span class="type">g_hash_table_new_full</span>.</p>
<div class="refsect3">
<a name="id-1.3.3.4.7.18.6"></a><h4>Parameters</h4>
<div class="informaltable"><table width="100%" border="0">
<a name="signon-identity-info-set-method"></a><h3>signon_identity_info_set_method ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_set_method (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *method</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> * const *mechanisms</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *method</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> * const *mechanisms</code></em>);</pre>
<p>Adds a method to the list of allowed authentication methods.</p>
<div class="refsect3">
<a name="id-1.3.3.4.7.19.5"></a><h4>Parameters</h4>
</tr>
<tr>
<td class="parameter_name"><p>mechanisms</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of mechanisms.</p></td>
+<td class="parameter_description"><p>a <code class="literal">NULL</code>-terminated list of mechanisms.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
<a name="signon-identity-info-remove-method"></a><h3>signon_identity_info_remove_method ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_remove_method (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *method</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *method</code></em>);</pre>
<p>Remove <em class="parameter"><code>method</code></em>
from the list of allowed authentication methods.</p>
<div class="refsect3">
<a name="signon-identity-info-set-realms"></a><h3>signon_identity_info_set_realms ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_set_realms (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> * const *realms</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> * const *realms</code></em>);</pre>
<p>Specify what realms this identity can be used in.</p>
<div class="refsect3">
<a name="id-1.3.3.4.7.21.5"></a><h4>Parameters</h4>
</tr>
<tr>
<td class="parameter_name"><p>realms</p></td>
-<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated list of realms.</p></td>
+<td class="parameter_description"><p>a <code class="literal">NULL</code>-terminated list of realms.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_identity_info_set_owner_from_values
(<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *system_context</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *application_context</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *system_context</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *application_context</code></em>);</pre>
<p>Set identity owner's security context.</p>
<div class="refsect3">
<a name="id-1.3.3.4.7.23.5"></a><h4>Parameters</h4>
</td>
</tr>
<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="SignonSecurityContext.html#signon-security-context-get-system-context" title="signon_security_context_get_system_context ()">signon_security_context_get_system_context</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td class="function_type">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<td class="function_type">const <span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="SignonSecurityContext.html#signon-security-context-get-application-context" title="signon_security_context_get_application_context ()">signon_security_context_get_application_context</a> <span class="c_punctuation">()</span>
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
+<span class="returnvalue">GVariant</span> *
</td>
<td class="function_name">
<a class="link" href="SignonSecurityContext.html#signon-security-context-build-variant" title="signon_security_context_build_variant ()">signon_security_context_build_variant</a> <span class="c_punctuation">()</span>
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
+<span class="returnvalue">GVariant</span> *
</td>
<td class="function_name">
<a class="link" href="SignonSecurityContext.html#signon-security-context-list-build-variant" title="signon_security_context_list_build_variant ()">signon_security_context_list_build_variant</a> <span class="c_punctuation">()</span>
<a name="signon-security-context-new-from-values"></a><h3>signon_security_context_new_from_values ()</h3>
<pre class="programlisting"><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
signon_security_context_new_from_values
- (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *system_context</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *application_context</code></em>);</pre>
+ (<em class="parameter"><code>const <span class="type">gchar</span> *system_context</code></em>,
+ <em class="parameter"><code>const <span class="type">gchar</span> *application_context</code></em>);</pre>
<p>Allocates and initializes a new security context item.</p>
<div class="refsect3">
<a name="id-1.3.3.5.7.3.5"></a><h4>Parameters</h4>
<pre class="programlisting"><span class="returnvalue">void</span>
signon_security_context_set_system_context
(<em class="parameter"><code><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *system_context</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *system_context</code></em>);</pre>
<p>Sets the system context part (such as SMACK label or MSSF token) of the
<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.</p>
<div class="refsect3">
<hr>
<div class="refsect2">
<a name="signon-security-context-get-system-context"></a><h3>signon_security_context_get_system_context ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *
signon_security_context_get_system_context
(<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);</pre>
<p>Get the system context part (such as SMACK label or MSSF token) of the
<pre class="programlisting"><span class="returnvalue">void</span>
signon_security_context_set_application_context
(<em class="parameter"><code><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>,
- <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *application_context</code></em>);</pre>
+ <em class="parameter"><code>const <span class="type">gchar</span> *application_context</code></em>);</pre>
<p>Sets the application context part (such as a script name or a web page) of
the <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.</p>
<div class="refsect3">
<hr>
<div class="refsect2">
<a name="signon-security-context-get-application-context"></a><h3>signon_security_context_get_application_context ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *
+<pre class="programlisting">const <span class="returnvalue">gchar</span> *
signon_security_context_get_application_context
(<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);</pre>
<p>Get the application context part (such as script name or a web page) of
<hr>
<div class="refsect2">
<a name="signon-security-context-build-variant"></a><h3>signon_security_context_build_variant ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
+<pre class="programlisting"><span class="returnvalue">GVariant</span> *
signon_security_context_build_variant (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);</pre>
<p>Build a GVariant of type "(ss)" from a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</p>
<div class="refsect3">
<a name="signon-security-context-deconstruct-variant"></a><h3>signon_security_context_deconstruct_variant ()</h3>
<pre class="programlisting"><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
signon_security_context_deconstruct_variant
- (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *variant</code></em>);</pre>
+ (<em class="parameter"><code><span class="type">GVariant</span> *variant</code></em>);</pre>
<p>Builds a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item from a GVariant of type "(ss)".</p>
<div class="refsect3">
<a name="id-1.3.3.5.7.11.5"></a><h4>Parameters</h4>
<hr>
<div class="refsect2">
<a name="signon-security-context-list-build-variant"></a><h3>signon_security_context_list_build_variant ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
+<pre class="programlisting"><span class="returnvalue">GVariant</span> *
signon_security_context_list_build_variant
(<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *list</code></em>);</pre>
<p>Builds a GVariant of type "a(ss)" from a GList of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>
<a name="signon-security-context-list-deconstruct-variant"></a><h3>signon_security_context_list_deconstruct_variant ()</h3>
<pre class="programlisting"><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> *
signon_security_context_list_deconstruct_variant
- (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="type">GVariant</span></a> *variant</code></em>);</pre>
+ (<em class="parameter"><code><span class="type">GVariant</span> *variant</code></em>);</pre>
<p>Builds a GList of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> items from a GVariant of type
"a(ss)".</p>
<div class="refsect3">
</colgroup>
<tbody>
<tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="SignonSecurityContext-struct.sys-ctx"></a>sys_ctx</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">gchar</span> *<em class="structfield"><code><a name="SignonSecurityContext-struct.sys-ctx"></a>sys_ctx</code></em>;</p></td>
<td class="struct_member_description"><p>system context, such as SMACK-label, MSSF token or just a
binary path.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
-<td class="struct_member_name"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="SignonSecurityContext-struct.app-ctx"></a>app_ctx</code></em>;</p></td>
+<td class="struct_member_name"><p><span class="type">gchar</span> *<em class="structfield"><code><a name="SignonSecurityContext-struct.app-ctx"></a>app_ctx</code></em>;</p></td>
<td class="struct_member_description"><p>application context, such as a script or a web page.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"><span id="nav_index"><a class="shortcut" href="#idxA">A</a>
<span class="dim">|</span>
+ <a class="shortcut" href="#idxC">C</a>
+ <span class="dim">|</span>
<a class="shortcut" href="#idxE">E</a>
<span class="dim">|</span>
<a class="shortcut" href="#idxI">I</a>
</dt>
<dd></dd>
<dt>
+<a class="link" href="SignonAuthService.html#signon-auth-service-clear" title="signon_auth_service_clear ()">signon_auth_service_clear</a>, function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="SignonAuthService.html#signon-auth-service-new" title="signon_auth_service_new ()">signon_auth_service_new</a>, function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<a class="link" href="SignonAuthSession.html#signon-auth-session-query-available-mechanisms" title="signon_auth_session_query_available_mechanisms ()">signon_auth_session_query_available_mechanisms</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
+<a name="idxC"></a><h3 class="title">C</h3>
+<dt>
+<a class="link" href="SignonAuthService.html#SignonClearCb" title="SignonClearCb ()">SignonClearCb</a>, user_function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+</dt>
+<dd></dd>
<a name="idxE"></a><h3 class="title">E</h3>
<dt>
<a class="link" href="libgsignon-glib-SignonError.html#SignonError" title="enum SignonError">SignonError</a>, enum in <a class="link" href="libgsignon-glib-SignonError.html" title="SignonError">SignonError</a>
</dt>
<dd></dd>
<dt>
+<a class="link" href="SignonIdentity.html#SignonIdentity-removed" title="The “removed” signal">SignonIdentity::removed</a>, object signal in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="SignonIdentity.html#SignonIdentity-signout" title="The “signout” signal">SignonIdentity::signout</a>, object signal in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
</dt>
<dd></dd>
<dt>
+<a class="link" href="SignonIdentity.html#SignonIdentityCredentialsUpdatedCb" title="SignonIdentityCredentialsUpdatedCb">SignonIdentityCredentialsUpdatedCb</a>, typedef in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="SignonAuthService.html#SignonIdentityFilter" title="SignonIdentityFilter">SignonIdentityFilter</a>, typedef in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
</dt>
<dd></dd>
<dt>
+<a class="link" href="SignonIdentity.html#signon-identity-request-credentials-update" title="signon_identity_request_credentials_update ()">signon_identity_request_credentials_update</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+</dt>
+<dd></dd>
+<dt>
<a class="link" href="SignonIdentity.html#signon-identity-signout" title="signon_identity_signout ()">signon_identity_signout</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentity.html#signon-identity-verify-secret" title="signon_identity_verify_secret ()">signon_identity_verify_secret</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-verify-user" title="signon_identity_verify_user ()">signon_identity_verify_user</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<a name="idxQ"></a><h3 class="title">Q</h3>
<p>
</p>
<p>
- To add security context to identity's Access Control List, use <strong class="userinput"><code>--add-context</code></strong> option
- with identity id:
+ To add a security context to identity's Access Control List, use <strong class="userinput"><code>--add-context</code></strong> option
+ with an identity id:
</p>
<div class="literallayout"><p><code class="computeroutput"><br>
-<strong class="userinput"><code>> gsso-example --add-context=28 --system-context=* --application-context=*</code></strong><br>
+<strong class="userinput"><code>> gsso-example --add-context=28 --system-context=/path/to/executable --application-context=</code></strong><br>
Identity stored with id 28<br>
</code></p></div>
<p>
</p>
<p>
- To remove security context from identity's Access Control List, use <strong class="userinput"><code>--remove-context=</code></strong> option
+ /path/to/executable should be used if gsso is configured to use the
+ default ACL extension, otherwise the system context value is defined by the extension
+ that is in use.
+ </p>
+<p>
+ To remove a security context from identity's Access Control List, use <strong class="userinput"><code>--remove-context=</code></strong> option
with identity id:
</p>
<div class="literallayout"><p><code class="computeroutput"><br>
-<strong class="userinput"><code>> gsso-example --remove-context=28 --system-context=* --application-context=*</code></strong><br>
+<strong class="userinput"><code>> gsso-example --remove-context=28 --system-context=/path/to/executable --application-context=</code></strong><br>
Identity stored with id 28<br>
</code></p></div>
<p>
<div>
<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">libgsignon-glib Reference Manual</p></th></tr></table></div>
<div><p class="releaseinfo">
- This document is for libgsignon-glib, version 2.1.0
+ This document is for libgsignon-glib, version 2.2.0
. The latest
version of this documentation can be found on-line at
<a class="ulink" href="http://gsignon-docs.accounts-sso.googlecode.com/git/libgsignon-glib/index.html" target="_top">
<ANCHOR id="SignonAuthService.functions_details" href="libgsignon-glib/SignonAuthService.html#SignonAuthService.functions_details">
<ANCHOR id="SignonQueryMethodsCb" href="libgsignon-glib/SignonAuthService.html#SignonQueryMethodsCb">
<ANCHOR id="SignonQueryMechanismCb" href="libgsignon-glib/SignonAuthService.html#SignonQueryMechanismCb">
+<ANCHOR id="SignonClearCb" href="libgsignon-glib/SignonAuthService.html#SignonClearCb">
<ANCHOR id="SignonQueryIdentitiesCb" href="libgsignon-glib/SignonAuthService.html#SignonQueryIdentitiesCb">
<ANCHOR id="signon-auth-service-new" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-new">
<ANCHOR id="signon-auth-service-query-methods" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-query-methods">
<ANCHOR id="signon-auth-service-query-mechanisms" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-query-mechanisms">
<ANCHOR id="signon-auth-service-query-identities" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-query-identities">
+<ANCHOR id="signon-auth-service-clear" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-clear">
<ANCHOR id="SignonAuthService.other_details" href="libgsignon-glib/SignonAuthService.html#SignonAuthService.other_details">
<ANCHOR id="SignonAuthServiceClass" href="libgsignon-glib/SignonAuthService.html#SignonAuthServiceClass">
<ANCHOR id="SignonAuthService-struct" href="libgsignon-glib/SignonAuthService.html#SignonAuthService-struct">
<ANCHOR id="signon-identity-store-credentials-with-info" href="libgsignon-glib/SignonIdentity.html#signon-identity-store-credentials-with-info">
<ANCHOR id="signon-identity-store-credentials-with-args" href="libgsignon-glib/SignonIdentity.html#signon-identity-store-credentials-with-args">
<ANCHOR id="SignonIdentityVerifyCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityVerifyCb">
-<ANCHOR id="signon-identity-verify-secret" href="libgsignon-glib/SignonIdentity.html#signon-identity-verify-secret">
+<ANCHOR id="signon-identity-verify-user" href="libgsignon-glib/SignonIdentity.html#signon-identity-verify-user">
<ANCHOR id="SignonIdentityInfoCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityInfoCb">
<ANCHOR id="signon-identity-query-info" href="libgsignon-glib/SignonIdentity.html#signon-identity-query-info">
<ANCHOR id="signon-identity-remove" href="libgsignon-glib/SignonIdentity.html#signon-identity-remove">
+<ANCHOR id="signon-identity-request-credentials-update" href="libgsignon-glib/SignonIdentity.html#signon-identity-request-credentials-update">
<ANCHOR id="signon-identity-signout" href="libgsignon-glib/SignonIdentity.html#signon-identity-signout">
<ANCHOR id="signon-identity-add-reference" href="libgsignon-glib/SignonIdentity.html#signon-identity-add-reference">
<ANCHOR id="signon-identity-remove-reference" href="libgsignon-glib/SignonIdentity.html#signon-identity-remove-reference">
<ANCHOR id="SignonIdentityClass" href="libgsignon-glib/SignonIdentity.html#SignonIdentityClass">
<ANCHOR id="SignonIdentity-struct" href="libgsignon-glib/SignonIdentity.html#SignonIdentity-struct">
<ANCHOR id="SignonIdentityRemovedCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityRemovedCb">
+<ANCHOR id="SignonIdentityCredentialsUpdatedCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityCredentialsUpdatedCb">
<ANCHOR id="SignonIdentitySignedOutCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentitySignedOutCb">
<ANCHOR id="SignonIdentityReferenceAddedCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityReferenceAddedCb">
<ANCHOR id="SignonIdentityReferenceRemovedCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityReferenceRemovedCb">
<ANCHOR id="SignonIdentity--app-ctx" href="libgsignon-glib/SignonIdentity.html#SignonIdentity--app-ctx">
<ANCHOR id="SignonIdentity--id" href="libgsignon-glib/SignonIdentity.html#SignonIdentity--id">
<ANCHOR id="SignonIdentity.signal-details" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.signal-details">
+<ANCHOR id="SignonIdentity-removed" href="libgsignon-glib/SignonIdentity.html#SignonIdentity-removed">
<ANCHOR id="SignonIdentity-signout" href="libgsignon-glib/SignonIdentity.html#SignonIdentity-signout">
<ANCHOR id="SignonIdentityInfo" href="libgsignon-glib/SignonIdentityInfo.html">
<ANCHOR id="SignonIdentityInfo.functions" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.functions">
</tr>
<tr>
<td class="function_type">
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<span class="returnvalue">GQuark</span>
</td>
<td class="function_name">
<a class="link" href="libgsignon-glib-SignonError.html#signon-error-quark" title="signon_error_quark ()">signon_error_quark</a> <span class="c_punctuation">()</span>
<a name="SIGNON-ERROR:CAPS"></a><h3>SIGNON_ERROR</h3>
<pre class="programlisting">#define SIGNON_ERROR (signon_error_quark())
</pre>
-<p>This macro is used when creating a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> in libgsignond-glib library</p>
+<p>This macro is used when creating a <span class="type">GError</span> in libgsignond-glib library</p>
</div>
<hr>
<div class="refsect2">
<a name="signon-error-quark"></a><h3>signon_error_quark ()</h3>
-<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a>
+<pre class="programlisting"><span class="returnvalue">GQuark</span>
signon_error_quark (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>Creates and returns a domain for gSSO errors.</p>
</div>
<functions>
<keyword type="function" name="SignonQueryMethodsCb ()" link="SignonAuthService.html#SignonQueryMethodsCb"/>
<keyword type="function" name="SignonQueryMechanismCb ()" link="SignonAuthService.html#SignonQueryMechanismCb"/>
+ <keyword type="function" name="SignonClearCb ()" link="SignonAuthService.html#SignonClearCb"/>
<keyword type="function" name="SignonQueryIdentitiesCb ()" link="SignonAuthService.html#SignonQueryIdentitiesCb"/>
<keyword type="function" name="signon_auth_service_new ()" link="SignonAuthService.html#signon-auth-service-new"/>
<keyword type="function" name="signon_auth_service_query_methods ()" link="SignonAuthService.html#signon-auth-service-query-methods"/>
<keyword type="function" name="signon_auth_service_query_mechanisms ()" link="SignonAuthService.html#signon-auth-service-query-mechanisms"/>
<keyword type="function" name="signon_auth_service_query_identities ()" link="SignonAuthService.html#signon-auth-service-query-identities"/>
+ <keyword type="function" name="signon_auth_service_clear ()" link="SignonAuthService.html#signon-auth-service-clear"/>
<keyword type="struct" name="struct SignonAuthServiceClass" link="SignonAuthService.html#SignonAuthServiceClass"/>
<keyword type="struct" name="struct SignonAuthService" link="SignonAuthService.html#SignonAuthService-struct"/>
<keyword type="typedef" name="SignonIdentityList" link="SignonAuthService.html#SignonIdentityList"/>
<keyword type="function" name="signon_identity_store_credentials_with_info ()" link="SignonIdentity.html#signon-identity-store-credentials-with-info"/>
<keyword type="function" name="signon_identity_store_credentials_with_args ()" link="SignonIdentity.html#signon-identity-store-credentials-with-args"/>
<keyword type="function" name="SignonIdentityVerifyCb ()" link="SignonIdentity.html#SignonIdentityVerifyCb"/>
- <keyword type="function" name="signon_identity_verify_secret ()" link="SignonIdentity.html#signon-identity-verify-secret"/>
+ <keyword type="function" name="signon_identity_verify_user ()" link="SignonIdentity.html#signon-identity-verify-user"/>
<keyword type="function" name="SignonIdentityInfoCb ()" link="SignonIdentity.html#SignonIdentityInfoCb"/>
<keyword type="function" name="signon_identity_query_info ()" link="SignonIdentity.html#signon-identity-query-info"/>
<keyword type="function" name="signon_identity_remove ()" link="SignonIdentity.html#signon-identity-remove"/>
+ <keyword type="function" name="signon_identity_request_credentials_update ()" link="SignonIdentity.html#signon-identity-request-credentials-update"/>
<keyword type="function" name="signon_identity_signout ()" link="SignonIdentity.html#signon-identity-signout"/>
<keyword type="function" name="signon_identity_add_reference ()" link="SignonIdentity.html#signon-identity-add-reference"/>
<keyword type="function" name="signon_identity_remove_reference ()" link="SignonIdentity.html#signon-identity-remove-reference"/>
<keyword type="struct" name="struct SignonIdentityClass" link="SignonIdentity.html#SignonIdentityClass"/>
<keyword type="struct" name="struct SignonIdentity" link="SignonIdentity.html#SignonIdentity-struct"/>
<keyword type="typedef" name="SignonIdentityRemovedCb" link="SignonIdentity.html#SignonIdentityRemovedCb"/>
+ <keyword type="typedef" name="SignonIdentityCredentialsUpdatedCb" link="SignonIdentity.html#SignonIdentityCredentialsUpdatedCb"/>
<keyword type="typedef" name="SignonIdentitySignedOutCb" link="SignonIdentity.html#SignonIdentitySignedOutCb"/>
<keyword type="typedef" name="SignonIdentityReferenceAddedCb" link="SignonIdentity.html#SignonIdentityReferenceAddedCb"/>
<keyword type="typedef" name="SignonIdentityReferenceRemovedCb" link="SignonIdentity.html#SignonIdentityReferenceRemovedCb"/>
<keyword type="property" name="The “app-ctx” property" link="SignonIdentity.html#SignonIdentity--app-ctx"/>
<keyword type="property" name="The “id” property" link="SignonIdentity.html#SignonIdentity--id"/>
+ <keyword type="signal" name="The “removed” signal" link="SignonIdentity.html#SignonIdentity-removed"/>
<keyword type="signal" name="The “signout” signal" link="SignonIdentity.html#SignonIdentity-signout"/>
<keyword type="function" name="signon_identity_info_new ()" link="SignonIdentityInfo.html#signon-identity-info-new"/>
<keyword type="function" name="signon_identity_info_free ()" link="SignonIdentityInfo.html#signon-identity-info-free"/>
<div class="titlepage"><div><div><h2 class="title">
<a name="object-tree"></a>Object Hierarchy</h2></div></div></div>
<pre class="screen">
- <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
+ GObject
<span class="lineart">├──</span> <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
<span class="lineart">├──</span> <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
<span class="lineart">╰──</span> <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
SignonAuthService
SignonQueryMethodsCb
SignonQueryMechanismCb
+SignonClearCb
SignonIdentityList
SignonIdentityFilter
SignonQueryIdentitiesCb
signon_auth_service_query_methods
signon_auth_service_query_mechanisms
signon_auth_service_query_identities
+signon_auth_service_clear
<SUBSECTION Standard>
SIGNON_AUTH_SERVICE
SIGNON_AUTH_SERVICE_CLASS
SignonIdentity
SignonIdentityVoidCb
SignonIdentityRemovedCb
+SignonIdentityCredentialsUpdatedCb
SignonIdentitySignedOutCb
SignonIdentityReferenceAddedCb
SignonIdentityReferenceRemovedCb
signon_identity_store_credentials_with_info
signon_identity_store_credentials_with_args
SignonIdentityVerifyCb
-signon_identity_verify_secret
+signon_identity_verify_user
SignonIdentityInfoCb
signon_identity_query_info
signon_identity_remove
+signon_identity_request_credentials_update
signon_identity_signout
signon_identity_add_reference
signon_identity_remove_reference
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
-pluginlibdir=@pluginlibdir@
Name: libgsignon-glib
Description: A low-level library for managing account credentials.
signon-enum-types.h \
signon-glib.h \
signon-types.h \
+ signon-utils.h \
$(signon_headers)
# Headers with enums to be parsed with glib-mkenums;
signon-enum-types.h \
signon-glib.h \
signon-types.h \
+ signon-utils.h \
$(signon_headers)
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2012 Canonical Ltd.
+ * Copyright (C) 2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
+ * Contact: Jussi Laako <jussi.laako@linux.intel.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
gpointer userdata;
} IdentityCbData;
+typedef struct _ClearCbData
+{
+ SignonAuthService *service;
+ SignonClearCb cb;
+ gpointer userdata;
+} ClearCbData;
+
#define SIGNON_AUTH_SERVICE_PRIV(obj) (SIGNON_AUTH_SERVICE(obj)->priv)
static void
cb_data);
}
+
+static void
+auth_clear_cb (GObject *object, GAsyncResult *res, gpointer user_data)
+{
+ SsoAuthService *proxy = SSO_AUTH_SERVICE (object);
+ ClearCbData *data = (ClearCbData*)user_data;
+ gboolean value = FALSE;
+ GError *error = NULL;
+
+ g_return_if_fail (data != NULL);
+
+ sso_auth_service_call_clear_finish (proxy, &value, res, &error);
+ (data->cb)
+ (data->service, value, error, data->userdata);
+
+ g_clear_error (&error);
+ g_slice_free (ClearCbData, data);
+}
+
+/**
+ * SignonClearCb:
+ * @auth_service: the #SignonAuthService.
+ * @success: TRUE if clear succeeded.
+ * @error: a #GError if an error occurred, %NULL otherwise.
+ * @user_data: the user data that was passed when installing this callback.
+ *
+ * Callback to be passed to signon_auth_service_clear().
+ */
+
+/**
+ * signon_auth_service_clear:
+ * @auth_service: the #SignonAuthService.
+ * @cb: (scope async): callback to be invoked.
+ * @user_data: user data.
+ *
+ * Clears / wipes out all stored data.
+ */
+void
+signon_auth_service_clear (SignonAuthService *auth_service,
+ SignonClearCb cb,
+ gpointer user_data)
+{
+ SignonAuthServicePrivate *priv;
+
+ g_return_if_fail (SIGNON_IS_AUTH_SERVICE (auth_service));
+ g_return_if_fail (cb != NULL);
+ priv = SIGNON_AUTH_SERVICE_PRIV (auth_service);
+
+ ClearCbData *cb_data;
+ cb_data = g_slice_new (ClearCbData);
+ cb_data->service = auth_service;
+ cb_data->cb = cb;
+ cb_data->userdata = user_data;
+
+ sso_auth_service_call_clear (priv->proxy,
+ priv->cancellable,
+ auth_clear_cb,
+ cb_data);
+}
+
* This file is part of libgsignon-glib
*
* Copyright (C) 2009-2010 Nokia Corporation.
+ * Copyright (C) 2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@nokia.com>
+ * Contact: Jussi Laako <jussi.laako@linux.intel.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
const GError *error,
gpointer user_data);
+typedef void (*SignonClearCb) (SignonAuthService *auth_service,
+ gboolean success,
+ const GError *error,
+ gpointer user_data);
+
/**
* SignonIdentityList:
*
SignonQueryIdentitiesCb cb,
gpointer user_data);
+void signon_auth_service_clear (SignonAuthService *auth_service,
+ SignonClearCb cb,
+ gpointer user_data);
+
G_END_DECLS
#endif /* _SIGNON_AUTH_SERVICE_H_ */
SIGNON_POLICY_NO_USER_INTERACTION,
SIGNON_POLICY_VALIDATION,
} SignonSessionDataUiPolicy;
+
+/**
+ * SignonAuthSessionState:
+ *
+ * @SIGNON_AUTH_SESSION_STATE_NOT_STARTED: No message.
+ * @SIGNON_AUTH_SESSION_STATE_RESOLVING_HOST: Resolving remote server host name.
+ * @SIGNON_AUTH_SESSION_STATE_CONNECTING: Connecting to remote server.
+ * @SIGNON_AUTH_SESSION_STATE_SENDING_DATA: Sending data to remote server.
+ * @SIGNON_AUTH_SESSION_STATE_WAITING_REPLY: Waiting reply from remote server.
+ * @SIGNON_AUTH_SESSION_STATE_USER_PENDING: Waiting response from user.
+ * @SIGNON_AUTH_SESSION_STATE_UI_REFRESHING: Refreshing ui request.
+ * @SIGNON_AUTH_SESSION_STATE_PROCESS_PENDING: Waiting another process to start.
+ * @SIGNON_AUTH_SESSION_STATE_STARTED: Authentication session is started.
+ * @SIGNON_AUTH_SESSION_STATE_PROCESS_CANCELING: Canceling.current process.
+ * @SIGNON_AUTH_SESSION_STATE_PROCESS_DONE: Authentication completed.
+ * @SIGNON_AUTH_SESSION_STATE_CUSTOM: Custom message.
+ * @SIGNON_AUTH_SESSION_STATE_LAST: Indicator for last item.
+ *
+ * State change signals emitted as the request processing proceeds.
+ */
+enum SignonAuthSessionState {
+ SIGNON_AUTH_SESSION_STATE_NOT_STARTED = 0,
+ SIGNON_AUTH_SESSION_STATE_RESOLVING_HOST,
+ SIGNON_AUTH_SESSION_STATE_CONNECTING,
+ SIGNON_AUTH_SESSION_STATE_SENDING_DATA,
+ SIGNON_AUTH_SESSION_STATE_WAITING_REPLY,
+ SIGNON_AUTH_SESSION_STATE_USER_PENDING,
+ SIGNON_AUTH_SESSION_STATE_UI_REFRESHING,
+ SIGNON_AUTH_SESSION_STATE_PROCESS_PENDING,
+ SIGNON_AUTH_SESSION_STATE_STARTED,
+ SIGNON_AUTH_SESSION_STATE_PROCESS_CANCELING,
+ SIGNON_AUTH_SESSION_STATE_PROCESS_DONE,
+ SIGNON_AUTH_SESSION_STATE_CUSTOM,
+ SIGNON_AUTH_SESSION_STATE_LAST
+};
+
+
/**
* SIGNON_SESSION_DATA_UI_POLICY:
* @see_also: #SignonSessionDataUiPolicy
enum {
SIGNEDOUT_SIGNAL,
+ REMOVED_SIGNAL,
LAST_SIGNAL
};
typedef struct _IdentityVerifyCbData
{
SignonIdentity *self;
+ GVariant *args;
SignonIdentityVerifyCb cb;
gpointer user_data;
} IdentityVerifyCbData;
gpointer user_data;
} IdentityInfoCbData;
+typedef struct _IdentityCredentialsUpdateCbData
+{
+ SignonIdentity *self;
+ gchar *message;
+ SignonIdentityVoidCb cb;
+ gpointer user_data;
+} IdentityCredentialsUpdateCbData;
+
typedef struct _IdentityVoidCbData
{
SignonIdentity *self;
static void identity_store_credentials_reply (GObject *object,
GAsyncResult *res,
gpointer userdata);
-static void identity_verify_data (SignonIdentity *self, const gchar *data_to_send, gint operation,
- SignonIdentityVerifyCb cb, gpointer user_data);
static void identity_verify_ready_cb (gpointer object, const GError *error, gpointer user_data);
static void identity_remove_ready_cb (gpointer object, const GError *error, gpointer user_data);
+static void identity_credentials_update_ready_cb (gpointer object, const GError *error, gpointer user_data);
static void identity_signout_ready_cb (gpointer object, const GError *error, gpointer user_data);
static void identity_info_ready_cb (gpointer object, const GError *error, gpointer user_data);
g_cclosure_marshal_VOID__VOID,
G_TYPE_NONE /* return_type */,
0);
+ /**
+ * SignonIdentity::removed:
+ *
+ * Emitted when the identity was removed (deleted).
+ */
+ signals[REMOVED_SIGNAL] = g_signal_new("removed",
+ G_TYPE_FROM_CLASS (klass),
+ G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS,
+ 0,
+ NULL,
+ NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE,
+ 0);
object_class->dispose = signon_identity_dispose;
object_class->finalize = signon_identity_finalize;
g_return_if_fail (cb_data != NULL);
g_return_if_fail (cb_data->self != NULL);
- sso_identity_call_verify_secret_finish (proxy, &valid, res, &error);
+ sso_identity_call_verify_user_finish (proxy, &valid, res, &error);
if (SIGNON_IS_NOT_CANCELLED (error) && cb_data->cb)
{
}
g_clear_error(&error);
+ g_variant_unref (cb_data->args);
g_slice_free (IdentityVerifyCbData, cb_data);
}
DEBUG ("%s %d", G_STRFUNC, __LINE__);
- IdentityVerifyData *operation_data =
- (IdentityVerifyData *)user_data;
- g_return_if_fail (operation_data != NULL);
-
- IdentityVerifyCbData *cb_data = operation_data->cb_data;
+ IdentityVerifyCbData *cb_data = (IdentityVerifyCbData *)user_data;
g_return_if_fail (cb_data != NULL);
if (priv->removed == TRUE)
}
g_error_free (new_error);
+ g_variant_unref (cb_data->args);
g_slice_free (IdentityVerifyCbData, cb_data);
}
else if (error)
(cb_data->cb) (self, FALSE, error, cb_data->user_data);
}
+ g_variant_unref (cb_data->args);
g_slice_free (IdentityVerifyCbData, cb_data);
}
else
{
- DEBUG ("%s %d", G_STRFUNC, __LINE__);
g_return_if_fail (priv->proxy != NULL);
- switch (operation_data->operation) {
- case SIGNON_VERIFY_SECRET:
- sso_identity_call_verify_secret (priv->proxy,
- operation_data->data_to_send,
- priv->cancellable,
- identity_verify_reply,
- cb_data);
- break;
- default: g_critical ("Wrong operation code");
- };
+ sso_identity_call_verify_user (priv->proxy,
+ cb_data->args,
+ priv->cancellable,
+ identity_verify_reply,
+ cb_data);
}
- g_free (operation_data->params);
- g_free (operation_data->data_to_send);
- g_slice_free (IdentityVerifyData, operation_data);
}
-static void
-identity_verify_data(SignonIdentity *self,
- const gchar *data_to_send,
- gint operation,
- SignonIdentityVerifyCb cb,
- gpointer user_data)
+/**
+ * signon_identity_verify_user:
+ * @self: the #SignonIdentity.
+ * @args: optional extra arguments (vardict) controlling SignOn UI.
+ * @cb: (scope async): callback.
+ * @user_data: user_data.
+ *
+ * Asks user to enter his credentials to verify the current user.
+ */
+void signon_identity_verify_user(SignonIdentity *self,
+ GVariant *args,
+ SignonIdentityVerifyCb cb,
+ gpointer user_data)
{
g_return_if_fail (SIGNON_IS_IDENTITY (self));
IdentityVerifyCbData *cb_data = g_slice_new0 (IdentityVerifyCbData);
cb_data->self = self;
+ cb_data->args = g_variant_ref_sink (args);
cb_data->cb = cb;
cb_data->user_data = user_data;
- IdentityVerifyData *operation_data = g_slice_new0 (IdentityVerifyData);
-
- operation_data->params = NULL;
- operation_data->data_to_send = g_strdup (data_to_send);
- operation_data->operation = operation;
- operation_data->cb_data = cb_data;
-
identity_check_remote_registration (self);
_signon_object_call_when_ready (self,
identity_object_quark(),
identity_verify_ready_cb,
- operation_data);
-}
-
-/**
- * signon_identity_verify_secret:
- * @self: the #SignonIdentity.
- * @secret: the secret (password) to be verified.
- * @cb: (scope async): callback.
- * @user_data: user_data.
- *
- * Verifies the given secret. Not currently supported by gSSO.
- */
-void signon_identity_verify_secret(SignonIdentity *self,
- const gchar *secret,
- SignonIdentityVerifyCb cb,
- gpointer user_data)
-{
- identity_verify_data (self,
- secret,
- SIGNON_VERIFY_SECRET,
- cb,
- user_data);
+ cb_data);
}
static void
g_object_set (self, "id", 0, NULL);
priv->id = 0;
+ g_signal_emit(G_OBJECT(self), signals[REMOVED_SIGNAL], 0);
}
static void
g_slice_free (IdentityVoidCbData, cb_data);
}
+static void
+identity_credentials_updated_reply (GObject *object, GAsyncResult *res,
+ gpointer userdata)
+{
+ SsoIdentity *proxy = SSO_IDENTITY (object);
+ guint result;
+ GError *error = NULL;
+ IdentityCredentialsUpdateCbData *cb_data =
+ (IdentityCredentialsUpdateCbData *)userdata;
+
+ g_return_if_fail (cb_data != NULL);
+ g_return_if_fail (cb_data->self != NULL);
+ g_return_if_fail (cb_data->self->priv != NULL);
+
+ sso_identity_call_request_credentials_update_finish (proxy, &result,
+ res, &error);
+ if (SIGNON_IS_NOT_CANCELLED (error) && cb_data->cb)
+ {
+ (cb_data->cb) (cb_data->self, error, cb_data->user_data);
+ }
+
+ g_clear_error (&error);
+ g_free (cb_data->message);
+ g_slice_free (IdentityCredentialsUpdateCbData, cb_data);
+}
+
static void
identity_removed_reply (GObject *object, GAsyncResult *res,
gpointer userdata)
}
}
+void static
+identity_credentials_update_ready_cb(gpointer object, const GError *error, gpointer user_data)
+{
+ g_return_if_fail (SIGNON_IS_IDENTITY (object));
+
+ SignonIdentity *self = SIGNON_IDENTITY (object);
+ SignonIdentityPrivate *priv = self->priv;
+ g_return_if_fail (priv != NULL);
+
+ DEBUG ("%s %d", G_STRFUNC, __LINE__);
+ IdentityCredentialsUpdateCbData *cb_data =
+ (IdentityCredentialsUpdateCbData *)user_data;
+ g_return_if_fail (cb_data != NULL);
+
+ if (priv->removed == TRUE)
+ {
+ GError *new_error = g_error_new (signon_error_quark(),
+ SIGNON_ERROR_IDENTITY_NOT_FOUND,
+ "Already removed from database.");
+ if (cb_data->cb)
+ {
+ (cb_data->cb) (self, new_error, cb_data->user_data);
+ }
+
+ g_error_free (new_error);
+ g_free (cb_data->message);
+ g_slice_free (IdentityCredentialsUpdateCbData, cb_data);
+ }
+ if (error)
+ {
+ DEBUG ("IdentityError: %s", error->message);
+
+ if (cb_data->cb)
+ {
+ (cb_data->cb) (self, error, cb_data->user_data);
+ }
+
+ g_free (cb_data->message);
+ g_slice_free (IdentityCredentialsUpdateCbData, cb_data);
+ }
+ else
+ {
+ g_return_if_fail (priv->proxy != NULL);
+ sso_identity_call_request_credentials_update (priv->proxy,
+ cb_data->message,
+ priv->cancellable,
+ identity_credentials_updated_reply,
+ cb_data);
+ }
+}
+
void static
identity_void_operation(SignonIdentity *self,
gint operation,
cb_data);
}
+/**
+ * signon_identity_request_credentials_update:
+ * @self: the #SignonIdentity.
+ * @message: message to be displayed to the user.
+ * @cb: (scope async): callback to be called when the operation has completed.
+ * @user_data: user_data to pass to the callback.
+ *
+ * Requests user to re-enter his credentials.
+ */
+void signon_identity_request_credentials_update(SignonIdentity *self,
+ const gchar *message,
+ SignonIdentityCredentialsUpdatedCb cb,
+ gpointer user_data)
+{
+ g_return_if_fail (SIGNON_IS_IDENTITY (self));
+
+ SignonIdentityPrivate *priv = self->priv;
+ g_return_if_fail (priv != NULL);
+
+ IdentityCredentialsUpdateCbData *cb_data =
+ g_slice_new0 (IdentityCredentialsUpdateCbData);
+ cb_data->self = self;
+ cb_data->message = g_strdup (message);
+ cb_data->cb = (SignonIdentityVoidCb)cb;
+ cb_data->user_data = user_data;
+
+ DEBUG ("%s %d", G_STRFUNC, __LINE__);
+
+ identity_check_remote_registration (self);
+ _signon_object_call_when_ready (self,
+ identity_object_quark(),
+ identity_credentials_update_ready_cb,
+ cb_data);
+}
+
/**
* signon_identity_signout:
* @self: the #SignonIdentity.
* Callback to be passed to signon_identity_remove().
*/
typedef SignonIdentityVoidCb SignonIdentityRemovedCb;
+/**
+ * SignonIdentityCredentialsUpdatedCb:
+ *
+ * Callback to be passed to signon_identity_request_credentials_update().
+ */
+typedef SignonIdentityVoidCb SignonIdentityCredentialsUpdatedCb;
/**
* SignonIdentitySignedOutCb:
*
/**
* SignonIdentityVerifyCb:
* @self: the #SignonIdentity.
- * @valid: whether the secret is valid.
+ * @valid: whether the verification succeeded.
* @error: a #GError if an error occurred, or %NULL otherwise.
* @user_data: the user data that was passed when installing this callback.
*
- * Callback to be passed to signon_identity_verify_secret().
+ * Callback to be passed to signon_identity_verify_user().
*/
typedef void (*SignonIdentityVerifyCb) (SignonIdentity *self,
gboolean valid,
const GError *error,
gpointer user_data);
-void signon_identity_verify_secret(SignonIdentity *self,
- const gchar *secret,
- SignonIdentityVerifyCb cb,
- gpointer user_data);
+void signon_identity_verify_user(SignonIdentity *self,
+ GVariant *args,
+ SignonIdentityVerifyCb cb,
+ gpointer user_data);
/**
* SignonIdentityInfoCb:
SignonIdentityRemovedCb cb,
gpointer user_data);
+void signon_identity_request_credentials_update(SignonIdentity *self,
+ const gchar *message,
+ SignonIdentityCredentialsUpdatedCb cb,
+ gpointer user_data);
+
void signon_identity_signout(SignonIdentity *self,
SignonIdentitySignedOutCb cb,
gpointer user_data);
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2012 Canonical Ltd.
- * Copyright (C) 2012 Intel Corporation.
+ * Copyright (C) 2012-2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
* Contact: Jussi Laako <jussi.laako@linux.intel.com>
G_BEGIN_DECLS
-enum SignonAuthSessionState {
- SIGNON_AUTH_SESSION_STATE_NOT_STARTED = 0, /**< No message. */
- SIGNON_AUTH_SESSION_STATE_RESOLVING_HOST, /**< Resolving remote server
- host name. */
- SIGNON_AUTH_SESSION_STATE_CONNECTING, /**< Connecting to remote
- server. */
- SIGNON_AUTH_SESSION_STATE_SENDING_DATA, /**< Sending data to remote
- server. */
- SIGNON_AUTH_SESSION_STATE_WAITING_REPLY, /**< Waiting reply from remote
- server. */
- SIGNON_AUTH_SESSION_STATE_USER_PENDING, /**< Waiting response from
- user. */
- SIGNON_AUTH_SESSION_STATE_UI_REFRESHING, /**< Refreshing ui request. */
- SIGNON_AUTH_SESSION_STATE_PROCESS_PENDING, /**< Waiting another process
- to start. */
- SIGNON_AUTH_SESSION_STATE_STARTED, /**< Authentication session is
- started. */
- SIGNON_AUTH_SESSION_STATE_PROCESS_CANCELING, /**< Canceling.current
- process. */
- SIGNON_AUTH_SESSION_STATE_PROCESS_DONE, /**< Authentication
- completed. */
- SIGNON_AUTH_SESSION_STATE_CUSTOM, /**< Custom message. */
- SIGNON_AUTH_SESSION_STATE_LAST
-};
-
struct _SignonIdentityInfo
{
gint id;
#include "signon-utils.h"
#include <gio/gio.h>
-static const GVariantType *
+const GVariantType *
signon_gtype_to_variant_type (GType type)
{
switch (type)
#include <glib-object.h>
+G_BEGIN_DECLS
+
#define SIGNON_IS_NOT_CANCELLED(error) \
(error == NULL || \
error->domain != G_IO_ERROR || \
error->code != G_IO_ERROR_CANCELLED)
-G_GNUC_INTERNAL
+const GVariantType *signon_gtype_to_variant_type (GType type);
GValue *signon_gvalue_new (GType type);
-G_GNUC_INTERNAL
void signon_gvalue_free (gpointer val);
-G_GNUC_INTERNAL
GHashTable *signon_hash_table_from_variant (GVariant *variant);
-G_GNUC_INTERNAL
GVariant *signon_hash_table_to_variant (GHashTable *hash_table);
+G_END_DECLS
+
#endif //_SIGNON_UTILS_H_
+++ /dev/null
-* Thu Mar 06 2014 Jussi Laako <jussi.laako@linux.intel.com>
-- Release 2.1.0 including API alignment with libsignon-glib
-
-* Mon Nov 25 2013 Imran Zaman <imran.zaman@intel.com>
-- Release 2.0.3 that fixes unit test and spec file bugs
-
-* Fri Nov 22 2013 Imran Zaman <imran.zaman@intel.com>
-- Release 2.0.2 that fixes package licensing info and added docs
-
-* Mon Jun 24 2013 Imran Zaman <imran.zaman@intel.com>
-- Release 2.0.1 that comprises of bug fixes
-
-* Mon Jun 17 2013 Imran Zaman <imran.zaman@.intel.com> - 2.0.0
-- Prepare for first release of libgsignon-glib 2.0.0
+++ /dev/null
-<manifest>
- <request>
- <domain name="_"/>
- </request>
-</manifest>
+++ /dev/null
-#define dbus bus type to use [p2p, session, system]
-%define dbus_type p2p
-
-Name: libgsignon-glib
-Summary: GLib API for the SSO framework
-Version: 2.1.0
-Release: 2
-Group: Security/Accounts
-License: LGPL-2.1
-Source: %{name}-%{version}.tar.gz
-Source1: %{name}.manifest
-URL: https://01.org/gsso
-Requires: dbus-1
-Requires: gsignon
-Requires(post): /sbin/ldconfig
-Requires(postun): /sbin/ldconfig
-BuildRequires: pkgconfig(check)
-BuildRequires: pkgconfig(glib-2.0)
-BuildRequires: pkgconfig(gobject-2.0)
-BuildRequires: pkgconfig(gio-2.0)
-
-%description
-%{summary}.
-
-
-%package devel
-Summary: Development files for %{name}
-Group: SDK/Libraries
-Requires: %{name} = %{version}-%{release}
-
-%description devel
-%{summary}.
-
-
-%package doc
-Summary: Documentation files for %{name}
-Group: SDK/Documentation
-Requires: %{name}-devel = %{version}-%{release}
-
-%description doc
-%{summary}.
-
-
-%prep
-%setup -q -n %{name}-%{version}
-cp %{SOURCE1} .
-
-
-%build
-%configure --enable-dbus-type=%{dbus_type}
-make %{?_smp_mflags}
-
-
-%install
-rm -rf %{buildroot}
-%make_install
-
-
-%post -p /sbin/ldconfig
-
-
-%postun -p /sbin/ldconfig
-
-
-%files
-%defattr(-,root,root,-)
-%manifest %{name}.manifest
-%doc AUTHORS COPYING ChangeLog INSTALL NEWS README
-%{_libdir}/%{name}.so.*
-
-
-%files devel
-%defattr(-,root,root,-)
-%manifest %{name}.manifest
-%{_includedir}/%{name}/*.h
-%{_libdir}/%{name}.so
-%{_libdir}/pkgconfig/%{name}.pc
-%{_bindir}/gsso-example
-
-
-%files doc
-%defattr(-,root,root,-)
-%{_datadir}/gtk-doc/html/%{name}/*
-
dbus-test-runner -m 180 -t gsignond \
-t "$TEST_APP" -f com.google.code.AccountsSSO.gSingleSignOn
else
- echo "Using existing D-Bus session"
+ #echo "Using existing D-Bus session"
#pkill gsignond || true
#trap "pkill -9 gsignond" EXIT
#gsignond &
mkdir -p $2 && \
cd $2 && \
-git rm -r *; rm -rf packaging;
+git rm -f -r *; rm -rf packaging;
tar -xzvf $1 -C $2 --strip-components 1 && \
mkdir -p packaging && \
cp -f dists/rpm/libgsignon-glib-tizen.spec packaging/libgsignon-glib.spec && \