gtk-doc.make
examples/gsso-example
/INSTALL
-/libgsignon-glib/signon-errors-map.c
-/libgsignon-glib/signon-marshal.c
-/libgsignon-glib/signon-marshal.h
-/libgsignon-glib/sso-*-gen.*
-/libgsignon-glib/sso-*-gen-doc-*
libtool
m4/gtk-doc.m4
m4/libtool.m4
+2014-03-06 Jussi Laako <jussi.laako@linux.intel.com>
+
+Release 2.1.0
+
+2014-03-06 Jussi Laako <jussi.laako@linux.intel.com>
+
+identity-info: copy-before-free
+
+2014-03-05 Jussi Laako <jussi.laako@linux.intel.com>
+
+Remove const from GLib containers, since GLib container APIs only deal with non-const containers
+
+2014-03-04 Alexander Kanavin <alex.kanavin@gmail.com>
+
+tests: fix compiler warnings
+
+2014-03-04 Alexander Kanavin <alex.kanavin@gmail.com>
+
+example: fix compiler warnings
+
+2014-03-04 Alexander Kanavin <alex.kanavin@gmail.com>
+
+Remove some const-ness in parameters to avoid casts in clients
+
+2014-03-04 Aleksander Zdyb <a.zdyb@partner.samsung.com>
+
+Add examples for managing identity's ACL
+
+Show how to:
+* list identity's ACL
+* add new security context to ACL
+* remove security context from ACL
+
+New commandline arguments are:
+* --add-context (takes context with --context)
+* --remove-context (takes context with --context)
+
+Option --query-identities now shows ACL for each identity
+
+2014-03-03 Jussi Laako <jussi.laako@linux.intel.com>
+
+identity: fix a bug and use local copy of identity info when performing store
+
+2014-02-20 Alexander Kanavin <alex.kanavin@gmail.com>
+
+When making a variant from identity info, only include non-null or non-empty fields
+
+2014-02-19 Alexander Kanavin <alexander.kanavin@intel.com>
+
+Always set store_secret flag when creating identity from variant
+
+2014-02-17 Alexander Kanavin <alexander.kanavin@intel.com>
+
+docs: fix GSignonPlugin's signal name
+
+2014-01-31 Jussi Laako <jussi.laako@linux.intel.com>
+
+auth-session: simplify and reduce amount of identical code
+
+2014-01-31 Jussi Laako <jussi.laako@linux.intel.com>
+
+packaging: update debian changelog
+
+2014-01-31 Alberto Mardegan <alberto.mardegan@canonical.com>
+
+AuthSession: bring back libsignon-glib -compatible constructor
+
+Reintroduce the constructor which takes an integer parameter, to
+increase compatibility with libsignon-glib, and rename the existing
+constructor to signon_auth_session_new_for_identity().
+Also, declare a couple of types in signon-types.h, so that the signature
+of the signon_auth_session_new_for_identity() can now properly accept a
+SignonIdentity * (same trick used in libaccounts-glib).
+
+2014-01-31 Alberto Mardegan <alberto.mardegan@canonical.com>
+
+Identity: add constructors compatible with libsignon-glib
+
+Restore the constructors to the original form, in order to reduce the
+differences with libsignon-glib; add a "_with_context" tag to the
+constructors which take the additional application context parameter.
+
+2013-12-20 Alexander Kanavin <alexander.kanavin@intel.com>
+
+Add a lcov recipe to Makefile.am
+
+2013-12-09 Alexander Kanavin <alexander.kanavin@intel.com>
+
+Tweaks to SignonAuthSession docs
+
+2013-12-05 Alexander Kanavin <alexander.kanavin@intel.com>
+
+Update the example to use allowed realms
+
+2013-12-04 Jussi Laako <jussi.laako@linux.intel.com>
+
+debian: optional rule to build debug version
+
2013-11-25 Imran Zaman <imran.zaman@intel.com>
Release 2.0.3
git commit -m "Updated documentation for $(PACKAGE) to version $(VERSION)" && \
git push ; \
popd > /dev/null && \
- rm -rf $(PACKAGE)-$(VERSION)
\ No newline at end of file
+ rm -rf $(PACKAGE)-$(VERSION)
+
+lcov: check
+ @rm -rf lcov-report
+ @lcov -c --directory libgsignon-glib/ --output-file lcov.output
+ @genhtml lcov.output --output-directory lcov-report
+ @rm lcov.output
+ @echo "Coverage report is in file://$(abs_srcdir)/lcov-report/index.html"
\ No newline at end of file
popd > /dev/null && \
rm -rf $(PACKAGE)-$(VERSION)
+lcov: check
+ @rm -rf lcov-report
+ @lcov -c --directory libgsignon-glib/ --output-file lcov.output
+ @genhtml lcov.output --output-directory lcov-report
+ @rm lcov.output
+ @echo "Coverage report is in file://$(abs_srcdir)/lcov-report/index.html"
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
# Wrapper for Microsoft lib.exe
me=ar-lib
-scriptversion=2012-01-30.22; # UTC
+scriptversion=2012-03-01.08; # UTC
-# Copyright (C) 2010, 2012 Free Software Foundation, Inc.
+# Copyright (C) 2010-2012 Free Software Foundation, Inc.
# Written by Peter Rosin <peda@lysator.liu.se>.
#
# This program is free software; you can redistribute it and/or modify
delete=
extract=
list=
+quick=
replace=
+index=
create=
while test -n "$action"
d*) delete=yes ;;
x*) extract=yes ;;
t*) list=yes ;;
+ q*) quick=yes ;;
r*) replace=yes ;;
+ s*) index=yes ;;
+ S*) ;; # the index is always updated implicitly
c*) create=yes ;;
u*) ;; # TODO: don't ignore the update modifier
v*) ;; # TODO: don't ignore the verbose modifier
action=${action#?}
done
-case $delete$extract$list$replace in
- yes)
+case $delete$extract$list$quick$replace,$index in
+ yes,* | ,yes)
;;
yesyes*)
func_error "more than one action specified"
done
fi
-elif test -n "$replace"; then
+elif test -n "$quick$replace"; then
if test ! -f "$orig_archive"; then
if test -z "$create"; then
echo "$me: creating $orig_archive"
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
-scriptversion=2012-01-04.17; # UTC
+scriptversion=2012-03-05.13; # UTC
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 Free
-# Software Foundation, Inc.
+# Copyright (C) 1999-2012 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
esac
}
+# func_cl_dashL linkdir
+# Make cl look for libraries in LINKDIR
+func_cl_dashL ()
+{
+ func_file_conv "$1"
+ if test -z "$lib_path"; then
+ lib_path=$file
+ else
+ lib_path="$lib_path;$file"
+ fi
+ linker_opts="$linker_opts -LIBPATH:$file"
+}
+
+# func_cl_dashl library
+# Do a library search-path lookup for cl
+func_cl_dashl ()
+{
+ lib=$1
+ found=no
+ save_IFS=$IFS
+ IFS=';'
+ for dir in $lib_path $LIB
+ do
+ IFS=$save_IFS
+ if $shared && test -f "$dir/$lib.dll.lib"; then
+ found=yes
+ lib=$dir/$lib.dll.lib
+ break
+ fi
+ if test -f "$dir/$lib.lib"; then
+ found=yes
+ lib=$dir/$lib.lib
+ break
+ fi
+ done
+ IFS=$save_IFS
+
+ if test "$found" != yes; then
+ lib=$lib.lib
+ fi
+}
+
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
;;
esac
;;
+ -I)
+ eat=1
+ func_file_conv "$2" mingw
+ set x "$@" -I"$file"
+ shift
+ ;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
+ -l)
+ eat=1
+ func_cl_dashl "$2"
+ set x "$@" "$lib"
+ shift
+ ;;
-l*)
- lib=${1#-l}
- found=no
- save_IFS=$IFS
- IFS=';'
- for dir in $lib_path $LIB
- do
- IFS=$save_IFS
- if $shared && test -f "$dir/$lib.dll.lib"; then
- found=yes
- set x "$@" "$dir/$lib.dll.lib"
- break
- fi
- if test -f "$dir/$lib.lib"; then
- found=yes
- set x "$@" "$dir/$lib.lib"
- break
- fi
- done
- IFS=$save_IFS
-
- test "$found" != yes && set x "$@" "$lib.lib"
+ func_cl_dashl "${1#-l}"
+ set x "$@" "$lib"
shift
;;
+ -L)
+ eat=1
+ func_cl_dashL "$2"
+ ;;
-L*)
- func_file_conv "${1#-L}"
- if test -z "$lib_path"; then
- lib_path=$file
- else
- lib_path="$lib_path;$file"
- fi
- linker_opts="$linker_opts -LIBPATH:$file"
+ func_cl_dashL "${1#-L}"
;;
-static)
shared=false
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+case "${UNAME_MACHINE}" in
+ i?86)
+ test -z "$VENDOR" && VENDOR=pc
+ ;;
+ *)
+ test -z "$VENDOR" && VENDOR=unknown
+ ;;
+esac
+test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse
+
# Note: order is significant - the case branches are not exclusive.
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
exit ;;
*:OpenBSD:*:*)
UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+ echo ${UNAME_MACHINE_ARCH}-${VENDOR}-openbsd${UNAME_RELEASE}
exit ;;
*:ekkoBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ echo ${UNAME_MACHINE}-${VENDOR}-ekkobsd${UNAME_RELEASE}
exit ;;
*:SolidBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+ echo ${UNAME_MACHINE}-${VENDOR}-solidbsd${UNAME_RELEASE}
exit ;;
macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+ echo powerpc-${VENDOR}-mirbsd${UNAME_RELEASE}
exit ;;
*:MirBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ echo ${UNAME_MACHINE}-${VENDOR}-mirbsd${UNAME_RELEASE}
exit ;;
alpha:OSF1:*:*)
case $UNAME_RELEASE in
echo alpha-dec-winnt3.5
exit ;;
Amiga*:UNIX_System_V:4.0:*)
- echo m68k-unknown-sysv4
+ echo m68k-${VENDOR}-sysv4
exit ;;
*:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
+ echo ${UNAME_MACHINE}-${VENDOR}-amigaos
exit ;;
*:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
+ echo ${UNAME_MACHINE}-${VENDOR}-morphos
exit ;;
*:OS/390:*:*)
echo i370-ibm-openedition
echo arm-acorn-riscix${UNAME_RELEASE}
exit ;;
arm:riscos:*:*|arm:RISCOS:*:*)
- echo arm-unknown-riscos
+ echo arm-${VENDOR}-riscos
exit ;;
SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
echo m68k-hades-mint${UNAME_RELEASE}
exit ;;
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
+ echo m68k-${VENDOR}-mint${UNAME_RELEASE}
exit ;;
m68k:machten:*:*)
echo m68k-apple-machten${UNAME_RELEASE}
exit ;;
i*86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
+ echo ${UNAME_MACHINE}-${VENDOR}-osf1mk
else
- echo ${UNAME_MACHINE}-unknown-osf1
+ echo ${UNAME_MACHINE}-${VENDOR}-osf1
fi
exit ;;
parisc*:Lites*:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit ;;
sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
+ echo sparc-${VENDOR}-bsdi${UNAME_RELEASE}
exit ;;
*:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+ echo ${UNAME_MACHINE}-${VENDOR}-bsdi${UNAME_RELEASE}
exit ;;
*:FreeBSD:*:*)
UNAME_PROCESSOR=`/usr/bin/uname -p`
case ${UNAME_PROCESSOR} in
amd64)
- echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ echo x86_64-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
*)
- echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ echo ${UNAME_PROCESSOR}-${VENDOR}-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
esac
exit ;;
i*:CYGWIN*:*)
echo i586-pc-interix${UNAME_RELEASE}
exit ;;
authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix${UNAME_RELEASE}
+ echo x86_64-${VENDOR}-interix${UNAME_RELEASE}
exit ;;
IA64)
- echo ia64-unknown-interix${UNAME_RELEASE}
+ echo ia64-${VENDOR}-interix${UNAME_RELEASE}
exit ;;
esac ;;
[345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
echo ${UNAME_MACHINE}-pc-uwin
exit ;;
amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-unknown-cygwin
+ echo x86_64-${VENDOR}-cygwin
exit ;;
p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
+ echo powerpcle-${VENDOR}-cygwin
exit ;;
prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ echo powerpcle-${VENDOR}-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
*:GNU:*:*)
# the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-${VENDOR}-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit ;;
*:GNU/*:*:*)
# other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
exit ;;
i*86:Minix:*:*)
echo ${UNAME_MACHINE}-pc-minix
exit ;;
aarch64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
aarch64_be:Linux:*:*)
UNAME_MACHINE=aarch64_be
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
alpha:Linux:*:*)
case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
esac
objdump --private-headers /bin/sh | grep -q ld.so.1
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu${LIBC}
exit ;;
arm*:Linux:*:*)
eval $set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_EABI__
then
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
else
if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
| grep -q __ARM_PCS_VFP
then
- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnueabi
else
- echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnueabihf
fi
fi
exit ;;
avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
cris:Linux:*:*)
echo ${UNAME_MACHINE}-axis-linux-gnu
echo ${UNAME_MACHINE}-axis-linux-gnu
exit ;;
frv:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
hexagon:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
i*86:Linux:*:*)
LIBC=gnu
echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
exit ;;
ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
mips:Linux:*:* | mips64:Linux:*:*)
eval $set_cc_for_build
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+ test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux-gnu"; exit; }
;;
or32:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
padre:Linux:*:*)
- echo sparc-unknown-linux-gnu
+ echo sparc-${VENDOR}-linux-gnu
exit ;;
parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
+ echo hppa64-${VENDOR}-linux-gnu
exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
+ PA7*) echo hppa1.1-${VENDOR}-linux-gnu ;;
+ PA8*) echo hppa2.0-${VENDOR}-linux-gnu ;;
+ *) echo hppa-${VENDOR}-linux-gnu ;;
esac
exit ;;
ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
+ echo powerpc64-${VENDOR}-linux-gnu
exit ;;
ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
+ echo powerpc-${VENDOR}-linux-gnu
exit ;;
s390:Linux:*:* | s390x:Linux:*:*)
echo ${UNAME_MACHINE}-ibm-linux
exit ;;
sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
tile*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
vax:Linux:*:*)
echo ${UNAME_MACHINE}-dec-linux-gnu
exit ;;
x86_64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ echo ${UNAME_MACHINE}-${VENDOR}-linux-gnu
exit ;;
i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
echo ${UNAME_MACHINE}-pc-os2-emx
exit ;;
i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
+ echo ${UNAME_MACHINE}-${VENDOR}-stop
exit ;;
i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
+ echo ${UNAME_MACHINE}-${VENDOR}-atheos
exit ;;
i*86:syllable:*:*)
echo ${UNAME_MACHINE}-pc-syllable
exit ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
+ echo i386-${VENODR}-lynxos${UNAME_RELEASE}
exit ;;
i*86:*DOS:*:*)
echo ${UNAME_MACHINE}-pc-msdosdjgpp
*Pentium) UNAME_MACHINE=i586 ;;
*Pent*|*Celeron) UNAME_MACHINE=i686 ;;
esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+ echo ${UNAME_MACHINE}-${VENDOR}-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
exit ;;
i*86:*:3.2:*)
if test -f /usr/options/cb.name; then
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
+ echo i860-${VENODR}-sysv${UNAME_RELEASE} # Unknown i860-SVR4
fi
exit ;;
mini*:CTIX:SYS*5:*)
/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
&& { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
+ echo m68k-${VENDOR}-lynxos${UNAME_RELEASE}
exit ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit ;;
TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
+ echo sparc-${VENDOR}-lynxos${UNAME_RELEASE}
exit ;;
rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
+ echo rs6000-${VENDOR}-lynxos${UNAME_RELEASE}
exit ;;
PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
+ echo powerpc-${VENDOR}-lynxos${UNAME_RELEASE}
exit ;;
SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv${UNAME_RELEASE}
if [ -d /usr/nec ]; then
echo mips-nec-sysv${UNAME_RELEASE}
else
- echo mips-unknown-sysv${UNAME_RELEASE}
+ echo mips-${VENDOR}-sysv${UNAME_RELEASE}
fi
exit ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
else
UNAME_MACHINE="$cputype"
fi
- echo ${UNAME_MACHINE}-unknown-plan9
+ echo ${UNAME_MACHINE}-${VENDOR}-plan9
exit ;;
*:TOPS-10:*:*)
- echo pdp10-unknown-tops10
+ echo pdp10-${VENDOR}-tops10
exit ;;
*:TENEX:*:*)
- echo pdp10-unknown-tenex
+ echo pdp10-${VENDOR}-tenex
exit ;;
KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
echo pdp10-dec-tops20
echo pdp10-xkl-tops20
exit ;;
*:TOPS-20:*:*)
- echo pdp10-unknown-tops20
+ echo pdp10-${VENDOR}-tops20
exit ;;
*:ITS:*:*)
- echo pdp10-unknown-its
+ echo pdp10-${VENDOR}-its
exit ;;
SEI:*:*:SEIUX)
echo mips-sei-seiux${UNAME_RELEASE}
exit ;;
*:DragonFly:*:*)
- echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ echo ${UNAME_MACHINE}-${VENDOR}-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit ;;
*:*VMS:*:*)
UNAME_MACHINE=`(uname -p) 2>/dev/null`
echo ${UNAME_MACHINE}-pc-aros
exit ;;
x86_64:VMkernel:*:*)
- echo ${UNAME_MACHINE}-unknown-esx
+ echo ${UNAME_MACHINE}-${VENDOR}-esx
exit ;;
esac
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
# 2011, 2012 Free Software Foundation, Inc.
-timestamp='2012-02-10'
+timestamp='2012-04-18'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
-isc*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
+ -lynx*178)
+ os=-lynxos178
+ ;;
+ -lynx*5)
+ os=-lynxos5
+ ;;
-lynx*)
os=-lynxos
;;
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2011-12-04.11; # UTC
+scriptversion=2012-03-27.16; # UTC
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010,
-# 2011 Free Software Foundation, Inc.
+# Copyright (C) 1999-2012 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
case $1 in
'')
- echo "$0: No command. Try \`$0 --help' for more information." 1>&2
+ echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
Environment variables:
depmode Dependency tracking mode.
- source Source file read by `PROGRAMS ARGS'.
- object Object file output by `PROGRAMS ARGS'.
+ source Source file read by 'PROGRAMS ARGS'.
+ object Object file output by 'PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputting dependencies.
;;
esac
+# A tabulation character.
+tab=' '
+# A newline character.
+nl='
+'
+
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1
depmode=msvc7
fi
+if test "$depmode" = xlc; then
+ # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations.
+ gccflag=-qmakedep=gcc,-MF
+ depmode=gcc
+fi
+
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## The second -e expression handles DOS-style file names with drive letters.
sed -e 's/^[^:]*: / /' \
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
+## This next piece of magic avoids the "deleted header file" problem.
## The problem is that when a header file which appears in a .P file
## is deleted, the dependency causes make to die (because there is
## typically no way to rebuild the header). We avoid this by adding
## dummy dependencies for each header file. Too bad gcc doesn't do
## this for us directly.
- tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'. On the theory
+ tr ' ' "$nl" < "$tmpdepfile" |
+## Some versions of gcc put a space before the ':'. On the theory
## that the space means something, we add a space to the output as
## well. hp depmode also adds that space, but also prefixes the VPATH
## to the object. Take care to not repeat it in the output.
# clever and replace this with sed code, as IRIX sed won't handle
# lines with more than a fixed number of characters (4096 in
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
- # the IRIX cc adds comments like `#:fec' to the end of the
+ # the IRIX cc adds comments like '#:fec' to the end of the
# dependency line.
- tr ' ' '
-' < "$tmpdepfile" \
+ tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
- tr '
-' ' ' >> "$depfile"
+ tr "$nl" ' ' >> "$depfile"
echo >> "$depfile"
# The second pass generates a dummy entry for each header file.
- tr ' ' '
-' < "$tmpdepfile" \
+ tr ' ' "$nl" < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
>> "$depfile"
else
rm -f "$tmpdepfile"
;;
+xlc)
+ # This case exists only to let depend.m4 do its work. It works by
+ # looking at the text of this script. This case will never be run,
+ # since it is checked for above.
+ exit 1
+ ;;
+
aix)
# The C for AIX Compiler uses -M and outputs the dependencies
# in a .u file. In older versions, this file always lives in the
- # current directory. Also, the AIX compiler puts `$object:' at the
+ # current directory. Also, the AIX compiler puts '$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then
- # Each line is of the form `foo.o: dependent.h'.
+ # Each line is of the form 'foo.o: dependent.h'.
# Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
+ # '$object: dependent.h' and one to simply 'dependent.h:'.
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+ sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
;;
icc)
- # Intel's C compiler understands `-MD -MF file'. However on
- # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
+ # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'.
+ # However on
+ # $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c
# ICC 7.0 will fill foo.d with something like
# foo.o: sub/foo.c
# foo.o: sub/foo.h
- # which is wrong. We want:
+ # which is wrong. We want
# sub/foo.o: sub/foo.c
# sub/foo.o: sub/foo.h
# sub/foo.c:
# sub/foo.h:
# ICC 7.1 will output
# foo.o: sub/foo.c sub/foo.h
- # and will wrap long lines using \ :
+ # and will wrap long lines using '\':
# foo.o: sub/foo.c ... \
# sub/foo.h ... \
# ...
-
+ # tcc 0.9.26 (FIXME still under development at the moment of writing)
+ # will emit a similar output, but also prepend the continuation lines
+ # with horizontal tabulation characters.
"$@" -MD -MF "$tmpdepfile"
stat=$?
if test $stat -eq 0; then :
exit $stat
fi
rm -f "$depfile"
- # Each line is of the form `foo.o: dependent.h',
- # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
+ # Each line is of the form 'foo.o: dependent.h',
+ # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'.
# Do two passes, one to just change these to
- # `$object: dependent.h' and one to simply `dependent.h:'.
- sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
- # Some versions of the HPUX 10.20 sed can't process this invocation
- # correctly. Breaking it into two sed invocations is a workaround.
- sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
- sed -e 's/$/ :/' >> "$depfile"
+ # '$object: dependent.h' and one to simply 'dependent.h:'.
+ sed -e "s/^[ $tab][ $tab]*/ /" -e "s,^[^:]*:,$object :," \
+ < "$tmpdepfile" > "$depfile"
+ sed '
+ s/[ '"$tab"'][ '"$tab"']*/ /g
+ s/^ *//
+ s/ *\\*$//
+ s/^[^:]*: *//
+ /^$/d
+ /:$/d
+ s/$/ :/
+ ' < "$tmpdepfile" >> "$depfile"
rm -f "$tmpdepfile"
;;
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
- # Add `dependent.h:' lines.
+ # Add 'dependent.h:' lines.
sed -ne '2,${
s/^ *//
s/ \\*$//
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
- # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
+ # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
- # dependencies in `foo.d' instead, so we check for that too.
+ # dependencies in 'foo.d' instead, so we check for that too.
# Subdirectories are respected.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
done
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
- # That's a tab and a space in the [].
- sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+ sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
echo "#dummy" > "$depfile"
fi
p
}' | $cygpath_u | sort -u | sed -n '
s/ /\\ /g
-s/\(.*\)/ \1 \\/p
+s/\(.*\)/'"$tab"'\1 \\/p
s/.\(.*\) \\/\1:/
H
$ {
- s/.*/ /
+ s/.*/'"$tab"'/
G
p
}' >> "$depfile"
shift
fi
- # Remove `-o $object'.
+ # Remove '-o $object'.
IFS=" "
for arg
do
done
test -z "$dashmflag" && dashmflag=-M
- # Require at least two characters before searching for `:'
+ # Require at least two characters before searching for ':'
# in the target name. This is to cope with DOS-style filenames:
- # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+ # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
"$@" $dashmflag |
- sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
+ sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
- tr ' ' '
-' < "$tmpdepfile" | \
+ tr ' ' "$nl" < "$tmpdepfile" | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
# makedepend may prepend the VPATH from the source file name to the object.
# No need to regex-escape $object, excess matching of '.' is harmless.
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
- sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
+ sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
shift
fi
- # Remove `-o $object'.
+ # Remove '-o $object'.
IFS=" "
for arg
do
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
- sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
- echo " " >> "$depfile"
+ sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
+ echo "$tab" >> "$depfile"
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2011-01-19.21; # UTC
+scriptversion=2011-11-20.07; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
+# 'make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
-s) stripcmd=$stripprog;;
-t) dst_arg=$2
- # Protect names problematic for `test' and other utilities.
+ # Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
fi
shift # arg
dst_arg=$arg
- # Protect names problematic for `test' and other utilities.
+ # Protect names problematic for 'test' and other utilities.
case $dst_arg in
-* | [=\(\)!]) dst_arg=./$dst_arg;;
esac
echo "$0: no input file specified." >&2
exit 1
fi
- # It's OK to call `install-sh -d' without argument.
+ # It's OK to call 'install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi
for src
do
- # Protect names problematic for `test' and other utilities.
+ # Protect names problematic for 'test' and other utilities.
case $src in
-* | [=\(\)!]) src=./$src;;
esac
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writeable bit of parent directory when it shouldn't.
+ # other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
ls_ld_tmpdir=`ls -ld "$tmpdir"`
case $ls_ld_tmpdir in
# compiler: $LTCC
# compiler flags: $LTCFLAGS
# linker: $LD (gnu? $with_gnu_ld)
-# $progname: (GNU libtool) 2.4.2 Debian-2.4.2-1ubuntu1
+# $progname: (GNU libtool) 2.4.2
# automake: $automake_version
# autoconf: $autoconf_version
#
PROGRAM=libtool
PACKAGE=libtool
-VERSION="2.4.2 Debian-2.4.2-1ubuntu1"
+VERSION=2.4.2
TIMESTAMP=""
package_revision=1.3337
case $pass in
dlopen) libs="$dlfiles" ;;
dlpreopen) libs="$dlprefiles" ;;
- link)
- libs="$deplibs %DEPLIBS%"
- test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
- ;;
+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
esac
fi
if test "$linkmode,$pass" = "lib,dlpreopen"; then
# It is a libtool convenience library, so add in its objects.
func_append convenience " $ladir/$objdir/$old_library"
func_append old_convenience " $ladir/$objdir/$old_library"
- tmp_libs=
- for deplib in $dependency_libs; do
- deplibs="$deplib $deplibs"
- if $opt_preserve_dup_deps ; then
- case "$tmp_libs " in
- *" $deplib "*) func_append specialdeplibs " $deplib" ;;
- esac
- fi
- func_append tmp_libs " $deplib"
- done
elif test "$linkmode" != prog && test "$linkmode" != lib; then
func_fatal_error "\`$lib' is not a convenience library"
fi
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ deplibs="$deplib $deplibs"
+ if $opt_preserve_dup_deps ; then
+ case "$tmp_libs " in
+ *" $deplib "*) func_append specialdeplibs " $deplib" ;;
+ esac
+ fi
+ func_append tmp_libs " $deplib"
+ done
continue
fi # $pass = conv
revision="$number_minor"
lt_irix_increment=no
;;
- *)
- func_fatal_configuration "$modename: unknown library version type \`$version_type'"
- ;;
esac
;;
no)
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-scriptversion=2012-01-06.13; # UTC
+scriptversion=2012-01-06.18; # UTC
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+# Copyright (C) 1996-2012 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
# the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then
- echo 1>&2 "Try \`$0 --help' for more information"
+ echo 1>&2 "Try '$0 --help' for more information"
exit 1
fi
sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-# In the cases where this matters, `missing' is being run in the
+# In the cases where this matters, 'missing' is being run in the
# srcdir already.
if test -f configure.ac; then
configure_ac=configure.ac
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
error status if there is no known handling for PROGRAM.
Options:
--run try to run the given command, and emulate it if it fails
Supported PROGRAM values:
- aclocal touch file \`aclocal.m4'
- autoconf touch file \`configure'
- autoheader touch file \`config.h.in'
+ aclocal touch file 'aclocal.m4'
+ autoconf touch file 'configure'
+ autoheader touch file 'config.h.in'
autom4te touch the output file, or create a stub one
- automake touch all \`Makefile.in' files
- bison create \`y.tab.[ch]', if possible, from existing .[ch]
- flex create \`lex.yy.c', if possible, from existing .c
+ automake touch all 'Makefile.in' files
+ bison create 'y.tab.[ch]', if possible, from existing .[ch]
+ flex create 'lex.yy.c', if possible, from existing .c
help2man touch the output file
- lex create \`lex.yy.c', if possible, from existing .c
+ lex create 'lex.yy.c', if possible, from existing .c
makeinfo touch the output file
- yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+ yacc create 'y.tab.[ch]', if possible, from existing .[ch]
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
+Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
+'g' are ignored when checking the name.
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
-*)
- echo 1>&2 "$0: Unknown \`$1' option"
- echo 1>&2 "Try \`$0 --help' for more information"
+ echo 1>&2 "$0: Unknown '$1' option"
+ echo 1>&2 "Try '$0 --help' for more information"
exit 1
;;
exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
# Could not run --version or --help. This is probably someone
- # running `$TOOL --version' or `$TOOL --help' to check whether
+ # running '$TOOL --version' or '$TOOL --help' to check whether
# $TOOL exists and not knowing $TOOL uses missing.
exit 1
fi
case $program in
aclocal*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`acinclude.m4' or \`${configure_ac}'. You might want
- to install the \`Automake' and \`Perl' packages. Grab them from
+WARNING: '$1' is $msg. You should only need it if
+ you modified 'acinclude.m4' or '${configure_ac}'. You might want
+ to install the Automake and Perl packages. Grab them from
any GNU archive site."
touch aclocal.m4
;;
autoconf*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`${configure_ac}'. You might want to install the
- \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
+WARNING: '$1' is $msg. You should only need it if
+ you modified '${configure_ac}'. You might want to install the
+ Autoconf and GNU m4 packages. Grab them from any GNU
archive site."
touch configure
;;
autoheader*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`acconfig.h' or \`${configure_ac}'. You might want
- to install the \`Autoconf' and \`GNU m4' packages. Grab them
+WARNING: '$1' is $msg. You should only need it if
+ you modified 'acconfig.h' or '${configure_ac}'. You might want
+ to install the Autoconf and GNU m4 packages. Grab them
from any GNU archive site."
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
test -z "$files" && files="config.h"
automake*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
- You might want to install the \`Automake' and \`Perl' packages.
+WARNING: '$1' is $msg. You should only need it if
+ you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
+ You might want to install the Automake and Perl packages.
Grab them from any GNU archive site."
find . -type f -name Makefile.am -print |
sed 's/\.am$/.in/' |
autom4te*)
echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
+WARNING: '$1' is needed, but is $msg.
You might have modified some files without having the
proper tools for further handling them.
- You can get \`$1' as part of \`Autoconf' from any GNU
+ You can get '$1' as part of Autoconf from any GNU
archive site."
file=`echo "$*" | sed -n "$sed_output"`
bison*|yacc*)
echo 1>&2 "\
-WARNING: \`$1' $msg. You should only need it if
- you modified a \`.y' file. You may need the \`Bison' package
+WARNING: '$1' $msg. You should only need it if
+ you modified a '.y' file. You may need the Bison package
in order for those modifications to take effect. You can get
- \`Bison' from any GNU archive site."
+ Bison from any GNU archive site."
rm -f y.tab.c y.tab.h
if test $# -ne 1; then
eval LASTARG=\${$#}
lex*|flex*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified a \`.l' file. You may need the \`Flex' package
+WARNING: '$1' is $msg. You should only need it if
+ you modified a '.l' file. You may need the Flex package
in order for those modifications to take effect. You can get
- \`Flex' from any GNU archive site."
+ Flex from any GNU archive site."
rm -f lex.yy.c
if test $# -ne 1; then
eval LASTARG=\${$#}
help2man*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
+WARNING: '$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
- \`Help2man' package in order for those modifications to take
- effect. You can get \`Help2man' from any GNU archive site."
+ Help2man package in order for those modifications to take
+ effect. You can get Help2man from any GNU archive site."
file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
makeinfo*)
echo 1>&2 "\
-WARNING: \`$1' is $msg. You should only need it if
- you modified a \`.texi' or \`.texinfo' file, or any other file
+WARNING: '$1' is $msg. You should only need it if
+ you modified a '.texi' or '.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious
- call might also be the consequence of using a buggy \`make' (AIX,
- DU, IRIX). You might want to install the \`Texinfo' package or
- the \`GNU make' package. Grab either from any GNU archive site."
+ call might also be the consequence of using a buggy 'make' (AIX,
+ DU, IRIX). You might want to install the Texinfo package or
+ the GNU make package. Grab either from any GNU archive site."
# The file to touch is that specified with -o ...
file=`echo "$*" | sed -n "$sed_output"`
test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
*)
echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
+WARNING: '$1' is needed, and is $msg.
You might have modified some files without having the
- proper tools for further handling them. Check the \`README' file,
+ proper tools for further handling them. Check the 'README' file,
it often tells you about the needed prerequisites for installing
this package. You may also peek at any GNU archive site, in case
- some other package would contain this missing \`$1' program."
+ some other package would contain this missing '$1' program."
exit 1
;;
esac
scriptversion=2011-06-08.12; # UTC
-# Copyright (C) 2000, 2001, 2003, 2004, 2005, 2008, 2009, 2011 Free
-# Software Foundation, Inc.
+# Copyright (C) 2000-2012 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for libgsignon-glib 2.0.3.
+# Generated by GNU Autoconf 2.68 for libgsignon-glib 2.1.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.0.3'
-PACKAGE_STRING='libgsignon-glib 2.0.3'
+PACKAGE_VERSION='2.1.0'
+PACKAGE_STRING='libgsignon-glib 2.1.0'
PACKAGE_BUGREPORT='http://code.google.com/p/accounts-sso/issues/entry'
PACKAGE_URL='http://code.google.com/p/accounts-sso/'
# 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.0.3 to adapt to many kinds of systems.
+\`configure' configures libgsignon-glib 2.1.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.0.3:";;
+ short | recursive ) echo "Configuration of libgsignon-glib 2.1.0:";;
esac
cat <<\_ACEOF
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-libgsignon-glib configure 2.0.3
+libgsignon-glib configure 2.1.0
generated by GNU Autoconf 2.68
Copyright (C) 2010 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.0.3, which was
+It was created by libgsignon-glib $as_me 2.1.0, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
# Define the identity of the package.
PACKAGE='libgsignon-glib'
- VERSION='2.0.3'
+ VERSION='2.1.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.0.3, which was
+This file was extended by libgsignon-glib $as_me 2.1.0, which was
generated by GNU Autoconf 2.68. 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.0.3
+libgsignon-glib config.status 2.1.0
configured by $0, generated by GNU Autoconf 2.68,
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.0.3],
+ [2.1.0],
[http://code.google.com/p/accounts-sso/issues/entry],
[libgsignon-glib],
[http://code.google.com/p/accounts-sso/])
+libgsignon-glib (2.1.0-4) unstable; urgency=low
+
+ * Release 2.1.0
+
+ -- Jussi Laako <jussi.laako@linux.intel.com> Thu, 06 Mar 2014 17:59:00 +0200
+
+libgsignon-glib (2.0.1-3) unstable; urgency=low
+
+ * Minor update
+
+ -- Jussi Laako <jussi.laako@linux.intel.com> Wed, 08 Jan 2014 17:41:00 +0200
+
libgsignon-glib (2.0.1-2) unstable; urgency=low
* Produce a separate debug symbols package
DEB_CONFIGURE_EXTRA_FLAGS += --enable-dbus-type=session
+# Optionally build a debug version
+#DEB_CONFIGURE_EXTRA_FLAGS += --enable-debug
+
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1
Name: libgsignon-glib
Summary: GLib API for the SSO framework
-Version: 2.0.3
+Version: 2.1.0
Release: 1
Group: System/Libraries
License: LGPL-2.1
%changelog
+* 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
+* 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
Name: libgsignon-glib
Summary: GLib API for the SSO framework
-Version: 2.0.3
+Version: 2.1.0
Release: 1
Group: System/Libraries
License: LGPL-2.1
<literallayout><computeroutput>
<userinput>> gsso-example --query-identities</userinput>
Available identities:
- id=27 caption='My test identity'
- id=28 caption='Another test identity'
+ id=27 caption='My test identity' ACL: (*:*)
+ id=28 caption='Another test identity' ACL: (/usr/bin/gsso-example:)
</computeroutput></literallayout>
</para>
<para>
</computeroutput></literallayout>
</para>
<para>
+ Depending on the identity method, you may also need to add a list of comma-separated
+ realms that are allowed to be used with an identity. For example, the oauth method
+ requires a list of domains that the OAuth authentication plugin is allowed to contact:
+ <literallayout><computeroutput>
+<userinput>> gsso-example --create-identity="Test Google identity" --identity-method=oauth --identity-realms=google.com</userinput>
+Identity stored with id 29
+ </computeroutput></literallayout>
+ </para>
+ <para>
To remove an identity, use <userinput>--remove-identity</userinput> option
with identity id:
<literallayout><computeroutput>
Identity removed
</computeroutput></literallayout>
</para>
+ <para>
+ To add security context to identity's Access Control List, use <userinput>--add-context</userinput> option
+ with identity id:
+ <literallayout><computeroutput>
+<userinput>> gsso-example --add-context=28 --system-context=* --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
+ with identity id:
+ <literallayout><computeroutput>
+<userinput>> gsso-example --remove-context=28 --system-context=* --application-context=*</userinput>
+Identity stored with id 28
+ </computeroutput></literallayout>
+ </para>
</refsect1>
<refsect1>
<title>Using 'password' authentication method</title>
--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>libgsignon-glib Reference Manual: SignonAuthService</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
+<link rel="up" href="credential-management.html" title="Credential management">
+<link rel="prev" href="credential-management.html" title="Credential management">
+<link rel="next" href="SignonIdentity.html" title="SignonIdentity">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span>
+ <a href="#SignonAuthService.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span>
+ <a href="#SignonAuthService.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="credential-management.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="SignonIdentity.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="SignonAuthService"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="SignonAuthService.top_of_page"></a>SignonAuthService</span></h2>
+<p>SignonAuthService — the authorization service object</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="SignonAuthService.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<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>
+<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#SignonQueryMechanismCb" title="SignonQueryMechanismCb ()">*SignonQueryMechanismCb</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#SignonQueryMethodsCb" title="SignonQueryMethodsCb ()">*SignonQueryMethodsCb</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="returnvalue">SignonAuthService</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonAuthService.html#signon-auth-service-new" title="signon_auth_service_new ()">signon_auth_service_new</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-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-query-mechanisms" title="signon_auth_service_query_mechanisms ()">signon_auth_service_query_mechanisms</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-query-methods" title="signon_auth_service_query_methods ()">signon_auth_service_query_methods</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="SignonAuthService.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="SignonAuthService.html#SignonAuthService-struct" title="struct SignonAuthService">SignonAuthService</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="SignonAuthService.html#SignonAuthServiceClass" title="struct SignonAuthServiceClass">SignonAuthServiceClass</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="SignonAuthService.html#SignonIdentityFilter" title="SignonIdentityFilter">SignonIdentityFilter</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="SignonAuthService.html#SignonIdentityList" title="SignonIdentityList">SignonIdentityList</a></td>
+</tr>
+</tbody>
+</table></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>
+ <span class="lineart">╰──</span> SignonAuthService
+</pre>
+</div>
+<div class="refsect1">
+<a name="SignonAuthService.description"></a><h2>Description</h2>
+<p>The <a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a> is the main object in this library. It provides top-level
+functions to query existing identities, available methods and their mechanisms.</p>
+</div>
+<div class="refsect1">
+<a name="SignonAuthService.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="SignonQueryIdentitiesCb"></a><h3>SignonQueryIdentitiesCb ()</h3>
+<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>
+<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.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>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>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_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_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="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>
+<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>
+<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>method</p></td>
+<td class="parameter_description"><p>the authentication method being inspected.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>mechanisms</p></td>
+<td class="parameter_description"><p> list of available mechanisms. </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>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> GStrv]</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_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="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>
+<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.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>methods</p></td>
+<td class="parameter_description"><p> list of available methods. </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>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> GStrv]</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_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="signon-auth-service-new"></a><h3>signon_auth_service_new ()</h3>
+<pre class="programlisting"><a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="returnvalue">SignonAuthService</span></a> *
+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>
+<p> an instance of an <a class="link" href="SignonAuthService.html" title="SignonAuthService"><span class="type">SignonAuthService</span></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-auth-service-query-identities"></a><h3>signon_auth_service_query_identities ()</h3>
+<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><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>
+<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>
+<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>).
+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="../gsignond/GSignondAccessControlManager.html"><span class="type">GSignondAccessControlManager</span></a>.</p></li>
+<li class="listitem"><p>"Type". The value should be a <a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="type">SignonIdentityType</span></a>.</p></li>
+<li class="listitem"><p>"Caption". The value is a string, and only those identites whose caption
+begins with the supplied value will be returned.</p></li>
+</ul></div>
+<p>The meaning of <em class="parameter"><code>application_context</code></em>
+ is explained in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.
+It is used by <a href="../gsignond/GSignondAccessControlManager.html"><span class="type">GSignondAccessControlManager</span></a> to determine if the requesting
+application is a keychain application. If it is, then all identites will be
+returned (subject to "Owner" key in <em class="parameter"><code>filter</code></em>
+). If it's not, then only the
+identites which the application owns will be returned (but "Type" and "Caption"
+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.6.8"></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>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_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_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-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><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>
+<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>
+<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>method</p></td>
+<td class="parameter_description"><p>the name of the method whose mechanisms must be
+retrieved.</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-query-methods"></a><h3>signon_auth_service_query_methods ()</h3>
+<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>
+<p>Lists all the available authentication methods.</p>
+<div class="refsect3">
+<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">
+<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>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>
+</div>
+<div class="refsect1">
+<a name="SignonAuthService.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="SignonAuthService-struct"></a><h3>struct SignonAuthService</h3>
+<pre class="programlisting">struct SignonAuthService;</pre>
+<p>Opaque struct. Use the accessor functions below.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonAuthServiceClass"></a><h3>struct SignonAuthServiceClass</h3>
+<pre class="programlisting">struct SignonAuthServiceClass {
+ GObjectClass parent_class;
+};
+</pre>
+<p>Opaque struct. Use the accessor functions below.</p>
+<div class="refsect3">
+<a name="id-1.3.3.2.8.3.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<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_description"><p>a reference to the parent class</p></td>
+<td class="struct_member_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<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>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonIdentityList"></a><h3>SignonIdentityList</h3>
+<pre class="programlisting">typedef GList SignonIdentityList;
+</pre>
+<p>GList of <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> items.</p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.20</div>
+</body>
+</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SignonAuthSession</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: SignonAuthSession</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="credential-management.html" title="Credential management">
<link rel="prev" href="SignonSecurityContext.html" title="SignonSecurityContext">
<link rel="next" href="libgsignon-glib-SignonError.html" title="SignonError">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="SignonSecurityContext.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="libgsignon-glib-SignonError.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a href="#SignonAuthSession.synopsis" class="shortcut">Top</a>
- |
- <a href="#SignonAuthSession.description" class="shortcut">Description</a>
- |
- <a href="#SignonAuthSession.object-hierarchy" class="shortcut">Object Hierarchy</a>
- |
- <a href="#SignonAuthSession.properties" class="shortcut">Properties</a>
- |
- <a href="#SignonAuthSession.signals" class="shortcut">Signals</a>
-</td></tr>
-</table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span>
+ <a href="#SignonAuthSession.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span>
+ <a href="#SignonAuthSession.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span>
+ <a href="#SignonAuthSession.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span>
+ <a href="#SignonAuthSession.signals" class="shortcut">Signals</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="SignonSecurityContext.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="libgsignon-glib-SignonError.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
<div class="refentry">
<a name="SignonAuthSession"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<h2><span class="refentrytitle"><a name="SignonAuthSession.top_of_page"></a>SignonAuthSession</span></h2>
<p>SignonAuthSession — the authentication session object</p>
</td>
-<td valign="top" align="right"></td>
+<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
-<div class="refsynopsisdiv">
-<a name="SignonAuthSession.synopsis"></a><h2>Synopsis</h2>
-<pre class="synopsis">#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-CAPTION:CAPS" title="SIGNON_SESSION_DATA_CAPTION">SIGNON_SESSION_DATA_CAPTION</a>
-#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-PROXY:CAPS" title="SIGNON_SESSION_DATA_PROXY">SIGNON_SESSION_DATA_PROXY</a>
-#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-REALM:CAPS" title="SIGNON_SESSION_DATA_REALM">SIGNON_SESSION_DATA_REALM</a>
-#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-RENEW-TOKEN:CAPS" title="SIGNON_SESSION_DATA_RENEW_TOKEN">SIGNON_SESSION_DATA_RENEW_TOKEN</a>
-#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-SECRET:CAPS" title="SIGNON_SESSION_DATA_SECRET">SIGNON_SESSION_DATA_SECRET</a>
-#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-TIMEOUT:CAPS" title="SIGNON_SESSION_DATA_TIMEOUT">SIGNON_SESSION_DATA_TIMEOUT</a>
-#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-UI-POLICY:CAPS" title="SIGNON_SESSION_DATA_UI_POLICY">SIGNON_SESSION_DATA_UI_POLICY</a>
-#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-USERNAME:CAPS" title="SIGNON_SESSION_DATA_USERNAME">SIGNON_SESSION_DATA_USERNAME</a>
-#define <a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-WINDOW-ID:CAPS" title="SIGNON_SESSION_DATA_WINDOW_ID">SIGNON_SESSION_DATA_WINDOW_ID</a>
-struct <a class="link" href="SignonAuthSession.html#SignonAuthSession-struct" title="struct SignonAuthSession">SignonAuthSession</a>;
-struct <a class="link" href="SignonAuthSession.html#SignonAuthSessionClass" title="struct SignonAuthSessionClass">SignonAuthSessionClass</a>;
-<span class="returnvalue">void</span> (<a class="link" href="SignonAuthSession.html#SignonAuthSessionProcessCb" title="SignonAuthSessionProcessCb ()">*SignonAuthSessionProcessCb</a>) (<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>);
-<span class="returnvalue">void</span> (<a class="link" href="SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb" title="SignonAuthSessionQueryAvailableMechanismsCb ()">*SignonAuthSessionQueryAvailableMechanismsCb</a>)
- (<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>);
-enum <a class="link" href="SignonAuthSession.html#SignonSessionDataUiPolicy" title="enum SignonSessionDataUiPolicy">SignonSessionDataUiPolicy</a>;
-<span class="returnvalue">void</span> <a class="link" href="SignonAuthSession.html#signon-auth-session-cancel" title="signon_auth_session_cancel ()">signon_auth_session_cancel</a> (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="SignonAuthSession.html#signon-auth-session-get-method" title="signon_auth_session_get_method ()">signon_auth_session_get_method</a> (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>);
-<a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="returnvalue">SignonAuthSession</span></a> * <a class="link" href="SignonAuthSession.html#signon-auth-session-new" title="signon_auth_session_new ()">signon_auth_session_new</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *parent</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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonAuthSession.html#signon-auth-session-process" title="signon_auth_session_process ()">signon_auth_session_process</a> (<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-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><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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()">signon_auth_session_process_async</a> (<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>);
-<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> * <a class="link" href="SignonAuthSession.html#signon-auth-session-process-finish" title="signon_auth_session_process_finish ()">signon_auth_session_process_finish</a> (<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>);
-<span class="returnvalue">void</span> <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>
- (<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><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>
-</div>
<div class="refsect1">
-<a name="SignonAuthSession.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="synopsis">
- <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
- +----SignonAuthSession
-</pre>
+<a name="SignonAuthSession.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="SignonAuthSession.html#SignonAuthSessionProcessCb" title="SignonAuthSessionProcessCb ()">*SignonAuthSessionProcessCb</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="SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb" title="SignonAuthSessionQueryAvailableMechanismsCb ()">*SignonAuthSessionQueryAvailableMechanismsCb</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">
+<a class="link" href="SignonAuthSession.html#signon-auth-session-cancel" title="signon_auth_session_cancel ()">signon_auth_session_cancel</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>
+<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>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="returnvalue">SignonAuthSession</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonAuthSession.html#signon-auth-session-new" title="signon_auth_session_new ()">signon_auth_session_new</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="returnvalue">SignonAuthSession</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonAuthSession.html#signon-auth-session-new-for-identity" title="signon_auth_session_new_for_identity ()">signon_auth_session_new_for_identity</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="SignonAuthSession.html#signon-auth-session-process" title="signon_auth_session_process ()">signon_auth_session_process</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="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()">signon_auth_session_process_async</a> <span class="c_punctuation">()</span>
+</td>
+</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> *
+</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>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<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> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
</div>
<div class="refsect1">
<a name="SignonAuthSession.properties"></a><h2>Properties</h2>
-<pre class="synopsis">
- "<a class="link" href="SignonAuthSession.html#SignonAuthSession--identity" title='The "identity" property'>identity</a>" <span class="type">SignonIdentity</span>* : Read / Write / Construct Only
-</pre>
-</div>
-<div class="refsect1">
-<a name="SignonAuthSession.signals"></a><h2>Signals</h2>
-<pre class="synopsis">
- "<a class="link" href="SignonAuthSession.html#SignonAuthSession-state-changed" title='The "state-changed" signal'>state-changed</a>" : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS"><code class="literal">Action</code></a>
-</pre>
-</div>
-<div class="refsect1">
-<a name="SignonAuthSession.description"></a><h2>Description</h2>
-<p>
-The <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> object is responsible for handling the client
-authentication. <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> objects should be created from existing
-identities (via <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-create-session" title="signon_identity_create_session ()"><code class="function">signon_identity_create_session()</code></a> or by passing a non-NULL identity
-to <a class="link" href="SignonAuthSession.html#signon-auth-session-new" title="signon_auth_session_new ()"><code class="function">signon_auth_session_new()</code></a>), in which case the authentication data such as
-username and password will be implicitly taken from the identity.
-</p>
-</div>
-<div class="refsect1">
-<a name="SignonAuthSession.details"></a><h2>Details</h2>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-CAPTION:CAPS"></a><h3>SIGNON_SESSION_DATA_CAPTION</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_CAPTION "Caption"
-</pre>
-<p>
-Caption for the UI dialog.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-PROXY:CAPS"></a><h3>SIGNON_SESSION_DATA_PROXY</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_PROXY "NetworkProxy"
-</pre>
-<p>
-Proxy.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-REALM:CAPS"></a><h3>SIGNON_SESSION_DATA_REALM</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_REALM "Realm"
-</pre>
-<p>
-Realm.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-RENEW-TOKEN:CAPS"></a><h3>SIGNON_SESSION_DATA_RENEW_TOKEN</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_RENEW_TOKEN "RenewToken"
-</pre>
-<p>
-Requests the signon plugin to obtain a new token (boolean).
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-SECRET:CAPS"></a><h3>SIGNON_SESSION_DATA_SECRET</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_SECRET "Secret"
-</pre>
-<p>
-Secret.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-TIMEOUT:CAPS"></a><h3>SIGNON_SESSION_DATA_TIMEOUT</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_TIMEOUT "NetworkTimeout"
-</pre>
-<p>
-Network timeout, in milliseconds (uint32).
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-UI-POLICY:CAPS"></a><h3>SIGNON_SESSION_DATA_UI_POLICY</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_UI_POLICY "UiPolicy"
-</pre>
-<p>
-Policy for the signon process.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<div class="informaltable"><table border="0">
+<colgroup>
+<col width="150px" class="properties_type">
+<col width="300px" class="properties_name">
+<col width="200px" class="properties_flags">
+</colgroup>
<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>see_also</code></em> :</span></p></td>
-<td><a class="link" href="SignonAuthSession.html#SignonSessionDataUiPolicy" title="enum SignonSessionDataUiPolicy"><span class="type">SignonSessionDataUiPolicy</span></a></td>
+<td class="property_type">
+<a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *</td>
+<td class="property_name"><a class="link" href="SignonAuthSession.html#SignonAuthSession--identity" title="The “identity” property">identity</a></td>
+<td class="property_flags">Read / Write / Construct Only</td>
</tr></tbody>
</table></div>
</div>
-<hr>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-USERNAME:CAPS"></a><h3>SIGNON_SESSION_DATA_USERNAME</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_USERNAME "UserName"
-</pre>
-<p>
-Username.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SIGNON-SESSION-DATA-WINDOW-ID:CAPS"></a><h3>SIGNON_SESSION_DATA_WINDOW_ID</h3>
-<pre class="programlisting">#define SIGNON_SESSION_DATA_WINDOW_ID "WindowId"
-</pre>
-<p>
-Platform-specific window id (for dialog transiency) - uint32.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonAuthSession-struct"></a><h3>struct SignonAuthSession</h3>
-<pre class="programlisting">struct SignonAuthSession;</pre>
-<p>
-Opaque struct. Use the accessor functions below.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonAuthSessionClass"></a><h3>struct SignonAuthSessionClass</h3>
-<pre class="programlisting">struct SignonAuthSessionClass {
- GObjectClass parent;
-};
-</pre>
-<p>
-Opaque struct. Use the accessor functions below.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<div class="refsect1">
+<a name="SignonAuthSession.signals"></a><h2>Signals</h2>
+<div class="informaltable"><table border="0">
+<colgroup>
+<col width="150px" class="signals_return">
+<col width="300px" class="signals_name">
+<col width="200px" class="signals_flags">
+</colgroup>
<tbody><tr>
-<td><p><span class="term"><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>;</span></p></td>
-<td>reference to the parent class</td>
+<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>
</tr></tbody>
</table></div>
</div>
-<hr>
-<div class="refsect2">
-<a name="SignonAuthSessionProcessCb"></a><h3>SignonAuthSessionProcessCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonAuthSessionProcessCb) (<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>
-<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
-<h3 class="title">Warning</h3>
-<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>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<div class="refsect1">
+<a name="SignonAuthSession.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-CAPTION:CAPS" title="SIGNON_SESSION_DATA_CAPTION">SIGNON_SESSION_DATA_CAPTION</a></td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>session_data</code></em> :</span></p></td>
-<td>a dictionary with
-the response. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 GValue]</span>
-</td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-PROXY:CAPS" title="SIGNON_SESSION_DATA_PROXY">SIGNON_SESSION_DATA_PROXY</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-REALM:CAPS" title="SIGNON_SESSION_DATA_REALM">SIGNON_SESSION_DATA_REALM</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-RENEW-TOKEN:CAPS" title="SIGNON_SESSION_DATA_RENEW_TOKEN">SIGNON_SESSION_DATA_RENEW_TOKEN</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-SECRET:CAPS" title="SIGNON_SESSION_DATA_SECRET">SIGNON_SESSION_DATA_SECRET</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-TIMEOUT:CAPS" title="SIGNON_SESSION_DATA_TIMEOUT">SIGNON_SESSION_DATA_TIMEOUT</a></td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-UI-POLICY:CAPS" title="SIGNON_SESSION_DATA_UI_POLICY">SIGNON_SESSION_DATA_UI_POLICY</a></td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-USERNAME:CAPS" title="SIGNON_SESSION_DATA_USERNAME">SIGNON_SESSION_DATA_USERNAME</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SIGNON-SESSION-DATA-WINDOW-ID:CAPS" title="SIGNON_SESSION_DATA_WINDOW_ID">SIGNON_SESSION_DATA_WINDOW_ID</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SignonAuthSession-struct" title="struct SignonAuthSession">SignonAuthSession</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SignonAuthSessionClass" title="struct SignonAuthSessionClass">SignonAuthSessionClass</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="SignonAuthSession.html#SignonSessionDataUiPolicy" title="enum SignonSessionDataUiPolicy">SignonSessionDataUiPolicy</a></td>
</tr>
</tbody>
</table></div>
</div>
-<hr>
+<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>
+ <span class="lineart">╰──</span> SignonAuthSession
+</pre>
+</div>
+<div class="refsect1">
+<a name="SignonAuthSession.description"></a><h2>Description</h2>
+<p>The <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> object is responsible for handling the client
+authentication. <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> objects should be created from existing
+identities (via <a class="link" href="SignonIdentity.html#signon-identity-create-session" title="signon_identity_create_session ()"><code class="function">signon_identity_create_session()</code></a> or by passing a non-NULL identity
+to <a class="link" href="SignonAuthSession.html#signon-auth-session-new" title="signon_auth_session_new ()"><code class="function">signon_auth_session_new()</code></a>).</p>
+</div>
+<div class="refsect1">
+<a name="SignonAuthSession.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
-<a name="SignonAuthSessionQueryAvailableMechanismsCb"></a><h3>SignonAuthSessionQueryAvailableMechanismsCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonAuthSessionQueryAvailableMechanismsCb)
- (<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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<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>
+<div class="refsect3">
+<a name="id-1.3.3.6.9.2.6"></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><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>mechanisms</code></em> :</span></p></td>
-<td>list of available mechanisms. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> GStrv]</span>
-</td>
+<td class="parameter_name"><p>session_data</p></td>
+<td class="parameter_description"><p> a dictionary with
+the response. </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>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 GValue]</span></td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
+<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_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
+<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="SignonSessionDataUiPolicy"></a><h3>enum SignonSessionDataUiPolicy</h3>
-<pre class="programlisting">typedef enum {
- SIGNON_POLICY_DEFAULT = 0,
- SIGNON_POLICY_REQUEST_PASSWORD,
- SIGNON_POLICY_NO_USER_INTERACTION,
- SIGNON_POLICY_VALIDATION,
-} SignonSessionDataUiPolicy;
-</pre>
-<p>
-UI policy for the signon process, passed to the UI plugin.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="SignonAuthSessionQueryAvailableMechanismsCb"></a><h3>SignonAuthSessionQueryAvailableMechanismsCb ()</h3>
+<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>
+<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.3.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><p><a name="SIGNON-POLICY-DEFAULT:CAPS"></a><span class="term"><code class="literal">SIGNON_POLICY_DEFAULT</code></span></p></td>
-<td>The plugin can decide when to show UI.
-</td>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-POLICY-REQUEST-PASSWORD:CAPS"></a><span class="term"><code class="literal">SIGNON_POLICY_REQUEST_PASSWORD</code></span></p></td>
-<td>Force the user to enter the password.
-</td>
+<td class="parameter_name"><p>mechanisms</p></td>
+<td class="parameter_description"><p> list of available mechanisms. </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>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> GStrv]</span></td>
</tr>
<tr>
-<td><p><a name="SIGNON-POLICY-NO-USER-INTERACTION:CAPS"></a><span class="term"><code class="literal">SIGNON_POLICY_NO_USER_INTERACTION</code></span></p></td>
-<td>No UI elements will be shown to the user.
-</td>
+<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_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-POLICY-VALIDATION:CAPS"></a><span class="term"><code class="literal">SIGNON_POLICY_VALIDATION</code></span></p></td>
-<td>UI elements can be shown to the user only when
-CAPTCHA-like security measures are required.
-</td>
+<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="signon-auth-session-cancel"></a><h3>signon_auth_session_cancel ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_auth_session_cancel (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>);</pre>
-<p>
-Cancel the authentication session.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-auth-session-cancel"></a><h3>signon_auth_session_cancel ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_auth_session_cancel (<em class="parameter"><code><a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> *self</code></em>);</pre>
+<p>Cancel the authentication session.</p>
+<div class="refsect3">
+<a name="id-1.3.3.6.9.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><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
+</div>
<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> * 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="variablelist"><table border="0">
-<col align="left" valign="top">
+<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> *
+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">
+<a name="id-1.3.3.6.9.5.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="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.6.9.5.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></p>
+</div>
+</div>
+<hr>
+<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>
+<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="id-1.3.3.6.9.6.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><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the id of the <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> to be used. Can be 0, if this session is
+not bound to any stored identity.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>method_name</p></td>
+<td class="parameter_description"><p>the name of the authentication method to be used.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>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.</td>
+<td class="parameter_name"><p>err</p></td>
+<td class="parameter_description"><p>a pointer to a location which will contain the error, in case this
+function fails.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.6.9.6.6"></a><h4>Returns</h4>
+<p> a new <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p>
+<p></p>
+</div>
+</div>
<hr>
<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/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *parent</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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<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="id-1.3.3.6.9.7.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><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td>
-<td>
-<span class="type">SignonIdentity</span> parent object.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>method_name</code></em> :</span></p></td>
-<td>the name of the authentication method to be used.</td>
+<td class="parameter_name"><p>identity</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> parent object.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>err</code></em> :</span></p></td>
-<td>a pointer to a location which will contain the error, in case this
-function fails.</td>
+<td class="parameter_name"><p>method_name</p></td>
+<td class="parameter_description"><p>the name of the authentication method to be used.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a new <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="parameter_name"><p>err</p></td>
+<td class="parameter_description"><p>a pointer to a location which will contain the error, in case this
+function fails.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.6.9.7.6"></a><h4>Returns</h4>
+<p> a new <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p>
+<p></p>
+</div>
+</div>
<hr>
<div class="refsect2">
-<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>const <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><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>
-<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
-<h3 class="title">Warning</h3>
-<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. 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>
-</div>
-<p>
-Performs one step of the authentication process. If the <span class="type">SignonIdentity</span> that
+<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><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>
+<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>
+</div>
+<p>Performs one step of the authentication process. If the <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> that
this session belongs to contains a username and a password, they will be also
passed to the authentication plugin, otherwise they should be set directly in
-<em class="parameter"><code>session_data</code></em>.
-<em class="parameter"><code>session_data</code></em> should be used to add additional authentication parameters to the
-session, or to override the parameters otherwise taken from the identity.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<em class="parameter"><code>session_data</code></em>
+.
+<em class="parameter"><code>session_data</code></em>
+ should be used to add additional authentication parameters to the
+session, or to override the parameters otherwise taken from the identity.</p>
+<div class="refsect3">
+<a name="id-1.3.3.6.9.8.6"></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><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>session_data</code></em> :</span></p></td>
-<td>a dictionary of parameters. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 GValue]</span>
-</td>
+<td class="parameter_name"><p>session_data</p></td>
+<td class="parameter_description"><p> a dictionary of parameters. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 GValue]</span></td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>mechanism</code></em> :</span></p></td>
-<td>the authentication mechanism to be used.</td>
+<td class="parameter_name"><p>mechanism</p></td>
+<td class="parameter_description"><p>the authentication mechanism to be used.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>a callback which will be called with the result. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p> a callback which will be called with the result. </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><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user data to be passed to the callback.</td>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data to be passed to the callback.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<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>
-<p>
-Performs one step of the authentication process. If the <span class="type">SignonIdentity</span> that
-this session belongs to contains a username and a password, the daemon will
-pass them to the authentication plugin, otherwise they should be set directly in
-<em class="parameter"><code>session_data</code></em>.
-<em class="parameter"><code>session_data</code></em> should be used to add additional authentication parameters to the
-session, or to override the parameters otherwise taken from the identity.
-</p>
-<p>
-What specific parameters should be used can be found from authentication plugins'
-documentation (look for parameters that are expected in <code class="function">gsignond_plugin_request_initial()</code>
-for the first step, and parameters that are expected in <code class="function">gsignond_plugin_request()</code> for
-the subsequent steps). See, for example, <span class="type">GSignondPasswordPlugin</span> and <span class="type">GSignondDigestPlugin</span>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<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
+session.</p>
+<p>What specific parameters should be used can be found from authentication plugins'
+documentation (look for parameters that are expected in <a href="../gsignond/GSignondPlugin.html#gsignond-plugin-request-initial"><code class="function">gsignond_plugin_request_initial()</code></a>
+for the first step, and parameters that are expected in <a href="../gsignond/GSignondPlugin.html#gsignond-plugin-request"><code class="function">gsignond_plugin_request()</code></a> for
+the subsequent steps). See, for example, <a href="../gsignond/GSignondPasswordPlugin.html"><span class="type">GSignondPasswordPlugin</span></a> and <a href="../gsignond/GSignondDigestPlugin.html"><span class="type">GSignondDigestPlugin</span></a>.</p>
+<p>If the <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> that this session belongs to contains a username and a password,
+the daemon will pass them to the authentication plugin, otherwise they should be set directly in
+<em class="parameter"><code>session_data</code></em>
+. The daemon also passes a list of identity's allowed realms to the plugin,
+and they cannot be overriden.</p>
+<div class="refsect3">
+<a name="id-1.3.3.6.9.9.7"></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><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>session_data</code></em> :</span></p></td>
-<td>a dictionary of parameters. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
+<td class="parameter_name"><p>session_data</p></td>
+<td class="parameter_description"><p> a dictionary of parameters. </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><p><span class="term"><em class="parameter"><code>mechanism</code></em> :</span></p></td>
-<td>the authentication mechanism to be used.</td>
+<td class="parameter_name"><p>mechanism</p></td>
+<td class="parameter_description"><p>the authentication mechanism to be used.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
-<td>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. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
-</td>
+<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_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>
-<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
-<td>a callback which will be called when the
-authentication reply is available. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
+<td class="parameter_name"><p>callback</p></td>
+<td class="parameter_description"><p> a callback which will be called when the
+authentication reply is available. </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><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user data to be passed to the callback.</td>
+<td class="parameter_name"><p>user_data</p></td>
+<td class="parameter_description"><p>user data to be passed to the callback.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
+</div>
<p class="since">Since 1.8</p>
</div>
<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> * 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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
+<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> *
+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>
+<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>
+<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><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="parameter_name"><p>self</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
-<td>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
-<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>.</td>
+<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
+<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><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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>.</td>
+<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_annotations"> </td>
</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>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
-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
+</tbody>
+</table></div>
+</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
+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:
-<span class="type">"response-final"</span> for the final response, and <span class="type">"response"</span>
-for the intermediate responses. See, for example, <span class="type">GSignondPasswordPlugin</span>
-and <span class="type">GSignondDigestPlugin</span>.</td>
+<a href="../gsignond/GSignondPlugin.html#GSignondPlugin-response-final"><span class="type">“response-final”</span></a> for the final response, and <a href="../gsignond/GSignondPlugin.html#GSignondPlugin-response"><span class="type">“response”</span></a>
+for the intermediate responses. See, for example, <a href="../gsignond/GSignondPasswordPlugin.html"><span class="type">GSignondPasswordPlugin</span></a>
+and <a href="../gsignond/GSignondDigestPlugin.html"><span class="type">GSignondDigestPlugin</span></a>.</p>
+<p></p>
+</div>
+<p class="since">Since 1.8</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-auth-session-query-available-mechanisms"></a><h3>signon_auth_session_query_available_mechanisms ()</h3>
+<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><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>
+<p>Queries the mechanisms available for this authentication session. The result
+will be the intersection between <em class="parameter"><code>wanted_mechanisms</code></em>
+ and the mechanisms
+supported by the authentication plugin (and allowed by the <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> that this
+session belongs to).</p>
+<div class="refsect3">
+<a name="id-1.3.3.6.9.11.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="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</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_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p> a callback which will be called with the result. </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 be passed to the callback.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
-<p class="since">Since 1.8</p>
+</div>
+</div>
+</div>
+<div class="refsect1">
+<a name="SignonAuthSession.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="SIGNON-SESSION-DATA-CAPTION:CAPS"></a><h3>SIGNON_SESSION_DATA_CAPTION</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_CAPTION "Caption"
+</pre>
+<p>Caption for the UI dialog.</p>
</div>
<hr>
<div class="refsect2">
-<a name="signon-auth-session-query-available-mechanisms"></a><h3>signon_auth_session_query_available_mechanisms ()</h3>
-<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><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>
-<p>
-Queries the mechanisms available for this authentication session. The result
-will be the intersection between <em class="parameter"><code>wanted_mechanisms</code></em> and the mechanisms
-supported by the authentication plugin (and allowed by the <span class="type">SignonIdentity</span> that this
-session belongs to).
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="SIGNON-SESSION-DATA-PROXY:CAPS"></a><h3>SIGNON_SESSION_DATA_PROXY</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_PROXY "NetworkProxy"
+</pre>
+<p>Proxy.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SIGNON-SESSION-DATA-REALM:CAPS"></a><h3>SIGNON_SESSION_DATA_REALM</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_REALM "Realm"
+</pre>
+<p>Realm.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SIGNON-SESSION-DATA-RENEW-TOKEN:CAPS"></a><h3>SIGNON_SESSION_DATA_RENEW_TOKEN</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_RENEW_TOKEN "RenewToken"
+</pre>
+<p>Requests the signon plugin to obtain a new token (boolean).</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SIGNON-SESSION-DATA-SECRET:CAPS"></a><h3>SIGNON_SESSION_DATA_SECRET</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_SECRET "Secret"
+</pre>
+<p>Secret.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SIGNON-SESSION-DATA-TIMEOUT:CAPS"></a><h3>SIGNON_SESSION_DATA_TIMEOUT</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_TIMEOUT "NetworkTimeout"
+</pre>
+<p>Network timeout, in milliseconds (uint32).</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SIGNON-SESSION-DATA-UI-POLICY:CAPS"></a><h3>SIGNON_SESSION_DATA_UI_POLICY</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_UI_POLICY "UiPolicy"
+</pre>
+<p>Policy for the signon process.</p>
+<div class="refsect3">
+<a name="id-1.3.3.6.10.8.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>see_also</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonAuthSession.html#SignonSessionDataUiPolicy" title="enum SignonSessionDataUiPolicy"><span class="type">SignonSessionDataUiPolicy</span></a></p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SIGNON-SESSION-DATA-USERNAME:CAPS"></a><h3>SIGNON_SESSION_DATA_USERNAME</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_USERNAME "UserName"
+</pre>
+<p>Username.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SIGNON-SESSION-DATA-WINDOW-ID:CAPS"></a><h3>SIGNON_SESSION_DATA_WINDOW_ID</h3>
+<pre class="programlisting">#define SIGNON_SESSION_DATA_WINDOW_ID "WindowId"
+</pre>
+<p>Platform-specific window id (for dialog transiency) - uint32.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonAuthSession-struct"></a><h3>struct SignonAuthSession</h3>
+<pre class="programlisting">struct SignonAuthSession;</pre>
+<p>Opaque struct. Use the accessor functions below.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonAuthSessionClass"></a><h3>struct SignonAuthSessionClass</h3>
+<pre class="programlisting">struct SignonAuthSessionClass {
+ GObjectClass parent;
+};
+</pre>
+<p>Opaque struct. Use the accessor functions below.</p>
+<div class="refsect3">
+<a name="id-1.3.3.6.10.12.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<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_description"><p>reference to the parent class</p></td>
+<td class="struct_member_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonSessionDataUiPolicy"></a><h3>enum SignonSessionDataUiPolicy</h3>
+<p>UI policy for the signon process, passed to the UI plugin.</p>
+<div class="refsect3">
+<a name="id-1.3.3.6.10.13.4"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
+<td class="enum_member_name"><p><a name="SIGNON-POLICY-DEFAULT:CAPS"></a>SIGNON_POLICY_DEFAULT</p></td>
+<td class="enum_member_description">
+<p>The plugin can decide when to show UI.</p>
+</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>wanted_mechanisms</code></em> :</span></p></td>
-<td>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.</td>
+<td class="enum_member_name"><p><a name="SIGNON-POLICY-REQUEST-PASSWORD:CAPS"></a>SIGNON_POLICY_REQUEST_PASSWORD</p></td>
+<td class="enum_member_description">
+<p>Force the user to enter the password.</p>
+</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>a callback which will be called with the result. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
+<td class="enum_member_name"><p><a name="SIGNON-POLICY-NO-USER-INTERACTION:CAPS"></a>SIGNON_POLICY_NO_USER_INTERACTION</p></td>
+<td class="enum_member_description">
+<p>No UI elements will be shown to the user.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user data to be passed to the callback.</td>
+<td class="enum_member_name"><p><a name="SIGNON-POLICY-VALIDATION:CAPS"></a>SIGNON_POLICY_VALIDATION</p></td>
+<td class="enum_member_description">
+<p>UI elements can be shown to the user only when
+CAPTCHA-like security measures are required.</p>
+</td>
+<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
+</div>
<div class="refsect1">
<a name="SignonAuthSession.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
-<a name="SignonAuthSession--identity"></a><h3>The <code class="literal">"identity"</code> property</h3>
-<pre class="programlisting"> "identity" <span class="type">SignonIdentity</span>* : Read / Write / Construct Only</pre>
+<a name="SignonAuthSession--identity"></a><h3>The <code class="literal">“identity”</code> property</h3>
+<pre class="programlisting"> “identity” <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> *</pre>
<p>Identity Object construct parameter.</p>
+<p>Flags: Read / Write / Construct Only</p>
</div>
</div>
<div class="refsect1">
<a name="SignonAuthSession.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
-<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) : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS"><code class="literal">Action</code></a></pre>
-<p>
-Emitted when the state of the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> changes.
-FIXME: <em class="parameter"><code>state</code></em> should be registered as a GLib type (or use one from
-libgsignond-common)
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<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="../gsignond/GSignondPlugin.html"><span class="type">GSignondPlugin</span></a> via <a href="../gsignond/GSignondPlugin.html#GSignondPlugin-status-changed"><span class="type">“status-changed”</span></a> signal.</p>
+<div class="refsect3">
+<a name="id-1.3.3.6.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><p><span class="term"><em class="parameter"><code>auth_session</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>
-</td>
+<td class="parameter_name"><p>auth_session</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a></p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>state</code></em> :</span></p></td>
-<td>the current state of the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>
-</td>
+<td class="parameter_name"><p>state</p></td>
+<td class="parameter_description"><p>the current state of the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a></p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td>
-<td>the message associated with the state change</td>
+<td class="parameter_name"><p>message</p></td>
+<td class="parameter_description"><p>the message associated with the state change</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user data set when the signal handler was connected.</td>
+<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: <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p>
+</div>
</div>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>libgsignon-glib Reference Manual: SignonIdentity</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
+<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
+<link rel="up" href="credential-management.html" title="Credential management">
+<link rel="prev" href="SignonAuthService.html" title="SignonAuthService">
+<link rel="next" href="SignonIdentityInfo.html" title="SignonIdentityInfo">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span>
+ <a href="#SignonIdentity.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span>
+ <a href="#SignonIdentity.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span>
+ <a href="#SignonIdentity.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span>
+ <a href="#SignonIdentity.signals" class="shortcut">Signals</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="SignonAuthService.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="SignonIdentityInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="SignonIdentity"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="SignonIdentity.top_of_page"></a>SignonIdentity</span></h2>
+<p>SignonIdentity — client side presentation of a credential.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="SignonIdentity.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="SignonIdentity.html#SignonIdentityInfoCb" title="SignonIdentityInfoCb ()">*SignonIdentityInfoCb</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="SignonIdentity.html#SignonIdentitySessionReadyCb" title="SignonIdentitySessionReadyCb ()">*SignonIdentitySessionReadyCb</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="SignonIdentity.html#SignonIdentityStoreCredentialsCb" title="SignonIdentityStoreCredentialsCb ()">*SignonIdentityStoreCredentialsCb</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="SignonIdentity.html#SignonIdentityVerifyCb" title="SignonIdentityVerifyCb ()">*SignonIdentityVerifyCb</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="SignonIdentity.html#SignonIdentityVoidCb" title="SignonIdentityVoidCb ()">*SignonIdentityVoidCb</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">
+<a class="link" href="SignonIdentity.html#signon-identity-add-reference" title="signon_identity_add_reference ()">signon_identity_add_reference</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="returnvalue">SignonAuthSession</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentity.html#signon-identity-create-session" title="signon_identity_create_session ()">signon_identity_create_session</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-get-auth-session" title="signon_identity_get_auth_session ()">signon_identity_get_auth_session</a> <span class="c_punctuation">()</span>
+</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>
+<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>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="returnvalue">SignonIdentity</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentity.html#signon-identity-new" title="signon_identity_new ()">signon_identity_new</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="returnvalue">SignonIdentity</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentity.html#signon-identity-new-from-db" title="signon_identity_new_from_db ()">signon_identity_new_from_db</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="returnvalue">SignonIdentity</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentity.html#signon-identity-new-with-context" title="signon_identity_new_with_context ()">signon_identity_new_with_context</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="returnvalue">SignonIdentity</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentity.html#signon-identity-new-with-context-from-db" title="signon_identity_new_with_context_from_db ()">signon_identity_new_with_context_from_db</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-query-info" title="signon_identity_query_info ()">signon_identity_query_info</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-remove" title="signon_identity_remove ()">signon_identity_remove</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-remove-reference" title="signon_identity_remove_reference ()">signon_identity_remove_reference</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>
+<tr>
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentity.html#signon-identity-store-credentials-with-args" title="signon_identity_store_credentials_with_args ()">signon_identity_store_credentials_with_args</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-store-credentials-with-info" title="signon_identity_store_credentials_with_info ()">signon_identity_store_credentials_with_info</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-verify-secret" title="signon_identity_verify_secret ()">signon_identity_verify_secret</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="SignonIdentity.properties"></a><h2>Properties</h2>
+<div class="informaltable"><table border="0">
+<colgroup>
+<col width="150px" class="properties_type">
+<col width="300px" class="properties_name">
+<col width="200px" class="properties_flags">
+</colgroup>
+<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>
+<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_name"><a class="link" href="SignonIdentity.html#SignonIdentity--id" title="The “id” property">id</a></td>
+<td class="property_flags">Read / Write</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="SignonIdentity.signals"></a><h2>Signals</h2>
+<div class="informaltable"><table border="0">
+<colgroup>
+<col width="150px" class="signals_return">
+<col width="300px" class="signals_name">
+<col width="200px" class="signals_flags">
+</colgroup>
+<tbody><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>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="SignonIdentity.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="SignonIdentity.html#SignonIdentity-struct" title="struct SignonIdentity">SignonIdentity</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="SignonIdentity.html#SignonIdentityClass" title="struct SignonIdentityClass">SignonIdentityClass</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="SignonIdentity.html#SignonIdentityReferenceAddedCb" title="SignonIdentityReferenceAddedCb">SignonIdentityReferenceAddedCb</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="SignonIdentity.html#SignonIdentityReferenceRemovedCb" title="SignonIdentityReferenceRemovedCb">SignonIdentityReferenceRemovedCb</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="SignonIdentity.html#SignonIdentityRemovedCb" title="SignonIdentityRemovedCb">SignonIdentityRemovedCb</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>
+</tbody>
+</table></div>
+</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>
+ <span class="lineart">╰──</span> SignonIdentity
+</pre>
+</div>
+<div class="refsect1">
+<a name="SignonIdentity.description"></a><h2>Description</h2>
+<p>The <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> objects represent identities and provide operations that
+can be performed on them such as identity creation, removal, starting an authentication
+session, and so on. </p>
+<p>Identities can also be stored and retrieved from a gSSO database, in which
+case they also contain a number of properties that can be retrieved
+using <a class="link" href="SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()"><code class="function">signon_identity_query_info()</code></a> and are represented via <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.
+Such identities are identified by a numeric id number and they are subject
+to access control.</p>
+<div class="refsect1">
+<a name="id-1.3.3.3.8.4"></a><h2>Operations on an identity</h2>
+</div>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>a new identity can be created with <a class="link" href="SignonIdentity.html#signon-identity-new" title="signon_identity_new ()"><code class="function">signon_identity_new()</code></a> or
+<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>. This operation does not store the
+identity to the database, the identity is not visible to other applications,
+and accordingly it is not subject to access control.</p></li>
+<li class="listitem"><p>an authentication session can be started from an identity using
+<a class="link" href="SignonIdentity.html#signon-identity-create-session" title="signon_identity_create_session ()"><code class="function">signon_identity_create_session()</code></a> or <a class="link" href="SignonAuthSession.html#signon-auth-session-new" title="signon_auth_session_new ()"><code class="function">signon_auth_session_new()</code></a>. If the identity
+has been retrieved from a database, only the authentication methods listed
+in associated <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> are allowed to be used.</p></li>
+<li class="listitem"><p>identites stored in a database can be enumerated using
+<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>. Only the identites owned by the
+requesting application are returned.</p></li>
+<li class="listitem"><p>identities stored in a database can be retrieved using <a class="link" href="SignonIdentity.html#signon-identity-new-from-db" title="signon_identity_new_from_db ()"><code class="function">signon_identity_new_from_db()</code></a>
+or <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>, subject to access control (an
+application performing that operation has to be either the identity's owner,
+or it has to be on the ACL list).</p></li>
+<li class="listitem"><p>newly created identities can be stored to the database, and identities already
+in the database can be updated using <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>
+(with <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>)
+or <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> (with separate arguments that
+together form the contents of <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>). Only the owners can update
+identites.</p></li>
+<li class="listitem"><p>identites in the database can be removed by their owners using
+<a class="link" href="SignonIdentity.html#signon-identity-remove" title="signon_identity_remove ()"><code class="function">signon_identity_remove()</code></a>.</p></li>
+<li class="listitem"><p>identity owners can request to close all authentication sessions and
+remove all secrets and tokens using <a class="link" href="SignonIdentity.html#signon-identity-signout" title="signon_identity_signout ()"><code class="function">signon_identity_signout()</code></a>.</p></li>
+</ul></div>
+<div class="refsect1">
+<a name="id-1.3.3.3.8.6"></a><h2>Data fields in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>
+</h2>
+</div>
+<p>These are the data fields that are stored into the database as a part of an
+identity record using <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> and can be retrieved using
+<a class="link" href="SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()"><code class="function">signon_identity_query_info()</code></a> or <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="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>Caption is a display name for the identity, presented to the user. Default
+value is an empty caption. </p></li>
+<li class="listitem"><p>Realms is a list of realms that the identity can be used in.
+Interpretation of this field is up to the method. Typically it is
+a list of internet domains allowed for an authentication request.
+Default value is an empty list.</p></li>
+<li class="listitem"><p>Type is a <a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="type">SignonIdentityType</span></a>. Interpretation of this field is up to the application;
+gSSO does not use it. Default value is <a class="link" href="SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-OTHER:CAPS"><span class="type">SIGNON_IDENTITY_TYPE_OTHER</span></a></p></li>
+<li class="listitem"><p>Owner is a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> object, which specifies the identity
+owner. Owners are allowed to perform all of the operations on the identity
+specified above. By default an identity's owner is determined by gSSO daemon
+using system services for the system context, and a string supplied in
+<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> for the application context.</p></li>
+<li class="listitem"><p>ACL is a list of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> objects, that specifies applications
+that can access the identity to perform authentication sessions. They're not
+allowed to make any changes to the identity. Default value is an empty list,
+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
+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>
+<li class="listitem"><p>Id is a numeric identification of the identity record in the database. The
+application cannot set this, as it's determined by the daemon.</p></li>
+<li class="listitem"><p>Username is used to provide a username to authentication plugins after
+issuing <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>. Applications can override this
+by providing a username explicitly in the <em class="parameter"><code>session_data</code></em>
+ parameter to that
+function. By default there is no username.</p></li>
+<li class="listitem"><p>Secret is used in the same way as username, but it is write-only (cannot
+be retrieved from a <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>). It is also possible to prevent
+secret from being stored in the database.</p></li>
+</ul></div>
+</div>
+<div class="refsect1">
+<a name="SignonIdentity.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="SignonIdentityInfoCb"></a><h3>SignonIdentityInfoCb ()</h3>
+<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>
+<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.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>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>info</p></td>
+<td class="parameter_description"><p> the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> for <em class="parameter"><code>self</code></em>
+. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</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, 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_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="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>
+<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.3.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="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</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_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_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>bus_name</p></td>
+<td class="parameter_description"><p>a D-Bus bus name for the session.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>object_path</p></td>
+<td class="parameter_description"><p>a D-Bus object path for the session.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonIdentityStoreCredentialsCb"></a><h3>SignonIdentityStoreCredentialsCb ()</h3>
+<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><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> 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>
+<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">
+<a name="id-1.3.3.3.9.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>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>id</p></td>
+<td class="parameter_description"><p>the numeric ID of the identity in the database.</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_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="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>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.5.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>valid</p></td>
+<td class="parameter_description"><p>whether the secret is valid.</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_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="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>
+<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.6.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>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_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="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><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>
+<p>Adds named reference to identity. Not currently supported by gSSO.</p>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.7.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>reference</p></td>
+<td class="parameter_description"><p>reference to be added</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p>callback</p></td>
+<td class="parameter_annotations"> </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-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>
+<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
+supported by gSSO.</p>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.8.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>method</p></td>
+<td class="parameter_description"><p>authentication method.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>error</p></td>
+<td class="parameter_description"><p>pointer to a location which will receive the error, if any.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.8.6"></a><h4>Returns</h4>
+<p> a new <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-identity-get-auth-session"></a><h3>signon_identity_get_auth_session ()</h3>
+<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><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.9.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>session</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> object to get the remote object for.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>method</p></td>
+<td class="parameter_description"><p>method name for the session.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p> completion callback. </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>
+</tbody>
+</table></div>
+</div>
+</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> *
+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 class="refsect3">
+<a name="id-1.3.3.3.9.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>identity</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></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.10.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></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-identity-new"></a><h3>signon_identity_new ()</h3>
+<pre class="programlisting"><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="returnvalue">SignonIdentity</span></a> *
+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>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.11.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>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-identity-new-from-db"></a><h3>signon_identity_new_from_db ()</h3>
+<pre class="programlisting"><a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="returnvalue">SignonIdentity</span></a> *
+signon_identity_new_from_db (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> id</code></em>);</pre>
+<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
+application context.</p>
+<p>Applications can determine the <em class="parameter"><code>id</code></em>
+ either by enumerating the identities with
+<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> (if they're the owner of the identity)
+or via other means (such as the system's accounts service, or an application
+configuration).</p>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.12.6"></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>id</p></td>
+<td class="parameter_description"><p>identity ID.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.12.7"></a><h4>Returns</h4>
+<p> an instance of a <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<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>
+<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>
+ is used to set the identity's owner
+if the identity is stored to the database with <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">
+<a name="id-1.3.3.3.9.13.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>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_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.13.6"></a><h4>Returns</h4>
+<p> an instance of an <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-identity-new-with-context-from-db"></a><h3>signon_identity_new_with_context_from_db ()</h3>
+<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><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</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> *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.
+Together with the system context it is used to determine by the gSSO daemon
+if the application can access the identity (the application needs to be either the
+identity's owner or to be present on the ACL).</p>
+<p>Applications can determine the <em class="parameter"><code>id</code></em>
+ either by enumerating the identities with
+<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> (if they're the owner of the identity)
+or via other means (such as the system's accounts service, or an application
+configuration).</p>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.14.6"></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>id</p></td>
+<td class="parameter_description"><p>identity ID.</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_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.3.9.14.7"></a><h4>Returns</h4>
+<p> an instance of a <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a>.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-identity-query-info"></a><h3>signon_identity_query_info ()</h3>
+<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>
+<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">
+<a name="id-1.3.3.3.9.15.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>cb</p></td>
+<td class="parameter_description"><p> callback. </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-identity-remove"></a><h3>signon_identity_remove ()</h3>
+<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>
+<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 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>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-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><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>
+<p>Removes named reference from identity. Not currently supported by gSSO.</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>reference</p></td>
+<td class="parameter_description"><p>reference to be removed</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p>callback</p></td>
+<td class="parameter_annotations"> </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-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>
+<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.18.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>cb</p></td>
+<td class="parameter_description"><p> callback. </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-identity-store-credentials-with-args"></a><h3>signon_identity_store_credentials_with_args ()</h3>
+<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 <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>
+<p>Stores the given data into the identity. See above for the meaning
+of the specific fields.</p>
+<div class="refsect3">
+<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">
+<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>username</p></td>
+<td class="parameter_description"><p> username. </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>
+<td class="parameter_name"><p>secret</p></td>
+<td class="parameter_description"><p> secret. </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>
+<td class="parameter_name"><p>store_secret</p></td>
+<td class="parameter_description"><p>whether gSSO should save the password in secret storage.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>methods</p></td>
+<td class="parameter_description"><p> allowed methods. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 GStrv]</span></td>
+</tr>
+<tr>
+<td class="parameter_name"><p>caption</p></td>
+<td class="parameter_description"><p> caption. </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>
+<td class="parameter_name"><p>realms</p></td>
+<td class="parameter_description"><p> allowed realms. </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>
+<td class="parameter_name"><p>owner</p></td>
+<td class="parameter_description"><p> owner. </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>
+<td class="parameter_name"><p>access_control_list</p></td>
+<td class="parameter_description"><p> access control list. </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>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the type of the identity.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p> callback. </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-identity-store-credentials-with-info"></a><h3>signon_identity_store_credentials_with_info ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_identity_store_credentials_with_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>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>
+<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
+their defaults.</p>
+<div class="refsect3">
+<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">
+<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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> data to store.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p> callback. </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-identity-verify-secret"></a><h3>signon_identity_verify_secret ()</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>
+<div class="refsect3">
+<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">
+<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>secret</p></td>
+<td class="parameter_description"><p>the secret (password) to be verified.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cb</p></td>
+<td class="parameter_description"><p> callback. </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>
+</div>
+<div class="refsect1">
+<a name="SignonIdentity.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="SignonIdentity-struct"></a><h3>struct SignonIdentity</h3>
+<pre class="programlisting">struct SignonIdentity;</pre>
+<p>Opaque struct. Use the accessor functions below.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonIdentityClass"></a><h3>struct SignonIdentityClass</h3>
+<pre class="programlisting">struct SignonIdentityClass {
+ GObjectClass parent_class;
+};
+</pre>
+<p>Opaque struct. Use the accessor functions below.</p>
+<div class="refsect3">
+<a name="id-1.3.3.3.10.3.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<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_description"><p>reference to a parent class</p></td>
+<td class="struct_member_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonIdentityReferenceAddedCb"></a><h3>SignonIdentityReferenceAddedCb</h3>
+<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentityReferenceAddedCb;
+</pre>
+<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-add-reference" title="signon_identity_add_reference ()"><code class="function">signon_identity_add_reference()</code></a>.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonIdentityReferenceRemovedCb"></a><h3>SignonIdentityReferenceRemovedCb</h3>
+<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentityReferenceRemovedCb;
+</pre>
+<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-remove-reference" title="signon_identity_remove_reference ()"><code class="function">signon_identity_remove_reference()</code></a>.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonIdentityRemovedCb"></a><h3>SignonIdentityRemovedCb</h3>
+<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentityRemovedCb;
+</pre>
+<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-remove" title="signon_identity_remove ()"><code class="function">signon_identity_remove()</code></a>.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="SignonIdentitySignedOutCb"></a><h3>SignonIdentitySignedOutCb</h3>
+<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentitySignedOutCb;
+</pre>
+<p>Callback to be passed to <a class="link" href="SignonIdentity.html#signon-identity-signout" title="signon_identity_signout ()"><code class="function">signon_identity_signout()</code></a>.</p>
+</div>
+</div>
+<div class="refsect1">
+<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>
+<p>Set/Get Application Security Context.</p>
+<p>Flags: Read / Write</p>
+<p>Default value: ""</p>
+</div>
+<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>
+<p>Set/Get Identity ID.</p>
+<p>Flags: Read / Write</p>
+<p>Default value: 0</p>
+</div>
+</div>
+<div class="refsect1">
+<a name="SignonIdentity.signal-details"></a><h2>Signal Details</h2>
+<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>
+<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>
+<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: <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-NO-HOOKS:CAPS">No Hooks</a></p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.20</div>
+</body>
+</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SignonIdentityInfo</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: SignonIdentityInfo</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="credential-management.html" title="Credential management">
-<link rel="prev" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">
+<link rel="prev" href="SignonIdentity.html" title="SignonIdentity">
<link rel="next" href="SignonSecurityContext.html" title="SignonSecurityContext">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="libgsignon-glib-SignonIdentity.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="SignonSecurityContext.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a href="#SignonIdentityInfo.synopsis" class="shortcut">Top</a>
- |
- <a href="#SignonIdentityInfo.description" class="shortcut">Description</a>
- |
- <a href="#SignonIdentityInfo.object-hierarchy" class="shortcut">Object Hierarchy</a>
-</td></tr>
-</table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span>
+ <a href="#SignonIdentityInfo.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span>
+ <a href="#SignonIdentityInfo.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="SignonIdentity.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="SignonSecurityContext.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
<div class="refentry">
<a name="SignonIdentityInfo"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<h2><span class="refentrytitle"><a name="SignonIdentityInfo.top_of_page"></a>SignonIdentityInfo</span></h2>
<p>SignonIdentityInfo — data contained in a SignonIdentity.</p>
</td>
-<td valign="top" align="right"></td>
+<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
-<div class="refsynopsisdiv">
-<a name="SignonIdentityInfo.synopsis"></a><h2>Synopsis</h2>
-<pre class="synopsis"> <a class="link" href="SignonIdentityInfo.html#SignonIdentityInfo-struct" title="SignonIdentityInfo">SignonIdentityInfo</a>;
-enum <a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType">SignonIdentityType</a>;
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-access-control-list-append" title="signon_identity_info_access_control_list_append ()">signon_identity_info_access_control_list_append</a>
- (<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 class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *security_context</code></em>);
-<a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="returnvalue">SignonIdentityInfo</span></a> * <a class="link" href="SignonIdentityInfo.html#signon-identity-info-copy" title="signon_identity_info_copy ()">signon_identity_info_copy</a> (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *other</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-free" title="signon_identity_info_free ()">signon_identity_info_free</a> (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-const <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> * <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-access-control-list" title="signon_identity_info_get_access_control_list ()">signon_identity_info_get_access_control_list</a>
- (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-caption" title="signon_identity_info_get_caption ()">signon_identity_info_get_caption</a> (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-id" title="signon_identity_info_get_id ()">signon_identity_info_get_id</a> (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-<a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="returnvalue">SignonIdentityType</span></a> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-identity-type" title="signon_identity_info_get_identity_type ()">signon_identity_info_get_identity_type</a>
- (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-methods" title="signon_identity_info_get_methods ()">signon_identity_info_get_methods</a> (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> * <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-owner" title="signon_identity_info_get_owner ()">signon_identity_info_get_owner</a>
- (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * const * <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-realms" title="signon_identity_info_get_realms ()">signon_identity_info_get_realms</a> (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <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>
- (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-username" title="signon_identity_info_get_username ()">signon_identity_info_get_username</a> (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);
-<a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="returnvalue">SignonIdentityInfo</span></a> * <a class="link" href="SignonIdentityInfo.html#signon-identity-info-new" title="signon_identity_info_new ()">signon_identity_info_new</a> ();
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-remove-method" title="signon_identity_info_remove_method ()">signon_identity_info_remove_method</a> (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-access-control-list" title="signon_identity_info_set_access_control_list ()">signon_identity_info_set_access_control_list</a>
- (<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 class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *access_control_list</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-caption" title="signon_identity_info_set_caption ()">signon_identity_info_set_caption</a> (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-identity-type" title="signon_identity_info_set_identity_type ()">signon_identity_info_set_identity_type</a>
- (<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 class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="type">SignonIdentityType</span></a> type</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-method" title="signon_identity_info_set_method ()">signon_identity_info_set_method</a> (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-methods" title="signon_identity_info_set_methods ()">signon_identity_info_set_methods</a> (<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-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *methods</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-owner" title="signon_identity_info_set_owner ()">signon_identity_info_set_owner</a> (<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 class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *owner</code></em>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-owner-from-values" title="signon_identity_info_set_owner_from_values ()">signon_identity_info_set_owner_from_values</a>
- (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-realms" title="signon_identity_info_set_realms ()">signon_identity_info_set_realms</a> (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-secret" title="signon_identity_info_set_secret ()">signon_identity_info_set_secret</a> (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-username" title="signon_identity_info_set_username ()">signon_identity_info_set_username</a> (<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>
-</div>
<div class="refsect1">
-<a name="SignonIdentityInfo.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="synopsis">
- GBoxed
- +----SignonIdentityInfo
-</pre>
-</div>
-<div class="refsect1">
-<a name="SignonIdentityInfo.description"></a><h2>Description</h2>
-<p>
-<a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> represents data contained in a database record for an identity
-and provides getters and setters for individual items.
-</p>
-<p>
-See <span class="type">SignonIdentity</span> for a detailed discussion
-of what each item means and how and when it's used.
-</p>
-</div>
-<div class="refsect1">
-<a name="SignonIdentityInfo.details"></a><h2>Details</h2>
-<div class="refsect2">
-<a name="SignonIdentityInfo-struct"></a><h3>SignonIdentityInfo</h3>
-<pre class="programlisting">typedef struct _SignonIdentityInfo SignonIdentityInfo;</pre>
-<p>
-Opaque struct. Use the accessor functions below.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityType"></a><h3>enum SignonIdentityType</h3>
-<pre class="programlisting">typedef enum {
- SIGNON_IDENTITY_TYPE_OTHER = 0,
- SIGNON_IDENTITY_TYPE_APP = 1 << 0,
- SIGNON_IDENTITY_TYPE_WEB = 1 << 1,
- SIGNON_IDENTITY_TYPE_NETWORK = 1 << 2
-} SignonIdentityType;
-</pre>
-<p>
-Identity types used in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="SignonIdentityInfo.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
<tbody>
<tr>
-<td><p><a name="SIGNON-IDENTITY-TYPE-OTHER:CAPS"></a><span class="term"><code class="literal">SIGNON_IDENTITY_TYPE_OTHER</code></span></p></td>
-<td>an identity that is not an app, web or network
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-access-control-list-append" title="signon_identity_info_access_control_list_append ()">signon_identity_info_access_control_list_append</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td><p><a name="SIGNON-IDENTITY-TYPE-APP:CAPS"></a><span class="term"><code class="literal">SIGNON_IDENTITY_TYPE_APP</code></span></p></td>
-<td>an application identity
+<td class="function_type">
+<a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="returnvalue">SignonIdentityInfo</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-copy" title="signon_identity_info_copy ()">signon_identity_info_copy</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td><p><a name="SIGNON-IDENTITY-TYPE-WEB:CAPS"></a><span class="term"><code class="literal">SIGNON_IDENTITY_TYPE_WEB</code></span></p></td>
-<td>a web identity
+<td class="function_type">
+<span class="returnvalue">void</span>
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-free" title="signon_identity_info_free ()">signon_identity_info_free</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
-<td><p><a name="SIGNON-IDENTITY-TYPE-NETWORK:CAPS"></a><span class="term"><code class="literal">SIGNON_IDENTITY_TYPE_NETWORK</code></span></p></td>
-<td>a network server identity
+<td class="function_type">
+<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-access-control-list" title="signon_identity_info_get_access_control_list ()">signon_identity_info_get_access_control_list</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>
+<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>
+</td>
+</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>
+</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">
+<a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="returnvalue">SignonIdentityType</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-identity-type" title="signon_identity_info_get_identity_type ()">signon_identity_info_get_identity_type</a> <span class="c_punctuation">()</span>
+</td>
+</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> *
+</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 class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-owner" title="signon_identity_info_get_owner ()">signon_identity_info_get_owner</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>
+<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>
+</td>
+</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>
+</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>
+<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>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="returnvalue">SignonIdentityInfo</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-new" title="signon_identity_info_new ()">signon_identity_info_new</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="SignonIdentityInfo.html#signon-identity-info-own-methods" title="signon_identity_info_own_methods ()">signon_identity_info_own_methods</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="SignonIdentityInfo.html#signon-identity-info-remove-method" title="signon_identity_info_remove_method ()">signon_identity_info_remove_method</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="SignonIdentityInfo.html#signon-identity-info-set-access-control-list" title="signon_identity_info_set_access_control_list ()">signon_identity_info_set_access_control_list</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="SignonIdentityInfo.html#signon-identity-info-set-caption" title="signon_identity_info_set_caption ()">signon_identity_info_set_caption</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="SignonIdentityInfo.html#signon-identity-info-set-identity-type" title="signon_identity_info_set_identity_type ()">signon_identity_info_set_identity_type</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="SignonIdentityInfo.html#signon-identity-info-set-method" title="signon_identity_info_set_method ()">signon_identity_info_set_method</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="SignonIdentityInfo.html#signon-identity-info-set-methods" title="signon_identity_info_set_methods ()">signon_identity_info_set_methods</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="SignonIdentityInfo.html#signon-identity-info-set-owner" title="signon_identity_info_set_owner ()">signon_identity_info_set_owner</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="SignonIdentityInfo.html#signon-identity-info-set-owner-from-values" title="signon_identity_info_set_owner_from_values ()">signon_identity_info_set_owner_from_values</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="SignonIdentityInfo.html#signon-identity-info-set-realms" title="signon_identity_info_set_realms ()">signon_identity_info_set_realms</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="SignonIdentityInfo.html#signon-identity-info-set-secret" title="signon_identity_info_set_secret ()">signon_identity_info_set_secret</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="SignonIdentityInfo.html#signon-identity-info-set-username" title="signon_identity_info_set_username ()">signon_identity_info_set_username</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-info-access-control-list-append"></a><h3>signon_identity_info_access_control_list_append ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_info_access_control_list_append
- (<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 class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *security_context</code></em>);</pre>
-<p>
-Appends a new <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item to the access control list.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<div class="refsect1">
+<a name="SignonIdentityInfo.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="datatype_keyword"> </td>
+<td class="function_name"><a class="link" href="SignonIdentityInfo.html#SignonIdentityInfo-struct" title="SignonIdentityInfo">SignonIdentityInfo</a></td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>security_context</code></em> :</span></p></td>
-<td>a security context to be appended. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType">SignonIdentityType</a></td>
</tr>
</tbody>
</table></div>
</div>
-<hr>
+<div class="refsect1">
+<a name="SignonIdentityInfo.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="screen"> GBoxed
+ <span class="lineart">╰──</span> SignonIdentityInfo
+</pre>
+</div>
+<div class="refsect1">
+<a name="SignonIdentityInfo.description"></a><h2>Description</h2>
+<p><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> represents data contained in a database record for an identity
+and provides getters and setters for individual items.</p>
+<p>See <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a> for a detailed discussion
+of what each item means and how and when it's used.</p>
+</div>
+<div class="refsect1">
+<a name="SignonIdentityInfo.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
-<a name="signon-identity-info-copy"></a><h3>signon_identity_info_copy ()</h3>
-<pre class="programlisting"><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="returnvalue">SignonIdentityInfo</span></a> * signon_identity_info_copy (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *other</code></em>);</pre>
-<p>
-Get a newly-allocated copy of <em class="parameter"><code>info</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-identity-info-access-control-list-append"></a><h3>signon_identity_info_access_control_list_append ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_identity_info_access_control_list_append
+ (<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 class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *security_context</code></em>);</pre>
+<p>Appends a new <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item to the access control list.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.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><p><span class="term"><em class="parameter"><code>other</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>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.</td>
+<td class="parameter_name"><p>security_context</p></td>
+<td class="parameter_description"><p> a security context to be appended. </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>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-free"></a><h3>signon_identity_info_free ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_info_free (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);</pre>
-<p>
-Destroys the given <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> item.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-identity-info-copy"></a><h3>signon_identity_info_copy ()</h3>
+<pre class="programlisting"><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="returnvalue">SignonIdentityInfo</span></a> *
+signon_identity_info_copy (<em class="parameter"><code>const <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *other</code></em>);</pre>
+<p>Get a newly-allocated copy of <em class="parameter"><code>info</code></em>
+.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.3.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>other</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.3.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></p>
+</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-get-access-control-list"></a><h3>signon_identity_info_get_access_control_list ()</h3>
-<pre class="programlisting">const <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> * signon_identity_info_get_access_control_list
- (<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 access control list associated with an identity.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a list of ACL security contexts. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<a name="signon-identity-info-free"></a><h3>signon_identity_info_free ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_identity_info_free (<em class="parameter"><code><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> *info</code></em>);</pre>
+<p>Destroys the given <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> item.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</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> * 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>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the display name for the identity.</td>
-</tr>
-</tbody>
+<a name="signon-identity-info-get-access-control-list"></a><h3>signon_identity_info_get_access_control_list ()</h3>
+<pre class="programlisting"><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> *
+signon_identity_info_get_access_control_list
+ (<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 access control list associated with an identity.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.5.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.5.6"></a><h4>Returns</h4>
+<p> a list of ACL security contexts. </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>
<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> 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>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the numeric ID of the identity.</td>
-</tr>
-</tbody>
+<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> *
+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>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.6.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.6.6"></a><h4>Returns</h4>
+<p> the display name for the identity.</p>
+<p></p>
+</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-get-identity-type"></a><h3>signon_identity_info_get_identity_type ()</h3>
-<pre class="programlisting"><a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="returnvalue">SignonIdentityType</span></a> signon_identity_info_get_identity_type
- (<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 type of the identity.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the type of the identity.</td>
-</tr>
-</tbody>
+<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>
+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>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.7.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.7.6"></a><h4>Returns</h4>
+<p> the numeric ID of the identity.</p>
+<p></p>
+</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-get-methods"></a><h3>signon_identity_info_get_methods ()</h3>
-<pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * 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
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-methods" title="signon_identity_info_set_methods ()"><code class="function">signon_identity_info_set_methods()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>(element-type utf8 GStrv): the table of allowed
-methods and mechanisms. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<a name="signon-identity-info-get-identity-type"></a><h3>signon_identity_info_get_identity_type ()</h3>
+<pre class="programlisting"><a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="returnvalue">SignonIdentityType</span></a>
+signon_identity_info_get_identity_type
+ (<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 type of the identity.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.8.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.8.6"></a><h4>Returns</h4>
+<p> the type of the identity.</p>
+<p></p>
+</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-get-owner"></a><h3>signon_identity_info_get_owner ()</h3>
-<pre class="programlisting">const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> * signon_identity_info_get_owner
- (<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 identity owner's security context.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a security context. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<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> *
+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
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-methods" title="signon_identity_info_set_methods ()"><code class="function">signon_identity_info_set_methods()</code></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.9.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.9.6"></a><h4>Returns</h4>
+<p> (element-type utf8 GStrv): the table of allowed
+methods and mechanisms. </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>
+<hr>
+<div class="refsect2">
+<a name="signon-identity-info-get-owner"></a><h3>signon_identity_info_get_owner ()</h3>
+<pre class="programlisting">const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
+signon_identity_info_get_owner (<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 identity owner's security context.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.10.6"></a><h4>Returns</h4>
+<p> a security context. </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>
+<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 *
+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 class="refsect3">
+<a name="id-1.3.3.4.7.11.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.11.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><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>
<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 * 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 realms of <em class="parameter"><code>info</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+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>
+ should be stored by gSSO in the secret database.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.12.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.12.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></p>
+</div>
+</div>
+<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> *
+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">
+<a name="id-1.3.3.4.7.13.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>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.13.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></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="signon-identity-info-new"></a><h3>signon_identity_info_new ()</h3>
+<pre class="programlisting"><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="returnvalue">SignonIdentityInfo</span></a> *
+signon_identity_info_new ();</pre>
+<p>Creates a new <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> item.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.14.5"></a><h4>Returns</h4>
+<p> a new <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> item.</p>
+<p></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<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>
+<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>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.15.6"></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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>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. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
+<td class="parameter_name"><p>methods</p></td>
+<td class="parameter_description"><p> (element-type utf8 GStrv): methods. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</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> 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> should be stored by gSSO in the secret database.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<p>Remove <em class="parameter"><code>method</code></em>
+ from the list of allowed authentication methods.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.16.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<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.</td>
+<td class="parameter_name"><p>method</p></td>
+<td class="parameter_description"><p>an authentication method.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<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> * 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="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-identity-info-set-access-control-list"></a><h3>signon_identity_info_set_access_control_list ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_identity_info_set_access_control_list
+ (<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 class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *access_control_list</code></em>);</pre>
+<p>Set an access control list associated with an identity.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>the username, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
+<td class="parameter_name"><p>access_control_list</p></td>
+<td class="parameter_description"><p> a list of ACL security contexts. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-info-new"></a><h3>signon_identity_info_new ()</h3>
-<pre class="programlisting"><a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="returnvalue">SignonIdentityInfo</span></a> * signon_identity_info_new ();</pre>
-<p>
-Creates a new <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> item.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a new <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> item.</td>
-</tr></tbody>
-</table></div>
</div>
<hr>
<div class="refsect2">
-<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>
-<p>
-Remove <em class="parameter"><code>method</code></em> from the list of allowed authentication methods.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<p>Sets the caption (display name) for the identity.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.18.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>method</code></em> :</span></p></td>
-<td>an authentication method.</td>
+<td class="parameter_name"><p>caption</p></td>
+<td class="parameter_description"><p>the caption.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-set-access-control-list"></a><h3>signon_identity_info_set_access_control_list ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_info_set_access_control_list
- (<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 class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *access_control_list</code></em>);</pre>
-<p>
-Set an access control list associated with an identity.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-identity-info-set-identity-type"></a><h3>signon_identity_info_set_identity_type ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_identity_info_set_identity_type
+ (<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 class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="type">SignonIdentityType</span></a> type</code></em>);</pre>
+<p>Specifies the type of this identity.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.19.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>access_control_list</code></em> :</span></p></td>
-<td>a list of ACL security contexts. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the type of the identity.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<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>
-<p>
-Sets the caption (display name) for the identity.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<p>Adds a method to the list of allowed authentication methods.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.20.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>method</p></td>
+<td class="parameter_description"><p>an authentication method.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>caption</code></em> :</span></p></td>
-<td>the caption.</td>
+<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_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-set-identity-type"></a><h3>signon_identity_info_set_identity_type ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_info_set_identity_type
- (<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 class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="type">SignonIdentityType</span></a> type</code></em>);</pre>
-<p>
-Specifies the type of this identity.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<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.21.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
-<td>the type of the identity.</td>
+<td class="parameter_name"><p>methods</p></td>
+<td class="parameter_description"><p> (element-type utf8 GStrv): methods. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<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>
-<p>
-Adds a method to the list of allowed authentication methods.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-identity-info-set-owner"></a><h3>signon_identity_info_set_owner ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_identity_info_set_owner (<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 class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *owner</code></em>);</pre>
+<p>Set identity owner's security context.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.22.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>method</code></em> :</span></p></td>
-<td>an authentication method.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>mechanisms</code></em> :</span></p></td>
-<td>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.</td>
+<td class="parameter_name"><p>owner</p></td>
+<td class="parameter_description"><p> a security context of owner. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<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>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *methods</code></em>);</pre>
-<p>
-Set authentication methods that are allowed to be used with this identity.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-identity-info-set-owner-from-values"></a><h3>signon_identity_info_set_owner_from_values ()</h3>
+<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>
+<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>
+<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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>methods</code></em> :</span></p></td>
-<td>(element-type utf8 GStrv): methods. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
+<td class="parameter_name"><p>system_context</p></td>
+<td class="parameter_description"><p>owner's system context.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>application_context</p></td>
+<td class="parameter_description"><p>owner's application context.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-set-owner"></a><h3>signon_identity_info_set_owner ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_info_set_owner (<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 class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *owner</code></em>);</pre>
-<p>
-Set identity owner's security context.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<p>Specify what realms this identity can be used in.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.24.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>owner</code></em> :</span></p></td>
-<td>a security context of owner. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
+<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_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-identity-info-set-owner-from-values"></a><h3>signon_identity_info_set_owner_from_values ()</h3>
-<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>
-<p>
-Set identity owner's security context.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<p>Sets the secret (password) for the identity, and whether the gSSO daemon
+should remember it.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.25.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>system_context</code></em> :</span></p></td>
-<td>owner's system context.</td>
+<td class="parameter_name"><p>secret</p></td>
+<td class="parameter_description"><p>the secret.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>application_context</code></em> :</span></p></td>
-<td>owner's application context.</td>
+<td class="parameter_name"><p>store_secret</p></td>
+<td class="parameter_description"><p>whether signond should store the secret in its DB.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<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>
-<p>
-Specify what realms this identity can be used in.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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>
+<p>Sets the username for the identity.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.7.26.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><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>realms</code></em> :</span></p></td>
-<td>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.</td>
+<td class="parameter_name"><p>username</p></td>
+<td class="parameter_description"><p>the username.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
+</div>
+<div class="refsect1">
+<a name="SignonIdentityInfo.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="SignonIdentityInfo-struct"></a><h3>SignonIdentityInfo</h3>
+<pre class="programlisting">typedef struct _SignonIdentityInfo SignonIdentityInfo;</pre>
+<p>Opaque struct. Use the accessor functions below.</p>
+</div>
<hr>
<div class="refsect2">
-<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>
-<p>
-Sets the secret (password) for the identity, and whether the gSSO daemon
-should remember it.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="SignonIdentityType"></a><h3>enum SignonIdentityType</h3>
+<p>Identity types used in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.3.4.8.3.4"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>secret</code></em> :</span></p></td>
-<td>the secret.</td>
+<td class="enum_member_name"><p><a name="SIGNON-IDENTITY-TYPE-OTHER:CAPS"></a>SIGNON_IDENTITY_TYPE_OTHER</p></td>
+<td class="enum_member_description">
+<p>an identity that is not an app, web or network</p>
+</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>store_secret</code></em> :</span></p></td>
-<td>whether signond should store the secret in its DB.</td>
+<td class="enum_member_name"><p><a name="SIGNON-IDENTITY-TYPE-APP:CAPS"></a>SIGNON_IDENTITY_TYPE_APP</p></td>
+<td class="enum_member_description">
+<p>an application identity</p>
+</td>
+<td class="enum_member_annotations"> </td>
</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<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>
-<p>
-Sets the username for the identity.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.</td>
+<td class="enum_member_name"><p><a name="SIGNON-IDENTITY-TYPE-WEB:CAPS"></a>SIGNON_IDENTITY_TYPE_WEB</p></td>
+<td class="enum_member_description">
+<p>a web identity</p>
+</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>username</code></em> :</span></p></td>
-<td>the username.</td>
+<td class="enum_member_name"><p><a name="SIGNON-IDENTITY-TYPE-NETWORK:CAPS"></a>SIGNON_IDENTITY_TYPE_NETWORK</p></td>
+<td class="enum_member_description">
+<p>a network server identity</p>
+</td>
+<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
+</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SignonSecurityContext</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: SignonSecurityContext</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="credential-management.html" title="Credential management">
<link rel="prev" href="SignonIdentityInfo.html" title="SignonIdentityInfo">
<link rel="next" href="SignonAuthSession.html" title="SignonAuthSession">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="SignonIdentityInfo.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="SignonAuthSession.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a href="#SignonSecurityContext.synopsis" class="shortcut">Top</a>
- |
- <a href="#SignonSecurityContext.description" class="shortcut">Description</a>
- |
- <a href="#SignonSecurityContext.object-hierarchy" class="shortcut">Object Hierarchy</a>
-</td></tr>
-</table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span>
+ <a href="#SignonSecurityContext.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span>
+ <a href="#SignonSecurityContext.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="SignonIdentityInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="SignonAuthSession.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
<div class="refentry">
<a name="SignonSecurityContext"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<h2><span class="refentrytitle"><a name="SignonSecurityContext.top_of_page"></a>SignonSecurityContext</span></h2>
<p>SignonSecurityContext — representation of a security context.</p>
</td>
-<td valign="top" align="right"></td>
+<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
-<div class="refsynopsisdiv">
-<a name="SignonSecurityContext.synopsis"></a><h2>Synopsis</h2>
-<pre class="synopsis">struct <a class="link" href="SignonSecurityContext.html#SignonSecurityContext-struct" title="struct SignonSecurityContext">SignonSecurityContext</a>;
-typedef <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList">SignonSecurityContextList</a>;
-<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> * <a class="link" href="SignonSecurityContext.html#signon-security-context-build-variant" title="signon_security_context_build_variant ()">signon_security_context_build_variant</a>
- (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> * <a class="link" href="SignonSecurityContext.html#signon-security-context-copy" title="signon_security_context_copy ()">signon_security_context_copy</a> (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *src_ctx</code></em>);
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> * <a class="link" href="SignonSecurityContext.html#signon-security-context-deconstruct-variant" title="signon_security_context_deconstruct_variant ()">signon_security_context_deconstruct_variant</a>
- (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonSecurityContext.html#signon-security-context-free" title="signon_security_context_free ()">signon_security_context_free</a> (<em class="parameter"><code><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <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>
- (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <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>
- (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);
-<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> * <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>
- (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *list</code></em>);
-<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> * <a class="link" href="SignonSecurityContext.html#signon-security-context-list-copy" title="signon_security_context_list_copy ()">signon_security_context_list_copy</a>
- (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *src_list</code></em>);
-<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> * <a class="link" href="SignonSecurityContext.html#signon-security-context-list-deconstruct-variant" title="signon_security_context_list_deconstruct_variant ()">signon_security_context_list_deconstruct_variant</a>
- (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonSecurityContext.html#signon-security-context-list-free" title="signon_security_context_list_free ()">signon_security_context_list_free</a> (<em class="parameter"><code><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *seclist</code></em>);
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> * <a class="link" href="SignonSecurityContext.html#signon-security-context-new" title="signon_security_context_new ()">signon_security_context_new</a> ();
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> * <a class="link" href="SignonSecurityContext.html#signon-security-context-new-from-values" title="signon_security_context_new_from_values ()">signon_security_context_new_from_values</a>
- (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonSecurityContext.html#signon-security-context-set-application-context" title="signon_security_context_set_application_context ()">signon_security_context_set_application_context</a>
- (<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>);
-<span class="returnvalue">void</span> <a class="link" href="SignonSecurityContext.html#signon-security-context-set-system-context" title="signon_security_context_set_system_context ()">signon_security_context_set_system_context</a>
- (<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>
+<div class="refsect1">
+<a name="SignonSecurityContext.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
+</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>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonSecurityContext.html#signon-security-context-copy" title="signon_security_context_copy ()">signon_security_context_copy</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonSecurityContext.html#signon-security-context-deconstruct-variant" title="signon_security_context_deconstruct_variant ()">signon_security_context_deconstruct_variant</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="SignonSecurityContext.html#signon-security-context-free" title="signon_security_context_free ()">signon_security_context_free</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>
+<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>
+</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>
+<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">
+<a href="http://library.gnome.org/devel/glib/unstable/glib-GVariant.html#GVariant"><span class="returnvalue">GVariant</span></a> *
+</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>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonSecurityContext.html#signon-security-context-list-copy" title="signon_security_context_list_copy ()">signon_security_context_list_copy</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonSecurityContext.html#signon-security-context-list-deconstruct-variant" title="signon_security_context_list_deconstruct_variant ()">signon_security_context_list_deconstruct_variant</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="SignonSecurityContext.html#signon-security-context-list-free" title="signon_security_context_list_free ()">signon_security_context_list_free</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonSecurityContext.html#signon-security-context-new" title="signon_security_context_new ()">signon_security_context_new</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
+</td>
+<td class="function_name">
+<a class="link" href="SignonSecurityContext.html#signon-security-context-new-from-values" title="signon_security_context_new_from_values ()">signon_security_context_new_from_values</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="SignonSecurityContext.html#signon-security-context-set-application-context" title="signon_security_context_set_application_context ()">signon_security_context_set_application_context</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="SignonSecurityContext.html#signon-security-context-set-system-context" title="signon_security_context_set_system_context ()">signon_security_context_set_system_context</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="SignonSecurityContext.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="SignonSecurityContext.html#SignonSecurityContext-struct" title="struct SignonSecurityContext">SignonSecurityContext</a></td>
+</tr>
+<tr>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList">SignonSecurityContextList</a></td>
+</tr>
+</tbody>
+</table></div>
</div>
<div class="refsect1">
<a name="SignonSecurityContext.object-hierarchy"></a><h2>Object Hierarchy</h2>
-<pre class="synopsis">
- GBoxed
- +----SignonSecurityContext
+<pre class="screen"> GBoxed
+ <span class="lineart">╰──</span> SignonSecurityContext
</pre>
</div>
<div class="refsect1">
<a name="SignonSecurityContext.description"></a><h2>Description</h2>
-<p>
-The <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> represents a security context within
-system and also within application. Security contexts are used:
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<p>The <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> represents a security context within
+system and also within application. Security contexts are used:</p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>within identities to specify the owner of the identity, and
-users of the identity (items on the access control list). See <span class="type">SignonIdentity</span>.</p></li>
+users of the identity (items on the access control list). See <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a>.</p></li>
<li class="listitem"><p>by gSSO daemon to identify the application accessing the gSSO service and
to determine if the application is an identity's owner, or is on the identity's access
control list, and make access control decisions accordingly.</p></li>
</ul></div>
-<p>
-</p>
-<p>
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> contains two strings: a system context and an
-application context.
-</p>
-<p>
-System context can be a binary path, SMACK-label, or MSSF token. Specific
+<p><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> contains two strings: a system context and an
+application context.</p>
+<p>System context can be a binary path, SMACK-label, or MSSF token. Specific
interpretation of the system context value is performed by a gSSO extension module.
-The default gSSO extension expects binary paths.
-</p>
-<p>
-Application context identifies a script or a webpage within an application,
+The default gSSO extension expects binary paths.</p>
+<p>Application context identifies a script or a webpage within an application,
and it's used for providing access control to runtime environments (when making an access
control decision requires not only a binary identifier, but also information
-about what the binary is doing).
-</p>
-<p>
-System context and application context can contain a wildcard
+about what the binary is doing). </p>
+<p>System context and application context can contain a wildcard
operator "*" to match 'any', while "" matches 'none' when a default
gSSO extension is used. The system context is always evaluated first
and if a match is found, only then the application context is evaluated.
Check the documentation of a platform specific extension to determine
-any particular match rules used by a custom ACM (Access Control Manager).
-</p>
+any particular match rules used by a custom ACM (Access Control Manager).</p>
</div>
<div class="refsect1">
-<a name="SignonSecurityContext.details"></a><h2>Details</h2>
+<a name="SignonSecurityContext.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
-<a name="SignonSecurityContext-struct"></a><h3>struct SignonSecurityContext</h3>
-<pre class="programlisting">struct SignonSecurityContext {
- gchar *sys_ctx;
- gchar *app_ctx;
-};
-</pre>
-<p>
-Security context descriptor used for access control checks.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><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>;</span></p></td>
-<td>system context, such as SMACK-label, MSSF token or just a
-binary path.</td>
-</tr>
-<tr>
-<td><p><span class="term"><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>;</span></p></td>
-<td>application context, such as a script or a web page.</td>
-</tr>
-</tbody>
+<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> *
+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="id-1.3.3.5.7.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>ctx</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.2.6"></a><h4>Returns</h4>
+<p> GVariant construct of a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
<hr>
<div class="refsect2">
-<a name="SignonSecurityContextList"></a><h3>SignonSecurityContextList</h3>
-<pre class="programlisting">typedef GList SignonSecurityContextList;
-</pre>
-<p>
-GList of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> items.
-</p>
+<a name="signon-security-context-copy"></a><h3>signon_security_context_copy ()</h3>
+<pre class="programlisting"><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
+signon_security_context_copy (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *src_ctx</code></em>);</pre>
+<p>Copy a security context item.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.3.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>src_ctx</p></td>
+<td class="parameter_description"><p>source security context to copy.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.3.6"></a><h4>Returns</h4>
+<p> a copy of the <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
</div>
<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> * 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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>GVariant construct of a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<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>
+<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.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>variant</p></td>
+<td class="parameter_description"><p>GVariant item with a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> construct.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.4.6"></a><h4>Returns</h4>
+<p> <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-security-context-copy"></a><h3>signon_security_context_copy ()</h3>
-<pre class="programlisting"><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> * signon_security_context_copy (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *src_ctx</code></em>);</pre>
-<p>
-Copy a security context item.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>src_ctx</code></em> :</span></p></td>
-<td>source security context to copy.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a copy of the <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<a name="signon-security-context-free"></a><h3>signon_security_context_free ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_security_context_free (<em class="parameter"><code><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);</pre>
+<p>Frees a security context item.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.5.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>ctx</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> to be freed.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>variant</code></em> :</span></p></td>
-<td>GVariant item with a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> construct.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<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> *
+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
+the <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.6.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>ctx</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.6.6"></a><h4>Returns</h4>
+<p> application context. </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>
<hr>
<div class="refsect2">
-<a name="signon-security-context-free"></a><h3>signon_security_context_free ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_security_context_free (<em class="parameter"><code><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *ctx</code></em>);</pre>
-<p>
-Frees a security context item.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<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> *
+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
+<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.7.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><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> to be freed.</td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</p></td>
+<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.7.6"></a><h4>Returns</h4>
+<p> system context. </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>
<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> * 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
-the <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>application context. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<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> *
+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>
+items.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.8.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>list</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> item.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.8.6"></a><h4>Returns</h4>
+<p> GVariant construct of a <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
<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> * 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
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>system context. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<a name="signon-security-context-list-copy"></a><h3>signon_security_context_list_copy ()</h3>
+<pre class="programlisting"><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> *
+signon_security_context_list_copy (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *src_list</code></em>);</pre>
+<p>Copies a GList of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> items.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.9.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>src_list</p></td>
+<td class="parameter_description"><p>source <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a>.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.9.6"></a><h4>Returns</h4>
+<p> <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> item. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
<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> * 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>
-items.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> item.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>GVariant construct of a <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<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>
+<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">
+<a name="id-1.3.3.5.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>variant</p></td>
+<td class="parameter_description"><p>GVariant item with a list of security context tuples.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
</table></div>
</div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.10.6"></a><h4>Returns</h4>
+<p> <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> item. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-security-context-list-copy"></a><h3>signon_security_context_list_copy ()</h3>
-<pre class="programlisting"><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="returnvalue">SignonSecurityContextList</span></a> * signon_security_context_list_copy
- (<em class="parameter"><code>const <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *src_list</code></em>);</pre>
-<p>
-Copies a GList of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> items.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>src_list</code></em> :</span></p></td>
-<td>source <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> item. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
+<a name="signon-security-context-list-free"></a><h3>signon_security_context_list_free ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>
+signon_security_context_list_free (<em class="parameter"><code><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *seclist</code></em>);</pre>
+<p>Frees all items and the GList of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.11.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>seclist</p></td>
+<td class="parameter_description"><p> <a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> item. </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></tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-security-context-new"></a><h3>signon_security_context_new ()</h3>
+<pre class="programlisting"><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> *
+signon_security_context_new ();</pre>
+<p>Allocates a new security context item.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.12.5"></a><h4>Returns</h4>
+<p> allocated <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<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>
+<p>Allocates and initializes a new security context item.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.13.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><p><span class="term"><em class="parameter"><code>variant</code></em> :</span></p></td>
-<td>GVariant item with a list of security context tuples.</td>
+<td class="parameter_name"><p>system_context</p></td>
+<td class="parameter_description"><p>system security context (such as SMACK/MSSF label/token).</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> item. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
+<td class="parameter_name"><p>application_context</p></td>
+<td class="parameter_description"><p>application security context (such as a script name).</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
-<hr>
-<div class="refsect2">
-<a name="signon-security-context-list-free"></a><h3>signon_security_context_list_free ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_security_context_list_free (<em class="parameter"><code><a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> *seclist</code></em>);</pre>
-<p>
-Frees all items and the GList of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><em class="parameter"><code>seclist</code></em> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html#SignonSecurityContextList" title="SignonSecurityContextList"><span class="type">SignonSecurityContextList</span></a> item. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr></tbody>
-</table></div>
+<div class="refsect3">
+<a name="id-1.3.3.5.7.13.6"></a><h4>Returns</h4>
+<p> allocated <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>. </p>
+<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
-<hr>
-<div class="refsect2">
-<a name="signon-security-context-new"></a><h3>signon_security_context_new ()</h3>
-<pre class="programlisting"><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="returnvalue">SignonSecurityContext</span></a> * signon_security_context_new ();</pre>
-<p>
-Allocates a new security context item.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>allocated <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr></tbody>
-</table></div>
</div>
<hr>
<div class="refsect2">
-<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>
-<p>
-Allocates and initializes a new security context item.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-security-context-set-application-context"></a><h3>signon_security_context_set_application_context ()</h3>
+<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>
+<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">
+<a name="id-1.3.3.5.7.14.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><p><span class="term"><em class="parameter"><code>system_context</code></em> :</span></p></td>
-<td>system security context (such as SMACK/MSSF label/token).</td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>application_context</code></em> :</span></p></td>
-<td>application security context (such as a script name).</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>allocated <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
+<td class="parameter_name"><p>application_context</p></td>
+<td class="parameter_description"><p>application security context.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
+</div>
<hr>
<div class="refsect2">
-<a name="signon-security-context-set-application-context"></a><h3>signon_security_context_set_application_context ()</h3>
-<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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="signon-security-context-set-system-context"></a><h3>signon_security_context_set_system_context ()</h3>
+<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>
+<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">
+<a name="id-1.3.3.5.7.15.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><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p><a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
<tr>
-<td><p><span class="term"><em class="parameter"><code>application_context</code></em> :</span></p></td>
-<td>application security context.</td>
+<td class="parameter_name"><p>system_context</p></td>
+<td class="parameter_description"><p>system security context.</p></td>
+<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
-<hr>
+</div>
+</div>
+<div class="refsect1">
+<a name="SignonSecurityContext.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
-<a name="signon-security-context-set-system-context"></a><h3>signon_security_context_set_system_context ()</h3>
-<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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
+<a name="SignonSecurityContext-struct"></a><h3>struct SignonSecurityContext</h3>
+<pre class="programlisting">struct SignonSecurityContext {
+ gchar *sys_ctx;
+ gchar *app_ctx;
+};
+</pre>
+<p>Security context descriptor used for access control checks.</p>
+<div class="refsect3">
+<a name="id-1.3.3.5.8.2.5"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
<tbody>
<tr>
-<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
-<td>
-<a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> item.</td>
+<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_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><p><span class="term"><em class="parameter"><code>system_context</code></em> :</span></p></td>
-<td>system security context.</td>
+<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_description"><p>application context, such as a script or a web page.</p></td>
+<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
+<hr>
+<div class="refsect2">
+<a name="SignonSecurityContextList"></a><h3>SignonSecurityContextList</h3>
+<pre class="programlisting">typedef GList SignonSecurityContextList;
+</pre>
+<p>GList of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> items.</p>
+</div>
+</div>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Annotation Glossary</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: Annotation Glossary</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="appendices.html" title="Part III. Appendices">
<link rel="prev" href="api-index-1-8.html" title="Index of new symbols in 1.8">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="api-index-1-8.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="appendices.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td> </td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a class="shortcut" href="#glsA">A</a>
- |
- <a class="shortcut" href="#glsS">S</a>
- |
- <a class="shortcut" href="#glsE">E</a>
- |
- <a class="shortcut" href="#glsT">T</a>
-</td></tr>
-</table>
+<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_glossary"><a class="shortcut" href="#glsA">A</a>
+ <span class="dim">|</span>
+ <a class="shortcut" href="#glsE">E</a>
+ <span class="dim">|</span>
+ <a class="shortcut" href="#glsS">S</a>
+ <span class="dim">|</span>
+ <a class="shortcut" href="#glsT">T</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="appendices.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-1-8.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><img src="right-insensitive.png" width="16" height="16" border="0"></td>
+</tr></table>
<div class="glossary">
<div class="titlepage"><div><div><h2 class="title">
<a name="annotation-glossary"></a>Annotation Glossary</h2></div></div></div>
<a name="glsA"></a><h3 class="title">A</h3>
-<dt>
-<a name="annotation-glossterm-allow-none"></a>allow-none</dt>
-<dd><p>NULL is ok, both for passing and for returning.</p></dd>
-<a name="glsS"></a><h3 class="title">S</h3>
-<dt>
-<a name="annotation-glossterm-scope%20async"></a>scope async</dt>
-<dd><p>The callback is valid until first called.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-allow-none"></a>allow-none</span></dt>
+<dd class="glossdef"><p>NULL is ok, both for passing and for returning.</p></dd>
<a name="glsE"></a><h3 class="title">E</h3>
-<dt>
-<a name="annotation-glossterm-element-type"></a>element-type</dt>
-<dd><p>Generics and defining elements of containers and arrays.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-element-type"></a>element-type</span></dt>
+<dd class="glossdef"><p>Generics and defining elements of containers and arrays.</p></dd>
+<a name="glsS"></a><h3 class="title">S</h3>
+<dt><span class="glossterm"><a name="annotation-glossterm-scope%20async"></a>scope async</span></dt>
+<dd class="glossdef"><p>The callback is valid until first called.</p></dd>
<a name="glsT"></a><h3 class="title">T</h3>
-<dt>
-<a name="annotation-glossterm-transfer%20full"></a>transfer full</dt>
-<dd><p>Free data after the code is done.</p></dd>
-<dt>
-<a name="annotation-glossterm-type"></a>type</dt>
-<dd><p>Override the parsed C type with given type</p></dd>
-<dt>
-<a name="annotation-glossterm-transfer%20none"></a>transfer none</dt>
-<dd><p>Don't free data after the code is done.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-transfer%20full"></a>transfer full</span></dt>
+<dd class="glossdef"><p>Free data after the code is done.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-transfer%20none"></a>transfer none</span></dt>
+<dd class="glossdef"><p>Don't free data after the code is done.</p></dd>
+<dt><span class="glossterm"><a name="annotation-glossterm-type"></a>type</span></dt>
+<dd class="glossdef"><p>Override the parsed C type with given type.</p></dd>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of new symbols in 1.8</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: Index of new symbols in 1.8</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="appendices.html" title="Part III. Appendices">
<link rel="prev" href="api-index-deprecated.html" title="Index of deprecated symbols">
<link rel="next" href="annotation-glossary.html" title="Annotation Glossary">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="api-index-deprecated.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="appendices.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="annotation-glossary.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts"><a class="shortcut" href="#idxA">A</a></td></tr>
-</table>
+<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></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="appendices.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-deprecated.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="annotation-glossary.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
<div class="index">
<div class="titlepage"><div><div><h2 class="title">
<a name="api-index-1-8"></a>Index of new symbols in 1.8</h2></div></div></div>
<a name="idx"></a><a name="idxA"></a><h3 class="title">A</h3>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()">signon_auth_session_process_async</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()">signon_auth_session_process_async</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-process-finish" title="signon_auth_session_process_finish ()">signon_auth_session_process_finish</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-process-finish" title="signon_auth_session_process_finish ()">signon_auth_session_process_finish</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Index of deprecated symbols</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: Index of deprecated symbols</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="appendices.html" title="Part III. Appendices">
<link rel="prev" href="api-index-full.html" title="API Index">
<link rel="next" href="api-index-1-8.html" title="Index of new symbols in 1.8">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="api-index-full.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="appendices.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="api-index-1-8.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts"><a class="shortcut" href="#idxA">A</a></td></tr>
-</table>
+<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></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="appendices.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="api-index-full.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-1-8.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
<div class="index">
<div class="titlepage"><div><div><h2 class="title">
<a name="api-index-deprecated"></a>Index of deprecated symbols</h2></div></div></div>
<a name="idx"></a><a name="idxA"></a><h3 class="title">A</h3>
<dt>
-<a class="link" href="SignonAuthSession.html#SignonAuthSessionProcessCb" title="SignonAuthSessionProcessCb ()">SignonAuthSessionProcessCb</a>, user_function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#SignonAuthSessionProcessCb" title="SignonAuthSessionProcessCb ()">SignonAuthSessionProcessCb</a>, user_function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-process" title="signon_auth_session_process ()">signon_auth_session_process</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-process" title="signon_auth_session_process ()">signon_auth_session_process</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>API Index</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: API Index</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="appendices.html" title="Part III. Appendices">
<link rel="prev" href="appendices.html" title="Part III. Appendices">
<link rel="next" href="api-index-deprecated.html" title="Index of deprecated symbols">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="appendices.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="appendices.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="api-index-deprecated.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a class="shortcut" href="#idxA">A</a>
- |
- <a class="shortcut" href="#idxE">E</a>
- |
- <a class="shortcut" href="#idxI">I</a>
- |
- <a class="shortcut" href="#idxQ">Q</a>
- |
- <a class="shortcut" href="#idxS">S</a>
-</td></tr>
-</table>
+<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="#idxE">E</a>
+ <span class="dim">|</span>
+ <a class="shortcut" href="#idxI">I</a>
+ <span class="dim">|</span>
+ <a class="shortcut" href="#idxQ">Q</a>
+ <span class="dim">|</span>
+ <a class="shortcut" href="#idxS">S</a></span></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="appendices.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="appendices.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-deprecated.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
<div class="index">
<div class="titlepage"><div><div><h2 class="title">
<a name="api-index-full"></a>API Index</h2></div></div></div>
<a name="idx"></a><a name="idxA"></a><h3 class="title">A</h3>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonAuthServiceClass" title="struct SignonAuthServiceClass">SignonAuthServiceClass</a>, struct in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonAuthService.html#SignonAuthService-struct" title="struct SignonAuthService">SignonAuthService</a>, struct in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="SignonAuthService.html#SignonAuthServiceClass" title="struct SignonAuthServiceClass">SignonAuthServiceClass</a>, struct in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<dt>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#SignonAuthSession-state-changed" title='The "state-changed" signal'>SignonAuthSession::state-changed</a>, object signal in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#SignonAuthSession-state-changed" title="The “state-changed” signal">SignonAuthSession::state-changed</a>, object signal in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#SignonAuthSession--identity" title='The "identity" property'>SignonAuthSession:identity</a>, object property in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#SignonAuthSession--identity" title="The “identity” property">SignonAuthSession:identity</a>, object property in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#SignonAuthSessionProcessCb" title="SignonAuthSessionProcessCb ()">SignonAuthSessionProcessCb</a>, user_function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#SignonAuthSessionProcessCb" title="SignonAuthSessionProcessCb ()">SignonAuthSessionProcessCb</a>, user_function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb" title="SignonAuthSessionQueryAvailableMechanismsCb ()">SignonAuthSessionQueryAvailableMechanismsCb</a>, user_function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb" title="SignonAuthSessionQueryAvailableMechanismsCb ()">SignonAuthSessionQueryAvailableMechanismsCb</a>, user_function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-new" title="signon_auth_service_new ()">signon_auth_service_new</a>, function in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<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>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-identities" title="signon_auth_service_query_identities ()">signon_auth_service_query_identities</a>, function in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonAuthService.html#signon-auth-service-query-identities" title="signon_auth_service_query_identities ()">signon_auth_service_query_identities</a>, function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-mechanisms" title="signon_auth_service_query_mechanisms ()">signon_auth_service_query_mechanisms</a>, function in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonAuthService.html#signon-auth-service-query-mechanisms" title="signon_auth_service_query_mechanisms ()">signon_auth_service_query_mechanisms</a>, function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-methods" title="signon_auth_service_query_methods ()">signon_auth_service_query_methods</a>, function in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonAuthService.html#signon-auth-service-query-methods" title="signon_auth_service_query_methods ()">signon_auth_service_query_methods</a>, function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-cancel" title="signon_auth_session_cancel ()">signon_auth_session_cancel</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-cancel" title="signon_auth_session_cancel ()">signon_auth_session_cancel</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-get-method" title="signon_auth_session_get_method ()">signon_auth_session_get_method</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-get-method" title="signon_auth_session_get_method ()">signon_auth_session_get_method</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-new" title="signon_auth_session_new ()">signon_auth_session_new</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-new" title="signon_auth_session_new ()">signon_auth_session_new</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-process" title="signon_auth_session_process ()">signon_auth_session_process</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-new-for-identity" title="signon_auth_session_new_for_identity ()">signon_auth_session_new_for_identity</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()">signon_auth_session_process_async</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-process" title="signon_auth_session_process ()">signon_auth_session_process</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonAuthSession.html#signon-auth-session-process-finish" title="signon_auth_session_process_finish ()">signon_auth_session_process_finish</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-process-async" title="signon_auth_session_process_async ()">signon_auth_session_process_async</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
</dt>
<dd></dd>
<dt>
-<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>
+<a class="link" href="SignonAuthSession.html#signon-auth-session-process-finish" title="signon_auth_session_process_finish ()">signon_auth_session_process_finish</a>, function in <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+</dt>
+<dd></dd>
+<dt>
+<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="idxE"></a><h3 class="title">E</h3>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonError.html#signon-error-quark" title="signon_error_quark ()">signon_error_quark</a>, function in <a class="link" href="libgsignon-glib-SignonError.html" title="SignonError">SignonError</a>
+<a class="link" href="libgsignon-glib-SignonError.html#signon-error-quark" title="signon_error_quark ()">signon_error_quark</a>, function in <a class="link" href="libgsignon-glib-SignonError.html" title="SignonError">SignonError</a>
</dt>
<dd></dd>
<a name="idxI"></a><h3 class="title">I</h3>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityClass" title="struct SignonIdentityClass">SignonIdentityClass</a>, struct in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentity-struct" title="struct SignonIdentity">SignonIdentity</a>, struct 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>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonIdentityFilter" title="SignonIdentityFilter">SignonIdentityFilter</a>, typedef in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonIdentity.html#SignonIdentity--app-ctx" title="The “app-ctx” property">SignonIdentity:app-ctx</a>, object property in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="SignonIdentity.html#SignonIdentity--id" title="The “id” property">SignonIdentity:id</a>, object property in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="SignonIdentity.html#SignonIdentityClass" title="struct SignonIdentityClass">SignonIdentityClass</a>, struct 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>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityInfoCb" title="SignonIdentityInfoCb ()">SignonIdentityInfoCb</a>, user_function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentityInfoCb" title="SignonIdentityInfoCb ()">SignonIdentityInfoCb</a>, user_function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonIdentityList" title="SignonIdentityList">SignonIdentityList</a>, typedef in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonAuthService.html#SignonIdentityList" title="SignonIdentityList">SignonIdentityList</a>, typedef in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityReferenceAddedCb" title="SignonIdentityReferenceAddedCb">SignonIdentityReferenceAddedCb</a>, typedef in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentityReferenceAddedCb" title="SignonIdentityReferenceAddedCb">SignonIdentityReferenceAddedCb</a>, typedef in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityReferenceRemovedCb" title="SignonIdentityReferenceRemovedCb">SignonIdentityReferenceRemovedCb</a>, typedef in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentityReferenceRemovedCb" title="SignonIdentityReferenceRemovedCb">SignonIdentityReferenceRemovedCb</a>, typedef in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityRemovedCb" title="SignonIdentityRemovedCb">SignonIdentityRemovedCb</a>, typedef in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentityRemovedCb" title="SignonIdentityRemovedCb">SignonIdentityRemovedCb</a>, typedef in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentitySessionReadyCb" title="SignonIdentitySessionReadyCb ()">SignonIdentitySessionReadyCb</a>, user_function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentitySessionReadyCb" title="SignonIdentitySessionReadyCb ()">SignonIdentitySessionReadyCb</a>, user_function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentitySignedOutCb" title="SignonIdentitySignedOutCb">SignonIdentitySignedOutCb</a>, typedef in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentitySignedOutCb" title="SignonIdentitySignedOutCb">SignonIdentitySignedOutCb</a>, typedef in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityStoreCredentialsCb" title="SignonIdentityStoreCredentialsCb ()">SignonIdentityStoreCredentialsCb</a>, user_function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentityStoreCredentialsCb" title="SignonIdentityStoreCredentialsCb ()">SignonIdentityStoreCredentialsCb</a>, user_function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityVerifyCb" title="SignonIdentityVerifyCb ()">SignonIdentityVerifyCb</a>, user_function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#SignonIdentityVerifyCb" title="SignonIdentityVerifyCb ()">SignonIdentityVerifyCb</a>, user_function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="SignonIdentity.html#SignonIdentityVoidCb" title="SignonIdentityVoidCb ()">SignonIdentityVoidCb</a>, user_function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+</dt>
+<dd></dd>
+<dt>
+<a class="link" href="SignonIdentity.html#signon-identity-add-reference" title="signon_identity_add_reference ()">signon_identity_add_reference</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-create-session" title="signon_identity_create_session ()">signon_identity_create_session</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityVoidCb" title="SignonIdentityVoidCb ()">SignonIdentityVoidCb</a>, user_function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-get-auth-session" title="signon_identity_get_auth_session ()">signon_identity_get_auth_session</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-add-reference" title="signon_identity_add_reference ()">signon_identity_add_reference</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-get-last-error" title="signon_identity_get_last_error ()">signon_identity_get_last_error</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-create-session" title="signon_identity_create_session ()">signon_identity_create_session</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-access-control-list-append" title="signon_identity_info_access_control_list_append ()">signon_identity_info_access_control_list_append</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-get-auth-session" title="signon_identity_get_auth_session ()">signon_identity_get_auth_session</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-copy" title="signon_identity_info_copy ()">signon_identity_info_copy</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-get-last-error" title="signon_identity_get_last_error ()">signon_identity_get_last_error</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-free" title="signon_identity_info_free ()">signon_identity_info_free</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-access-control-list-append" title="signon_identity_info_access_control_list_append ()">signon_identity_info_access_control_list_append</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-access-control-list" title="signon_identity_info_get_access_control_list ()">signon_identity_info_get_access_control_list</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-copy" title="signon_identity_info_copy ()">signon_identity_info_copy</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-caption" title="signon_identity_info_get_caption ()">signon_identity_info_get_caption</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-free" title="signon_identity_info_free ()">signon_identity_info_free</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-id" title="signon_identity_info_get_id ()">signon_identity_info_get_id</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-access-control-list" title="signon_identity_info_get_access_control_list ()">signon_identity_info_get_access_control_list</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-identity-type" title="signon_identity_info_get_identity_type ()">signon_identity_info_get_identity_type</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-caption" title="signon_identity_info_get_caption ()">signon_identity_info_get_caption</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-methods" title="signon_identity_info_get_methods ()">signon_identity_info_get_methods</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-id" title="signon_identity_info_get_id ()">signon_identity_info_get_id</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-owner" title="signon_identity_info_get_owner ()">signon_identity_info_get_owner</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-identity-type" title="signon_identity_info_get_identity_type ()">signon_identity_info_get_identity_type</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-realms" title="signon_identity_info_get_realms ()">signon_identity_info_get_realms</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-methods" title="signon_identity_info_get_methods ()">signon_identity_info_get_methods</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<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>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-owner" title="signon_identity_info_get_owner ()">signon_identity_info_get_owner</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-username" title="signon_identity_info_get_username ()">signon_identity_info_get_username</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-realms" title="signon_identity_info_get_realms ()">signon_identity_info_get_realms</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-new" title="signon_identity_info_new ()">signon_identity_info_new</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<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>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-own-methods" title="signon_identity_info_own_methods ()">signon_identity_info_own_methods</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-get-username" title="signon_identity_info_get_username ()">signon_identity_info_get_username</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-remove-method" title="signon_identity_info_remove_method ()">signon_identity_info_remove_method</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-new" title="signon_identity_info_new ()">signon_identity_info_new</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-access-control-list" title="signon_identity_info_set_access_control_list ()">signon_identity_info_set_access_control_list</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-remove-method" title="signon_identity_info_remove_method ()">signon_identity_info_remove_method</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-caption" title="signon_identity_info_set_caption ()">signon_identity_info_set_caption</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-access-control-list" title="signon_identity_info_set_access_control_list ()">signon_identity_info_set_access_control_list</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-identity-type" title="signon_identity_info_set_identity_type ()">signon_identity_info_set_identity_type</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-caption" title="signon_identity_info_set_caption ()">signon_identity_info_set_caption</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-method" title="signon_identity_info_set_method ()">signon_identity_info_set_method</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-identity-type" title="signon_identity_info_set_identity_type ()">signon_identity_info_set_identity_type</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-methods" title="signon_identity_info_set_methods ()">signon_identity_info_set_methods</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-method" title="signon_identity_info_set_method ()">signon_identity_info_set_method</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-owner" title="signon_identity_info_set_owner ()">signon_identity_info_set_owner</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-methods" title="signon_identity_info_set_methods ()">signon_identity_info_set_methods</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-owner-from-values" title="signon_identity_info_set_owner_from_values ()">signon_identity_info_set_owner_from_values</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-owner" title="signon_identity_info_set_owner ()">signon_identity_info_set_owner</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-realms" title="signon_identity_info_set_realms ()">signon_identity_info_set_realms</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-owner-from-values" title="signon_identity_info_set_owner_from_values ()">signon_identity_info_set_owner_from_values</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-secret" title="signon_identity_info_set_secret ()">signon_identity_info_set_secret</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-realms" title="signon_identity_info_set_realms ()">signon_identity_info_set_realms</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-username" title="signon_identity_info_set_username ()">signon_identity_info_set_username</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-secret" title="signon_identity_info_set_secret ()">signon_identity_info_set_secret</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentity.html#signon-identity-new" title="signon_identity_new ()">signon_identity_new</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonIdentityInfo.html#signon-identity-info-set-username" title="signon_identity_info_set_username ()">signon_identity_info_set_username</a>, function in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+<a class="link" href="SignonIdentity.html#signon-identity-new-from-db" title="signon_identity_new_from_db ()">signon_identity_new_from_db</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-new" title="signon_identity_new ()">signon_identity_new</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-new-with-context" title="signon_identity_new_with_context ()">signon_identity_new_with_context</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-new-from-db" title="signon_identity_new_from_db ()">signon_identity_new_from_db</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-new-with-context-from-db" title="signon_identity_new_with_context_from_db ()">signon_identity_new_with_context_from_db</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()">signon_identity_query_info</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()">signon_identity_query_info</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-remove" title="signon_identity_remove ()">signon_identity_remove</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-remove" title="signon_identity_remove ()">signon_identity_remove</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-remove-reference" title="signon_identity_remove_reference ()">signon_identity_remove_reference</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-remove-reference" title="signon_identity_remove_reference ()">signon_identity_remove_reference</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-signout" title="signon_identity_signout ()">signon_identity_signout</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<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>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-store-credentials-with-args" title="signon_identity_store_credentials_with_args ()">signon_identity_store_credentials_with_args</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-store-credentials-with-args" title="signon_identity_store_credentials_with_args ()">signon_identity_store_credentials_with_args</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-store-credentials-with-info" title="signon_identity_store_credentials_with_info ()">signon_identity_store_credentials_with_info</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<a class="link" href="SignonIdentity.html#signon-identity-store-credentials-with-info" title="signon_identity_store_credentials_with_info ()">signon_identity_store_credentials_with_info</a>, function in <a class="link" href="SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-verify-secret" title="signon_identity_verify_secret ()">signon_identity_verify_secret</a>, function in <a class="link" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">SignonIdentity</a>
+<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>
</dt>
<dd></dd>
<a name="idxQ"></a><h3 class="title">Q</h3>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonQueryIdentitiesCb" title="SignonQueryIdentitiesCb ()">SignonQueryIdentitiesCb</a>, user_function in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonAuthService.html#SignonQueryIdentitiesCb" title="SignonQueryIdentitiesCb ()">SignonQueryIdentitiesCb</a>, user_function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonQueryMechanismCb" title="SignonQueryMechanismCb ()">SignonQueryMechanismCb</a>, user_function in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonAuthService.html#SignonQueryMechanismCb" title="SignonQueryMechanismCb ()">SignonQueryMechanismCb</a>, user_function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonQueryMethodsCb" title="SignonQueryMethodsCb ()">SignonQueryMethodsCb</a>, user_function in <a class="link" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
+<a class="link" href="SignonAuthService.html#SignonQueryMethodsCb" title="SignonQueryMethodsCb ()">SignonQueryMethodsCb</a>, user_function in <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService</a>
</dt>
<dd></dd>
<a name="idxS"></a><h3 class="title">S</h3>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-build-variant" title="signon_security_context_build_variant ()">signon_security_context_build_variant</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-build-variant" title="signon_security_context_build_variant ()">signon_security_context_build_variant</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-copy" title="signon_security_context_copy ()">signon_security_context_copy</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-copy" title="signon_security_context_copy ()">signon_security_context_copy</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-deconstruct-variant" title="signon_security_context_deconstruct_variant ()">signon_security_context_deconstruct_variant</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-deconstruct-variant" title="signon_security_context_deconstruct_variant ()">signon_security_context_deconstruct_variant</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-free" title="signon_security_context_free ()">signon_security_context_free</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-free" title="signon_security_context_free ()">signon_security_context_free</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<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>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<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>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<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>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<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>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<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>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<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>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-list-copy" title="signon_security_context_list_copy ()">signon_security_context_list_copy</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-list-copy" title="signon_security_context_list_copy ()">signon_security_context_list_copy</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-list-deconstruct-variant" title="signon_security_context_list_deconstruct_variant ()">signon_security_context_list_deconstruct_variant</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-list-deconstruct-variant" title="signon_security_context_list_deconstruct_variant ()">signon_security_context_list_deconstruct_variant</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-list-free" title="signon_security_context_list_free ()">signon_security_context_list_free</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-list-free" title="signon_security_context_list_free ()">signon_security_context_list_free</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-new" title="signon_security_context_new ()">signon_security_context_new</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-new" title="signon_security_context_new ()">signon_security_context_new</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-new-from-values" title="signon_security_context_new_from_values ()">signon_security_context_new_from_values</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-new-from-values" title="signon_security_context_new_from_values ()">signon_security_context_new_from_values</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-set-application-context" title="signon_security_context_set_application_context ()">signon_security_context_set_application_context</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-set-application-context" title="signon_security_context_set_application_context ()">signon_security_context_set_application_context</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
-<a class="link" href="SignonSecurityContext.html#signon-security-context-set-system-context" title="signon_security_context_set_system_context ()">signon_security_context_set_system_context</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+<a class="link" href="SignonSecurityContext.html#signon-security-context-set-system-context" title="signon_security_context_set_system_context ()">signon_security_context_set_system_context</a>, function in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</dt>
<dd></dd>
<dt>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Part III. Appendices</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: Part III. Appendices</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="prev" href="libgsignon-glib-SignonError.html" title="SignonError">
<link rel="next" href="api-index-full.html" title="API Index">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="libgsignon-glib-SignonError.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td> </td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="p" href="libgsignon-glib-SignonError.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="api-index-full.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="part">
<div class="titlepage"><div><div><h1 class="title">
<a name="appendices"></a>Part III. Appendices</h1></div></div></div>
<div class="toc">
<p><b>Table of Contents</b></p>
-<dl>
+<dl class="toc">
<dt><span class="index"><a href="api-index-full.html">API Index</a></span></dt>
<dt><span class="index"><a href="api-index-deprecated.html">Index of deprecated symbols</a></span></dt>
<dt><span class="index"><a href="api-index-1-8.html">Index of new symbols in 1.8</a></span></dt>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Credential management</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: Credential management</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="libgsignon-glib-objects.html" title="Part II. libgsignon-glib Objects">
<link rel="prev" href="object-tree.html" title="Object Hierarchy">
-<link rel="next" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<link rel="next" href="SignonAuthService.html" title="SignonAuthService">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="object-tree.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="libgsignon-glib-objects.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="libgsignon-glib-SignonAuthService.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="libgsignon-glib-objects.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="object-tree.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="SignonAuthService.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="chapter">
<div class="titlepage"><div><div><h2 class="title">
<a name="credential-management"></a>Credential management</h2></div></div></div>
-<div class="toc"><dl>
+<div class="toc"><dl class="toc">
<dt>
-<span class="refentrytitle"><a href="libgsignon-glib-SignonAuthService.html">SignonAuthService</a></span><span class="refpurpose"> — the authorization service object</span>
+<span class="refentrytitle"><a href="SignonAuthService.html">SignonAuthService</a></span><span class="refpurpose"> — the authorization service object</span>
</dt>
<dt>
-<span class="refentrytitle"><a href="libgsignon-glib-SignonIdentity.html">SignonIdentity</a></span><span class="refpurpose"> — client side presentation of a credential.</span>
+<span class="refentrytitle"><a href="SignonIdentity.html">SignonIdentity</a></span><span class="refpurpose"> — client side presentation of a credential.</span>
</dt>
<dt>
<span class="refentrytitle"><a href="SignonIdentityInfo.html">SignonIdentityInfo</a></span><span class="refpurpose"> — data contained in a SignonIdentity.</span>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>gSSO usage examples</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: gSSO usage examples</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="libgsignon-glib-overview.html" title="Part I. gSSO Overview">
<link rel="prev" href="gsso-intro.html" title="gSSO introduction">
<link rel="next" href="libgsignon-glib-objects.html" title="Part II. libgsignon-glib Objects">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="gsso-intro.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="libgsignon-glib-overview.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="libgsignon-glib-objects.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="libgsignon-glib-overview.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="gsso-intro.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="libgsignon-glib-objects.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gsso-examples"></a><div class="titlepage"></div>
</p>
</div>
<div class="refsect1">
-<a name="idp36034400"></a><h2>Authentication methods and mechanisms</h2>
+<a name="id-1.2.3.3"></a><h2>Authentication methods and mechanisms</h2>
<p>
The list of available authentication methods can be obtained with
<strong class="userinput"><code>--query-methods</code></strong>:
</p>
</div>
<div class="refsect1">
-<a name="idp35463792"></a><h2>Identity management</h2>
+<a name="id-1.2.3.4"></a><h2>Identity management</h2>
<p>
The list of stored identities that the gsso-example application is allowed
to use can be obtained with <strong class="userinput"><code>gsso-example --query-identities</code></strong>:
<div class="literallayout"><p><code class="computeroutput"><br>
<strong class="userinput"><code>> gsso-example --query-identities</code></strong><br>
Available identities:<br>
- id=27 caption='My test identity'<br>
- id=28 caption='Another test identity'<br>
+ id=27 caption='My test identity' ACL: (*:*)<br>
+ id=28 caption='Another test identity' ACL: (/usr/bin/gsso-example:)<br>
</code></p></div>
<p>
</p>
<p>
</p>
<p>
+ Depending on the identity method, you may also need to add a list of comma-separated
+ realms that are allowed to be used with an identity. For example, the oauth method
+ requires a list of domains that the OAuth authentication plugin is allowed to contact:
+ </p>
+<div class="literallayout"><p><code class="computeroutput"><br>
+<strong class="userinput"><code>> gsso-example --create-identity="Test Google identity" --identity-method=oauth --identity-realms=google.com</code></strong><br>
+Identity stored with id 29 <br>
+ </code></p></div>
+<p>
+ </p>
+<p>
To remove an identity, use <strong class="userinput"><code>--remove-identity</code></strong> option
with identity id:
</p>
</code></p></div>
<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:
+ </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>
+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
+ 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>
+Identity stored with id 28<br>
+ </code></p></div>
+<p>
+ </p>
</div>
<div class="refsect1">
-<a name="idp34225360"></a><h2>Using 'password' authentication method</h2>
+<a name="id-1.2.3.5"></a><h2>Using 'password' authentication method</h2>
<p>
'password' authentication simply returns to the application the username
and the password associated with an identity. If they haven't been stored
</p>
</div>
<div class="refsect1">
-<a name="idp34229760"></a><h2>Using 'oauth' authentication method</h2>
+<a name="id-1.2.3.6"></a><h2>Using 'oauth' authentication method</h2>
<p>
'oauth' authentication method is used to obtain an OAuth1 or OAuth2
authentication token from a remote service over HTTP. An application
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>gSSO introduction</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: gSSO introduction</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="libgsignon-glib-overview.html" title="Part I. gSSO Overview">
<link rel="prev" href="libgsignon-glib-overview.html" title="Part I. gSSO Overview">
<link rel="next" href="gsso-examples.html" title="gSSO usage examples">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="libgsignon-glib-overview.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="libgsignon-glib-overview.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="gsso-examples.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="libgsignon-glib-overview.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="libgsignon-glib-overview.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gsso-examples.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gsso-intro"></a><div class="titlepage"></div>
<div class="refsect1">
-<a name="idp33855280"></a><h2>What is gSSO?</h2>
+<a name="id-1.2.2.2"></a><h2>What is gSSO?</h2>
<p>
gSSO is a framework for centrally storing authentication credentials
and handling authentication on behalf of applications as requested by
</p>
</div>
<div class="refsect1">
-<a name="idp34460592"></a><h2>Terminology</h2>
+<a name="id-1.2.2.3"></a><h2>Terminology</h2>
<p>
gSSO is built around a few key concepts which are explained below:
</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc">
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>
<code class="systemitem">Authentication service</code>: the top level
object representing the gSSO service. It can be used to query
existing identities, available
authentication menthods and their mechanisms. Authentication
service is represented in the client library by
- SignonAuthService objects.
+ <a class="link" href="SignonAuthService.html" title="SignonAuthService">SignonAuthService objects</a>.
</p></li>
<li class="listitem"><p>
<code class="systemitem">Identity</code>: This is a local object representing a record in the
credentials DB. It contains information about the username and password (the
latter is write-only), plus some metadata such as a descriptive caption, access
control list, reference count, and other metadata. Identities are identified by
- numeric identity IDs and represented in the client library by <GTKDOCLINK HREF="SignonIdentity">
- SignonIdentity</GTKDOCLINK> objects.
+ numeric identity IDs and represented in the client library by <a class="link" href="SignonIdentity.html" title="SignonIdentity">
+ SignonIdentity</a> objects.
</p></li>
<li class="listitem"><p>
<code class="systemitem">Security context</code>: The information that is used by gSSO daemon
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>libgsignon-glib Reference Manual</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: libgsignon-glib Reference Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="next" href="libgsignon-glib-overview.html" title="Part I. gSSO Overview">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<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.0.3
+ This document is for libgsignon-glib, version 2.1.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">
</div>
<hr>
</div>
-<div class="toc"><dl>
+<div class="toc"><dl class="toc">
<dt><span class="part"><a href="libgsignon-glib-overview.html">I. gSSO Overview</a></span></dt>
<dd><dl>
<dt>
<dt><span class="chapter"><a href="credential-management.html">Credential management</a></span></dt>
<dd><dl>
<dt>
-<span class="refentrytitle"><a href="libgsignon-glib-SignonAuthService.html">SignonAuthService</a></span><span class="refpurpose"> — the authorization service object</span>
+<span class="refentrytitle"><a href="SignonAuthService.html">SignonAuthService</a></span><span class="refpurpose"> — the authorization service object</span>
</dt>
<dt>
-<span class="refentrytitle"><a href="libgsignon-glib-SignonIdentity.html">SignonIdentity</a></span><span class="refpurpose"> — client side presentation of a credential.</span>
+<span class="refentrytitle"><a href="SignonIdentity.html">SignonIdentity</a></span><span class="refpurpose"> — client side presentation of a credential.</span>
</dt>
<dt>
<span class="refentrytitle"><a href="SignonIdentityInfo.html">SignonIdentityInfo</a></span><span class="refpurpose"> — data contained in a SignonIdentity.</span>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<ANCHOR id="gsso-intro" href="libgsignon-glib/gsso-intro.html">
<ANCHOR id="gsso-examples" href="libgsignon-glib/gsso-examples.html">
<ANCHOR id="intro" href="libgsignon-glib/gsso-examples.html#intro">
-<ANCHOR id="libgsignon-glib-SignonAuthService" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html">
-<ANCHOR id="libgsignon-glib-SignonAuthService.synopsis" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#libgsignon-glib-SignonAuthService.synopsis">
-<ANCHOR id="libgsignon-glib-SignonAuthService.description" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#libgsignon-glib-SignonAuthService.description">
-<ANCHOR id="libgsignon-glib-SignonAuthService.details" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#libgsignon-glib-SignonAuthService.details">
-<ANCHOR id="SignonAuthServiceClass" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#SignonAuthServiceClass">
-<ANCHOR id="SignonIdentityFilter" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#SignonIdentityFilter">
-<ANCHOR id="SignonIdentityList" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#SignonIdentityList">
-<ANCHOR id="SignonQueryIdentitiesCb" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#SignonQueryIdentitiesCb">
-<ANCHOR id="SignonQueryMechanismCb" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#SignonQueryMechanismCb">
-<ANCHOR id="SignonQueryMethodsCb" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#SignonQueryMethodsCb">
-<ANCHOR id="signon-auth-service-new" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#signon-auth-service-new">
-<ANCHOR id="signon-auth-service-query-identities" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#signon-auth-service-query-identities">
-<ANCHOR id="signon-auth-service-query-mechanisms" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#signon-auth-service-query-mechanisms">
-<ANCHOR id="signon-auth-service-query-methods" href="libgsignon-glib/libgsignon-glib-SignonAuthService.html#signon-auth-service-query-methods">
-<ANCHOR id="libgsignon-glib-SignonIdentity" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html">
-<ANCHOR id="libgsignon-glib-SignonIdentity.synopsis" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#libgsignon-glib-SignonIdentity.synopsis">
-<ANCHOR id="libgsignon-glib-SignonIdentity.description" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#libgsignon-glib-SignonIdentity.description">
-<ANCHOR id="libgsignon-glib-SignonIdentity.details" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#libgsignon-glib-SignonIdentity.details">
-<ANCHOR id="SignonIdentityClass" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentityClass">
-<ANCHOR id="SignonIdentityInfoCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentityInfoCb">
-<ANCHOR id="SignonIdentityReferenceAddedCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentityReferenceAddedCb">
-<ANCHOR id="SignonIdentityReferenceRemovedCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentityReferenceRemovedCb">
-<ANCHOR id="SignonIdentityRemovedCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentityRemovedCb">
-<ANCHOR id="SignonIdentitySessionReadyCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentitySessionReadyCb">
-<ANCHOR id="SignonIdentitySignedOutCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentitySignedOutCb">
-<ANCHOR id="SignonIdentityStoreCredentialsCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentityStoreCredentialsCb">
-<ANCHOR id="SignonIdentityVerifyCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentityVerifyCb">
-<ANCHOR id="SignonIdentityVoidCb" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#SignonIdentityVoidCb">
-<ANCHOR id="signon-identity-add-reference" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-add-reference">
-<ANCHOR id="signon-identity-create-session" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-create-session">
-<ANCHOR id="signon-identity-get-auth-session" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-get-auth-session">
-<ANCHOR id="signon-identity-get-last-error" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-get-last-error">
-<ANCHOR id="signon-identity-new" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-new">
-<ANCHOR id="signon-identity-new-from-db" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-new-from-db">
-<ANCHOR id="signon-identity-query-info" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-query-info">
-<ANCHOR id="signon-identity-remove" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-remove">
-<ANCHOR id="signon-identity-remove-reference" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-remove-reference">
-<ANCHOR id="signon-identity-signout" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-signout">
-<ANCHOR id="signon-identity-store-credentials-with-args" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-store-credentials-with-args">
-<ANCHOR id="signon-identity-store-credentials-with-info" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-store-credentials-with-info">
-<ANCHOR id="signon-identity-verify-secret" href="libgsignon-glib/libgsignon-glib-SignonIdentity.html#signon-identity-verify-secret">
+<ANCHOR id="SignonAuthService" href="libgsignon-glib/SignonAuthService.html">
+<ANCHOR id="SignonAuthService.functions" href="libgsignon-glib/SignonAuthService.html#SignonAuthService.functions">
+<ANCHOR id="SignonAuthService.other" href="libgsignon-glib/SignonAuthService.html#SignonAuthService.other">
+<ANCHOR id="SignonAuthService.object-hierarchy" href="libgsignon-glib/SignonAuthService.html#SignonAuthService.object-hierarchy">
+<ANCHOR id="SignonAuthService.description" href="libgsignon-glib/SignonAuthService.html#SignonAuthService.description">
+<ANCHOR id="SignonAuthService.functions_details" href="libgsignon-glib/SignonAuthService.html#SignonAuthService.functions_details">
+<ANCHOR id="SignonQueryIdentitiesCb" href="libgsignon-glib/SignonAuthService.html#SignonQueryIdentitiesCb">
+<ANCHOR id="SignonQueryMechanismCb" href="libgsignon-glib/SignonAuthService.html#SignonQueryMechanismCb">
+<ANCHOR id="SignonQueryMethodsCb" href="libgsignon-glib/SignonAuthService.html#SignonQueryMethodsCb">
+<ANCHOR id="signon-auth-service-new" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-new">
+<ANCHOR id="signon-auth-service-query-identities" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-query-identities">
+<ANCHOR id="signon-auth-service-query-mechanisms" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-query-mechanisms">
+<ANCHOR id="signon-auth-service-query-methods" href="libgsignon-glib/SignonAuthService.html#signon-auth-service-query-methods">
+<ANCHOR id="SignonAuthService.other_details" href="libgsignon-glib/SignonAuthService.html#SignonAuthService.other_details">
+<ANCHOR id="SignonAuthService-struct" href="libgsignon-glib/SignonAuthService.html#SignonAuthService-struct">
+<ANCHOR id="SignonAuthServiceClass" href="libgsignon-glib/SignonAuthService.html#SignonAuthServiceClass">
+<ANCHOR id="SignonIdentityFilter" href="libgsignon-glib/SignonAuthService.html#SignonIdentityFilter">
+<ANCHOR id="SignonIdentityList" href="libgsignon-glib/SignonAuthService.html#SignonIdentityList">
+<ANCHOR id="SignonIdentity" href="libgsignon-glib/SignonIdentity.html">
+<ANCHOR id="SignonIdentity.functions" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.functions">
+<ANCHOR id="SignonIdentity.properties" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.properties">
+<ANCHOR id="SignonIdentity.signals" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.signals">
+<ANCHOR id="SignonIdentity.other" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.other">
+<ANCHOR id="SignonIdentity.object-hierarchy" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.object-hierarchy">
+<ANCHOR id="SignonIdentity.description" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.description">
+<ANCHOR id="SignonIdentity.functions_details" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.functions_details">
+<ANCHOR id="SignonIdentityInfoCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityInfoCb">
+<ANCHOR id="SignonIdentitySessionReadyCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentitySessionReadyCb">
+<ANCHOR id="SignonIdentityStoreCredentialsCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityStoreCredentialsCb">
+<ANCHOR id="SignonIdentityVerifyCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityVerifyCb">
+<ANCHOR id="SignonIdentityVoidCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityVoidCb">
+<ANCHOR id="signon-identity-add-reference" href="libgsignon-glib/SignonIdentity.html#signon-identity-add-reference">
+<ANCHOR id="signon-identity-create-session" href="libgsignon-glib/SignonIdentity.html#signon-identity-create-session">
+<ANCHOR id="signon-identity-get-auth-session" href="libgsignon-glib/SignonIdentity.html#signon-identity-get-auth-session">
+<ANCHOR id="signon-identity-get-last-error" href="libgsignon-glib/SignonIdentity.html#signon-identity-get-last-error">
+<ANCHOR id="signon-identity-new" href="libgsignon-glib/SignonIdentity.html#signon-identity-new">
+<ANCHOR id="signon-identity-new-from-db" href="libgsignon-glib/SignonIdentity.html#signon-identity-new-from-db">
+<ANCHOR id="signon-identity-new-with-context" href="libgsignon-glib/SignonIdentity.html#signon-identity-new-with-context">
+<ANCHOR id="signon-identity-new-with-context-from-db" href="libgsignon-glib/SignonIdentity.html#signon-identity-new-with-context-from-db">
+<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-remove-reference" href="libgsignon-glib/SignonIdentity.html#signon-identity-remove-reference">
+<ANCHOR id="signon-identity-signout" href="libgsignon-glib/SignonIdentity.html#signon-identity-signout">
+<ANCHOR id="signon-identity-store-credentials-with-args" href="libgsignon-glib/SignonIdentity.html#signon-identity-store-credentials-with-args">
+<ANCHOR id="signon-identity-store-credentials-with-info" href="libgsignon-glib/SignonIdentity.html#signon-identity-store-credentials-with-info">
+<ANCHOR id="signon-identity-verify-secret" href="libgsignon-glib/SignonIdentity.html#signon-identity-verify-secret">
+<ANCHOR id="SignonIdentity.other_details" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.other_details">
+<ANCHOR id="SignonIdentity-struct" href="libgsignon-glib/SignonIdentity.html#SignonIdentity-struct">
+<ANCHOR id="SignonIdentityClass" href="libgsignon-glib/SignonIdentity.html#SignonIdentityClass">
+<ANCHOR id="SignonIdentityReferenceAddedCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityReferenceAddedCb">
+<ANCHOR id="SignonIdentityReferenceRemovedCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityReferenceRemovedCb">
+<ANCHOR id="SignonIdentityRemovedCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentityRemovedCb">
+<ANCHOR id="SignonIdentitySignedOutCb" href="libgsignon-glib/SignonIdentity.html#SignonIdentitySignedOutCb">
+<ANCHOR id="SignonIdentity.property-details" href="libgsignon-glib/SignonIdentity.html#SignonIdentity.property-details">
+<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-signout" href="libgsignon-glib/SignonIdentity.html#SignonIdentity-signout">
<ANCHOR id="SignonIdentityInfo" href="libgsignon-glib/SignonIdentityInfo.html">
-<ANCHOR id="SignonIdentityInfo.synopsis" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.synopsis">
+<ANCHOR id="SignonIdentityInfo.functions" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.functions">
+<ANCHOR id="SignonIdentityInfo.other" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.other">
<ANCHOR id="SignonIdentityInfo.object-hierarchy" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.object-hierarchy">
<ANCHOR id="SignonIdentityInfo.description" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.description">
-<ANCHOR id="SignonIdentityInfo.details" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.details">
-<ANCHOR id="SignonIdentityInfo-struct" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo-struct">
-<ANCHOR id="SignonIdentityType" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityType">
-<ANCHOR id="SIGNON-IDENTITY-TYPE-OTHER:CAPS" href="libgsignon-glib/SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-OTHER:CAPS">
-<ANCHOR id="SIGNON-IDENTITY-TYPE-APP:CAPS" href="libgsignon-glib/SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-APP:CAPS">
-<ANCHOR id="SIGNON-IDENTITY-TYPE-WEB:CAPS" href="libgsignon-glib/SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-WEB:CAPS">
-<ANCHOR id="SIGNON-IDENTITY-TYPE-NETWORK:CAPS" href="libgsignon-glib/SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-NETWORK:CAPS">
+<ANCHOR id="SignonIdentityInfo.functions_details" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.functions_details">
<ANCHOR id="signon-identity-info-access-control-list-append" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-access-control-list-append">
<ANCHOR id="signon-identity-info-copy" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-copy">
<ANCHOR id="signon-identity-info-free" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-free">
<ANCHOR id="signon-identity-info-get-storing-secret" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-get-storing-secret">
<ANCHOR id="signon-identity-info-get-username" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-get-username">
<ANCHOR id="signon-identity-info-new" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-new">
+<ANCHOR id="signon-identity-info-own-methods" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-own-methods">
<ANCHOR id="signon-identity-info-remove-method" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-remove-method">
<ANCHOR id="signon-identity-info-set-access-control-list" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-set-access-control-list">
<ANCHOR id="signon-identity-info-set-caption" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-set-caption">
<ANCHOR id="signon-identity-info-set-realms" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-set-realms">
<ANCHOR id="signon-identity-info-set-secret" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-set-secret">
<ANCHOR id="signon-identity-info-set-username" href="libgsignon-glib/SignonIdentityInfo.html#signon-identity-info-set-username">
+<ANCHOR id="SignonIdentityInfo.other_details" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo.other_details">
+<ANCHOR id="SignonIdentityInfo-struct" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityInfo-struct">
+<ANCHOR id="SignonIdentityType" href="libgsignon-glib/SignonIdentityInfo.html#SignonIdentityType">
<ANCHOR id="SignonSecurityContext" href="libgsignon-glib/SignonSecurityContext.html">
-<ANCHOR id="SignonSecurityContext.synopsis" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext.synopsis">
+<ANCHOR id="SignonSecurityContext.functions" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext.functions">
+<ANCHOR id="SignonSecurityContext.other" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext.other">
<ANCHOR id="SignonSecurityContext.object-hierarchy" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext.object-hierarchy">
<ANCHOR id="SignonSecurityContext.description" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext.description">
-<ANCHOR id="SignonSecurityContext.details" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext.details">
-<ANCHOR id="SignonSecurityContext-struct" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext-struct">
-<ANCHOR id="SignonSecurityContextList" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContextList">
+<ANCHOR id="SignonSecurityContext.functions_details" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext.functions_details">
<ANCHOR id="signon-security-context-build-variant" href="libgsignon-glib/SignonSecurityContext.html#signon-security-context-build-variant">
<ANCHOR id="signon-security-context-copy" href="libgsignon-glib/SignonSecurityContext.html#signon-security-context-copy">
<ANCHOR id="signon-security-context-deconstruct-variant" href="libgsignon-glib/SignonSecurityContext.html#signon-security-context-deconstruct-variant">
<ANCHOR id="signon-security-context-new-from-values" href="libgsignon-glib/SignonSecurityContext.html#signon-security-context-new-from-values">
<ANCHOR id="signon-security-context-set-application-context" href="libgsignon-glib/SignonSecurityContext.html#signon-security-context-set-application-context">
<ANCHOR id="signon-security-context-set-system-context" href="libgsignon-glib/SignonSecurityContext.html#signon-security-context-set-system-context">
+<ANCHOR id="SignonSecurityContext.other_details" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext.other_details">
+<ANCHOR id="SignonSecurityContext-struct" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContext-struct">
+<ANCHOR id="SignonSecurityContextList" href="libgsignon-glib/SignonSecurityContext.html#SignonSecurityContextList">
<ANCHOR id="SignonAuthSession" href="libgsignon-glib/SignonAuthSession.html">
-<ANCHOR id="SignonAuthSession.synopsis" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.synopsis">
-<ANCHOR id="SignonAuthSession.object-hierarchy" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.object-hierarchy">
+<ANCHOR id="SignonAuthSession.functions" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.functions">
<ANCHOR id="SignonAuthSession.properties" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.properties">
<ANCHOR id="SignonAuthSession.signals" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.signals">
+<ANCHOR id="SignonAuthSession.other" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.other">
+<ANCHOR id="SignonAuthSession.object-hierarchy" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.object-hierarchy">
<ANCHOR id="SignonAuthSession.description" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.description">
-<ANCHOR id="SignonAuthSession.details" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.details">
+<ANCHOR id="SignonAuthSession.functions_details" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.functions_details">
+<ANCHOR id="SignonAuthSessionProcessCb" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSessionProcessCb">
+<ANCHOR id="SignonAuthSessionQueryAvailableMechanismsCb" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb">
+<ANCHOR id="signon-auth-session-cancel" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-cancel">
+<ANCHOR id="signon-auth-session-get-method" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-get-method">
+<ANCHOR id="signon-auth-session-new" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-new">
+<ANCHOR id="signon-auth-session-new-for-identity" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-new-for-identity">
+<ANCHOR id="signon-auth-session-process" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-process">
+<ANCHOR id="signon-auth-session-process-async" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-process-async">
+<ANCHOR id="signon-auth-session-process-finish" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-process-finish">
+<ANCHOR id="signon-auth-session-query-available-mechanisms" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-query-available-mechanisms">
+<ANCHOR id="SignonAuthSession.other_details" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.other_details">
<ANCHOR id="SIGNON-SESSION-DATA-CAPTION:CAPS" href="libgsignon-glib/SignonAuthSession.html#SIGNON-SESSION-DATA-CAPTION:CAPS">
<ANCHOR id="SIGNON-SESSION-DATA-PROXY:CAPS" href="libgsignon-glib/SignonAuthSession.html#SIGNON-SESSION-DATA-PROXY:CAPS">
<ANCHOR id="SIGNON-SESSION-DATA-REALM:CAPS" href="libgsignon-glib/SignonAuthSession.html#SIGNON-SESSION-DATA-REALM:CAPS">
<ANCHOR id="SIGNON-SESSION-DATA-WINDOW-ID:CAPS" href="libgsignon-glib/SignonAuthSession.html#SIGNON-SESSION-DATA-WINDOW-ID:CAPS">
<ANCHOR id="SignonAuthSession-struct" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession-struct">
<ANCHOR id="SignonAuthSessionClass" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSessionClass">
-<ANCHOR id="SignonAuthSessionProcessCb" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSessionProcessCb">
-<ANCHOR id="SignonAuthSessionQueryAvailableMechanismsCb" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb">
<ANCHOR id="SignonSessionDataUiPolicy" href="libgsignon-glib/SignonAuthSession.html#SignonSessionDataUiPolicy">
-<ANCHOR id="SIGNON-POLICY-DEFAULT:CAPS" href="libgsignon-glib/SignonAuthSession.html#SIGNON-POLICY-DEFAULT:CAPS">
-<ANCHOR id="SIGNON-POLICY-REQUEST-PASSWORD:CAPS" href="libgsignon-glib/SignonAuthSession.html#SIGNON-POLICY-REQUEST-PASSWORD:CAPS">
-<ANCHOR id="SIGNON-POLICY-NO-USER-INTERACTION:CAPS" href="libgsignon-glib/SignonAuthSession.html#SIGNON-POLICY-NO-USER-INTERACTION:CAPS">
-<ANCHOR id="SIGNON-POLICY-VALIDATION:CAPS" href="libgsignon-glib/SignonAuthSession.html#SIGNON-POLICY-VALIDATION:CAPS">
-<ANCHOR id="signon-auth-session-cancel" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-cancel">
-<ANCHOR id="signon-auth-session-get-method" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-get-method">
-<ANCHOR id="signon-auth-session-new" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-new">
-<ANCHOR id="signon-auth-session-process" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-process">
-<ANCHOR id="signon-auth-session-process-async" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-process-async">
-<ANCHOR id="signon-auth-session-process-finish" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-process-finish">
-<ANCHOR id="signon-auth-session-query-available-mechanisms" href="libgsignon-glib/SignonAuthSession.html#signon-auth-session-query-available-mechanisms">
<ANCHOR id="SignonAuthSession.property-details" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.property-details">
<ANCHOR id="SignonAuthSession--identity" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession--identity">
<ANCHOR id="SignonAuthSession.signal-details" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession.signal-details">
<ANCHOR id="SignonAuthSession-state-changed" href="libgsignon-glib/SignonAuthSession.html#SignonAuthSession-state-changed">
<ANCHOR id="libgsignon-glib-SignonError" href="libgsignon-glib/libgsignon-glib-SignonError.html">
-<ANCHOR id="libgsignon-glib-SignonError.synopsis" href="libgsignon-glib/libgsignon-glib-SignonError.html#libgsignon-glib-SignonError.synopsis">
+<ANCHOR id="libgsignon-glib-SignonError.functions" href="libgsignon-glib/libgsignon-glib-SignonError.html#libgsignon-glib-SignonError.functions">
+<ANCHOR id="libgsignon-glib-SignonError.other" href="libgsignon-glib/libgsignon-glib-SignonError.html#libgsignon-glib-SignonError.other">
+<ANCHOR id="libgsignon-glib-SignonError.object-hierarchy" href="libgsignon-glib/libgsignon-glib-SignonError.html#libgsignon-glib-SignonError.object-hierarchy">
<ANCHOR id="libgsignon-glib-SignonError.description" href="libgsignon-glib/libgsignon-glib-SignonError.html#libgsignon-glib-SignonError.description">
-<ANCHOR id="libgsignon-glib-SignonError.details" href="libgsignon-glib/libgsignon-glib-SignonError.html#libgsignon-glib-SignonError.details">
+<ANCHOR id="libgsignon-glib-SignonError.functions_details" href="libgsignon-glib/libgsignon-glib-SignonError.html#libgsignon-glib-SignonError.functions_details">
<ANCHOR id="SIGNON-ERROR:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR:CAPS">
-<ANCHOR id="SignonError" href="libgsignon-glib/libgsignon-glib-SignonError.html#SignonError">
-<ANCHOR id="SIGNON-ERROR-UNKNOWN:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-UNKNOWN:CAPS">
-<ANCHOR id="SIGNON-ERROR-INTERNAL-SERVER:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-INTERNAL-SERVER:CAPS">
-<ANCHOR id="SIGNON-ERROR-INTERNAL-COMMUNICATION:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-INTERNAL-COMMUNICATION:CAPS">
-<ANCHOR id="SIGNON-ERROR-PERMISSION-DENIED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-PERMISSION-DENIED:CAPS">
-<ANCHOR id="SIGNON-ERROR-METHOD-NOT-KNOWN:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-METHOD-NOT-KNOWN:CAPS">
-<ANCHOR id="SIGNON-ERROR-SERVICE-NOT-AVAILABLE:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-SERVICE-NOT-AVAILABLE:CAPS">
-<ANCHOR id="SIGNON-ERROR-INVALID-QUERY:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-INVALID-QUERY:CAPS">
-<ANCHOR id="SIGNON-ERROR-METHOD-NOT-AVAILABLE:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-METHOD-NOT-AVAILABLE:CAPS">
-<ANCHOR id="SIGNON-ERROR-IDENTITY-NOT-FOUND:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-IDENTITY-NOT-FOUND:CAPS">
-<ANCHOR id="SIGNON-ERROR-STORE-FAILED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-STORE-FAILED:CAPS">
-<ANCHOR id="SIGNON-ERROR-REMOVE-FAILED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-REMOVE-FAILED:CAPS">
-<ANCHOR id="SIGNON-ERROR-SIGNOUT-FAILED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-SIGNOUT-FAILED:CAPS">
-<ANCHOR id="SIGNON-ERROR-IDENTITY-OPERATION-CANCELED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-IDENTITY-OPERATION-CANCELED:CAPS">
-<ANCHOR id="SIGNON-ERROR-CREDENTIALS-NOT-AVAILABLE:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-CREDENTIALS-NOT-AVAILABLE:CAPS">
-<ANCHOR id="SIGNON-ERROR-REFERENCE-NOT-FOUND:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-REFERENCE-NOT-FOUND:CAPS">
-<ANCHOR id="SIGNON-ERROR-MECHANISM-NOT-AVAILABLE:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-MECHANISM-NOT-AVAILABLE:CAPS">
-<ANCHOR id="SIGNON-ERROR-MISSING-DATA:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-MISSING-DATA:CAPS">
-<ANCHOR id="SIGNON-ERROR-INVALID-CREDENTIALS:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-INVALID-CREDENTIALS:CAPS">
-<ANCHOR id="SIGNON-ERROR-NOT-AUTHORIZED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-NOT-AUTHORIZED:CAPS">
-<ANCHOR id="SIGNON-ERROR-WRONG-STATE:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-WRONG-STATE:CAPS">
-<ANCHOR id="SIGNON-ERROR-OPERATION-NOT-SUPPORTED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-OPERATION-NOT-SUPPORTED:CAPS">
-<ANCHOR id="SIGNON-ERROR-NO-CONNECTION:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-NO-CONNECTION:CAPS">
-<ANCHOR id="SIGNON-ERROR-NETWORK:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-NETWORK:CAPS">
-<ANCHOR id="SIGNON-ERROR-SSL:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-SSL:CAPS">
-<ANCHOR id="SIGNON-ERROR-RUNTIME:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-RUNTIME:CAPS">
-<ANCHOR id="SIGNON-ERROR-SESSION-CANCELED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-SESSION-CANCELED:CAPS">
-<ANCHOR id="SIGNON-ERROR-TIMED-OUT:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-TIMED-OUT:CAPS">
-<ANCHOR id="SIGNON-ERROR-USER-INTERACTION:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-USER-INTERACTION:CAPS">
-<ANCHOR id="SIGNON-ERROR-OPERATION-FAILED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-OPERATION-FAILED:CAPS">
-<ANCHOR id="SIGNON-ERROR-ENCRYPTION-FAILED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-ENCRYPTION-FAILED:CAPS">
-<ANCHOR id="SIGNON-ERROR-TOS-NOT-ACCEPTED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-TOS-NOT-ACCEPTED:CAPS">
-<ANCHOR id="SIGNON-ERROR-FORGOT-PASSWORD:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-FORGOT-PASSWORD:CAPS">
-<ANCHOR id="SIGNON-ERROR-METHOD-OR-MECHANISM-NOT-ALLOWED:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-METHOD-OR-MECHANISM-NOT-ALLOWED:CAPS">
-<ANCHOR id="SIGNON-ERROR-INCORRECT-DATE:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-INCORRECT-DATE:CAPS">
-<ANCHOR id="SIGNON-ERROR-USER-ERROR:CAPS" href="libgsignon-glib/libgsignon-glib-SignonError.html#SIGNON-ERROR-USER-ERROR:CAPS">
<ANCHOR id="signon-error-quark" href="libgsignon-glib/libgsignon-glib-SignonError.html#signon-error-quark">
+<ANCHOR id="libgsignon-glib-SignonError.other_details" href="libgsignon-glib/libgsignon-glib-SignonError.html#libgsignon-glib-SignonError.other_details">
+<ANCHOR id="SignonError" href="libgsignon-glib/libgsignon-glib-SignonError.html#SignonError">
<ANCHOR id="annotation-glossterm-allow-none" href="libgsignon-glib/annotation-glossary.html#annotation-glossterm-allow-none">
-<ANCHOR id="annotation-glossterm-scope async" href="libgsignon-glib/annotation-glossary.html#annotation-glossterm-scope async">
<ANCHOR id="annotation-glossterm-element-type" href="libgsignon-glib/annotation-glossary.html#annotation-glossterm-element-type">
+<ANCHOR id="annotation-glossterm-scope async" href="libgsignon-glib/annotation-glossary.html#annotation-glossterm-scope async">
<ANCHOR id="annotation-glossterm-transfer full" href="libgsignon-glib/annotation-glossary.html#annotation-glossterm-transfer full">
-<ANCHOR id="annotation-glossterm-type" href="libgsignon-glib/annotation-glossary.html#annotation-glossterm-type">
<ANCHOR id="annotation-glossterm-transfer none" href="libgsignon-glib/annotation-glossary.html#annotation-glossterm-transfer none">
+<ANCHOR id="annotation-glossterm-type" href="libgsignon-glib/annotation-glossary.html#annotation-glossterm-type">
+++ /dev/null
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SignonAuthService</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
-<link rel="up" href="credential-management.html" title="Credential management">
-<link rel="prev" href="credential-management.html" title="Credential management">
-<link rel="next" href="libgsignon-glib-SignonIdentity.html" title="SignonIdentity">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="credential-management.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="libgsignon-glib-SignonIdentity.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a href="#libgsignon-glib-SignonAuthService.synopsis" class="shortcut">Top</a>
- |
- <a href="#libgsignon-glib-SignonAuthService.description" class="shortcut">Description</a>
-</td></tr>
-</table>
-<div class="refentry">
-<a name="libgsignon-glib-SignonAuthService"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="libgsignon-glib-SignonAuthService.top_of_page"></a>SignonAuthService</span></h2>
-<p>SignonAuthService — the authorization service object</p>
-</td>
-<td valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsynopsisdiv">
-<a name="libgsignon-glib-SignonAuthService.synopsis"></a><h2>Synopsis</h2>
-<pre class="synopsis">struct <a class="link" href="libgsignon-glib-SignonAuthService.html#SignonAuthServiceClass" title="struct SignonAuthServiceClass">SignonAuthServiceClass</a>;
-typedef <a class="link" href="libgsignon-glib-SignonAuthService.html#SignonIdentityFilter" title="SignonIdentityFilter">SignonIdentityFilter</a>;
-typedef <a class="link" href="libgsignon-glib-SignonAuthService.html#SignonIdentityList" title="SignonIdentityList">SignonIdentityList</a>;
-<span class="returnvalue">void</span> (<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonQueryIdentitiesCb" title="SignonQueryIdentitiesCb ()">*SignonQueryIdentitiesCb</a>) (<em class="parameter"><code><span class="type">SignonAuthService</span> *auth_service</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>);
-<span class="returnvalue">void</span> (<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonQueryMechanismCb" title="SignonQueryMechanismCb ()">*SignonQueryMechanismCb</a>) (<em class="parameter"><code><span class="type">SignonAuthService</span> *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>);
-<span class="returnvalue">void</span> (<a class="link" href="libgsignon-glib-SignonAuthService.html#SignonQueryMethodsCb" title="SignonQueryMethodsCb ()">*SignonQueryMethodsCb</a>) (<em class="parameter"><code><span class="type">SignonAuthService</span> *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>);
-<span class="returnvalue">SignonAuthService</span> * <a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-new" title="signon_auth_service_new ()">signon_auth_service_new</a> ();
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-identities" title="signon_auth_service_query_identities ()">signon_auth_service_query_identities</a>
- (<em class="parameter"><code><span class="type">SignonAuthService</span> *auth_service</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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><a class="link" href="libgsignon-glib-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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-mechanisms" title="signon_auth_service_query_mechanisms ()">signon_auth_service_query_mechanisms</a>
- (<em class="parameter"><code><span class="type">SignonAuthService</span> *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 class="link" href="libgsignon-glib-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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-methods" title="signon_auth_service_query_methods ()">signon_auth_service_query_methods</a> (<em class="parameter"><code><span class="type">SignonAuthService</span> *auth_service</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>
-</div>
-<div class="refsect1">
-<a name="libgsignon-glib-SignonAuthService.description"></a><h2>Description</h2>
-<p>
-The <span class="type">SignonAuthService</span> is the main object in this library. It provides top-level
-functions to query existing identities, available methods and their mechanisms.
-</p>
-</div>
-<div class="refsect1">
-<a name="libgsignon-glib-SignonAuthService.details"></a><h2>Details</h2>
-<div class="refsect2">
-<a name="SignonAuthServiceClass"></a><h3>struct SignonAuthServiceClass</h3>
-<pre class="programlisting">struct SignonAuthServiceClass {
- GObjectClass parent_class;
-};
-</pre>
-<p>
-Opaque struct. Use the accessor functions below.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><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>;</span></p></td>
-<td>a reference to the parent class</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<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>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityList"></a><h3>SignonIdentityList</h3>
-<pre class="programlisting">typedef GList SignonIdentityList;
-</pre>
-<p>
-GList of <span class="type">SignonIdentity</span> items.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonQueryIdentitiesCb"></a><h3>SignonQueryIdentitiesCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonQueryIdentitiesCb) (<em class="parameter"><code><span class="type">SignonAuthService</span> *auth_service</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>auth_service</code></em> :</span></p></td>
-<td>the <span class="type">SignonAuthService</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>identities</code></em> :</span></p></td>
-<td>
-<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>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonQueryMechanismCb"></a><h3>SignonQueryMechanismCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonQueryMechanismCb) (<em class="parameter"><code><span class="type">SignonAuthService</span> *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>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>auth_service</code></em> :</span></p></td>
-<td>the <span class="type">SignonAuthService</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>method</code></em> :</span></p></td>
-<td>the authentication method being inspected.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>mechanisms</code></em> :</span></p></td>
-<td>list of available mechanisms. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> GStrv]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonQueryMethodsCb"></a><h3>SignonQueryMethodsCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonQueryMethodsCb) (<em class="parameter"><code><span class="type">SignonAuthService</span> *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>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>auth_service</code></em> :</span></p></td>
-<td>the <span class="type">SignonAuthService</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>methods</code></em> :</span></p></td>
-<td>list of available methods. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> GStrv]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-auth-service-new"></a><h3>signon_auth_service_new ()</h3>
-<pre class="programlisting"><span class="returnvalue">SignonAuthService</span> * signon_auth_service_new ();</pre>
-<p>
-Create a new <span class="type">SignonAuthService</span>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>an instance of an <span class="type">SignonAuthService</span>.</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-auth-service-query-identities"></a><h3>signon_auth_service_query_identities ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_auth_service_query_identities
- (<em class="parameter"><code><span class="type">SignonAuthService</span> *auth_service</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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><a class="link" href="libgsignon-glib-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>
-<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>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" 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>).
-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 <span class="type">GSignondAccessControlManager</span>.</p></li>
-<li class="listitem"><p>"Type". The value should be a <a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="type">SignonIdentityType</span></a>.</p></li>
-<li class="listitem"><p>"Caption". The value is a string, and only those identites whose caption
-begins with the supplied value will be returned.</p></li>
-</ul></div>
-<p>
-</p>
-<p>
-The meaning of <em class="parameter"><code>application_context</code></em> is explained in <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a>.
-It is used by <span class="type">GSignondAccessControlManager</span> to determine if the requesting
-application is a keychain application. If it is, then all identites will be
-returned (subject to "Owner" key in <em class="parameter"><code>filter</code></em>). If it's not, then only the
-identites which the application owns will be returned (but "Type" and "Caption"
-can still be set in the <em class="parameter"><code>filter</code></em>).
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>auth_service</code></em> :</span></p></td>
-<td>the <span class="type">SignonAuthService</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>filter</code></em> :</span></p></td>
-<td>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>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>application_context</code></em> :</span></p></td>
-<td>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>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback to be invoked. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<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><span class="type">SignonAuthService</span> *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 class="link" href="libgsignon-glib-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>
-<p>
-Lists all the available mechanisms for an authentication method.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>auth_service</code></em> :</span></p></td>
-<td>the <span class="type">SignonAuthService</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>method</code></em> :</span></p></td>
-<td>the name of the method whose mechanisms must be
-retrieved.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback to be invoked. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-auth-service-query-methods"></a><h3>signon_auth_service_query_methods ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_auth_service_query_methods (<em class="parameter"><code><span class="type">SignonAuthService</span> *auth_service</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>
-<p>
-Lists all the available authentication methods.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>auth_service</code></em> :</span></p></td>
-<td>the <span class="type">SignonAuthService</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback to be invoked. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-</div>
-<div class="footer">
-<hr>
- Generated by GTK-Doc V1.18</div>
-</body>
-</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SignonError</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: SignonError</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="credential-management.html" title="Credential management">
<link rel="prev" href="SignonAuthSession.html" title="SignonAuthSession">
<link rel="next" href="appendices.html" title="Part III. Appendices">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="SignonAuthSession.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="appendices.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a href="#libgsignon-glib-SignonError.synopsis" class="shortcut">Top</a>
- |
- <a href="#libgsignon-glib-SignonError.description" class="shortcut">Description</a>
-</td></tr>
-</table>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts">
+<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span>
+ <a href="#libgsignon-glib-SignonError.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span>
+ <a href="#libgsignon-glib-SignonError.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
+</td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="SignonAuthSession.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="appendices.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
<div class="refentry">
<a name="libgsignon-glib-SignonError"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<h2><span class="refentrytitle"><a name="libgsignon-glib-SignonError.top_of_page"></a>SignonError</span></h2>
<p>SignonError — possible gSSO errors</p>
</td>
-<td valign="top" align="right"></td>
+<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
-<div class="refsynopsisdiv">
-<a name="libgsignon-glib-SignonError.synopsis"></a><h2>Synopsis</h2>
-<pre class="synopsis">#define <a class="link" href="libgsignon-glib-SignonError.html#SIGNON-ERROR:CAPS" title="SIGNON_ERROR">SIGNON_ERROR</a>
-enum <a class="link" href="libgsignon-glib-SignonError.html#SignonError" title="enum SignonError">SignonError</a>;
-<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> <a class="link" href="libgsignon-glib-SignonError.html#signon-error-quark" title="signon_error_quark ()">signon_error_quark</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
+<div class="refsect1">
+<a name="libgsignon-glib-SignonError.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="libgsignon-glib-SignonError.html#SIGNON-ERROR:CAPS" title="SIGNON_ERROR">SIGNON_ERROR</a></td>
+</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>
+</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>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="libgsignon-glib-SignonError.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody><tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="libgsignon-glib-SignonError.html#SignonError" title="enum SignonError">SignonError</a></td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="libgsignon-glib-SignonError.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="screen">
</pre>
</div>
<div class="refsect1">
<a name="libgsignon-glib-SignonError.description"></a><h2>Description</h2>
-<p>
-An enumeration of errors that are possible when using gSSO
-</p>
+<p>An enumeration of errors that are possible when using gSSO</p>
</div>
<div class="refsect1">
-<a name="libgsignon-glib-SignonError.details"></a><h2>Details</h2>
+<a name="libgsignon-glib-SignonError.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<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 <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>
</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>
+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>
+</div>
+<div class="refsect1">
+<a name="libgsignon-glib-SignonError.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
<a name="SignonError"></a><h3>enum SignonError</h3>
-<pre class="programlisting">typedef enum {
- SIGNON_ERROR_UNKNOWN = 1,
- SIGNON_ERROR_INTERNAL_SERVER = 2,
- SIGNON_ERROR_INTERNAL_COMMUNICATION = 3,
- SIGNON_ERROR_PERMISSION_DENIED = 4,
-
- SIGNON_ERROR_METHOD_NOT_KNOWN = 101,
- SIGNON_ERROR_SERVICE_NOT_AVAILABLE,
- SIGNON_ERROR_INVALID_QUERY,
-
- SIGNON_ERROR_METHOD_NOT_AVAILABLE = 201,
- SIGNON_ERROR_IDENTITY_NOT_FOUND,
- SIGNON_ERROR_STORE_FAILED,
- SIGNON_ERROR_REMOVE_FAILED,
- SIGNON_ERROR_SIGNOUT_FAILED,
- SIGNON_ERROR_IDENTITY_OPERATION_CANCELED,
- SIGNON_ERROR_CREDENTIALS_NOT_AVAILABLE,
- SIGNON_ERROR_REFERENCE_NOT_FOUND,
-
- SIGNON_ERROR_MECHANISM_NOT_AVAILABLE = 301,
- SIGNON_ERROR_MISSING_DATA,
- SIGNON_ERROR_INVALID_CREDENTIALS,
- SIGNON_ERROR_NOT_AUTHORIZED,
- SIGNON_ERROR_WRONG_STATE,
- SIGNON_ERROR_OPERATION_NOT_SUPPORTED,
- SIGNON_ERROR_NO_CONNECTION,
- SIGNON_ERROR_NETWORK,
- SIGNON_ERROR_SSL,
- SIGNON_ERROR_RUNTIME,
- SIGNON_ERROR_SESSION_CANCELED,
- SIGNON_ERROR_TIMED_OUT,
- SIGNON_ERROR_USER_INTERACTION,
- SIGNON_ERROR_OPERATION_FAILED,
- SIGNON_ERROR_ENCRYPTION_FAILED,
- SIGNON_ERROR_TOS_NOT_ACCEPTED,
- SIGNON_ERROR_FORGOT_PASSWORD,
- SIGNON_ERROR_METHOD_OR_MECHANISM_NOT_ALLOWED,
- SIGNON_ERROR_INCORRECT_DATE,
- SIGNON_ERROR_USER_ERROR = 400
-} SignonError;
-</pre>
-<p>
-Possible Signon errors.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
+<p>Possible Signon errors.</p>
+<div class="refsect3">
+<a name="id-1.3.3.7.8.2.4"></a><h4>Members</h4>
+<div class="informaltable"><table width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
<tbody>
<tr>
-<td><p><a name="SIGNON-ERROR-UNKNOWN:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_UNKNOWN</code></span></p></td>
-<td>Catch-all for errors not distinguished by another code.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-UNKNOWN:CAPS"></a>SIGNON_ERROR_UNKNOWN</p></td>
+<td class="enum_member_description">
+<p>Catch-all for errors not distinguished by another code.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-INTERNAL-SERVER:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_INTERNAL_SERVER</code></span></p></td>
-<td>Signon daemon internal error.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-INTERNAL-SERVER:CAPS"></a>SIGNON_ERROR_INTERNAL_SERVER</p></td>
+<td class="enum_member_description">
+<p>Signon daemon internal error.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-INTERNAL-COMMUNICATION:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_INTERNAL_COMMUNICATION</code></span></p></td>
-<td>Error communicating with Signon daemon.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-INTERNAL-COMMUNICATION:CAPS"></a>SIGNON_ERROR_INTERNAL_COMMUNICATION</p></td>
+<td class="enum_member_description">
+<p>Error communicating with Signon daemon.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-PERMISSION-DENIED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_PERMISSION_DENIED</code></span></p></td>
-<td>The operation cannot be performed due to
-insufficient client permissions.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-PERMISSION-DENIED:CAPS"></a>SIGNON_ERROR_PERMISSION_DENIED</p></td>
+<td class="enum_member_description">
+<p>The operation cannot be performed due to
+insufficient client permissions.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-METHOD-NOT-KNOWN:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_METHOD_NOT_KNOWN</code></span></p></td>
-<td>The method with this name was not found.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-METHOD-NOT-KNOWN:CAPS"></a>SIGNON_ERROR_METHOD_NOT_KNOWN</p></td>
+<td class="enum_member_description">
+<p>The method with this name was not found.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-SERVICE-NOT-AVAILABLE:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_SERVICE_NOT_AVAILABLE</code></span></p></td>
-<td>The service is temporarily unavailable.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-SERVICE-NOT-AVAILABLE:CAPS"></a>SIGNON_ERROR_SERVICE_NOT_AVAILABLE</p></td>
+<td class="enum_member_description">
+<p>The service is temporarily unavailable.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-INVALID-QUERY:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_INVALID_QUERY</code></span></p></td>
-<td>Parameters for the query are invalid.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-INVALID-QUERY:CAPS"></a>SIGNON_ERROR_INVALID_QUERY</p></td>
+<td class="enum_member_description">
+<p>Parameters for the query are invalid.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-METHOD-NOT-AVAILABLE:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_METHOD_NOT_AVAILABLE</code></span></p></td>
-<td>The requested method is not available.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-METHOD-NOT-AVAILABLE:CAPS"></a>SIGNON_ERROR_METHOD_NOT_AVAILABLE</p></td>
+<td class="enum_member_description">
+<p>The requested method is not available.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-IDENTITY-NOT-FOUND:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_IDENTITY_NOT_FOUND</code></span></p></td>
-<td>The identity mathching the <span class="type">SignonIdentity</span>
-was not found on the service.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-IDENTITY-NOT-FOUND:CAPS"></a>SIGNON_ERROR_IDENTITY_NOT_FOUND</p></td>
+<td class="enum_member_description">
+<p>The identity mathching the <a class="link" href="SignonIdentity.html" title="SignonIdentity"><span class="type">SignonIdentity</span></a>
+was not found on the service.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-STORE-FAILED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_STORE_FAILED</code></span></p></td>
-<td>Storing credentials failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-STORE-FAILED:CAPS"></a>SIGNON_ERROR_STORE_FAILED</p></td>
+<td class="enum_member_description">
+<p>Storing credentials failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-REMOVE-FAILED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_REMOVE_FAILED</code></span></p></td>
-<td>Removing credentials failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-REMOVE-FAILED:CAPS"></a>SIGNON_ERROR_REMOVE_FAILED</p></td>
+<td class="enum_member_description">
+<p>Removing credentials failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-SIGNOUT-FAILED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_SIGNOUT_FAILED</code></span></p></td>
-<td>Signing out failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-SIGNOUT-FAILED:CAPS"></a>SIGNON_ERROR_SIGNOUT_FAILED</p></td>
+<td class="enum_member_description">
+<p>Signing out failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-IDENTITY-OPERATION-CANCELED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_IDENTITY_OPERATION_CANCELED</code></span></p></td>
-<td>Identity operation was canceled
-by the user.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-IDENTITY-OPERATION-CANCELED:CAPS"></a>SIGNON_ERROR_IDENTITY_OPERATION_CANCELED</p></td>
+<td class="enum_member_description">
+<p>Identity operation was canceled
+by the user.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-CREDENTIALS-NOT-AVAILABLE:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_CREDENTIALS_NOT_AVAILABLE</code></span></p></td>
-<td>Query failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-CREDENTIALS-NOT-AVAILABLE:CAPS"></a>SIGNON_ERROR_CREDENTIALS_NOT_AVAILABLE</p></td>
+<td class="enum_member_description">
+<p>Query failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-REFERENCE-NOT-FOUND:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_REFERENCE_NOT_FOUND</code></span></p></td>
-<td>Trying to remove non-existent reference.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-REFERENCE-NOT-FOUND:CAPS"></a>SIGNON_ERROR_REFERENCE_NOT_FOUND</p></td>
+<td class="enum_member_description">
+<p>Trying to remove non-existent reference.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-MECHANISM-NOT-AVAILABLE:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_MECHANISM_NOT_AVAILABLE</code></span></p></td>
-<td>The requested mechanism in not
-available.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-MECHANISM-NOT-AVAILABLE:CAPS"></a>SIGNON_ERROR_MECHANISM_NOT_AVAILABLE</p></td>
+<td class="enum_member_description">
+<p>The requested mechanism in not
+available.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-MISSING-DATA:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_MISSING_DATA</code></span></p></td>
-<td>The SessionData does not contain the necessary
-information.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-MISSING-DATA:CAPS"></a>SIGNON_ERROR_MISSING_DATA</p></td>
+<td class="enum_member_description">
+<p>The SessionData does not contain the necessary
+information.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-INVALID-CREDENTIALS:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_INVALID_CREDENTIALS</code></span></p></td>
-<td>The supplied credentials are invalid for
-the mechanism implementation.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-INVALID-CREDENTIALS:CAPS"></a>SIGNON_ERROR_INVALID_CREDENTIALS</p></td>
+<td class="enum_member_description">
+<p>The supplied credentials are invalid for
+the mechanism implementation.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-NOT-AUTHORIZED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_NOT_AUTHORIZED</code></span></p></td>
-<td>Authorization failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-NOT-AUTHORIZED:CAPS"></a>SIGNON_ERROR_NOT_AUTHORIZED</p></td>
+<td class="enum_member_description">
+<p>Authorization failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-WRONG-STATE:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_WRONG_STATE</code></span></p></td>
-<td>An operation method has been called in an
-incorrect state.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-WRONG-STATE:CAPS"></a>SIGNON_ERROR_WRONG_STATE</p></td>
+<td class="enum_member_description">
+<p>An operation method has been called in an
+incorrect state.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-OPERATION-NOT-SUPPORTED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_OPERATION_NOT_SUPPORTED</code></span></p></td>
-<td>The operation is not supported by the
-mechanism implementation.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-OPERATION-NOT-SUPPORTED:CAPS"></a>SIGNON_ERROR_OPERATION_NOT_SUPPORTED</p></td>
+<td class="enum_member_description">
+<p>The operation is not supported by the
+mechanism implementation.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-NO-CONNECTION:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_NO_CONNECTION</code></span></p></td>
-<td>No network connection.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-NO-CONNECTION:CAPS"></a>SIGNON_ERROR_NO_CONNECTION</p></td>
+<td class="enum_member_description">
+<p>No network connection.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-NETWORK:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_NETWORK</code></span></p></td>
-<td>Network connection failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-NETWORK:CAPS"></a>SIGNON_ERROR_NETWORK</p></td>
+<td class="enum_member_description">
+<p>Network connection failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-SSL:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_SSL</code></span></p></td>
-<td>SSL connection failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-SSL:CAPS"></a>SIGNON_ERROR_SSL</p></td>
+<td class="enum_member_description">
+<p>SSL connection failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-RUNTIME:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_RUNTIME</code></span></p></td>
-<td>Casting SessionData into subclass failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-RUNTIME:CAPS"></a>SIGNON_ERROR_RUNTIME</p></td>
+<td class="enum_member_description">
+<p>Casting SessionData into subclass failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-SESSION-CANCELED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_SESSION_CANCELED</code></span></p></td>
-<td>Challenge was canceled.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-SESSION-CANCELED:CAPS"></a>SIGNON_ERROR_SESSION_CANCELED</p></td>
+<td class="enum_member_description">
+<p>Challenge was canceled.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-TIMED-OUT:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_TIMED_OUT</code></span></p></td>
-<td>Challenge timed out.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-TIMED-OUT:CAPS"></a>SIGNON_ERROR_TIMED_OUT</p></td>
+<td class="enum_member_description">
+<p>Challenge timed out.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-USER-INTERACTION:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_USER_INTERACTION</code></span></p></td>
-<td>User interaction dialog failed.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-USER-INTERACTION:CAPS"></a>SIGNON_ERROR_USER_INTERACTION</p></td>
+<td class="enum_member_description">
+<p>User interaction dialog failed.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-OPERATION-FAILED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_OPERATION_FAILED</code></span></p></td>
-<td>Temporary failure in authentication.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-OPERATION-FAILED:CAPS"></a>SIGNON_ERROR_OPERATION_FAILED</p></td>
+<td class="enum_member_description">
+<p>Temporary failure in authentication.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-ENCRYPTION-FAILED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_ENCRYPTION_FAILED</code></span></p></td>
-<td>
-<em class="parameter"><code>deprecated</code></em>: Failure during data
-encryption/decryption.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-ENCRYPTION-FAILED:CAPS"></a>SIGNON_ERROR_ENCRYPTION_FAILED</p></td>
+<td class="enum_member_description">
+<p><em class="parameter"><code>deprecated</code></em>
+: Failure during data
+encryption/decryption.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-TOS-NOT-ACCEPTED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_TOS_NOT_ACCEPTED</code></span></p></td>
-<td>User declined Terms of Service.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-TOS-NOT-ACCEPTED:CAPS"></a>SIGNON_ERROR_TOS_NOT_ACCEPTED</p></td>
+<td class="enum_member_description">
+<p>User declined Terms of Service.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-FORGOT-PASSWORD:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_FORGOT_PASSWORD</code></span></p></td>
-<td>User requested password reset sequence.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-FORGOT-PASSWORD:CAPS"></a>SIGNON_ERROR_FORGOT_PASSWORD</p></td>
+<td class="enum_member_description">
+<p>User requested password reset sequence.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-METHOD-OR-MECHANISM-NOT-ALLOWED:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_METHOD_OR_MECHANISM_NOT_ALLOWED</code></span></p></td>
-<td>Method or mechanism not
-allowed for this identity.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-METHOD-OR-MECHANISM-NOT-ALLOWED:CAPS"></a>SIGNON_ERROR_METHOD_OR_MECHANISM_NOT_ALLOWED</p></td>
+<td class="enum_member_description">
+<p>Method or mechanism not
+allowed for this identity.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-INCORRECT-DATE:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_INCORRECT_DATE</code></span></p></td>
-<td>Date/time incorrect on device.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-INCORRECT-DATE:CAPS"></a>SIGNON_ERROR_INCORRECT_DATE</p></td>
+<td class="enum_member_description">
+<p>Date/time incorrect on device.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
<tr>
-<td><p><a name="SIGNON-ERROR-USER-ERROR:CAPS"></a><span class="term"><code class="literal">SIGNON_ERROR_USER_ERROR</code></span></p></td>
-<td>Placeholder to rearrange enumeration - userspace
-specific.
+<td class="enum_member_name"><p><a name="SIGNON-ERROR-USER-ERROR:CAPS"></a>SIGNON_ERROR_USER_ERROR</p></td>
+<td class="enum_member_description">
+<p>Placeholder to rearrange enumeration - userspace
+specific.</p>
</td>
+<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</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> 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>
</div>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
+++ /dev/null
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>SignonIdentity</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
-<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
-<link rel="up" href="credential-management.html" title="Credential management">
-<link rel="prev" href="libgsignon-glib-SignonAuthService.html" title="SignonAuthService">
-<link rel="next" href="SignonIdentityInfo.html" title="SignonIdentityInfo">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
-<link rel="stylesheet" href="style.css" type="text/css">
-</head>
-<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
-<tr valign="middle">
-<td><a accesskey="p" href="libgsignon-glib-SignonAuthService.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="credential-management.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="SignonIdentityInfo.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
-</tr>
-<tr><td colspan="5" class="shortcuts">
-<a href="#libgsignon-glib-SignonIdentity.synopsis" class="shortcut">Top</a>
- |
- <a href="#libgsignon-glib-SignonIdentity.description" class="shortcut">Description</a>
-</td></tr>
-</table>
-<div class="refentry">
-<a name="libgsignon-glib-SignonIdentity"></a><div class="titlepage"></div>
-<div class="refnamediv"><table width="100%"><tr>
-<td valign="top">
-<h2><span class="refentrytitle"><a name="libgsignon-glib-SignonIdentity.top_of_page"></a>SignonIdentity</span></h2>
-<p>SignonIdentity — client side presentation of a credential.</p>
-</td>
-<td valign="top" align="right"></td>
-</tr></table></div>
-<div class="refsynopsisdiv">
-<a name="libgsignon-glib-SignonIdentity.synopsis"></a><h2>Synopsis</h2>
-<pre class="synopsis">struct <a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityClass" title="struct SignonIdentityClass">SignonIdentityClass</a>;
-<span class="returnvalue">void</span> (<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityInfoCb" title="SignonIdentityInfoCb ()">*SignonIdentityInfoCb</a>) (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>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>);
-typedef <a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityReferenceAddedCb" title="SignonIdentityReferenceAddedCb">SignonIdentityReferenceAddedCb</a>;
-typedef <a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityReferenceRemovedCb" title="SignonIdentityReferenceRemovedCb">SignonIdentityReferenceRemovedCb</a>;
-typedef <a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityRemovedCb" title="SignonIdentityRemovedCb">SignonIdentityRemovedCb</a>;
-<span class="returnvalue">void</span> (<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentitySessionReadyCb" title="SignonIdentitySessionReadyCb ()">*SignonIdentitySessionReadyCb</a>) (<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>);
-typedef <a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentitySignedOutCb" title="SignonIdentitySignedOutCb">SignonIdentitySignedOutCb</a>;
-<span class="returnvalue">void</span> (<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityStoreCredentialsCb" title="SignonIdentityStoreCredentialsCb ()">*SignonIdentityStoreCredentialsCb</a>) (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>);
-<span class="returnvalue">void</span> (<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityVerifyCb" title="SignonIdentityVerifyCb ()">*SignonIdentityVerifyCb</a>) (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>);
-<span class="returnvalue">void</span> (<a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentityVoidCb" title="SignonIdentityVoidCb ()">*SignonIdentityVoidCb</a>) (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-add-reference" title="signon_identity_add_reference ()">signon_identity_add_reference</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *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><a class="link" href="libgsignon-glib-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>);
-<a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="returnvalue">SignonAuthSession</span></a> * <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-create-session" title="signon_identity_create_session ()">signon_identity_create_session</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-get-auth-session" title="signon_identity_get_auth_session ()">signon_identity_get_auth_session</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *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><a class="link" href="libgsignon-glib-SignonIdentity.html#SignonIdentitySessionReadyCb" title="SignonIdentitySessionReadyCb ()"><span class="type">SignonIdentitySessionReadyCb</span></a> cb</code></em>);
-const <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> * <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-get-last-error" title="signon_identity_get_last_error ()">signon_identity_get_last_error</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *identity</code></em>);
-<span class="returnvalue">SignonIdentity</span> * <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-new" title="signon_identity_new ()">signon_identity_new</a> (<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>);
-<span class="returnvalue">SignonIdentity</span> * <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-new-from-db" title="signon_identity_new_from_db ()">signon_identity_new_from_db</a> (<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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()">signon_identity_query_info</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *self</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-remove" title="signon_identity_remove ()">signon_identity_remove</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *self</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-remove-reference" title="signon_identity_remove_reference ()">signon_identity_remove_reference</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *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><a class="link" href="libgsignon-glib-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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-signout" title="signon_identity_signout ()">signon_identity_signout</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *self</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-store-credentials-with-args" title="signon_identity_store_credentials_with_args ()">signon_identity_store_credentials_with_args</a>
- (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>const <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 <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *owner</code></em>,
- <em class="parameter"><code>const <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="libgsignon-glib-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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-store-credentials-with-info" title="signon_identity_store_credentials_with_info ()">signon_identity_store_credentials_with_info</a>
- (<em class="parameter"><code><span class="type">SignonIdentity</span> *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="libgsignon-glib-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>);
-<span class="returnvalue">void</span> <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-verify-secret" title="signon_identity_verify_secret ()">signon_identity_verify_secret</a> (<em class="parameter"><code><span class="type">SignonIdentity</span> *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="libgsignon-glib-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>
-</div>
-<div class="refsect1">
-<a name="libgsignon-glib-SignonIdentity.description"></a><h2>Description</h2>
-<p>
-The <span class="type">SignonIdentity</span> objects represent identities and provide operations that
-can be performed on them such as identity creation, removal, starting an authentication
-session, and so on.
-</p>
-<p>
-Identities can also be stored and retrieved from a gSSO database, in which
-case they also contain a number of properties that can be retrieved
-using <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()"><code class="function">signon_identity_query_info()</code></a> and are represented via <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>.
-Such identities are identified by a numeric id number and they are subject
-to access control.
-</p>
-<p>
-</p>
-<div class="refsect1">
-<a name="idp38440416"></a><h2>Operations on an identity</h2>
-</div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>a new identity can be created with <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-new" title="signon_identity_new ()"><code class="function">signon_identity_new()</code></a>. This operation
-does not store the identity to the database, the identity is not visible
-to other applications, and accordingly it is not subject to access control.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>an authentication session can be started from an identity using
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-create-session" title="signon_identity_create_session ()"><code class="function">signon_identity_create_session()</code></a> or <a class="link" href="SignonAuthSession.html#signon-auth-session-new" title="signon_auth_session_new ()"><code class="function">signon_auth_session_new()</code></a>. If the identity
-has been retrieved from a database, only the authentication methods listed
-in associated <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> are allowed to be used.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>identites stored in a database can be enumerated using
-<a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-identities" title="signon_auth_service_query_identities ()"><code class="function">signon_auth_service_query_identities()</code></a>. Only the identites owned by the
-requesting application are returned.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>identities stored in a database can be retrieved using <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-new-from-db" title="signon_identity_new_from_db ()"><code class="function">signon_identity_new_from_db()</code></a>,
-subject to access control (an application performing that operation has to be
-either the identity's owner, or it has to be on the ACL list).</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>newly created identities can be stored to the database, and identities already
-in the database can be updated using <a class="link" href="libgsignon-glib-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>
-(with <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>)
-or <a class="link" href="libgsignon-glib-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> (with separate arguments that
-together form the contents of <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>). Only the owners can update
-identites.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>identites in the database can be removed by their owners using
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-remove" title="signon_identity_remove ()"><code class="function">signon_identity_remove()</code></a>.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>identity owners can request to close all authentication sessions and
-remove all secrets and tokens using <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-signout" title="signon_identity_signout ()"><code class="function">signon_identity_signout()</code></a>.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="refsect1">
-<a name="idp38465168"></a><h2>Data fields in <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>
-</h2>
-</div>
-<p>
-</p>
-<p>
-These are the data fields that are stored into the database as a part of an
-identity record using <a class="link" href="libgsignon-glib-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="libgsignon-glib-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> and can be retrieved using
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()"><code class="function">signon_identity_query_info()</code></a> or <a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-identities" title="signon_auth_service_query_identities ()"><code class="function">signon_auth_service_query_identities()</code></a>:
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Caption is a display name for the identity, presented to the user. Default
-value is an empty caption. </p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Realms is a list of realms that the identity can be used in.
- Interpretation of this field is up to the method. Typically it is
- a list of internet domains allowed for an authentication request.
- Default value is an empty list.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Type is a <a class="link" href="SignonIdentityInfo.html#SignonIdentityType" title="enum SignonIdentityType"><span class="type">SignonIdentityType</span></a>. Interpretation of this field is up to the application;
-gSSO does not use it. Default value is <a class="link" href="SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-OTHER:CAPS"><span class="type">SIGNON_IDENTITY_TYPE_OTHER</span></a></p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Owner is a <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> object, which specifies the identity
-owner. Owners are allowed to perform all of the operations on the identity
-specified above. By default an identity's owner is determined by gSSO daemon
-using system services for the system context, and a string supplied in
-<a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-new" title="signon_identity_new ()"><code class="function">signon_identity_new()</code></a> for the application context.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>ACL is a list of <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> objects, that specifies applications
-that can access the identity to perform authentication sessions. They're not
-allowed to make any changes to the identity. Default value is an empty list,
-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></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><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
-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></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Id is a numeric identification of the identity record in the database. The
-application cannot set this, as it's determined by the daemon.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Username is used to provide a username to authentication plugins after
-issuing <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>. Applications can override this
-by providing a username explicitly in the <em class="parameter"><code>session_data</code></em> parameter to that
-function. By default there is no username.</p></li></ul></div>
-<p>
-</p>
-<p>
-</p>
-<div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>Secret is used in the same way as username, but it is write-only (cannot
-be retrieved from a <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a>). It is also possible to prevent
-secret from being stored in the database.</p></li></ul></div>
-<p>
-</p>
-</div>
-<div class="refsect1">
-<a name="libgsignon-glib-SignonIdentity.details"></a><h2>Details</h2>
-<div class="refsect2">
-<a name="SignonIdentityClass"></a><h3>struct SignonIdentityClass</h3>
-<pre class="programlisting">struct SignonIdentityClass {
- GObjectClass parent_class;
-};
-</pre>
-<p>
-Opaque struct. Use the accessor functions below.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody><tr>
-<td><p><span class="term"><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>;</span></p></td>
-<td>reference to a parent class</td>
-</tr></tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityInfoCb"></a><h3>SignonIdentityInfoCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonIdentityInfoCb) (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>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="libgsignon-glib-SignonIdentity.html#signon-identity-query-info" title="signon_identity_query_info ()"><code class="function">signon_identity_query_info()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> for <em class="parameter"><code>self</code></em>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityReferenceAddedCb"></a><h3>SignonIdentityReferenceAddedCb</h3>
-<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentityReferenceAddedCb;
-</pre>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-add-reference" title="signon_identity_add_reference ()"><code class="function">signon_identity_add_reference()</code></a>.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityReferenceRemovedCb"></a><h3>SignonIdentityReferenceRemovedCb</h3>
-<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentityReferenceRemovedCb;
-</pre>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-remove-reference" title="signon_identity_remove_reference ()"><code class="function">signon_identity_remove_reference()</code></a>.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityRemovedCb"></a><h3>SignonIdentityRemovedCb</h3>
-<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentityRemovedCb;
-</pre>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-remove" title="signon_identity_remove ()"><code class="function">signon_identity_remove()</code></a>.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentitySessionReadyCb"></a><h3>SignonIdentitySessionReadyCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonIdentitySessionReadyCb) (<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>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>connection</code></em> :</span></p></td>
-<td>a <a href="http://library.gnome.org/devel/gio/unstable/GDBusConnection.html"><span class="type">GDBusConnection</span></a> for the session.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>bus_name</code></em> :</span></p></td>
-<td>a D-Bus bus name for the session.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>object_path</code></em> :</span></p></td>
-<td>a D-Bus object path for the session.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentitySignedOutCb"></a><h3>SignonIdentitySignedOutCb</h3>
-<pre class="programlisting">typedef SignonIdentityVoidCb SignonIdentitySignedOutCb;
-</pre>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-SignonIdentity.html#signon-identity-signout" title="signon_identity_signout ()"><code class="function">signon_identity_signout()</code></a>.
-</p>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityStoreCredentialsCb"></a><h3>SignonIdentityStoreCredentialsCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonIdentityStoreCredentialsCb) (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>
-<p>
-Callback to be passed to <a class="link" href="libgsignon-glib-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="libgsignon-glib-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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>id</code></em> :</span></p></td>
-<td>the numeric ID of the identity in the database.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityVerifyCb"></a><h3>SignonIdentityVerifyCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonIdentityVerifyCb) (<em class="parameter"><code><span class="type">SignonIdentity</span> *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="libgsignon-glib-SignonIdentity.html#signon-identity-verify-secret" title="signon_identity_verify_secret ()"><code class="function">signon_identity_verify_secret()</code></a>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>valid</code></em> :</span></p></td>
-<td>whether the secret is valid.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="SignonIdentityVoidCb"></a><h3>SignonIdentityVoidCb ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> (*SignonIdentityVoidCb) (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>
-<p>
-Generic callback to be passed to several <span class="type">SignonIdentity</span> methods.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>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.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>the user data that was passed when installing this callback.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<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><span class="type">SignonIdentity</span> *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><a class="link" href="libgsignon-glib-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>
-<p>
-Adds named reference to identity. Not currently supported by gSSO.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>reference</code></em> :</span></p></td>
-<td>reference to be added</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user_data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<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><span class="type">SignonIdentity</span> *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>
-<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
-supported by gSSO.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>method</code></em> :</span></p></td>
-<td>authentication method.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
-<td>pointer to a location which will receive the error, if any.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>a new <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-get-auth-session"></a><h3>signon_identity_get_auth_session ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_get_auth_session (<em class="parameter"><code><span class="type">SignonIdentity</span> *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><a class="link" href="libgsignon-glib-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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>session</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonAuthSession.html" title="SignonAuthSession"><span class="type">SignonAuthSession</span></a> object to get the remote object for.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>method</code></em> :</span></p></td>
-<td>method name for the session.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>completion callback. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-</tbody>
-</table></div>
-</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> * signon_identity_get_last_error (<em class="parameter"><code><span class="type">SignonIdentity</span> *identity</code></em>);</pre>
-<p>
-Get the most recent error that occurred on <em class="parameter"><code>identity</code></em>.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>identity</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>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.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-new"></a><h3>signon_identity_new ()</h3>
-<pre class="programlisting"><span class="returnvalue">SignonIdentity</span> * signon_identity_new (<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>
-<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> is used to set the identity's owner
-if the identity is stored to the database with <a class="link" href="libgsignon-glib-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="libgsignon-glib-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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>application_context</code></em> :</span></p></td>
-<td>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>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>an instance of an <span class="type">SignonIdentity</span>.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-new-from-db"></a><h3>signon_identity_new_from_db ()</h3>
-<pre class="programlisting"><span class="returnvalue">SignonIdentity</span> * signon_identity_new_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>
-<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.
-Together with the system context it is used to determine by the gSSO daemon
-if the application can access the identity (the application needs to be either the
-identity's owner or to be present on the ACL).
-</p>
-<p>
-Applications can determine the <em class="parameter"><code>id</code></em> either by enumerating the identities with
-<a class="link" href="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-identities" title="signon_auth_service_query_identities ()"><code class="function">signon_auth_service_query_identities()</code></a> (if they're the owner of the identity)
-or via other means (such as the system's accounts service, or an application
-configuration).
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>id</code></em> :</span></p></td>
-<td>identity ID.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>application_context</code></em> :</span></p></td>
-<td>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>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
-<td>an instance of a <span class="type">SignonIdentity</span>.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-query-info"></a><h3>signon_identity_query_info ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_query_info (<em class="parameter"><code><span class="type">SignonIdentity</span> *self</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user_data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-remove"></a><h3>signon_identity_remove ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_remove (<em class="parameter"><code><span class="type">SignonIdentity</span> *self</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>
-<p>
-Removes the corresponding credentials record from the database.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback to be called when the operation has completed. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user_data to pass to the callback.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<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><span class="type">SignonIdentity</span> *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><a class="link" href="libgsignon-glib-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>
-<p>
-Removes named reference from identity. Not currently supported by gSSO.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>reference</code></em> :</span></p></td>
-<td>reference to be removed</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user_data.</td>
-</tr>
-</tbody>
-</table></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><span class="type">SignonIdentity</span> *self</code></em>,
- <em class="parameter"><code><a class="link" href="libgsignon-glib-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>
-<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="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user_data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-store-credentials-with-args"></a><h3>signon_identity_store_credentials_with_args ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_store_credentials_with_args
- (<em class="parameter"><code><span class="type">SignonIdentity</span> *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>const <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 <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext"><span class="type">SignonSecurityContext</span></a> *owner</code></em>,
- <em class="parameter"><code>const <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="libgsignon-glib-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>
-<p>
-Stores the given data into the identity. See above for the meaning
-of the specific fields.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>username</code></em> :</span></p></td>
-<td>username. <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>
-<td><p><span class="term"><em class="parameter"><code>secret</code></em> :</span></p></td>
-<td>secret. <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>
-<td><p><span class="term"><em class="parameter"><code>store_secret</code></em> :</span></p></td>
-<td>whether gSSO should save the password in secret storage.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>methods</code></em> :</span></p></td>
-<td>allowed methods. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 GStrv]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>caption</code></em> :</span></p></td>
-<td>caption. <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>
-<td><p><span class="term"><em class="parameter"><code>realms</code></em> :</span></p></td>
-<td>realms. <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>
-<td><p><span class="term"><em class="parameter"><code>owner</code></em> :</span></p></td>
-<td>owner. <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>
-<td><p><span class="term"><em class="parameter"><code>access_control_list</code></em> :</span></p></td>
-<td>access control list. <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>
-<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
-<td>the type of the identity.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user_data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-store-credentials-with-info"></a><h3>signon_identity_store_credentials_with_info ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_store_credentials_with_info
- (<em class="parameter"><code><span class="type">SignonIdentity</span> *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="libgsignon-glib-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>
-<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
-their defaults.
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
-<td>the <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo"><span class="type">SignonIdentityInfo</span></a> data to store.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user_data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-<hr>
-<div class="refsect2">
-<a name="signon-identity-verify-secret"></a><h3>signon_identity_verify_secret ()</h3>
-<pre class="programlisting"><span class="returnvalue">void</span> signon_identity_verify_secret (<em class="parameter"><code><span class="type">SignonIdentity</span> *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="libgsignon-glib-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>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
-<td>the <span class="type">SignonIdentity</span>.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>secret</code></em> :</span></p></td>
-<td>the secret (password) to be verified.</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>cb</code></em> :</span></p></td>
-<td>callback. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
-<td>user_data.</td>
-</tr>
-</tbody>
-</table></div>
-</div>
-</div>
-</div>
-<div class="footer">
-<hr>
- Generated by GTK-Doc V1.18</div>
-</body>
-</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Part II. libgsignon-glib Objects</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: Part II. libgsignon-glib Objects</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="prev" href="gsso-examples.html" title="gSSO usage examples">
<link rel="next" href="object-tree.html" title="Object Hierarchy">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="gsso-examples.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td> </td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="object-tree.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="p" href="gsso-examples.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="object-tree.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="part">
<div class="titlepage"><div><div><h1 class="title">
<a name="libgsignon-glib-objects"></a>Part II. libgsignon-glib Objects</h1></div></div></div>
<div class="toc">
<p><b>Table of Contents</b></p>
-<dl>
+<dl class="toc">
<dt><span class="chapter"><a href="object-tree.html">Object Hierarchy</a></span></dt>
<dt><span class="chapter"><a href="credential-management.html">Credential management</a></span></dt>
<dd><dl>
<dt>
-<span class="refentrytitle"><a href="libgsignon-glib-SignonAuthService.html">SignonAuthService</a></span><span class="refpurpose"> — the authorization service object</span>
+<span class="refentrytitle"><a href="SignonAuthService.html">SignonAuthService</a></span><span class="refpurpose"> — the authorization service object</span>
</dt>
<dt>
-<span class="refentrytitle"><a href="libgsignon-glib-SignonIdentity.html">SignonIdentity</a></span><span class="refpurpose"> — client side presentation of a credential.</span>
+<span class="refentrytitle"><a href="SignonIdentity.html">SignonIdentity</a></span><span class="refpurpose"> — client side presentation of a credential.</span>
</dt>
<dt>
<span class="refentrytitle"><a href="SignonIdentityInfo.html">SignonIdentityInfo</a></span><span class="refpurpose"> — data contained in a SignonIdentity.</span>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Part I. gSSO Overview</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: Part I. gSSO Overview</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="prev" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="next" href="gsso-intro.html" title="gSSO introduction">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="index.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td> </td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="gsso-intro.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="p" href="index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="gsso-intro.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="part">
<div class="titlepage"><div><div><h1 class="title">
<a name="libgsignon-glib-overview"></a>Part I. gSSO Overview</h1></div></div></div>
<div class="toc">
<p><b>Table of Contents</b></p>
-<dl>
+<dl class="toc">
<dt>
<span class="refentrytitle"><a href="gsso-intro.html">gSSO introduction</a></span><span class="refpurpose"></span>
</dt>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
<sub name="libgsignon-glib Objects" link="libgsignon-glib-objects.html">
<sub name="Object Hierarchy" link="object-tree.html"/>
<sub name="Credential management" link="credential-management.html">
- <sub name="SignonAuthService" link="libgsignon-glib-SignonAuthService.html"/>
- <sub name="SignonIdentity" link="libgsignon-glib-SignonIdentity.html"/>
+ <sub name="SignonAuthService" link="SignonAuthService.html"/>
+ <sub name="SignonIdentity" link="SignonIdentity.html"/>
<sub name="SignonIdentityInfo" link="SignonIdentityInfo.html"/>
<sub name="SignonSecurityContext" link="SignonSecurityContext.html"/>
<sub name="SignonAuthSession" link="SignonAuthSession.html"/>
</sub>
</chapters>
<functions>
- <keyword type="struct" name="struct SignonAuthServiceClass" link="libgsignon-glib-SignonAuthService.html#SignonAuthServiceClass"/>
- <keyword type="typedef" name="SignonIdentityFilter" link="libgsignon-glib-SignonAuthService.html#SignonIdentityFilter"/>
- <keyword type="typedef" name="SignonIdentityList" link="libgsignon-glib-SignonAuthService.html#SignonIdentityList"/>
- <keyword type="function" name="SignonQueryIdentitiesCb ()" link="libgsignon-glib-SignonAuthService.html#SignonQueryIdentitiesCb"/>
- <keyword type="function" name="SignonQueryMechanismCb ()" link="libgsignon-glib-SignonAuthService.html#SignonQueryMechanismCb"/>
- <keyword type="function" name="SignonQueryMethodsCb ()" link="libgsignon-glib-SignonAuthService.html#SignonQueryMethodsCb"/>
- <keyword type="function" name="signon_auth_service_new ()" link="libgsignon-glib-SignonAuthService.html#signon-auth-service-new"/>
- <keyword type="function" name="signon_auth_service_query_identities ()" link="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-identities"/>
- <keyword type="function" name="signon_auth_service_query_mechanisms ()" link="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-mechanisms"/>
- <keyword type="function" name="signon_auth_service_query_methods ()" link="libgsignon-glib-SignonAuthService.html#signon-auth-service-query-methods"/>
- <keyword type="struct" name="struct SignonIdentityClass" link="libgsignon-glib-SignonIdentity.html#SignonIdentityClass"/>
- <keyword type="function" name="SignonIdentityInfoCb ()" link="libgsignon-glib-SignonIdentity.html#SignonIdentityInfoCb"/>
- <keyword type="typedef" name="SignonIdentityReferenceAddedCb" link="libgsignon-glib-SignonIdentity.html#SignonIdentityReferenceAddedCb"/>
- <keyword type="typedef" name="SignonIdentityReferenceRemovedCb" link="libgsignon-glib-SignonIdentity.html#SignonIdentityReferenceRemovedCb"/>
- <keyword type="typedef" name="SignonIdentityRemovedCb" link="libgsignon-glib-SignonIdentity.html#SignonIdentityRemovedCb"/>
- <keyword type="function" name="SignonIdentitySessionReadyCb ()" link="libgsignon-glib-SignonIdentity.html#SignonIdentitySessionReadyCb"/>
- <keyword type="typedef" name="SignonIdentitySignedOutCb" link="libgsignon-glib-SignonIdentity.html#SignonIdentitySignedOutCb"/>
- <keyword type="function" name="SignonIdentityStoreCredentialsCb ()" link="libgsignon-glib-SignonIdentity.html#SignonIdentityStoreCredentialsCb"/>
- <keyword type="function" name="SignonIdentityVerifyCb ()" link="libgsignon-glib-SignonIdentity.html#SignonIdentityVerifyCb"/>
- <keyword type="function" name="SignonIdentityVoidCb ()" link="libgsignon-glib-SignonIdentity.html#SignonIdentityVoidCb"/>
- <keyword type="function" name="signon_identity_add_reference ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-add-reference"/>
- <keyword type="function" name="signon_identity_create_session ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-create-session"/>
- <keyword type="function" name="signon_identity_get_auth_session ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-get-auth-session"/>
- <keyword type="function" name="signon_identity_get_last_error ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-get-last-error"/>
- <keyword type="function" name="signon_identity_new ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-new"/>
- <keyword type="function" name="signon_identity_new_from_db ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-new-from-db"/>
- <keyword type="function" name="signon_identity_query_info ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-query-info"/>
- <keyword type="function" name="signon_identity_remove ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-remove"/>
- <keyword type="function" name="signon_identity_remove_reference ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-remove-reference"/>
- <keyword type="function" name="signon_identity_signout ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-signout"/>
- <keyword type="function" name="signon_identity_store_credentials_with_args ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-store-credentials-with-args"/>
- <keyword type="function" name="signon_identity_store_credentials_with_info ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-store-credentials-with-info"/>
- <keyword type="function" name="signon_identity_verify_secret ()" link="libgsignon-glib-SignonIdentity.html#signon-identity-verify-secret"/>
+ <keyword type="function" name="SignonQueryIdentitiesCb ()" link="SignonAuthService.html#SignonQueryIdentitiesCb"/>
+ <keyword type="function" name="SignonQueryMechanismCb ()" link="SignonAuthService.html#SignonQueryMechanismCb"/>
+ <keyword type="function" name="SignonQueryMethodsCb ()" link="SignonAuthService.html#SignonQueryMethodsCb"/>
+ <keyword type="function" name="signon_auth_service_new ()" link="SignonAuthService.html#signon-auth-service-new"/>
+ <keyword type="function" name="signon_auth_service_query_identities ()" link="SignonAuthService.html#signon-auth-service-query-identities"/>
+ <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_methods ()" link="SignonAuthService.html#signon-auth-service-query-methods"/>
+ <keyword type="struct" name="struct SignonAuthService" link="SignonAuthService.html#SignonAuthService-struct"/>
+ <keyword type="struct" name="struct SignonAuthServiceClass" link="SignonAuthService.html#SignonAuthServiceClass"/>
+ <keyword type="typedef" name="SignonIdentityFilter" link="SignonAuthService.html#SignonIdentityFilter"/>
+ <keyword type="typedef" name="SignonIdentityList" link="SignonAuthService.html#SignonIdentityList"/>
+ <keyword type="function" name="SignonIdentityInfoCb ()" link="SignonIdentity.html#SignonIdentityInfoCb"/>
+ <keyword type="function" name="SignonIdentitySessionReadyCb ()" link="SignonIdentity.html#SignonIdentitySessionReadyCb"/>
+ <keyword type="function" name="SignonIdentityStoreCredentialsCb ()" link="SignonIdentity.html#SignonIdentityStoreCredentialsCb"/>
+ <keyword type="function" name="SignonIdentityVerifyCb ()" link="SignonIdentity.html#SignonIdentityVerifyCb"/>
+ <keyword type="function" name="SignonIdentityVoidCb ()" link="SignonIdentity.html#SignonIdentityVoidCb"/>
+ <keyword type="function" name="signon_identity_add_reference ()" link="SignonIdentity.html#signon-identity-add-reference"/>
+ <keyword type="function" name="signon_identity_create_session ()" link="SignonIdentity.html#signon-identity-create-session"/>
+ <keyword type="function" name="signon_identity_get_auth_session ()" link="SignonIdentity.html#signon-identity-get-auth-session"/>
+ <keyword type="function" name="signon_identity_get_last_error ()" link="SignonIdentity.html#signon-identity-get-last-error"/>
+ <keyword type="function" name="signon_identity_new ()" link="SignonIdentity.html#signon-identity-new"/>
+ <keyword type="function" name="signon_identity_new_from_db ()" link="SignonIdentity.html#signon-identity-new-from-db"/>
+ <keyword type="function" name="signon_identity_new_with_context ()" link="SignonIdentity.html#signon-identity-new-with-context"/>
+ <keyword type="function" name="signon_identity_new_with_context_from_db ()" link="SignonIdentity.html#signon-identity-new-with-context-from-db"/>
+ <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_remove_reference ()" link="SignonIdentity.html#signon-identity-remove-reference"/>
+ <keyword type="function" name="signon_identity_signout ()" link="SignonIdentity.html#signon-identity-signout"/>
+ <keyword type="function" name="signon_identity_store_credentials_with_args ()" link="SignonIdentity.html#signon-identity-store-credentials-with-args"/>
+ <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_verify_secret ()" link="SignonIdentity.html#signon-identity-verify-secret"/>
+ <keyword type="struct" name="struct SignonIdentity" link="SignonIdentity.html#SignonIdentity-struct"/>
+ <keyword type="struct" name="struct SignonIdentityClass" link="SignonIdentity.html#SignonIdentityClass"/>
+ <keyword type="typedef" name="SignonIdentityReferenceAddedCb" link="SignonIdentity.html#SignonIdentityReferenceAddedCb"/>
+ <keyword type="typedef" name="SignonIdentityReferenceRemovedCb" link="SignonIdentity.html#SignonIdentityReferenceRemovedCb"/>
+ <keyword type="typedef" name="SignonIdentityRemovedCb" link="SignonIdentity.html#SignonIdentityRemovedCb"/>
+ <keyword type="typedef" name="SignonIdentitySignedOutCb" link="SignonIdentity.html#SignonIdentitySignedOutCb"/>
+ <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 “signout” signal" link="SignonIdentity.html#SignonIdentity-signout"/>
+ <keyword type="function" name="signon_identity_info_access_control_list_append ()" link="SignonIdentityInfo.html#signon-identity-info-access-control-list-append"/>
+ <keyword type="function" name="signon_identity_info_copy ()" link="SignonIdentityInfo.html#signon-identity-info-copy"/>
+ <keyword type="function" name="signon_identity_info_free ()" link="SignonIdentityInfo.html#signon-identity-info-free"/>
+ <keyword type="function" name="signon_identity_info_get_access_control_list ()" link="SignonIdentityInfo.html#signon-identity-info-get-access-control-list"/>
+ <keyword type="function" name="signon_identity_info_get_caption ()" link="SignonIdentityInfo.html#signon-identity-info-get-caption"/>
+ <keyword type="function" name="signon_identity_info_get_id ()" link="SignonIdentityInfo.html#signon-identity-info-get-id"/>
+ <keyword type="function" name="signon_identity_info_get_identity_type ()" link="SignonIdentityInfo.html#signon-identity-info-get-identity-type"/>
+ <keyword type="function" name="signon_identity_info_get_methods ()" link="SignonIdentityInfo.html#signon-identity-info-get-methods"/>
+ <keyword type="function" name="signon_identity_info_get_owner ()" link="SignonIdentityInfo.html#signon-identity-info-get-owner"/>
+ <keyword type="function" name="signon_identity_info_get_realms ()" link="SignonIdentityInfo.html#signon-identity-info-get-realms"/>
+ <keyword type="function" name="signon_identity_info_get_storing_secret ()" link="SignonIdentityInfo.html#signon-identity-info-get-storing-secret"/>
+ <keyword type="function" name="signon_identity_info_get_username ()" link="SignonIdentityInfo.html#signon-identity-info-get-username"/>
+ <keyword type="function" name="signon_identity_info_new ()" link="SignonIdentityInfo.html#signon-identity-info-new"/>
+ <keyword type="function" name="signon_identity_info_own_methods ()" link="SignonIdentityInfo.html#signon-identity-info-own-methods"/>
+ <keyword type="function" name="signon_identity_info_remove_method ()" link="SignonIdentityInfo.html#signon-identity-info-remove-method"/>
+ <keyword type="function" name="signon_identity_info_set_access_control_list ()" link="SignonIdentityInfo.html#signon-identity-info-set-access-control-list"/>
+ <keyword type="function" name="signon_identity_info_set_caption ()" link="SignonIdentityInfo.html#signon-identity-info-set-caption"/>
+ <keyword type="function" name="signon_identity_info_set_identity_type ()" link="SignonIdentityInfo.html#signon-identity-info-set-identity-type"/>
+ <keyword type="function" name="signon_identity_info_set_method ()" link="SignonIdentityInfo.html#signon-identity-info-set-method"/>
+ <keyword type="function" name="signon_identity_info_set_methods ()" link="SignonIdentityInfo.html#signon-identity-info-set-methods"/>
+ <keyword type="function" name="signon_identity_info_set_owner ()" link="SignonIdentityInfo.html#signon-identity-info-set-owner"/>
+ <keyword type="function" name="signon_identity_info_set_owner_from_values ()" link="SignonIdentityInfo.html#signon-identity-info-set-owner-from-values"/>
+ <keyword type="function" name="signon_identity_info_set_realms ()" link="SignonIdentityInfo.html#signon-identity-info-set-realms"/>
+ <keyword type="function" name="signon_identity_info_set_secret ()" link="SignonIdentityInfo.html#signon-identity-info-set-secret"/>
+ <keyword type="function" name="signon_identity_info_set_username ()" link="SignonIdentityInfo.html#signon-identity-info-set-username"/>
<keyword type="struct" name="SignonIdentityInfo" link="SignonIdentityInfo.html#SignonIdentityInfo-struct"/>
<keyword type="enum" name="enum SignonIdentityType" link="SignonIdentityInfo.html#SignonIdentityType"/>
- <keyword type="function" name="signon_identity_info_access_control_list_append ()" link="SignonIdentityInfo.html#signon-identity-info-access-control-list-append"/>
- <keyword type="function" name="signon_identity_info_copy ()" link="SignonIdentityInfo.html#signon-identity-info-copy"/>
- <keyword type="function" name="signon_identity_info_free ()" link="SignonIdentityInfo.html#signon-identity-info-free"/>
- <keyword type="function" name="signon_identity_info_get_access_control_list ()" link="SignonIdentityInfo.html#signon-identity-info-get-access-control-list"/>
- <keyword type="function" name="signon_identity_info_get_caption ()" link="SignonIdentityInfo.html#signon-identity-info-get-caption"/>
- <keyword type="function" name="signon_identity_info_get_id ()" link="SignonIdentityInfo.html#signon-identity-info-get-id"/>
- <keyword type="function" name="signon_identity_info_get_identity_type ()" link="SignonIdentityInfo.html#signon-identity-info-get-identity-type"/>
- <keyword type="function" name="signon_identity_info_get_methods ()" link="SignonIdentityInfo.html#signon-identity-info-get-methods"/>
- <keyword type="function" name="signon_identity_info_get_owner ()" link="SignonIdentityInfo.html#signon-identity-info-get-owner"/>
- <keyword type="function" name="signon_identity_info_get_realms ()" link="SignonIdentityInfo.html#signon-identity-info-get-realms"/>
- <keyword type="function" name="signon_identity_info_get_storing_secret ()" link="SignonIdentityInfo.html#signon-identity-info-get-storing-secret"/>
- <keyword type="function" name="signon_identity_info_get_username ()" link="SignonIdentityInfo.html#signon-identity-info-get-username"/>
- <keyword type="function" name="signon_identity_info_new ()" link="SignonIdentityInfo.html#signon-identity-info-new"/>
- <keyword type="function" name="signon_identity_info_remove_method ()" link="SignonIdentityInfo.html#signon-identity-info-remove-method"/>
- <keyword type="function" name="signon_identity_info_set_access_control_list ()" link="SignonIdentityInfo.html#signon-identity-info-set-access-control-list"/>
- <keyword type="function" name="signon_identity_info_set_caption ()" link="SignonIdentityInfo.html#signon-identity-info-set-caption"/>
- <keyword type="function" name="signon_identity_info_set_identity_type ()" link="SignonIdentityInfo.html#signon-identity-info-set-identity-type"/>
- <keyword type="function" name="signon_identity_info_set_method ()" link="SignonIdentityInfo.html#signon-identity-info-set-method"/>
- <keyword type="function" name="signon_identity_info_set_methods ()" link="SignonIdentityInfo.html#signon-identity-info-set-methods"/>
- <keyword type="function" name="signon_identity_info_set_owner ()" link="SignonIdentityInfo.html#signon-identity-info-set-owner"/>
- <keyword type="function" name="signon_identity_info_set_owner_from_values ()" link="SignonIdentityInfo.html#signon-identity-info-set-owner-from-values"/>
- <keyword type="function" name="signon_identity_info_set_realms ()" link="SignonIdentityInfo.html#signon-identity-info-set-realms"/>
- <keyword type="function" name="signon_identity_info_set_secret ()" link="SignonIdentityInfo.html#signon-identity-info-set-secret"/>
- <keyword type="function" name="signon_identity_info_set_username ()" link="SignonIdentityInfo.html#signon-identity-info-set-username"/>
+ <keyword type="function" name="signon_security_context_build_variant ()" link="SignonSecurityContext.html#signon-security-context-build-variant"/>
+ <keyword type="function" name="signon_security_context_copy ()" link="SignonSecurityContext.html#signon-security-context-copy"/>
+ <keyword type="function" name="signon_security_context_deconstruct_variant ()" link="SignonSecurityContext.html#signon-security-context-deconstruct-variant"/>
+ <keyword type="function" name="signon_security_context_free ()" link="SignonSecurityContext.html#signon-security-context-free"/>
+ <keyword type="function" name="signon_security_context_get_application_context ()" link="SignonSecurityContext.html#signon-security-context-get-application-context"/>
+ <keyword type="function" name="signon_security_context_get_system_context ()" link="SignonSecurityContext.html#signon-security-context-get-system-context"/>
+ <keyword type="function" name="signon_security_context_list_build_variant ()" link="SignonSecurityContext.html#signon-security-context-list-build-variant"/>
+ <keyword type="function" name="signon_security_context_list_copy ()" link="SignonSecurityContext.html#signon-security-context-list-copy"/>
+ <keyword type="function" name="signon_security_context_list_deconstruct_variant ()" link="SignonSecurityContext.html#signon-security-context-list-deconstruct-variant"/>
+ <keyword type="function" name="signon_security_context_list_free ()" link="SignonSecurityContext.html#signon-security-context-list-free"/>
+ <keyword type="function" name="signon_security_context_new ()" link="SignonSecurityContext.html#signon-security-context-new"/>
+ <keyword type="function" name="signon_security_context_new_from_values ()" link="SignonSecurityContext.html#signon-security-context-new-from-values"/>
+ <keyword type="function" name="signon_security_context_set_application_context ()" link="SignonSecurityContext.html#signon-security-context-set-application-context"/>
+ <keyword type="function" name="signon_security_context_set_system_context ()" link="SignonSecurityContext.html#signon-security-context-set-system-context"/>
<keyword type="struct" name="struct SignonSecurityContext" link="SignonSecurityContext.html#SignonSecurityContext-struct"/>
<keyword type="typedef" name="SignonSecurityContextList" link="SignonSecurityContext.html#SignonSecurityContextList"/>
- <keyword type="function" name="signon_security_context_build_variant ()" link="SignonSecurityContext.html#signon-security-context-build-variant"/>
- <keyword type="function" name="signon_security_context_copy ()" link="SignonSecurityContext.html#signon-security-context-copy"/>
- <keyword type="function" name="signon_security_context_deconstruct_variant ()" link="SignonSecurityContext.html#signon-security-context-deconstruct-variant"/>
- <keyword type="function" name="signon_security_context_free ()" link="SignonSecurityContext.html#signon-security-context-free"/>
- <keyword type="function" name="signon_security_context_get_application_context ()" link="SignonSecurityContext.html#signon-security-context-get-application-context"/>
- <keyword type="function" name="signon_security_context_get_system_context ()" link="SignonSecurityContext.html#signon-security-context-get-system-context"/>
- <keyword type="function" name="signon_security_context_list_build_variant ()" link="SignonSecurityContext.html#signon-security-context-list-build-variant"/>
- <keyword type="function" name="signon_security_context_list_copy ()" link="SignonSecurityContext.html#signon-security-context-list-copy"/>
- <keyword type="function" name="signon_security_context_list_deconstruct_variant ()" link="SignonSecurityContext.html#signon-security-context-list-deconstruct-variant"/>
- <keyword type="function" name="signon_security_context_list_free ()" link="SignonSecurityContext.html#signon-security-context-list-free"/>
- <keyword type="function" name="signon_security_context_new ()" link="SignonSecurityContext.html#signon-security-context-new"/>
- <keyword type="function" name="signon_security_context_new_from_values ()" link="SignonSecurityContext.html#signon-security-context-new-from-values"/>
- <keyword type="function" name="signon_security_context_set_application_context ()" link="SignonSecurityContext.html#signon-security-context-set-application-context"/>
- <keyword type="function" name="signon_security_context_set_system_context ()" link="SignonSecurityContext.html#signon-security-context-set-system-context"/>
+ <keyword type="function" name="SignonAuthSessionProcessCb ()" link="SignonAuthSession.html#SignonAuthSessionProcessCb" deprecated=""/>
+ <keyword type="function" name="SignonAuthSessionQueryAvailableMechanismsCb ()" link="SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb"/>
+ <keyword type="function" name="signon_auth_session_cancel ()" link="SignonAuthSession.html#signon-auth-session-cancel"/>
+ <keyword type="function" name="signon_auth_session_get_method ()" link="SignonAuthSession.html#signon-auth-session-get-method"/>
+ <keyword type="function" name="signon_auth_session_new ()" link="SignonAuthSession.html#signon-auth-session-new"/>
+ <keyword type="function" name="signon_auth_session_new_for_identity ()" link="SignonAuthSession.html#signon-auth-session-new-for-identity"/>
+ <keyword type="function" name="signon_auth_session_process ()" link="SignonAuthSession.html#signon-auth-session-process" deprecated="1.8: Use signon_auth_session_process_async() instead."/>
+ <keyword type="function" name="signon_auth_session_process_async ()" link="SignonAuthSession.html#signon-auth-session-process-async" since="1.8"/>
+ <keyword type="function" name="signon_auth_session_process_finish ()" link="SignonAuthSession.html#signon-auth-session-process-finish" since="1.8"/>
+ <keyword type="function" name="signon_auth_session_query_available_mechanisms ()" link="SignonAuthSession.html#signon-auth-session-query-available-mechanisms"/>
<keyword type="macro" name="SIGNON_SESSION_DATA_CAPTION" link="SignonAuthSession.html#SIGNON-SESSION-DATA-CAPTION:CAPS"/>
<keyword type="macro" name="SIGNON_SESSION_DATA_PROXY" link="SignonAuthSession.html#SIGNON-SESSION-DATA-PROXY:CAPS"/>
<keyword type="macro" name="SIGNON_SESSION_DATA_REALM" link="SignonAuthSession.html#SIGNON-SESSION-DATA-REALM:CAPS"/>
<keyword type="macro" name="SIGNON_SESSION_DATA_WINDOW_ID" link="SignonAuthSession.html#SIGNON-SESSION-DATA-WINDOW-ID:CAPS"/>
<keyword type="struct" name="struct SignonAuthSession" link="SignonAuthSession.html#SignonAuthSession-struct"/>
<keyword type="struct" name="struct SignonAuthSessionClass" link="SignonAuthSession.html#SignonAuthSessionClass"/>
- <keyword type="function" name="SignonAuthSessionProcessCb ()" link="SignonAuthSession.html#SignonAuthSessionProcessCb" deprecated=""/>
- <keyword type="function" name="SignonAuthSessionQueryAvailableMechanismsCb ()" link="SignonAuthSession.html#SignonAuthSessionQueryAvailableMechanismsCb"/>
<keyword type="enum" name="enum SignonSessionDataUiPolicy" link="SignonAuthSession.html#SignonSessionDataUiPolicy"/>
- <keyword type="function" name="signon_auth_session_cancel ()" link="SignonAuthSession.html#signon-auth-session-cancel"/>
- <keyword type="function" name="signon_auth_session_get_method ()" link="SignonAuthSession.html#signon-auth-session-get-method"/>
- <keyword type="function" name="signon_auth_session_new ()" link="SignonAuthSession.html#signon-auth-session-new"/>
- <keyword type="function" name="signon_auth_session_process ()" link="SignonAuthSession.html#signon-auth-session-process" deprecated="1.8: Use signon_auth_session_process_async() instead."/>
- <keyword type="function" name="signon_auth_session_process_async ()" link="SignonAuthSession.html#signon-auth-session-process-async" since="1.8"/>
- <keyword type="function" name="signon_auth_session_process_finish ()" link="SignonAuthSession.html#signon-auth-session-process-finish" since="1.8"/>
- <keyword type="function" name="signon_auth_session_query_available_mechanisms ()" link="SignonAuthSession.html#signon-auth-session-query-available-mechanisms"/>
- <keyword type="property" name="The "identity" property" link="SignonAuthSession.html#SignonAuthSession--identity"/>
- <keyword type="signal" name="The "state-changed" signal" link="SignonAuthSession.html#SignonAuthSession-state-changed"/>
+ <keyword type="property" name="The “identity” property" link="SignonAuthSession.html#SignonAuthSession--identity"/>
+ <keyword type="signal" name="The “state-changed” signal" link="SignonAuthSession.html#SignonAuthSession-state-changed"/>
<keyword type="macro" name="SIGNON_ERROR" link="libgsignon-glib-SignonError.html#SIGNON-ERROR:CAPS"/>
+ <keyword type="function" name="signon_error_quark ()" link="libgsignon-glib-SignonError.html#signon-error-quark"/>
<keyword type="enum" name="enum SignonError" link="libgsignon-glib-SignonError.html#SignonError"/>
- <keyword type="function" name="signon_error_quark ()" link="libgsignon-glib-SignonError.html#signon-error-quark"/>
- <keyword type="constant" name="SIGNON_IDENTITY_TYPE_OTHER" link="SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-OTHER:CAPS"/>
- <keyword type="constant" name="SIGNON_IDENTITY_TYPE_APP" link="SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-APP:CAPS"/>
- <keyword type="constant" name="SIGNON_IDENTITY_TYPE_WEB" link="SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-WEB:CAPS"/>
- <keyword type="constant" name="SIGNON_IDENTITY_TYPE_NETWORK" link="SignonIdentityInfo.html#SIGNON-IDENTITY-TYPE-NETWORK:CAPS"/>
- <keyword type="constant" name="SIGNON_POLICY_DEFAULT" link="SignonAuthSession.html#SIGNON-POLICY-DEFAULT:CAPS"/>
- <keyword type="constant" name="SIGNON_POLICY_REQUEST_PASSWORD" link="SignonAuthSession.html#SIGNON-POLICY-REQUEST-PASSWORD:CAPS"/>
- <keyword type="constant" name="SIGNON_POLICY_NO_USER_INTERACTION" link="SignonAuthSession.html#SIGNON-POLICY-NO-USER-INTERACTION:CAPS"/>
- <keyword type="constant" name="SIGNON_POLICY_VALIDATION" link="SignonAuthSession.html#SIGNON-POLICY-VALIDATION:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_UNKNOWN" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-UNKNOWN:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_INTERNAL_SERVER" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-INTERNAL-SERVER:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_INTERNAL_COMMUNICATION" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-INTERNAL-COMMUNICATION:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_PERMISSION_DENIED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-PERMISSION-DENIED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_METHOD_NOT_KNOWN" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-METHOD-NOT-KNOWN:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_SERVICE_NOT_AVAILABLE" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-SERVICE-NOT-AVAILABLE:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_INVALID_QUERY" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-INVALID-QUERY:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_METHOD_NOT_AVAILABLE" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-METHOD-NOT-AVAILABLE:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_IDENTITY_NOT_FOUND" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-IDENTITY-NOT-FOUND:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_STORE_FAILED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-STORE-FAILED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_REMOVE_FAILED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-REMOVE-FAILED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_SIGNOUT_FAILED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-SIGNOUT-FAILED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_IDENTITY_OPERATION_CANCELED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-IDENTITY-OPERATION-CANCELED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_CREDENTIALS_NOT_AVAILABLE" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-CREDENTIALS-NOT-AVAILABLE:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_REFERENCE_NOT_FOUND" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-REFERENCE-NOT-FOUND:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_MECHANISM_NOT_AVAILABLE" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-MECHANISM-NOT-AVAILABLE:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_MISSING_DATA" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-MISSING-DATA:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_INVALID_CREDENTIALS" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-INVALID-CREDENTIALS:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_NOT_AUTHORIZED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-NOT-AUTHORIZED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_WRONG_STATE" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-WRONG-STATE:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_OPERATION_NOT_SUPPORTED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-OPERATION-NOT-SUPPORTED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_NO_CONNECTION" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-NO-CONNECTION:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_NETWORK" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-NETWORK:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_SSL" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-SSL:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_RUNTIME" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-RUNTIME:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_SESSION_CANCELED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-SESSION-CANCELED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_TIMED_OUT" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-TIMED-OUT:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_USER_INTERACTION" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-USER-INTERACTION:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_OPERATION_FAILED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-OPERATION-FAILED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_ENCRYPTION_FAILED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-ENCRYPTION-FAILED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_TOS_NOT_ACCEPTED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-TOS-NOT-ACCEPTED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_FORGOT_PASSWORD" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-FORGOT-PASSWORD:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_METHOD_OR_MECHANISM_NOT_ALLOWED" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-METHOD-OR-MECHANISM-NOT-ALLOWED:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_INCORRECT_DATE" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-INCORRECT-DATE:CAPS"/>
- <keyword type="constant" name="SIGNON_ERROR_USER_ERROR" link="libgsignon-glib-SignonError.html#SIGNON-ERROR-USER-ERROR:CAPS"/>
</functions>
</book>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Object Hierarchy</title>
-<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
+<title>libgsignon-glib Reference Manual: Object Hierarchy</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="libgsignon-glib Reference Manual">
<link rel="up" href="libgsignon-glib-objects.html" title="Part II. libgsignon-glib Objects">
<link rel="prev" href="libgsignon-glib-objects.html" title="Part II. libgsignon-glib Objects">
<link rel="next" href="credential-management.html" title="Credential management">
-<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
-<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="libgsignon-glib-objects.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="libgsignon-glib-objects.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
-<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
-<th width="100%" align="center">libgsignon-glib Reference Manual</th>
-<td><a accesskey="n" href="credential-management.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
+<td><a accesskey="u" href="libgsignon-glib-objects.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="libgsignon-glib-objects.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="credential-management.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="chapter">
<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>
- <a class="link" href="SignonAuthSession.html" title="SignonAuthSession">SignonAuthSession</a>
+ <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>
GBoxed
- <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
- <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
+ <span class="lineart">├──</span> <a class="link" href="SignonIdentityInfo.html" title="SignonIdentityInfo">SignonIdentityInfo</a>
+ <span class="lineart">╰──</span> <a class="link" href="SignonSecurityContext.html" title="SignonSecurityContext">SignonSecurityContext</a>
</pre>
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.18</div>
+ Generated by GTK-Doc V1.20</div>
</body>
</html>
\ No newline at end of file
+body
+{
+ font-family: cantarell, sans-serif;
+}
.synopsis, .classsynopsis
{
/* tango:aluminium 1/2 */
background: #eeeeec;
- border: solid 1px #d3d7cf;
+ background: rgba(238, 238, 236, 0.5);
+ border: solid 1px rgb(238, 238, 236);
padding: 0.5em;
}
.programlisting
{
/* tango:sky blue 0/1 */
+ /* fallback for no rgba support */
background: #e6f3ff;
border: solid 1px #729fcf;
+ background: rgba(114, 159, 207, 0.1);
+ border: solid 1px rgba(114, 159, 207, 0.2);
padding: 0.5em;
}
.variablelist
{
position: relative;
top: 0em ! important;
-
}
/* this is needed so that the local anchors are displayed below the naviagtion */
div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name]
*/
body
{
- padding-top: 3.2em;
- padding-bottom: 20em;
+ padding-top: 5em;
+ padding-bottom: 500px;
+ max-width: 60em;
+ }
+ p
+ {
+ max-width: 60em;
}
/* style and size the navigation bar */
table.navigation#top
{
position: fixed;
- /* tango:scarlet red 0/1 */
- background: #ffe6e6;
- border: solid 1px #ef2929;
+ background: #e2e2e2;
+ border-bottom: solid 1px #babdb6;
margin-top: 0;
margin-bottom: 0;
top: 0;
}
.navigation a, .navigation a:visited
{
- /* tango:scarlet red 3 */
- color: #a40000;
+ /* tango:sky blue 3 */
+ color: #204a87;
}
.navigation a:hover
{
- /* tango:scarlet red 1 */
- color: #ef2929;
+ /* tango:sky blue 2 */
+ color: #3465a4;
}
td.shortcuts
{
- /* tango:scarlet red 1 */
- color: #ef2929;
+ /* tango:sky blue 2 */
+ color: #3465a4;
font-size: 80%;
white-space: nowrap;
}
+ td.shortcuts .dim
+ {
+ color: #babdb6;
+ }
+}
+@media screen and (min-width: 60em) {
+ /* screen larger than 60em */
+ body { margin: auto; }
+}
+@media screen and (max-width: 60em) {
+ /* screen less than 60em */
+ #nav_hierarchy { display: none; }
+ #nav_interfaces { display: none; }
+ #nav_prerequisites { display: none; }
+ #nav_derived_interfaces { display: none; }
+ #nav_implementations { display: none; }
+ #nav_child_properties { display: none; }
+ #nav_style_properties { display: none; }
+ #nav_index { display: none; }
+ #nav_glossary { display: none; }
+ .gallery_image { display: none; }
+ .property_flags { display: none; }
+ .signal_flags { display: none; }
+ .parameter_annotations { display: none; }
+ .enum_member_annotations { display: none; }
+ .struct_member_annotations { display: none; }
+ .union_member_annotations { display: none; }
+ /* now that a column is hidden, optimize space */
+ col.parameters_name { width: auto; }
+ col.parameters_description { width: auto; }
+ col.struct_members_name { width: auto; }
+ col.struct_members_description { width: auto; }
+ col.enum_members_name { width: auto; }
+ col.enum_members_description { width: auto; }
+ col.union_members_name { width: auto; }
+ col.union_members_description { width: auto; }
}
@media print {
table.navigation {
div.titlepage table.navigation {
visibility: visible;
display: table;
- /* tango:scarlet red 0/1 */
- background: #ffe6e6;
- border: solid 1px #ef2929;
+ background: #e2e2e2;
+ border: solid 1px #babdb6;
margin-top: 0;
margin-bottom: 0;
top: 0;
.navigation .title
{
- font-size: 200%;
+ font-size: 120%;
}
div.gallery-float
color: #729fcf;
}
+div.informaltable table
+{
+ border-collapse: separate;
+ border-spacing: 20px 3px;
+ border: none;
+}
+
+div.informaltable table td, div.informaltable table th
+{
+ vertical-align: top;
+}
+
+.function_type,
+.variable_type,
+.property_type,
+.signal_type,
+.parameter_name,
+.struct_member_name,
+.union_member_name,
+.define_keyword,
+.datatype_keyword,
+.typedef_keyword
+{
+ text-align: right;
+}
+
+/* dim non-primary columns */
+.c_punctuation,
+.function_type,
+.variable_type,
+.property_type,
+.signal_type,
+.define_keyword,
+.datatype_keyword,
+.typedef_keyword,
+.property_flags,
+.signal_flags,
+.parameter_annotations,
+.enum_member_annotations,
+.struct_member_annotations,
+.union_member_annotations
+{
+ color: #888a85;
+}
+
+.function_type a,
+.function_type a:visited,
+.function_type a:hover,
+.property_type a,
+.property_type a:visited,
+.property_type a:hover,
+.signal_type a,
+.signal_type a:visited,
+.signal_type a:hover,
+.signal_flags a,
+.signal_flags a:visited,
+.signal_flags a:hover
+{
+ color: #729fcf;
+}
+
div.table table
{
border-collapse: collapse;
background-color: #d3d7cf;
}
+h4
+{
+ color: #555753;
+}
+
hr
{
- /* tango:aluminium 3 */
- color: #babdb6;
- background: #babdb6;
+ /* tango:aluminium 1 */
+ color: #d3d7cf;
+ background: #d3d7cf;
border: none 0px;
height: 1px;
clear: both;
+ margin: 2.0em 0em 2.0em 0em;
+}
+
+dl.toc dt
+{
+ padding-bottom: 0.25em;
+}
+
+dl.toc > dd > dl > dt
+{
+ padding-top: 0.25em;
+ padding-bottom: 0.25em;
+}
+
+dl.toc > dt
+{
+ padding-top: 1em;
+ padding-bottom: 0.5em;
+ font-weight: bold;
+}
+
+.parameter
+{
+ font-style: normal;
}
.footer
font-size: 80%;
}
+.informalfigure,
+.figure
+{
+ margin: 1em;
+}
+
+.informalexample,
+.example
+{
+ margin-top: 1em;
+ margin-bottom: 1em;
+}
+
.warning
{
/* tango:orange 0/1 */
background: #ffeed9;
+ background: rgba(252, 175, 62, 0.1);
border-color: #ffb04f;
+ border-color: rgba(252, 175, 62, 0.2);
}
.note
{
/* tango:chameleon 0/0.5 */
background: #d8ffb2;
+ background: rgba(138, 226, 52, 0.1);
border-color: #abf562;
+ border-color: rgba(138, 226, 52, 0.2);
}
-.note, .warning
+div.blockquote
+{
+ border-color: #eeeeec;
+}
+.note, .warning, div.blockquote
{
padding: 0.5em;
border-width: 1px;
border-style: solid;
+ margin: 2em;
}
-.note h3, .warning h3
+.note p, .warning p
{
- margin-top: 0.0em
+ margin: 0;
}
-.note p, .warning p
+
+div.warning h3.title,
+div.note h3.title
{
- margin-bottom: 0.0em
+ display: none;
+}
+
+p + div.section
+{
+ margin-top: 1em;
+}
+
+div.refnamediv,
+div.refsynopsisdiv,
+div.refsect1,
+div.refsect2,
+div.toc,
+div.section
+{
+ margin-bottom: 1em;
}
/* blob links */
font-weight: normal;
}
+.lineart
+{
+ color: #d3d7cf;
+ font-weight: normal;
+}
+
.annotation
{
/* tango:aluminium 5 */
color: #555753;
- font-size: 80%;
+ font-weight: normal;
+}
+
+.structfield
+{
+ font-style: normal;
font-weight: normal;
}
.listing_frame {
/* tango:sky blue 1 */
border: solid 1px #729fcf;
+ border: solid 1px rgba(114, 159, 207, 0.2);
padding: 0px;
}
padding: 0.5em;
}
.listing_lines {
+ /* this just adds visual clutter and
+ takes precious room from small screens */
+ display: none;
+}
+.listing_lines {
/* tango:sky blue 0.5 */
background: #a6c5e3;
+ background: rgba(114, 159, 207, 0.2);
/* tango:aluminium 6 */
color: #2e3436;
}
.listing_code {
/* tango:sky blue 0 */
background: #e6f3ff;
+ background: rgba(114, 159, 207, 0.1);
}
.listing_code .programlisting {
/* override from previous */
border: none 0px;
padding: 0px;
+ background: none;
}
.listing_lines pre, .listing_code pre {
margin: 0px;
<SECTION>
<FILE>signon-auth-service</FILE>
<TITLE>SignonAuthService</TITLE>
+SignonAuthService
SignonAuthServiceClass
SignonIdentityFilter
SignonIdentityList
signon_auth_session_cancel
signon_auth_session_get_method
signon_auth_session_new
+signon_auth_session_new_for_identity
signon_auth_session_process
signon_auth_session_process_async
signon_auth_session_process_finish
<SECTION>
<FILE>signon-identity</FILE>
<TITLE>SignonIdentity</TITLE>
+SignonIdentity
SignonIdentityClass
SignonIdentityInfoCb
SignonIdentityReferenceAddedCb
signon_identity_get_last_error
signon_identity_new
signon_identity_new_from_db
+signon_identity_new_with_context
+signon_identity_new_with_context_from_db
signon_identity_query_info
signon_identity_remove
signon_identity_remove_reference
signon_identity_info_get_storing_secret
signon_identity_info_get_username
signon_identity_info_new
+signon_identity_info_own_methods
signon_identity_info_remove_method
signon_identity_info_set_access_control_list
signon_identity_info_set_caption
#include "libgsignon-glib/signon-auth-service.h"
#include "libgsignon-glib/signon-identity.h"
+typedef struct {
+ GMainLoop *main_loop;
+ SignonSecurityContext *security_context;
+} AclModifyUserData;
+
static void
signon_query_methods_cb (SignonAuthService *auth_service, gchar **methods,
const GError *error, gpointer user_data)
SignonIdentityInfo *info = (SignonIdentityInfo *) iter->data;
const gchar *caption = signon_identity_info_get_caption (info);
- g_print ("\tid=%d caption='%s'\n",
+ g_print ("\tid=%d caption='%s' ACL:",
signon_identity_info_get_id (info),
signon_identity_info_get_caption (info));
+ SignonSecurityContextList *acl = signon_identity_info_get_access_control_list(info);
+ for(acl = g_list_first(acl); acl != NULL; acl = g_list_next(acl)) {
+ const SignonSecurityContext *context = acl->data;
+ g_print(" (%s:%s)", signon_security_context_get_system_context(context),
+ signon_security_context_get_application_context(context));
+ }
+ g_print("\n");
+
iter = g_list_next (iter);
}
g_list_free_full (identity_list, (GDestroyNotify)signon_identity_info_free);
}
static void create_auth_identity(GMainLoop* main_loop, const gchar* identity_caption,
- const gchar* identity_method)
+ const gchar* identity_method, const gchar* allowed_realms)
{
const gchar* all_mechanisms[] = { "*", NULL };
- SignonIdentity* identity = signon_identity_new(NULL);
+ SignonIdentity* identity = signon_identity_new();
SignonIdentityInfo* identity_info = signon_identity_info_new();
signon_identity_info_set_caption(identity_info, identity_caption);
signon_identity_info_set_method(identity_info, identity_method, all_mechanisms);
if (g_strcmp0(identity_method, "password") == 0)
signon_identity_info_set_secret(identity_info, NULL, TRUE);
+ if (allowed_realms != NULL) {
+ gchar** realms_array = g_strsplit(allowed_realms, ",", 0);
+ signon_identity_info_set_realms(identity_info, (const gchar* const *) realms_array);
+ g_strfreev(realms_array);
+ }
+
signon_identity_store_credentials_with_info (identity,
identity_info,
signon_store_identity_cb,
static void remove_auth_identity(GMainLoop* main_loop, gint identity_id)
{
- SignonIdentity* identity = signon_identity_new_from_db(identity_id, NULL);
+ SignonIdentity* identity = signon_identity_new_from_db(identity_id);
signon_identity_remove (identity,
signon_remove_identity_cb,
main_loop);
exit(1);
}
- SignonIdentity* identity = signon_identity_new_from_db(identity_id, NULL);
+ SignonIdentity* identity = signon_identity_new_from_db(identity_id);
SignonAuthSession* session = signon_identity_create_session(identity, "oauth", NULL);
GVariantBuilder builder;
static void get_password(GMainLoop* main_loop, gint identity_id)
{
- SignonIdentity* identity = signon_identity_new_from_db(identity_id, NULL);
+ SignonIdentity* identity = signon_identity_new_from_db(identity_id);
SignonAuthSession* session = signon_identity_create_session(identity, "password", NULL);
GVariantBuilder builder;
g_object_unref(identity);
}
+static void append_acl_cb(SignonIdentity *self, SignonIdentityInfo *info, const GError *error, gpointer user_data)
+{
+ AclModifyUserData *am_user_data = (AclModifyUserData *)user_data;
+ SignonIdentityInfo *new_info;
+
+ if (error) {
+ g_warning("%s: %s", G_STRFUNC, error->message);
+ goto clean_user_data;
+ }
+
+ new_info = signon_identity_info_copy(info);
+ signon_identity_info_access_control_list_append(new_info, am_user_data->security_context);
+ signon_identity_store_credentials_with_info(self, new_info, signon_store_identity_cb, am_user_data->main_loop);
+ signon_identity_info_free(new_info);
+
+clean_user_data:
+ g_free(am_user_data);
+}
+
+static void append_acl(GMainLoop* main_loop, gint identity_id, SignonSecurityContext* security_context)
+{
+ AclModifyUserData *user_data = g_new0(AclModifyUserData, 1);
+ user_data->main_loop = main_loop;
+ user_data->security_context = security_context;
+
+ SignonIdentity* identity = signon_identity_new_from_db(identity_id);
+ signon_identity_query_info(identity, append_acl_cb, user_data);
+
+ g_main_loop_run (main_loop);
+ g_object_unref(identity);
+}
+
+static void remove_acl_cb(SignonIdentity *self, SignonIdentityInfo *info, const GError *error, gpointer user_data)
+{
+ AclModifyUserData *am_user_data = (AclModifyUserData *)user_data;
+
+ if (error) {
+ g_warning("%s: %s", G_STRFUNC, error->message);
+ goto clean_user_data;
+ }
+
+ SignonSecurityContextList *new_list = signon_security_context_list_copy(signon_identity_info_get_access_control_list(info));
+ SignonSecurityContextList *list_iter = new_list;
+
+ gboolean list_changed = FALSE;
+ while(list_iter != NULL) {
+ SignonSecurityContext *curr_context = list_iter->data;
+ if (g_strcmp0(signon_security_context_get_system_context(curr_context), am_user_data->security_context->sys_ctx) == 0
+ && g_strcmp0(signon_security_context_get_application_context(curr_context), am_user_data->security_context->app_ctx) == 0) {
+ signon_security_context_free(curr_context);
+ new_list = g_list_remove_link(new_list, list_iter);
+ list_changed = TRUE;
+ break;
+ }
+ list_iter = g_list_next(list_iter);
+ }
+
+ if (list_changed) {
+ signon_identity_info_set_access_control_list(info, new_list);
+ signon_identity_store_credentials_with_info(self, info, signon_store_identity_cb, am_user_data->main_loop);
+ } else {
+ signon_security_context_list_free(new_list);
+ g_main_loop_quit (am_user_data->main_loop);
+ }
+
+clean_user_data:
+ signon_security_context_free(am_user_data->security_context);
+ g_free(am_user_data);
+}
+
+static void remove_acl(GMainLoop* main_loop, gint identity_id, SignonSecurityContext* security_context)
+{
+ AclModifyUserData *am_user_data = g_new0(AclModifyUserData, 1);
+ am_user_data->main_loop = main_loop;
+ am_user_data->security_context = security_context;
+
+ SignonIdentity* identity = signon_identity_new_from_db(identity_id);
+ signon_identity_query_info(identity, remove_acl_cb, am_user_data);
+
+ g_main_loop_run (main_loop);
+ g_object_unref(identity);
+}
+
+SignonSecurityContext *create_security_context_from_args(const gchar *sys_ctx, const gchar *app_ctx) {
+ if (sys_ctx && app_ctx) {
+ return signon_security_context_new_from_values(sys_ctx, app_ctx);
+ }
+ return NULL;
+}
+
int
main (int argc, char *argv[])
{
gboolean query_identities = FALSE;
gchar* create_identity_caption = NULL;
gchar* create_identity_method = NULL;
+ gchar* create_identity_realms = NULL;
gint remove_identity_id = 0;
GOptionEntry main_entries[] =
{ "query-identities", 0, 0, G_OPTION_ARG_NONE, &query_identities, "Query available authentication identities", NULL},
{ "create-identity", 0, 0, G_OPTION_ARG_STRING, &create_identity_caption, "Create a new authentication identity", "caption"},
{ "identity-method", 0, 0, G_OPTION_ARG_STRING, &create_identity_method, "Method to use when creating identity", "method"},
+ { "identity-realms", 0, 0, G_OPTION_ARG_STRING, &create_identity_realms, "A comma-separated list of allowed realms for the identity", "realms"},
{ "remove-identity", 0, 0, G_OPTION_ARG_INT, &remove_identity_id, "Remove an authentication identity", "id"},
{ NULL }
};
{ "get-password", 0, 0, G_OPTION_ARG_INT, &password_identity_id, "Get an identity's username and password using 'password' plugin", "identity-id"},
{ NULL }
};
+
+ gint add_acl_ctx_id = 0;
+ gint remove_acl_ctx_id = 0;
+ gchar *acl_sys_ctx = NULL;
+ gchar *acl_app_ctx = NULL;
+
+ GOptionEntry acl_entries[] =
+ {
+ { "add-context", 0, 0, G_OPTION_ARG_INT, &add_acl_ctx_id, "Add security context to identity", "identity-id"},
+ { "remove-context", 0, 0, G_OPTION_ARG_INT, &remove_acl_ctx_id, "Remove security context from identity", "identity-id"},
+ { "system-context", 0, 0, G_OPTION_ARG_STRING, &acl_sys_ctx, "System context", "system-context"},
+ { "application-context", 0, 0, G_OPTION_ARG_STRING, &acl_app_ctx, "Application context", "application-context"},
+ { NULL }
+ };
#if !GLIB_CHECK_VERSION (2, 36, 0)
GOptionGroup* password_group = g_option_group_new("password", "Password-specific options", "Password-specific options", NULL, NULL);
g_option_group_add_entries(password_group, password_entries);
g_option_context_add_group (context, password_group);
+
+ GOptionGroup* acl_group = g_option_group_new("acl", "ACL-specific options", "ACL-specific options", NULL, NULL);
+ g_option_group_add_entries(acl_group, acl_entries);
+ g_option_context_add_group (context, acl_group);
if (!g_option_context_parse (context, &argc, &argv, &error)) {
g_print ("option parsing failed: %s\n", error->message);
} else if (query_identities) {
query_auth_identities(main_loop);
} else if (create_identity_caption) {
- create_auth_identity(main_loop, create_identity_caption, create_identity_method);
+ create_auth_identity(main_loop, create_identity_caption, create_identity_method, create_identity_realms);
} else if (remove_identity_id > 0) {
remove_auth_identity(main_loop, remove_identity_id);
} else if (google_identity_id > 0) {
get_google_token(main_loop, google_identity_id, client_id, client_secret);
} else if (password_identity_id > 0) {
get_password(main_loop, password_identity_id);
+ } else if (add_acl_ctx_id > 0 || remove_acl_ctx_id) {
+ SignonSecurityContext *sec_ctx = create_security_context_from_args(acl_sys_ctx, acl_app_ctx);
+ if (sec_ctx) {
+ if (add_acl_ctx_id > 0) {
+ append_acl(main_loop, add_acl_ctx_id, sec_ctx);
+ } else {
+ remove_acl(main_loop, remove_acl_ctx_id, sec_ctx);
+ }
+ } else {
+ g_print("Must provide security context with --system-context and --application-context options\n");
+ }
}
g_main_loop_unref(main_loop);
g_free(query_mechanisms_method);
if (create_identity_caption)
g_free(create_identity_caption);
- if (create_identity_caption)
+ if (create_identity_method)
g_free(create_identity_method);
+ if (create_identity_realms)
+ g_free(create_identity_realms);
+ if (acl_sys_ctx)
+ g_free(acl_sys_ctx);
+ if (acl_app_ctx)
+ g_free(acl_app_ctx);
}
-I$(srcdir) \
-I$(top_builddir) \
-I$(builddir) \
+ -I$(top_srcdir)/libgsignon-glib \
$(DEPS_CFLAGS) \
-Wall -Werror
libgsignon_glib_la_LIBADD = $(DEPS_LIBS)
-version-info 1:0:0 \
-export-symbols-regex '^signon_'
-nodist_libgsignon_glib_la_SOURCES = \
- signon-marshal.c \
- signon-marshal.h \
- signon-enum-types.h \
- signon-enum-types.c \
- signon-errors-enum.c \
- sso-auth-service-gen.c \
- sso-auth-service-gen.h \
- sso-auth-session-gen.c \
- sso-auth-session-gen.h \
- sso-identity-gen.c \
- sso-identity-gen.h \
- stamp-signon-enum-types.h
-
-BUILT_SOURCES = \
- $(nodist_libgsignon_glib_la_SOURCES) \
- signon-errors-map.c
-
CLEANFILES = \
- $(BUILT_SOURCES) \
sso-auth-service-gen-doc-com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml \
sso-auth-session-gen-doc-com.google.code.AccountsSSO.gSingleSignOn.AuthSession.xml \
sso-identity-gen-doc-com.google.code.AccountsSSO.gSingleSignOn.Identity.xml
signon-security-context.h \
signon-security-context.c \
sso-auth-service.c \
- sso-auth-service.h
+ sso-auth-service.h \
+ signon-marshal.c \
+ signon-marshal.h \
+ signon-enum-types.h \
+ signon-enum-types.c \
+ signon-errors-enum.c \
+ sso-auth-service-gen.c \
+ sso-auth-service-gen.h \
+ sso-auth-session-gen.c \
+ sso-auth-session-gen.h \
+ sso-identity-gen.c \
+ sso-identity-gen.h \
+ stamp-signon-enum-types.h \
+ signon-errors-map.c
libgsignon_glib_includedir = $(includedir)/libgsignon-glib
libgsignon_glib_include_HEADERS = \
# default is /usr/share/dbus-1/interfaces
INTERFACES_DIR = $(top_srcdir)/libgsignon-glib/interfaces
-sso-auth-service-gen.h sso-auth-service-gen.c: $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml
- $(AM_V_GEN)gdbus-codegen \
- --generate-c-code sso-auth-service-gen \
- --generate-docbook sso-auth-service-gen-doc \
- --annotate "com.google.code.AccountsSSO.gSingleSignOn.AuthService" org.gtk.GDBus.C.Name SsoAuthService \
- $<
-
-sso-auth-session-gen.h sso-auth-session-gen.c: $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.AuthSession.xml
- $(AM_V_GEN)gdbus-codegen \
- --generate-c-code sso-auth-session-gen \
- --generate-docbook sso-auth-session-gen-doc \
- --annotate "com.google.code.AccountsSSO.gSingleSignOn.AuthSession" org.gtk.GDBus.C.Name SsoAuthSession \
- $<
-
-sso-identity-gen.h sso-identity-gen.c: $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.Identity.xml
- $(AM_V_GEN)gdbus-codegen \
- --generate-c-code sso-identity-gen \
- --generate-docbook sso-identity-gen-doc \
- --annotate "com.google.code.AccountsSSO.gSingleSignOn.Identity" org.gtk.GDBus.C.Name SsoIdentity \
- $<
-
-signon-marshal.h: signon-marshal.list Makefile
- $(AM_V_GEN)glib-genmarshal --header --prefix=_signon_marshal $< > $@
-
-signon-marshal.c: signon-marshal.list Makefile
- $(AM_V_GEN)glib-genmarshal --body --prefix=_signon_marshal $< > $@
-
-signon-enum-types.h: stamp-signon-enum-types.h
- $(AM_V_at)true
-
-stamp-signon-enum-types.h: Makefile \
- $(libgsignon_glib_headers_with_enums) signon-errors.h
- $(AM_V_GEN)( cd $(srcdir) && glib-mkenums \
- --fhead "#ifndef __SIGNON_ENUM_TYPES_H__\n#define __SIGNON_ENUM_TYPES_H__\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
- --fprod "/* enumerations from \"@filename@\" */\n" \
- --vhead "GType @enum_name@_get_type (void) G_GNUC_CONST;\n#define SIGNON_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
- --ftail "G_END_DECLS\n\n#endif /* __SIGNON_ENUM_TYPES_H__ */" \
- $(libgsignon_glib_headers_with_enums) signon-errors.h ) >> stamp-xgen-geth \
- && (cmp -s stamp-xgen-geth signon-enum-types.h || cp stamp-xgen-geth signon-enum-types.h ) \
- && rm -f stamp-xgen-geth \
- && echo timestamp > $(@F)
-
-signon-enum-types.c: Makefile $(libgsignon_glib_headers_with_enums)
- $(AM_V_GEN)( cd $(srcdir) && glib-mkenums \
- --fhead "#include \"signon-enum-types.h\"\n" \
- --fhead "#include \"signon-identity-info.h\"\n" \
- --fhead "#include \"signon-auth-session.h\"\n" \
- --fhead "#define g_intern_static_string(s) (s)\n" \
- --fprod "\n/* enumerations from \"@filename@\" */" \
- --ftail "\n#define __SIGNON_ENUM_TYPES_C__\n" \
- --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
- --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (g_intern_static_string (\"@EnumName@\"), values);\n }\n return etype;\n}\n" \
- $(libgsignon_glib_headers_with_enums) ) > enum-xgen-getc \
- && cp enum-xgen-getc signon-enum-types.c \
- && rm -f enum-xgen-getc
-
-signon-errors-enum.c: Makefile signon-errors.h
- $(AM_V_GEN)( cd $(srcdir) && glib-mkenums \
- --fhead "#include \"signon-enum-types.h\"\n#include \"signon-errors.h\"\n#include \"signon-internals.h\"\n#define g_intern_static_string(s) (s)\n" \
- --fprod "\n/* enumerations from \"@filename@\" */" \
- --ftail "\n#define __SIGNON_ENUM_TYPES_C__\n" \
- --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
- --vprod " { @VALUENAME@, SED@VALUENAME@, \"@valuenick@\" }," \
- --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (g_intern_static_string (\"@EnumName@\"), values);\n }\n return etype;\n}\n" \
- signon-errors.h ) | \
- $(SED) -e 's/SEDSIGNON_ERROR_\([^,]*\)/SIGNOND_\1_ERR_NAME/' \
- > errors-xgen-getc \
- && cp errors-xgen-getc signon-errors-enum.c \
- && rm -f errors-xgen-getc
-
-signon-errors-map.c: Makefile signon-errors.h
- $(AM_V_GEN)( cd $(srcdir) && \
- echo "static const GDBusErrorEntry signon_error_entries[] = {" && \
- grep "^ *SIGNON_ERROR_" signon-errors.h | \
- $(SED) -e 's/SIGNON_ERROR_\([A-Z_0-9]*\).*/{ SIGNON_ERROR_\1, SIGNOND_\1_ERR_NAME },/' && \
- echo -e "};\n" ) > signon-errors-map.c
-
dist_noinst_DATA = \
signon-marshal.list \
stamp-signon-enum-types.h
libgsignon_glib_la-signon-errors.lo \
libgsignon_glib_la-signon-utils.lo \
libgsignon_glib_la-signon-security-context.lo \
- libgsignon_glib_la-sso-auth-service.lo
-nodist_libgsignon_glib_la_OBJECTS = \
+ libgsignon_glib_la-sso-auth-service.lo \
libgsignon_glib_la-signon-marshal.lo \
libgsignon_glib_la-signon-enum-types.lo \
libgsignon_glib_la-signon-errors-enum.lo \
libgsignon_glib_la-sso-auth-service-gen.lo \
libgsignon_glib_la-sso-auth-session-gen.lo \
- libgsignon_glib_la-sso-identity-gen.lo
-libgsignon_glib_la_OBJECTS = $(am_libgsignon_glib_la_OBJECTS) \
- $(nodist_libgsignon_glib_la_OBJECTS)
+ libgsignon_glib_la-sso-identity-gen.lo \
+ libgsignon_glib_la-signon-errors-map.lo
+libgsignon_glib_la_OBJECTS = $(am_libgsignon_glib_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
-SOURCES = $(libgsignon_glib_la_SOURCES) \
- $(nodist_libgsignon_glib_la_SOURCES)
+SOURCES = $(libgsignon_glib_la_SOURCES)
DIST_SOURCES = $(libgsignon_glib_la_SOURCES)
DATA = $(dbusinterfaces_DATA) $(dist_noinst_DATA) $(gir_DATA) \
$(typelib_DATA)
-I$(srcdir) \
-I$(top_builddir) \
-I$(builddir) \
+ -I$(top_srcdir)/libgsignon-glib \
$(DEPS_CFLAGS) \
-Wall -Werror
-version-info 1:0:0 \
-export-symbols-regex '^signon_'
-nodist_libgsignon_glib_la_SOURCES = \
- signon-marshal.c \
- signon-marshal.h \
- signon-enum-types.h \
- signon-enum-types.c \
- signon-errors-enum.c \
- sso-auth-service-gen.c \
- sso-auth-service-gen.h \
- sso-auth-session-gen.c \
- sso-auth-session-gen.h \
- sso-identity-gen.c \
- sso-identity-gen.h \
- stamp-signon-enum-types.h
-
-BUILT_SOURCES = \
- $(nodist_libgsignon_glib_la_SOURCES) \
- signon-errors-map.c
-
-CLEANFILES = $(BUILT_SOURCES) \
- sso-auth-service-gen-doc-com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml \
+CLEANFILES = sso-auth-service-gen-doc-com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml \
sso-auth-session-gen-doc-com.google.code.AccountsSSO.gSingleSignOn.AuthSession.xml \
sso-identity-gen-doc-com.google.code.AccountsSSO.gSingleSignOn.Identity.xml \
$(am__append_2)
signon-security-context.h \
signon-security-context.c \
sso-auth-service.c \
- sso-auth-service.h
+ sso-auth-service.h \
+ signon-marshal.c \
+ signon-marshal.h \
+ signon-enum-types.h \
+ signon-enum-types.c \
+ signon-errors-enum.c \
+ sso-auth-service-gen.c \
+ sso-auth-service-gen.h \
+ sso-auth-session-gen.c \
+ sso-auth-session-gen.h \
+ sso-identity-gen.c \
+ sso-identity-gen.h \
+ stamp-signon-enum-types.h \
+ signon-errors-map.c
libgsignon_glib_includedir = $(includedir)/libgsignon-glib
libgsignon_glib_include_HEADERS = \
$(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.Identity.xml
EXTRA_DIST = interfaces
-all: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) all-am
+all: all-am
.SUFFIXES:
.SUFFIXES: .c .lo .o .obj
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignon_glib_la-signon-dbus-queue.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignon_glib_la-signon-enum-types.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignon_glib_la-signon-errors-enum.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignon_glib_la-signon-errors-map.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignon_glib_la-signon-errors.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignon_glib_la-signon-identity-info.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgsignon_glib_la-signon-identity.Plo@am__quote@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignon_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgsignon_glib_la-sso-identity-gen.lo `test -f 'sso-identity-gen.c' || echo '$(srcdir)/'`sso-identity-gen.c
+libgsignon_glib_la-signon-errors-map.lo: signon-errors-map.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignon_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libgsignon_glib_la-signon-errors-map.lo -MD -MP -MF $(DEPDIR)/libgsignon_glib_la-signon-errors-map.Tpo -c -o libgsignon_glib_la-signon-errors-map.lo `test -f 'signon-errors-map.c' || echo '$(srcdir)/'`signon-errors-map.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libgsignon_glib_la-signon-errors-map.Tpo $(DEPDIR)/libgsignon_glib_la-signon-errors-map.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='signon-errors-map.c' object='libgsignon_glib_la-signon-errors-map.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgsignon_glib_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgsignon_glib_la-signon-errors-map.lo `test -f 'signon-errors-map.c' || echo '$(srcdir)/'`signon-errors-map.c
+
mostlyclean-libtool:
-rm -f *.lo
fi; \
done
check-am: all-am
-check: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) check-am
+check: check-am
all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS)
installdirs:
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(dbusinterfacesdir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(libgsignon_glib_includedir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
-install: $(BUILT_SOURCES)
- $(MAKE) $(AM_MAKEFLAGS) install-am
+install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
- -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
clean: clean-am
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
uninstall-libLTLIBRARIES \
uninstall-libgsignon_glib_includeHEADERS uninstall-typelibDATA
-.MAKE: all check install install-am install-strip
+.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
clean-libLTLIBRARIES clean-libtool ctags distclean \
uninstall-libgsignon_glib_includeHEADERS uninstall-typelibDATA
-sso-auth-service-gen.h sso-auth-service-gen.c: $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.AuthService.xml
- $(AM_V_GEN)gdbus-codegen \
- --generate-c-code sso-auth-service-gen \
- --generate-docbook sso-auth-service-gen-doc \
- --annotate "com.google.code.AccountsSSO.gSingleSignOn.AuthService" org.gtk.GDBus.C.Name SsoAuthService \
- $<
-
-sso-auth-session-gen.h sso-auth-session-gen.c: $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.AuthSession.xml
- $(AM_V_GEN)gdbus-codegen \
- --generate-c-code sso-auth-session-gen \
- --generate-docbook sso-auth-session-gen-doc \
- --annotate "com.google.code.AccountsSSO.gSingleSignOn.AuthSession" org.gtk.GDBus.C.Name SsoAuthSession \
- $<
-
-sso-identity-gen.h sso-identity-gen.c: $(INTERFACES_DIR)/com.google.code.AccountsSSO.gSingleSignOn.Identity.xml
- $(AM_V_GEN)gdbus-codegen \
- --generate-c-code sso-identity-gen \
- --generate-docbook sso-identity-gen-doc \
- --annotate "com.google.code.AccountsSSO.gSingleSignOn.Identity" org.gtk.GDBus.C.Name SsoIdentity \
- $<
-
-signon-marshal.h: signon-marshal.list Makefile
- $(AM_V_GEN)glib-genmarshal --header --prefix=_signon_marshal $< > $@
-
-signon-marshal.c: signon-marshal.list Makefile
- $(AM_V_GEN)glib-genmarshal --body --prefix=_signon_marshal $< > $@
-
-signon-enum-types.h: stamp-signon-enum-types.h
- $(AM_V_at)true
-
-stamp-signon-enum-types.h: Makefile \
- $(libgsignon_glib_headers_with_enums) signon-errors.h
- $(AM_V_GEN)( cd $(srcdir) && glib-mkenums \
- --fhead "#ifndef __SIGNON_ENUM_TYPES_H__\n#define __SIGNON_ENUM_TYPES_H__\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
- --fprod "/* enumerations from \"@filename@\" */\n" \
- --vhead "GType @enum_name@_get_type (void) G_GNUC_CONST;\n#define SIGNON_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
- --ftail "G_END_DECLS\n\n#endif /* __SIGNON_ENUM_TYPES_H__ */" \
- $(libgsignon_glib_headers_with_enums) signon-errors.h ) >> stamp-xgen-geth \
- && (cmp -s stamp-xgen-geth signon-enum-types.h || cp stamp-xgen-geth signon-enum-types.h ) \
- && rm -f stamp-xgen-geth \
- && echo timestamp > $(@F)
-
-signon-enum-types.c: Makefile $(libgsignon_glib_headers_with_enums)
- $(AM_V_GEN)( cd $(srcdir) && glib-mkenums \
- --fhead "#include \"signon-enum-types.h\"\n" \
- --fhead "#include \"signon-identity-info.h\"\n" \
- --fhead "#include \"signon-auth-session.h\"\n" \
- --fhead "#define g_intern_static_string(s) (s)\n" \
- --fprod "\n/* enumerations from \"@filename@\" */" \
- --ftail "\n#define __SIGNON_ENUM_TYPES_C__\n" \
- --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
- --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (g_intern_static_string (\"@EnumName@\"), values);\n }\n return etype;\n}\n" \
- $(libgsignon_glib_headers_with_enums) ) > enum-xgen-getc \
- && cp enum-xgen-getc signon-enum-types.c \
- && rm -f enum-xgen-getc
-
-signon-errors-enum.c: Makefile signon-errors.h
- $(AM_V_GEN)( cd $(srcdir) && glib-mkenums \
- --fhead "#include \"signon-enum-types.h\"\n#include \"signon-errors.h\"\n#include \"signon-internals.h\"\n#define g_intern_static_string(s) (s)\n" \
- --fprod "\n/* enumerations from \"@filename@\" */" \
- --ftail "\n#define __SIGNON_ENUM_TYPES_C__\n" \
- --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
- --vprod " { @VALUENAME@, SED@VALUENAME@, \"@valuenick@\" }," \
- --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (g_intern_static_string (\"@EnumName@\"), values);\n }\n return etype;\n}\n" \
- signon-errors.h ) | \
- $(SED) -e 's/SEDSIGNON_ERROR_\([^,]*\)/SIGNOND_\1_ERR_NAME/' \
- > errors-xgen-getc \
- && cp errors-xgen-getc signon-errors-enum.c \
- && rm -f errors-xgen-getc
-
-signon-errors-map.c: Makefile signon-errors.h
- $(AM_V_GEN)( cd $(srcdir) && \
- echo "static const GDBusErrorEntry signon_error_entries[] = {" && \
- grep "^ *SIGNON_ERROR_" signon-errors.h | \
- $(SED) -e 's/SIGNON_ERROR_\([A-Z_0-9]*\).*/{ SIGNON_ERROR_\1, SIGNOND_\1_ERR_NAME },/' && \
- echo -e "};\n" ) > signon-errors-map.c
-
-include $(INTROSPECTION_MAKEFILE)
@HAVE_INTROSPECTION_TRUE@gSignon-1.0.gir: libgsignon-glib.la
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2012 Canonical Ltd.
- * Copyright (C) 2012-2013 Intel Corporation.
+ * Copyright (C) 2012-2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
* Contact: Jussi Laako <jussi.laako@linux.intel.com>
* The #SignonAuthSession object is responsible for handling the client
* authentication. #SignonAuthSession objects should be created from existing
* identities (via signon_identity_create_session() or by passing a non-NULL identity
- * to signon_auth_session_new()), in which case the authentication data such as
- * username and password will be implicitly taken from the identity.
+ * to signon_auth_session_new()).
*/
#include "signon-internals.h"
* @state: the current state of the #SignonAuthSession
* @message: the message associated with the state change
*
- * Emitted when the state of the #SignonAuthSession changes.
- * FIXME: @state should be registered as a GLib type (or use one from
+ * Emitted when the state of the #SignonAuthSession changes. The state change
+ * is initiated by #GSignondPlugin via #GSignondPlugin::status-changed signal.
+ */
+ /* FIXME: @state should be registered as a GLib type (or use one from
* libgsignond-common)
*/
auth_session_signals[STATE_CHANGED] =
/**
* signon_auth_session_new:
- * @parent: #SignonIdentity parent object.
+ * @id: the id of the #SignonIdentity to be used. Can be 0, if this session is
+ * not bound to any stored identity.
* @method_name: the name of the authentication method to be used.
* @err: a pointer to a location which will contain the error, in case this
* function fails.
* Returns: a new #SignonAuthSession.
*/
SignonAuthSession *
-signon_auth_session_new (GObject *parent,
+signon_auth_session_new (gint id,
const gchar *method_name,
GError **err)
{
- if (!SIGNON_IS_IDENTITY(parent))
- {
- g_set_error (err,
- signon_error_quark(),
- SIGNON_ERROR_UNKNOWN,
- "Parent object is wrong type");
- return NULL;
- }
- SignonIdentity *identity = SIGNON_IDENTITY(parent);
+ DEBUG ("%s %d", G_STRFUNC, __LINE__);
+
+ SignonIdentity *identity = (id == 0) ?
+ signon_identity_new () : signon_identity_new_from_db (id);
+ g_return_val_if_fail (identity, NULL);
+
+ SignonAuthSession *self =
+ signon_auth_session_new_for_identity (identity, method_name, err);
+ g_object_unref (identity);
+
+ return self;
+}
+
+/**
+ * signon_auth_session_new_for_identity:
+ * @identity: #SignonIdentity parent object.
+ * @method_name: the name of the authentication method to be used.
+ * @err: a pointer to a location which will contain the error, in case this
+ * function fails.
+ *
+ * Creates a new #SignonAuthSession, which can be used to authenticate using
+ * the specified method.
+ *
+ * Returns: a new #SignonAuthSession.
+ */
+SignonAuthSession *
+signon_auth_session_new_for_identity (SignonIdentity *identity,
+ const gchar *method_name,
+ GError **err)
+{
+ g_return_val_if_fail (SIGNON_IS_IDENTITY (identity), NULL);
DEBUG ("%s %d", G_STRFUNC, __LINE__);
*/
void
signon_auth_session_process (SignonAuthSession *self,
- const GHashTable *session_data,
+ GHashTable *session_data,
const gchar* mechanism,
SignonAuthSessionProcessCb cb,
gpointer user_data)
* authentication reply is available.
* @user_data: user data to be passed to the callback.
*
- * Performs one step of the authentication process. If the #SignonIdentity that
- * this session belongs to contains a username and a password, the daemon will
- * pass them to the authentication plugin, otherwise they should be set directly in
- * @session_data.
+ * Performs one step of the authentication process.
* @session_data should be used to add additional authentication parameters to the
- * session, or to override the parameters otherwise taken from the identity.
+ * session.
*
* What specific parameters should be used can be found from authentication plugins'
* documentation (look for parameters that are expected in gsignond_plugin_request_initial()
* for the first step, and parameters that are expected in gsignond_plugin_request() for
* the subsequent steps). See, for example, #GSignondPasswordPlugin and #GSignondDigestPlugin.
+ *
+ * If the #SignonIdentity that this session belongs to contains a username and a password,
+ * the daemon will pass them to the authentication plugin, otherwise they should be set directly in
+ * @session_data. The daemon also passes a list of identity's allowed realms to the plugin,
+ * and they cannot be overriden.
*
* Since: 1.8
*/
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2012 Canonical Ltd.
- * Copyright (C) 2012-2013 Intel Corporation.
+ * Copyright (C) 2012-2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
* Contact: Jussi Laako <jussi.laako@linux.intel.com>
#define SIGNON_IS_AUTH_SESSION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SIGNON_TYPE_AUTH_SESSION))
#define SIGNON_AUTH_SESSION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SIGNON_TYPE_AUTH_SESSION, SignonAuthSessionClass))
-typedef struct _SignonAuthSession SignonAuthSession;
typedef struct _SignonAuthSessionPrivate SignonAuthSessionPrivate;
typedef struct _SignonAuthSessionClass SignonAuthSessionClass;
GType signon_auth_session_get_type (void) G_GNUC_CONST;
-SignonAuthSession *signon_auth_session_new(GObject *parent,
+SignonAuthSession *signon_auth_session_new(gint id,
const gchar *method_name,
GError **err);
+SignonAuthSession *
+signon_auth_session_new_for_identity(SignonIdentity *identity,
+ const gchar *method_name,
+ GError **err);
+
const gchar *signon_auth_session_get_method (SignonAuthSession *self);
typedef void (*SignonAuthSessionQueryAvailableMechanismsCb) (
gpointer user_data);
SIGNON_DEPRECATED_FOR(signon_auth_session_process_async)
void signon_auth_session_process(SignonAuthSession *self,
- const GHashTable *session_data,
+ GHashTable *session_data,
const gchar *mechanism,
SignonAuthSessionProcessCb cb,
gpointer user_data);
--- /dev/null
+
+
+
+#include "signon-enum-types.h"
+#include "signon-identity-info.h"
+#include "signon-auth-session.h"
+#define g_intern_static_string(s) (s)
+
+/* enumerations from "signon-auth-session.h" */
+GType
+signon_session_data_ui_policy_get_type (void)
+{
+ static GType etype = 0;
+ if (etype == 0) {
+ static const GEnumValue values[] = {
+ { SIGNON_POLICY_DEFAULT, "SIGNON_POLICY_DEFAULT", "default" },
+ { SIGNON_POLICY_REQUEST_PASSWORD, "SIGNON_POLICY_REQUEST_PASSWORD", "request-password" },
+ { SIGNON_POLICY_NO_USER_INTERACTION, "SIGNON_POLICY_NO_USER_INTERACTION", "no-user-interaction" },
+ { SIGNON_POLICY_VALIDATION, "SIGNON_POLICY_VALIDATION", "validation" },
+ { 0, NULL, NULL }
+ };
+ etype = g_enum_register_static (g_intern_static_string ("SignonSessionDataUiPolicy"), values);
+ }
+ return etype;
+}
+
+/* enumerations from "signon-identity-info.h" */
+GType
+signon_identity_type_get_type (void)
+{
+ static GType etype = 0;
+ if (etype == 0) {
+ static const GFlagsValue values[] = {
+ { SIGNON_IDENTITY_TYPE_OTHER, "SIGNON_IDENTITY_TYPE_OTHER", "other" },
+ { SIGNON_IDENTITY_TYPE_APP, "SIGNON_IDENTITY_TYPE_APP", "app" },
+ { SIGNON_IDENTITY_TYPE_WEB, "SIGNON_IDENTITY_TYPE_WEB", "web" },
+ { SIGNON_IDENTITY_TYPE_NETWORK, "SIGNON_IDENTITY_TYPE_NETWORK", "network" },
+ { 0, NULL, NULL }
+ };
+ etype = g_flags_register_static (g_intern_static_string ("SignonIdentityType"), values);
+ }
+ return etype;
+}
+
+#define __SIGNON_ENUM_TYPES_C__
+
+
+
--- /dev/null
+
+
+
+#include "signon-enum-types.h"
+#include "signon-errors.h"
+#include "signon-internals.h"
+#define g_intern_static_string(s) (s)
+
+/* enumerations from "signon-errors.h" */
+GType
+signon_error_get_type (void)
+{
+ static GType etype = 0;
+ if (etype == 0) {
+ static const GEnumValue values[] = {
+ { SIGNON_ERROR_UNKNOWN, SIGNOND_UNKNOWN_ERR_NAME, "unknown" },
+ { SIGNON_ERROR_INTERNAL_SERVER, SIGNOND_INTERNAL_SERVER_ERR_NAME, "internal-server" },
+ { SIGNON_ERROR_INTERNAL_COMMUNICATION, SIGNOND_INTERNAL_COMMUNICATION_ERR_NAME, "internal-communication" },
+ { SIGNON_ERROR_PERMISSION_DENIED, SIGNOND_PERMISSION_DENIED_ERR_NAME, "permission-denied" },
+ { SIGNON_ERROR_METHOD_NOT_KNOWN, SIGNOND_METHOD_NOT_KNOWN_ERR_NAME, "method-not-known" },
+ { SIGNON_ERROR_SERVICE_NOT_AVAILABLE, SIGNOND_SERVICE_NOT_AVAILABLE_ERR_NAME, "service-not-available" },
+ { SIGNON_ERROR_INVALID_QUERY, SIGNOND_INVALID_QUERY_ERR_NAME, "invalid-query" },
+ { SIGNON_ERROR_METHOD_NOT_AVAILABLE, SIGNOND_METHOD_NOT_AVAILABLE_ERR_NAME, "method-not-available" },
+ { SIGNON_ERROR_IDENTITY_NOT_FOUND, SIGNOND_IDENTITY_NOT_FOUND_ERR_NAME, "identity-not-found" },
+ { SIGNON_ERROR_STORE_FAILED, SIGNOND_STORE_FAILED_ERR_NAME, "store-failed" },
+ { SIGNON_ERROR_REMOVE_FAILED, SIGNOND_REMOVE_FAILED_ERR_NAME, "remove-failed" },
+ { SIGNON_ERROR_SIGNOUT_FAILED, SIGNOND_SIGNOUT_FAILED_ERR_NAME, "signout-failed" },
+ { SIGNON_ERROR_IDENTITY_OPERATION_CANCELED, SIGNOND_IDENTITY_OPERATION_CANCELED_ERR_NAME, "identity-operation-canceled" },
+ { SIGNON_ERROR_CREDENTIALS_NOT_AVAILABLE, SIGNOND_CREDENTIALS_NOT_AVAILABLE_ERR_NAME, "credentials-not-available" },
+ { SIGNON_ERROR_REFERENCE_NOT_FOUND, SIGNOND_REFERENCE_NOT_FOUND_ERR_NAME, "reference-not-found" },
+ { SIGNON_ERROR_MECHANISM_NOT_AVAILABLE, SIGNOND_MECHANISM_NOT_AVAILABLE_ERR_NAME, "mechanism-not-available" },
+ { SIGNON_ERROR_MISSING_DATA, SIGNOND_MISSING_DATA_ERR_NAME, "missing-data" },
+ { SIGNON_ERROR_INVALID_CREDENTIALS, SIGNOND_INVALID_CREDENTIALS_ERR_NAME, "invalid-credentials" },
+ { SIGNON_ERROR_NOT_AUTHORIZED, SIGNOND_NOT_AUTHORIZED_ERR_NAME, "not-authorized" },
+ { SIGNON_ERROR_WRONG_STATE, SIGNOND_WRONG_STATE_ERR_NAME, "wrong-state" },
+ { SIGNON_ERROR_OPERATION_NOT_SUPPORTED, SIGNOND_OPERATION_NOT_SUPPORTED_ERR_NAME, "operation-not-supported" },
+ { SIGNON_ERROR_NO_CONNECTION, SIGNOND_NO_CONNECTION_ERR_NAME, "no-connection" },
+ { SIGNON_ERROR_NETWORK, SIGNOND_NETWORK_ERR_NAME, "network" },
+ { SIGNON_ERROR_SSL, SIGNOND_SSL_ERR_NAME, "ssl" },
+ { SIGNON_ERROR_RUNTIME, SIGNOND_RUNTIME_ERR_NAME, "runtime" },
+ { SIGNON_ERROR_SESSION_CANCELED, SIGNOND_SESSION_CANCELED_ERR_NAME, "session-canceled" },
+ { SIGNON_ERROR_TIMED_OUT, SIGNOND_TIMED_OUT_ERR_NAME, "timed-out" },
+ { SIGNON_ERROR_USER_INTERACTION, SIGNOND_USER_INTERACTION_ERR_NAME, "user-interaction" },
+ { SIGNON_ERROR_OPERATION_FAILED, SIGNOND_OPERATION_FAILED_ERR_NAME, "operation-failed" },
+ { SIGNON_ERROR_ENCRYPTION_FAILED, SIGNOND_ENCRYPTION_FAILED_ERR_NAME, "encryption-failed" },
+ { SIGNON_ERROR_TOS_NOT_ACCEPTED, SIGNOND_TOS_NOT_ACCEPTED_ERR_NAME, "tos-not-accepted" },
+ { SIGNON_ERROR_FORGOT_PASSWORD, SIGNOND_FORGOT_PASSWORD_ERR_NAME, "forgot-password" },
+ { SIGNON_ERROR_METHOD_OR_MECHANISM_NOT_ALLOWED, SIGNOND_METHOD_OR_MECHANISM_NOT_ALLOWED_ERR_NAME, "method-or-mechanism-not-allowed" },
+ { SIGNON_ERROR_INCORRECT_DATE, SIGNOND_INCORRECT_DATE_ERR_NAME, "incorrect-date" },
+ { SIGNON_ERROR_USER_ERROR, SIGNOND_USER_ERROR_ERR_NAME, "user-error" },
+ { 0, NULL, NULL }
+ };
+ etype = g_enum_register_static (g_intern_static_string ("SignonError"), values);
+ }
+ return etype;
+}
+
+#define __SIGNON_ENUM_TYPES_C__
+
+
+
--- /dev/null
+#include <gio/gio.h>
+
+#include "signon-errors.h"
+#include "signon-internals.h"
+
+static const GDBusErrorEntry signon_error_entries[] = {
+ { SIGNON_ERROR_UNKNOWN, SIGNOND_UNKNOWN_ERR_NAME },
+ { SIGNON_ERROR_INTERNAL_SERVER, SIGNOND_INTERNAL_SERVER_ERR_NAME },
+ { SIGNON_ERROR_INTERNAL_COMMUNICATION, SIGNOND_INTERNAL_COMMUNICATION_ERR_NAME },
+ { SIGNON_ERROR_PERMISSION_DENIED, SIGNOND_PERMISSION_DENIED_ERR_NAME },
+ { SIGNON_ERROR_METHOD_NOT_KNOWN, SIGNOND_METHOD_NOT_KNOWN_ERR_NAME },
+ { SIGNON_ERROR_SERVICE_NOT_AVAILABLE, SIGNOND_SERVICE_NOT_AVAILABLE_ERR_NAME },
+ { SIGNON_ERROR_INVALID_QUERY, SIGNOND_INVALID_QUERY_ERR_NAME },
+ { SIGNON_ERROR_METHOD_NOT_AVAILABLE, SIGNOND_METHOD_NOT_AVAILABLE_ERR_NAME },
+ { SIGNON_ERROR_IDENTITY_NOT_FOUND, SIGNOND_IDENTITY_NOT_FOUND_ERR_NAME },
+ { SIGNON_ERROR_STORE_FAILED, SIGNOND_STORE_FAILED_ERR_NAME },
+ { SIGNON_ERROR_REMOVE_FAILED, SIGNOND_REMOVE_FAILED_ERR_NAME },
+ { SIGNON_ERROR_SIGNOUT_FAILED, SIGNOND_SIGNOUT_FAILED_ERR_NAME },
+ { SIGNON_ERROR_IDENTITY_OPERATION_CANCELED, SIGNOND_IDENTITY_OPERATION_CANCELED_ERR_NAME },
+ { SIGNON_ERROR_CREDENTIALS_NOT_AVAILABLE, SIGNOND_CREDENTIALS_NOT_AVAILABLE_ERR_NAME },
+ { SIGNON_ERROR_REFERENCE_NOT_FOUND, SIGNOND_REFERENCE_NOT_FOUND_ERR_NAME },
+ { SIGNON_ERROR_MECHANISM_NOT_AVAILABLE, SIGNOND_MECHANISM_NOT_AVAILABLE_ERR_NAME },
+ { SIGNON_ERROR_MISSING_DATA, SIGNOND_MISSING_DATA_ERR_NAME },
+ { SIGNON_ERROR_INVALID_CREDENTIALS, SIGNOND_INVALID_CREDENTIALS_ERR_NAME },
+ { SIGNON_ERROR_NOT_AUTHORIZED, SIGNOND_NOT_AUTHORIZED_ERR_NAME },
+ { SIGNON_ERROR_WRONG_STATE, SIGNOND_WRONG_STATE_ERR_NAME },
+ { SIGNON_ERROR_OPERATION_NOT_SUPPORTED, SIGNOND_OPERATION_NOT_SUPPORTED_ERR_NAME },
+ { SIGNON_ERROR_NO_CONNECTION, SIGNOND_NO_CONNECTION_ERR_NAME },
+ { SIGNON_ERROR_NETWORK, SIGNOND_NETWORK_ERR_NAME },
+ { SIGNON_ERROR_SSL, SIGNOND_SSL_ERR_NAME },
+ { SIGNON_ERROR_RUNTIME, SIGNOND_RUNTIME_ERR_NAME },
+ { SIGNON_ERROR_SESSION_CANCELED, SIGNOND_SESSION_CANCELED_ERR_NAME },
+ { SIGNON_ERROR_TIMED_OUT, SIGNOND_TIMED_OUT_ERR_NAME },
+ { SIGNON_ERROR_USER_INTERACTION, SIGNOND_USER_INTERACTION_ERR_NAME },
+ { SIGNON_ERROR_OPERATION_FAILED, SIGNOND_OPERATION_FAILED_ERR_NAME },
+ { SIGNON_ERROR_ENCRYPTION_FAILED, SIGNOND_ENCRYPTION_FAILED_ERR_NAME },
+ { SIGNON_ERROR_TOS_NOT_ACCEPTED, SIGNOND_TOS_NOT_ACCEPTED_ERR_NAME },
+ { SIGNON_ERROR_FORGOT_PASSWORD, SIGNOND_FORGOT_PASSWORD_ERR_NAME },
+ { SIGNON_ERROR_METHOD_OR_MECHANISM_NOT_ALLOWED, SIGNOND_METHOD_OR_MECHANISM_NOT_ALLOWED_ERR_NAME },
+ { SIGNON_ERROR_INCORRECT_DATE, SIGNOND_INCORRECT_DATE_ERR_NAME },
+ { SIGNON_ERROR_USER_ERROR, SIGNOND_USER_ERROR_ERR_NAME },
+};
+
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2011-2012 Canonical Ltd.
- * Copyright (C) 2012-2013 Intel Corporation.
+ * Copyright (C) 2012-2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
* Contact: Jussi Laako <jussi.laako@linux.intel.com>
info->id = id;
}
-static void identity_methods_copy (gpointer key, gpointer value, gpointer user_data)
+static void identity_methods_copy (gpointer key,
+ gpointer value,
+ gpointer user_data)
{
- signon_identity_info_set_method ((SignonIdentityInfo *)user_data,
- (const gchar *)key,
- (const gchar* const *)value);
+ g_hash_table_insert ((GHashTable *) user_data,
+ g_strdup ((const gchar *) key),
+ g_strdupv ((gchar **) value));
}
/**
* @info: the #SignonIdentityInfo.
* @methods: (transfer none): (element-type utf8 GStrv): methods.
*
- * Set authentication methods that are allowed to be used with this identity.
+ * Set authentication methods that are allowed to be used with this identity.
*/
void signon_identity_info_set_methods (SignonIdentityInfo *info,
- const GHashTable *methods)
+ GHashTable *methods)
{
g_return_if_fail (info != NULL);
g_return_if_fail (methods != NULL);
DEBUG("%s", G_STRFUNC);
- if (info->methods)
- g_hash_table_remove_all (info->methods);
- else
- info->methods = g_hash_table_new_full (g_str_hash, g_str_equal,
- g_free, (GDestroyNotify)g_strfreev);
+ GHashTable *new_methods =
+ g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ (GDestroyNotify) g_strfreev);
+ g_hash_table_foreach (methods, identity_methods_copy, new_methods);
+ g_hash_table_unref (info->methods);
+ info->methods = new_methods;
+}
+
+/**
+ * signon_identity_info_own_methods:
+ * @info: the #SignonIdentityInfo.
+ * @methods: (transfer none): (element-type utf8 GStrv): methods.
+ *
+ * Set authentication methods that are allowed to be used with this identity.
+ *
+ * This function will just increment reference count of hash table, so
+ * it should be constructed with #g_hash_table_new_full.
+ */
+void signon_identity_info_own_methods (SignonIdentityInfo *info,
+ GHashTable *methods)
+{
+ g_return_if_fail (info != NULL);
+ g_return_if_fail (methods != NULL);
+
+ DEBUG("%s", G_STRFUNC);
- g_hash_table_foreach ((GHashTable *)methods, identity_methods_copy, info);
+ g_hash_table_ref (methods);
+ info->methods = methods;
}
SignonIdentityInfo *
"s",
&info->username);
- if (g_variant_lookup (variant,
- SIGNOND_IDENTITY_INFO_SECRET,
- "s",
- &info->secret))
- {
- g_variant_lookup (variant,
- SIGNOND_IDENTITY_INFO_STORESECRET,
- "b",
- &info->store_secret);
- }
+ g_variant_lookup (variant,
+ SIGNOND_IDENTITY_INFO_SECRET,
+ "s",
+ &info->secret);
+
+ g_variant_lookup (variant,
+ SIGNOND_IDENTITY_INFO_STORESECRET,
+ "b",
+ &info->store_secret);
g_variant_lookup (variant,
SIGNOND_IDENTITY_INFO_CAPTION,
SIGNOND_IDENTITY_INFO_ID,
g_variant_new_uint32 (self->id));
- g_variant_builder_add (&builder, "{sv}",
- SIGNOND_IDENTITY_INFO_USERNAME,
- signon_variant_new_string (self->username));
+ if (self->username != NULL) {
+ g_variant_builder_add (&builder, "{sv}",
+ SIGNOND_IDENTITY_INFO_USERNAME,
+ signon_variant_new_string (self->username));
+ }
- g_variant_builder_add (&builder, "{sv}",
- SIGNOND_IDENTITY_INFO_SECRET,
- signon_variant_new_string (self->secret));
+ if (self->secret != NULL) {
+ g_variant_builder_add (&builder, "{sv}",
+ SIGNOND_IDENTITY_INFO_SECRET,
+ signon_variant_new_string (self->secret));
+ }
- g_variant_builder_add (&builder, "{sv}",
- SIGNOND_IDENTITY_INFO_CAPTION,
- signon_variant_new_string (self->caption));
+ if (self->caption != NULL) {
+ g_variant_builder_add (&builder, "{sv}",
+ SIGNOND_IDENTITY_INFO_CAPTION,
+ signon_variant_new_string (self->caption));
+ }
g_variant_builder_add (&builder, "{sv}",
SIGNOND_IDENTITY_INFO_STORESECRET,
g_variant_new_boolean (self->store_secret));
- g_variant_builder_init (&method_builder,
- (const GVariantType *)"a{sas}");
- g_hash_table_iter_init (&iter, self->methods);
- while (g_hash_table_iter_next (&iter,
- (gpointer)&method,
- (gpointer)&mechanisms))
- {
- g_variant_builder_add (&method_builder, "{s^as}",
- method,
- mechanisms);
- }
- method_map = g_variant_builder_end (&method_builder);
+ if (g_hash_table_size(self->methods) > 0) {
+ g_variant_builder_init (&method_builder,
+ (const GVariantType *)"a{sas}");
+ g_hash_table_iter_init (&iter, self->methods);
+ while (g_hash_table_iter_next (&iter,
+ (gpointer)&method,
+ (gpointer)&mechanisms))
+ {
+ g_variant_builder_add (&method_builder, "{s^as}",
+ method,
+ mechanisms);
+ }
+ method_map = g_variant_builder_end (&method_builder);
- g_variant_builder_add (&builder, "{sv}",
- SIGNOND_IDENTITY_INFO_AUTHMETHODS,
- method_map);
+ g_variant_builder_add (&builder, "{sv}",
+ SIGNOND_IDENTITY_INFO_AUTHMETHODS,
+ method_map);
+ }
if (self->realms != NULL)
{
SignonIdentityInfo *signon_identity_info_new ()
{
SignonIdentityInfo *info = g_slice_new0 (SignonIdentityInfo);
- info->methods = g_hash_table_new_full (g_str_hash, g_str_equal,
- g_free, (GDestroyNotify)g_strfreev);
+ info->methods = g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ (GDestroyNotify) g_strfreev);
info->store_secret = FALSE;
return info;
g_free (info->secret);
g_free (info->caption);
- g_hash_table_destroy (info->methods);
+ g_hash_table_unref (info->methods);
g_strfreev (info->realms);
signon_security_context_free (info->owner);
* Returns: (transfer none): (element-type utf8 GStrv): the table of allowed
* methods and mechanisms.
*/
-const GHashTable *signon_identity_info_get_methods (const SignonIdentityInfo *info)
+GHashTable *signon_identity_info_get_methods (const SignonIdentityInfo *info)
{
g_return_val_if_fail (info != NULL, NULL);
return info->methods;
* signon_identity_info_get_realms:
* @info: the #SignonIdentityInfo.
*
- * Get an array of the realms of @info.
+ * Get an array of the allowed realms of @info.
*
* Returns: (transfer none): a %NULL terminated array of realms.
*/
*
* Returns: (transfer none): a list of ACL security contexts.
*/
-const SignonSecurityContextList *signon_identity_info_get_access_control_list (const SignonIdentityInfo *info)
+SignonSecurityContextList *signon_identity_info_get_access_control_list (const SignonIdentityInfo *info)
{
g_return_val_if_fail (info != NULL, NULL);
return info->access_control_list;
return (SignonIdentityType)info->type;
}
+
+static void _replace_string (gchar **dst, const gchar *src)
+{
+ gchar *new_str = g_strdup (src);
+ g_free (*dst);
+ *dst = new_str;
+}
+
/**
* signon_identity_info_set_username:
* @info: the #SignonIdentityInfo.
* Sets the username for the identity.
*
*/
-void signon_identity_info_set_username (SignonIdentityInfo *info, const gchar *username)
+void signon_identity_info_set_username (SignonIdentityInfo *info,
+ const gchar *username)
{
g_return_if_fail (info != NULL);
- if (info->username) g_free (info->username);
-
- info->username = g_strdup (username);
+ _replace_string (&info->username, username);
}
/**
* should remember it.
*
*/
-void signon_identity_info_set_secret (SignonIdentityInfo *info, const gchar *secret,
+void signon_identity_info_set_secret (SignonIdentityInfo *info,
+ const gchar *secret,
gboolean store_secret)
{
g_return_if_fail (info != NULL);
- if (info->secret) g_free (info->secret);
-
- info->secret = g_strdup (secret);
+ _replace_string (&info->secret, secret);
info->store_secret = store_secret;
}
* Sets the caption (display name) for the identity.
*
*/
-void signon_identity_info_set_caption (SignonIdentityInfo *info, const gchar *caption)
+void signon_identity_info_set_caption (SignonIdentityInfo *info,
+ const gchar *caption)
{
g_return_if_fail (info != NULL);
- if (info->caption) g_free (info->caption);
-
- info->caption = g_strdup (caption);
+ _replace_string (&info->caption, caption);
}
/**
{
g_return_if_fail (info != NULL);
+ gchar **new_realms = g_strdupv ((gchar **) realms);
+
if (info->realms) g_strfreev (info->realms);
- info->realms = g_strdupv ((gchar **)realms);
+ info->realms = new_realms;
}
/**
{
g_return_if_fail (info != NULL);
+ SignonSecurityContext *new_owner = signon_security_context_copy (owner);
+
if (info->owner) signon_security_context_free (info->owner);
- info->owner = signon_security_context_copy (owner);
+ info->owner = new_owner;
}
/**
* Set an access control list associated with an identity.
*/
void signon_identity_info_set_access_control_list (SignonIdentityInfo *info,
- const SignonSecurityContextList *access_control_list)
+ SignonSecurityContextList *access_control_list)
{
g_return_if_fail (info != NULL);
+ SignonSecurityContextList *new_acl =
+ signon_security_context_list_copy (access_control_list);
+
if (info->access_control_list)
signon_security_context_list_free (info->access_control_list);
- info->access_control_list =
- signon_security_context_list_copy (access_control_list);
+ info->access_control_list = new_acl;
}
/**
SignonIdentityType type)
{
g_return_if_fail (info != NULL);
- info->type = (gint)type;
+ info->type = (gint) type;
}
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2011 Canonical Ltd.
- * Copyright (C) 2012-2013 Intel Corporation.
+ * Copyright (C) 2012-2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
* Contact: Jussi Laako <jussi.laako@linux.intel.com>
gboolean signon_identity_info_get_storing_secret (
const SignonIdentityInfo *info);
const gchar *signon_identity_info_get_caption (const SignonIdentityInfo *info);
-const GHashTable *signon_identity_info_get_methods (
- const SignonIdentityInfo *info);
+GHashTable *signon_identity_info_get_methods (const SignonIdentityInfo *info);
const gchar* const *signon_identity_info_get_realms (
const SignonIdentityInfo *info);
const SignonSecurityContext *signon_identity_info_get_owner (
const SignonIdentityInfo *info);
-const SignonSecurityContextList *signon_identity_info_get_access_control_list (
+SignonSecurityContextList *signon_identity_info_get_access_control_list (
const SignonIdentityInfo *info);
SignonIdentityType signon_identity_info_get_identity_type (
const SignonIdentityInfo *info);
-void signon_identity_info_set_username (SignonIdentityInfo *info, const gchar *username);
+void signon_identity_info_set_username (SignonIdentityInfo *info,
+ const gchar *username);
void signon_identity_info_set_secret (SignonIdentityInfo *info,
const gchar *secret,
gboolean store_secret);
void signon_identity_info_set_caption (SignonIdentityInfo *info,
const gchar *caption);
void signon_identity_info_set_methods (SignonIdentityInfo *info,
- const GHashTable *methods);
+ GHashTable *methods);
+void signon_identity_info_own_methods (SignonIdentityInfo *info,
+ GHashTable *methods);
void signon_identity_info_set_method (SignonIdentityInfo *info,
const gchar *method,
const gchar* const *mechanisms);
const gchar *system_context,
const gchar *application_context);
void signon_identity_info_set_access_control_list (SignonIdentityInfo *info,
- const SignonSecurityContextList *access_control_list);
+ SignonSecurityContextList *access_control_list);
void signon_identity_info_access_control_list_append (SignonIdentityInfo *info,
SignonSecurityContext *security_context);
void signon_identity_info_set_identity_type (SignonIdentityInfo *info,
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2012 Canonical Ltd.
- * Copyright (C) 2012-2013 Intel Corporation.
+ * Copyright (C) 2012-2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
* Contact: Jussi Laako <jussi.laako@linux.intel.com>
*
* <refsect1><title>Operations on an identity</title></refsect1>
*
- * - a new identity can be created with signon_identity_new(). This operation
- * does not store the identity to the database, the identity is not visible
- * to other applications, and accordingly it is not subject to access control.
+ * - a new identity can be created with signon_identity_new() or
+ * signon_identity_new_with_context(). This operation does not store the
+ * identity to the database, the identity is not visible to other applications,
+ * and accordingly it is not subject to access control.
*
* - an authentication session can be started from an identity using
* signon_identity_create_session() or signon_auth_session_new(). If the identity
* signon_auth_service_query_identities(). Only the identites owned by the
* requesting application are returned.
*
- * - identities stored in a database can be retrieved using signon_identity_new_from_db(),
- * subject to access control (an application performing that operation has to be
- * either the identity's owner, or it has to be on the ACL list).
+ * - identities stored in a database can be retrieved using signon_identity_new_from_db()
+ * or signon_identity_new_with_context_from_db(), subject to access control (an
+ * application performing that operation has to be either the identity's owner,
+ * or it has to be on the ACL list).
*
* - newly created identities can be stored to the database, and identities already
* in the database can be updated using signon_identity_store_credentials_with_info()
* owner. Owners are allowed to perform all of the operations on the identity
* specified above. By default an identity's owner is determined by gSSO daemon
* using system services for the system context, and a string supplied in
- * signon_identity_new() for the application context.
+ * signon_identity_new_with_context() for the application context.
*
* - ACL is a list of #SignonSecurityContext objects, that specifies applications
* that can access the identity to perform authentication sessions. They're not
/**
* signon_identity_new_from_db:
* @id: identity ID.
+ *
+ * Construct an identity object associated with an existing identity
+ * record.
+ * This is essentially equivalent to calling
+ * signon_identity_new_with_context_from_db() and passing %NULL as the
+ * application context.
+ *
+ * Applications can determine the @id either by enumerating the identities with
+ * signon_auth_service_query_identities() (if they're the owner of the identity)
+ * or via other means (such as the system's accounts service, or an application
+ * configuration).
+ *
+ * Returns: an instance of a #SignonIdentity.
+ */
+SignonIdentity *
+signon_identity_new_from_db (guint32 id)
+{
+ return signon_identity_new_with_context_from_db (id, NULL);
+}
+
+/**
+ * signon_identity_new_with_context_from_db:
+ * @id: identity ID.
* @application_context: application security context, can be %NULL.
*
* Construct an identity object associated with an existing identity
* Returns: an instance of a #SignonIdentity.
*/
SignonIdentity*
-signon_identity_new_from_db (guint32 id, const gchar *application_context)
+signon_identity_new_with_context_from_db (guint32 id, const gchar *application_context)
{
SignonIdentity *identity;
DEBUG ("%s %d: %d\n", G_STRFUNC, __LINE__, id);
/**
* signon_identity_new:
+ *
+ * Construct a new, empty, identity object.
+ * This is essentially equivalent to calling signon_identity_new_with_context()
+ * and passing %NULL as the application context.
+ *
+ * Returns: an instance of an #SignonIdentity.
+ */
+SignonIdentity *
+signon_identity_new ()
+{
+ return signon_identity_new_with_context (NULL);
+}
+
+/**
+ * signon_identity_new_with_context:
* @application_context: application security context, can be %NULL.
*
* Construct a new, empty, identity object. See #SignonSecurityContext for a
* Returns: an instance of an #SignonIdentity.
*/
SignonIdentity*
-signon_identity_new (const gchar *application_context)
+signon_identity_new_with_context (const gchar *application_context)
{
DEBUG ("%s %d", G_STRFUNC, __LINE__);
SignonIdentity *identity = g_object_new (
list = list->next;
}
- SignonAuthSession *session = signon_auth_session_new (G_OBJECT(self),
- method,
- error);
+ SignonAuthSession *session =
+ signon_auth_session_new_for_identity (self,
+ method,
+ error);
if (session)
{
DEBUG ("%s %d - success", G_STRFUNC, __LINE__);
g_return_if_fail (info != NULL);
SignonIdentityPrivate *priv = self->priv;
+ SignonIdentityInfo *new_info = signon_identity_info_copy (info);
if (priv->identity_info)
signon_identity_info_free (priv->identity_info);
- priv->identity_info = signon_identity_info_copy (info);
+ priv->identity_info = new_info;
cb_data = g_slice_new0 (IdentityStoreCredentialsCbData);
cb_data->self = self;
cb_data->user_data = user_data;
operation_data = g_slice_new0 (IdentityStoreCredentialsData);
- operation_data->info_variant = signon_identity_info_to_variant (info);
+ operation_data->info_variant =
+ signon_identity_info_to_variant (priv->identity_info);
operation_data->cb_data = cb_data;
identity_check_remote_registration (self);
* @store_secret: whether gSSO should save the password in secret storage.
* @methods: (transfer none) (element-type utf8 GStrv): allowed methods.
* @caption: (allow-none): caption.
- * @realms: (allow-none): realms.
+ * @realms: (allow-none): allowed realms.
* @owner: (allow-none): owner.
* @access_control_list: (allow-none): access control list.
* @type: the type of the identity.
const gchar *username,
const gchar *secret,
const gboolean store_secret,
- const GHashTable *methods,
+ GHashTable *methods,
const gchar *caption,
const gchar* const *realms,
const SignonSecurityContext *owner,
- const SignonSecurityContextList *access_control_list,
+ SignonSecurityContextList *access_control_list,
SignonIdentityType type,
SignonIdentityStoreCredentialsCb cb,
gpointer user_data)
* This file is part of libgsignon-glib
*
* Copyright (C) 2009-2010 Nokia Corporation.
- * Copyright (C) 2012-2013 Intel Corporation.
+ * Copyright (C) 2012-2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@nokia.com>
* Contact: Jussi Laako <jussi.laako@linux.intel.com>
typedef struct _SignonIdentityClass SignonIdentityClass;
typedef struct _SignonIdentityPrivate SignonIdentityPrivate;
-typedef struct _SignonIdentity SignonIdentity;
/**
* SignonIdentityClass:
GType signon_identity_get_type (void) G_GNUC_CONST;
-SignonIdentity *signon_identity_new_from_db (guint32 id,
- const gchar *application_context);
-SignonIdentity *signon_identity_new (const gchar *application_context);
+SignonIdentity *signon_identity_new_from_db (guint32 id);
+SignonIdentity *signon_identity_new ();
+
+SignonIdentity *signon_identity_new_with_context_from_db (guint32 id,
+ const gchar *application_context);
+SignonIdentity *signon_identity_new_with_context (const gchar *application_context);
const GError *signon_identity_get_last_error (SignonIdentity *identity);
const gchar *username,
const gchar *secret,
const gboolean store_secret,
- const GHashTable *methods,
+ GHashTable *methods,
const gchar *caption,
const gchar* const *realms,
const SignonSecurityContext *owner,
- const SignonSecurityContextList *access_control_list,
+ SignonSecurityContextList *access_control_list,
SignonIdentityType type,
SignonIdentityStoreCredentialsCb cb,
gpointer user_data);
/**
* SignonIdentityInfoCb:
* @self: the #SignonIdentity.
- * @info: the #SignonIdentityInfo for @self.
+ * @info: (transfer none): the #SignonIdentityInfo for @self.
* @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_query_info().
*/
typedef void (*SignonIdentityInfoCb) (SignonIdentity *self,
- const SignonIdentityInfo *info,
+ SignonIdentityInfo *info,
const GError *error,
gpointer user_data);
--- /dev/null
+
+#include <glib-object.h>
+
+
+#ifdef G_ENABLE_DEBUG
+#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
+#define g_marshal_value_peek_char(v) g_value_get_schar (v)
+#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)
+#define g_marshal_value_peek_int(v) g_value_get_int (v)
+#define g_marshal_value_peek_uint(v) g_value_get_uint (v)
+#define g_marshal_value_peek_long(v) g_value_get_long (v)
+#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)
+#define g_marshal_value_peek_int64(v) g_value_get_int64 (v)
+#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)
+#define g_marshal_value_peek_enum(v) g_value_get_enum (v)
+#define g_marshal_value_peek_flags(v) g_value_get_flags (v)
+#define g_marshal_value_peek_float(v) g_value_get_float (v)
+#define g_marshal_value_peek_double(v) g_value_get_double (v)
+#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)
+#define g_marshal_value_peek_param(v) g_value_get_param (v)
+#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)
+#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)
+#define g_marshal_value_peek_object(v) g_value_get_object (v)
+#define g_marshal_value_peek_variant(v) g_value_get_variant (v)
+#else /* !G_ENABLE_DEBUG */
+/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
+ * Do not access GValues directly in your code. Instead, use the
+ * g_value_get_*() functions
+ */
+#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int
+#define g_marshal_value_peek_char(v) (v)->data[0].v_int
+#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint
+#define g_marshal_value_peek_int(v) (v)->data[0].v_int
+#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint
+#define g_marshal_value_peek_long(v) (v)->data[0].v_long
+#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong
+#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64
+#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64
+#define g_marshal_value_peek_enum(v) (v)->data[0].v_long
+#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong
+#define g_marshal_value_peek_float(v) (v)->data[0].v_float
+#define g_marshal_value_peek_double(v) (v)->data[0].v_double
+#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer
+#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer
+#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer
+#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer
+#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer
+#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer
+#endif /* !G_ENABLE_DEBUG */
+
+
+/* VOID:INT,STRING (signon-marshal.list:1) */
+void
+_signon_marshal_VOID__INT_STRING (GClosure *closure,
+ GValue *return_value G_GNUC_UNUSED,
+ guint n_param_values,
+ const GValue *param_values,
+ gpointer invocation_hint G_GNUC_UNUSED,
+ gpointer marshal_data)
+{
+ typedef void (*GMarshalFunc_VOID__INT_STRING) (gpointer data1,
+ gint arg_1,
+ gpointer arg_2,
+ gpointer data2);
+ register GMarshalFunc_VOID__INT_STRING callback;
+ register GCClosure *cc = (GCClosure*) closure;
+ register gpointer data1, data2;
+
+ g_return_if_fail (n_param_values == 3);
+
+ if (G_CCLOSURE_SWAP_DATA (closure))
+ {
+ data1 = closure->data;
+ data2 = g_value_peek_pointer (param_values + 0);
+ }
+ else
+ {
+ data1 = g_value_peek_pointer (param_values + 0);
+ data2 = closure->data;
+ }
+ callback = (GMarshalFunc_VOID__INT_STRING) (marshal_data ? marshal_data : cc->callback);
+
+ callback (data1,
+ g_marshal_value_peek_int (param_values + 1),
+ g_marshal_value_peek_string (param_values + 2),
+ data2);
+}
+
--- /dev/null
+
+#ifndef ___signon_marshal_MARSHAL_H__
+#define ___signon_marshal_MARSHAL_H__
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+/* VOID:INT,STRING (signon-marshal.list:1) */
+extern void _signon_marshal_VOID__INT_STRING (GClosure *closure,
+ GValue *return_value,
+ guint n_param_values,
+ const GValue *param_values,
+ gpointer invocation_hint,
+ gpointer marshal_data);
+
+G_END_DECLS
+
+#endif /* ___signon_marshal_MARSHAL_H__ */
+
G_BEGIN_DECLS
+typedef struct _SignonAuthSession SignonAuthSession;
+typedef struct _SignonIdentity SignonIdentity;
+
#ifdef SIGNON_DISABLE_DEPRECATION_WARNINGS
#define SIGNON_DEPRECATED
#define SIGNON_DEPRECATED_FOR(x)
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2012 Canonical Ltd.
+ * Copyright (C) 2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
*
return hash_table;
}
-GVariant *signon_hash_table_to_variant (const GHashTable *hash_table)
+GVariant *signon_hash_table_to_variant (GHashTable *hash_table)
{
GVariantBuilder builder;
GHashTableIter iter;
g_variant_builder_init (&builder, G_VARIANT_TYPE_VARDICT);
- g_hash_table_iter_init (&iter, (GHashTable *)hash_table);
+ g_hash_table_iter_init (&iter, hash_table);
while (g_hash_table_iter_next (&iter, (gpointer)&key, (gpointer)&value))
{
GVariant *val;
*
* Copyright (C) 2009-2010 Nokia Corporation.
* Copyright (C) 2012 Canonical Ltd.
+ * Copyright (C) 2014 Intel Corporation.
*
* Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
*
G_GNUC_INTERNAL
GHashTable *signon_hash_table_from_variant (GVariant *variant);
G_GNUC_INTERNAL
-GVariant *signon_hash_table_to_variant (const GHashTable *hash_table);
+GVariant *signon_hash_table_to_variant (GHashTable *hash_table);
#endif //_SIGNON_UTILS_H_
--- /dev/null
+/*
+ * Generated by gdbus-codegen 2.32.4. DO NOT EDIT.
+ *
+ * The license of this code is the same as for the source it was derived from.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include "sso-auth-service-gen.h"
+
+#include <string.h>
+#ifdef G_OS_UNIX
+# include <gio/gunixfdlist.h>
+#endif
+
+typedef struct
+{
+ GDBusArgInfo parent_struct;
+ gboolean use_gvariant;
+} _ExtendedGDBusArgInfo;
+
+typedef struct
+{
+ GDBusMethodInfo parent_struct;
+ const gchar *signal_name;
+ gboolean pass_fdlist;
+} _ExtendedGDBusMethodInfo;
+
+typedef struct
+{
+ GDBusSignalInfo parent_struct;
+ const gchar *signal_name;
+} _ExtendedGDBusSignalInfo;
+
+typedef struct
+{
+ GDBusPropertyInfo parent_struct;
+ const gchar *hyphen_name;
+ gboolean use_gvariant;
+} _ExtendedGDBusPropertyInfo;
+
+typedef struct
+{
+ GDBusInterfaceInfo parent_struct;
+ const gchar *hyphen_name;
+} _ExtendedGDBusInterfaceInfo;
+
+typedef struct
+{
+ const _ExtendedGDBusPropertyInfo *info;
+ guint prop_id;
+ GValue orig_value; /* the value before the change */
+} ChangedProperty;
+
+static void
+_changed_property_free (ChangedProperty *data)
+{
+ g_value_unset (&data->orig_value);
+ g_free (data);
+}
+
+static gboolean
+_g_strv_equal0 (gchar **a, gchar **b)
+{
+ gboolean ret = FALSE;
+ guint n;
+ if (a == NULL && b == NULL)
+ {
+ ret = TRUE;
+ goto out;
+ }
+ if (a == NULL || b == NULL)
+ goto out;
+ if (g_strv_length (a) != g_strv_length (b))
+ goto out;
+ for (n = 0; a[n] != NULL; n++)
+ if (g_strcmp0 (a[n], b[n]) != 0)
+ goto out;
+ ret = TRUE;
+out:
+ return ret;
+}
+
+static gboolean
+_g_variant_equal0 (GVariant *a, GVariant *b)
+{
+ gboolean ret = FALSE;
+ if (a == NULL && b == NULL)
+ {
+ ret = TRUE;
+ goto out;
+ }
+ if (a == NULL || b == NULL)
+ goto out;
+ ret = g_variant_equal (a, b);
+out:
+ return ret;
+}
+
+G_GNUC_UNUSED static gboolean
+_g_value_equal (const GValue *a, const GValue *b)
+{
+ gboolean ret = FALSE;
+ g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b));
+ switch (G_VALUE_TYPE (a))
+ {
+ case G_TYPE_BOOLEAN:
+ ret = (g_value_get_boolean (a) == g_value_get_boolean (b));
+ break;
+ case G_TYPE_UCHAR:
+ ret = (g_value_get_uchar (a) == g_value_get_uchar (b));
+ break;
+ case G_TYPE_INT:
+ ret = (g_value_get_int (a) == g_value_get_int (b));
+ break;
+ case G_TYPE_UINT:
+ ret = (g_value_get_uint (a) == g_value_get_uint (b));
+ break;
+ case G_TYPE_INT64:
+ ret = (g_value_get_int64 (a) == g_value_get_int64 (b));
+ break;
+ case G_TYPE_UINT64:
+ ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b));
+ break;
+ case G_TYPE_DOUBLE:
+ {
+ /* Avoid -Wfloat-equal warnings by doing a direct bit compare */
+ gdouble da = g_value_get_double (a);
+ gdouble db = g_value_get_double (b);
+ ret = memcmp (&da, &db, sizeof (gdouble)) == 0;
+ }
+ break;
+ case G_TYPE_STRING:
+ ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0);
+ break;
+ case G_TYPE_VARIANT:
+ ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b));
+ break;
+ default:
+ if (G_VALUE_TYPE (a) == G_TYPE_STRV)
+ ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b));
+ else
+ g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a)));
+ break;
+ }
+ return ret;
+}
+
+/* ------------------------------------------------------------------------
+ * Code for interface com.google.code.AccountsSSO.gSingleSignOn.AuthService
+ * ------------------------------------------------------------------------
+ */
+
+/**
+ * SECTION:SsoAuthService
+ * @title: SsoAuthService
+ * @short_description: Generated C code for the com.google.code.AccountsSSO.gSingleSignOn.AuthService D-Bus interface
+ *
+ * This section contains code for working with the <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthService.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthService</link> D-Bus interface in C.
+ */
+
+/* ---- Introspection data for com.google.code.AccountsSSO.gSingleSignOn.AuthService ---- */
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_register_new_identity_IN_ARG_applicationContext =
+{
+ {
+ -1,
+ "applicationContext",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_register_new_identity_IN_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_register_new_identity_IN_ARG_applicationContext,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_register_new_identity_OUT_ARG_objectPath =
+{
+ {
+ -1,
+ "objectPath",
+ "o",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_register_new_identity_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_register_new_identity_OUT_ARG_objectPath,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_register_new_identity =
+{
+ {
+ -1,
+ "registerNewIdentity",
+ (GDBusArgInfo **) &_sso_auth_service_method_info_register_new_identity_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_register_new_identity_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-register-new-identity",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_get_identity_IN_ARG_id =
+{
+ {
+ -1,
+ "id",
+ "u",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_get_identity_IN_ARG_applicationContext =
+{
+ {
+ -1,
+ "applicationContext",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_get_identity_IN_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_get_identity_IN_ARG_id,
+ &_sso_auth_service_method_info_get_identity_IN_ARG_applicationContext,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_get_identity_OUT_ARG_objectPath =
+{
+ {
+ -1,
+ "objectPath",
+ "o",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_get_identity_OUT_ARG_identityData =
+{
+ {
+ -1,
+ "identityData",
+ "a{sv}",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_get_identity_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_get_identity_OUT_ARG_objectPath,
+ &_sso_auth_service_method_info_get_identity_OUT_ARG_identityData,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_get_identity =
+{
+ {
+ -1,
+ "getIdentity",
+ (GDBusArgInfo **) &_sso_auth_service_method_info_get_identity_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_get_identity_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-get-identity",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_query_methods_OUT_ARG_authMethods =
+{
+ {
+ -1,
+ "authMethods",
+ "as",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_query_methods_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_query_methods_OUT_ARG_authMethods,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_query_methods =
+{
+ {
+ -1,
+ "queryMethods",
+ NULL,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_query_methods_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-query-methods",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_query_mechanisms_IN_ARG_method =
+{
+ {
+ -1,
+ "method",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_query_mechanisms_IN_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_query_mechanisms_IN_ARG_method,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_query_mechanisms_OUT_ARG_mechanisms =
+{
+ {
+ -1,
+ "mechanisms",
+ "as",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_query_mechanisms_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_query_mechanisms_OUT_ARG_mechanisms,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_query_mechanisms =
+{
+ {
+ -1,
+ "queryMechanisms",
+ (GDBusArgInfo **) &_sso_auth_service_method_info_query_mechanisms_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_query_mechanisms_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-query-mechanisms",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_query_identities_IN_ARG_filter =
+{
+ {
+ -1,
+ "filter",
+ "a{sv}",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_query_identities_IN_ARG_applicationContext =
+{
+ {
+ -1,
+ "applicationContext",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_query_identities_IN_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_query_identities_IN_ARG_filter,
+ &_sso_auth_service_method_info_query_identities_IN_ARG_applicationContext,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_query_identities_OUT_ARG_identities =
+{
+ {
+ -1,
+ "identities",
+ "aa{sv}",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_query_identities_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_query_identities_OUT_ARG_identities,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_query_identities =
+{
+ {
+ -1,
+ "queryIdentities",
+ (GDBusArgInfo **) &_sso_auth_service_method_info_query_identities_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_query_identities_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-query-identities",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_clear_OUT_ARG_unnamed_arg0 =
+{
+ {
+ -1,
+ "unnamed_arg0",
+ "b",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_clear_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_clear_OUT_ARG_unnamed_arg0,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_clear =
+{
+ {
+ -1,
+ "clear",
+ NULL,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_clear_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-clear",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_backup_starts_OUT_ARG_unnamed_arg0 =
+{
+ {
+ -1,
+ "unnamed_arg0",
+ "y",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_backup_starts_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_backup_starts_OUT_ARG_unnamed_arg0,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_backup_starts =
+{
+ {
+ -1,
+ "backupStarts",
+ NULL,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_backup_starts_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-backup-starts",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_backup_finished_OUT_ARG_unnamed_arg0 =
+{
+ {
+ -1,
+ "unnamed_arg0",
+ "y",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_backup_finished_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_backup_finished_OUT_ARG_unnamed_arg0,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_backup_finished =
+{
+ {
+ -1,
+ "backupFinished",
+ NULL,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_backup_finished_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-backup-finished",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_restore_starts_OUT_ARG_unnamed_arg0 =
+{
+ {
+ -1,
+ "unnamed_arg0",
+ "y",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_restore_starts_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_restore_starts_OUT_ARG_unnamed_arg0,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_restore_starts =
+{
+ {
+ -1,
+ "restoreStarts",
+ NULL,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_restore_starts_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-restore-starts",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_service_method_info_restore_finished_OUT_ARG_unnamed_arg0 =
+{
+ {
+ -1,
+ "unnamed_arg0",
+ "y",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_service_method_info_restore_finished_OUT_ARG_pointers[] =
+{
+ &_sso_auth_service_method_info_restore_finished_OUT_ARG_unnamed_arg0,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_service_method_info_restore_finished =
+{
+ {
+ -1,
+ "restoreFinished",
+ NULL,
+ (GDBusArgInfo **) &_sso_auth_service_method_info_restore_finished_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-restore-finished",
+ FALSE
+};
+
+static const _ExtendedGDBusMethodInfo * const _sso_auth_service_method_info_pointers[] =
+{
+ &_sso_auth_service_method_info_register_new_identity,
+ &_sso_auth_service_method_info_get_identity,
+ &_sso_auth_service_method_info_query_methods,
+ &_sso_auth_service_method_info_query_mechanisms,
+ &_sso_auth_service_method_info_query_identities,
+ &_sso_auth_service_method_info_clear,
+ &_sso_auth_service_method_info_backup_starts,
+ &_sso_auth_service_method_info_backup_finished,
+ &_sso_auth_service_method_info_restore_starts,
+ &_sso_auth_service_method_info_restore_finished,
+ NULL
+};
+
+static const _ExtendedGDBusInterfaceInfo _sso_auth_service_interface_info =
+{
+ {
+ -1,
+ "com.google.code.AccountsSSO.gSingleSignOn.AuthService",
+ (GDBusMethodInfo **) &_sso_auth_service_method_info_pointers,
+ NULL,
+ NULL,
+ NULL
+ },
+ "sso-auth-service",
+};
+
+
+/**
+ * sso_auth_service_interface_info:
+ *
+ * Gets a machine-readable description of the <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthService.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthService</link> D-Bus interface.
+ *
+ * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free.
+ */
+GDBusInterfaceInfo *
+sso_auth_service_interface_info (void)
+{
+ return (GDBusInterfaceInfo *) &_sso_auth_service_interface_info;
+}
+
+/**
+ * sso_auth_service_override_properties:
+ * @klass: The class structure for a #GObject<!-- -->-derived class.
+ * @property_id_begin: The property id to assign to the first overridden property.
+ *
+ * Overrides all #GObject properties in the #SsoAuthService interface for a concrete class.
+ * The properties are overridden in the order they are defined.
+ *
+ * Returns: The last property id.
+ */
+guint
+sso_auth_service_override_properties (GObjectClass *klass, guint property_id_begin)
+{
+ return property_id_begin - 1;
+}
+
+
+
+/**
+ * SsoAuthService:
+ *
+ * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthService.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthService</link>.
+ */
+
+/**
+ * SsoAuthServiceIface:
+ * @parent_iface: The parent interface.
+ * @handle_backup_finished: Handler for the #SsoAuthService::handle-backup-finished signal.
+ * @handle_backup_starts: Handler for the #SsoAuthService::handle-backup-starts signal.
+ * @handle_clear: Handler for the #SsoAuthService::handle-clear signal.
+ * @handle_get_identity: Handler for the #SsoAuthService::handle-get-identity signal.
+ * @handle_query_identities: Handler for the #SsoAuthService::handle-query-identities signal.
+ * @handle_query_mechanisms: Handler for the #SsoAuthService::handle-query-mechanisms signal.
+ * @handle_query_methods: Handler for the #SsoAuthService::handle-query-methods signal.
+ * @handle_register_new_identity: Handler for the #SsoAuthService::handle-register-new-identity signal.
+ * @handle_restore_finished: Handler for the #SsoAuthService::handle-restore-finished signal.
+ * @handle_restore_starts: Handler for the #SsoAuthService::handle-restore-starts signal.
+ *
+ * Virtual table for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthService.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthService</link>.
+ */
+
+static void
+sso_auth_service_default_init (SsoAuthServiceIface *iface)
+{
+ /* GObject signals for incoming D-Bus method calls: */
+ /**
+ * SsoAuthService::handle-register-new-identity:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_applicationContext: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.registerNewIdentity">registerNewIdentity()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_register_new_identity() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-register-new-identity",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_register_new_identity),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING);
+
+ /**
+ * SsoAuthService::handle-get-identity:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_id: Argument passed by remote caller.
+ * @arg_applicationContext: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.getIdentity">getIdentity()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_get_identity() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-get-identity",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_get_identity),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 3,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT, G_TYPE_STRING);
+
+ /**
+ * SsoAuthService::handle-query-methods:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryMethods">queryMethods()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_query_methods() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-query-methods",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_query_methods),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /**
+ * SsoAuthService::handle-query-mechanisms:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_method: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryMechanisms">queryMechanisms()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_query_mechanisms() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-query-mechanisms",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_query_mechanisms),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING);
+
+ /**
+ * SsoAuthService::handle-query-identities:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_filter: Argument passed by remote caller.
+ * @arg_applicationContext: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryIdentities">queryIdentities()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_query_identities() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-query-identities",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_query_identities),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 3,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_VARIANT, G_TYPE_STRING);
+
+ /**
+ * SsoAuthService::handle-clear:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.clear">clear()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_clear() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-clear",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_clear),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /**
+ * SsoAuthService::handle-backup-starts:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.backupStarts">backupStarts()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_backup_starts() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-backup-starts",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_backup_starts),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /**
+ * SsoAuthService::handle-backup-finished:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.backupFinished">backupFinished()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_backup_finished() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-backup-finished",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_backup_finished),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /**
+ * SsoAuthService::handle-restore-starts:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.restoreStarts">restoreStarts()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_restore_starts() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-restore-starts",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_restore_starts),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /**
+ * SsoAuthService::handle-restore-finished:
+ * @object: A #SsoAuthService.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.restoreFinished">restoreFinished()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_service_complete_restore_finished() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-restore-finished",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthServiceIface, handle_restore_finished),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+}
+
+typedef SsoAuthServiceIface SsoAuthServiceInterface;
+G_DEFINE_INTERFACE (SsoAuthService, sso_auth_service, G_TYPE_OBJECT);
+
+/**
+ * sso_auth_service_call_register_new_identity:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @arg_applicationContext: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.registerNewIdentity">registerNewIdentity()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_register_new_identity_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_register_new_identity_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_register_new_identity (
+ SsoAuthService *proxy,
+ const gchar *arg_applicationContext,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "registerNewIdentity",
+ g_variant_new ("(s)",
+ arg_applicationContext),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_register_new_identity_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_objectPath: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_register_new_identity().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_register_new_identity().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_register_new_identity_finish (
+ SsoAuthService *proxy,
+ gchar **out_objectPath,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(o)",
+ out_objectPath);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_register_new_identity_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @arg_applicationContext: Argument to pass with the method invocation.
+ * @out_objectPath: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.registerNewIdentity">registerNewIdentity()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_register_new_identity() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_register_new_identity_sync (
+ SsoAuthService *proxy,
+ const gchar *arg_applicationContext,
+ gchar **out_objectPath,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "registerNewIdentity",
+ g_variant_new ("(s)",
+ arg_applicationContext),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(o)",
+ out_objectPath);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_get_identity:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @arg_id: Argument to pass with the method invocation.
+ * @arg_applicationContext: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.getIdentity">getIdentity()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_get_identity_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_get_identity_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_get_identity (
+ SsoAuthService *proxy,
+ guint arg_id,
+ const gchar *arg_applicationContext,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "getIdentity",
+ g_variant_new ("(us)",
+ arg_id,
+ arg_applicationContext),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_get_identity_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_objectPath: (out): Return location for return parameter or %NULL to ignore.
+ * @out_identityData: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_get_identity().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_get_identity().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_get_identity_finish (
+ SsoAuthService *proxy,
+ gchar **out_objectPath,
+ GVariant **out_identityData,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(o@a{sv})",
+ out_objectPath,
+ out_identityData);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_get_identity_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @arg_id: Argument to pass with the method invocation.
+ * @arg_applicationContext: Argument to pass with the method invocation.
+ * @out_objectPath: (out): Return location for return parameter or %NULL to ignore.
+ * @out_identityData: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.getIdentity">getIdentity()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_get_identity() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_get_identity_sync (
+ SsoAuthService *proxy,
+ guint arg_id,
+ const gchar *arg_applicationContext,
+ gchar **out_objectPath,
+ GVariant **out_identityData,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "getIdentity",
+ g_variant_new ("(us)",
+ arg_id,
+ arg_applicationContext),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(o@a{sv})",
+ out_objectPath,
+ out_identityData);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_query_methods:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryMethods">queryMethods()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_query_methods_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_query_methods_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_query_methods (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "queryMethods",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_query_methods_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_authMethods: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_query_methods().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_query_methods().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_query_methods_finish (
+ SsoAuthService *proxy,
+ gchar ***out_authMethods,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(^as)",
+ out_authMethods);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_query_methods_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_authMethods: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryMethods">queryMethods()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_query_methods() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_query_methods_sync (
+ SsoAuthService *proxy,
+ gchar ***out_authMethods,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "queryMethods",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(^as)",
+ out_authMethods);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_query_mechanisms:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @arg_method: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryMechanisms">queryMechanisms()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_query_mechanisms_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_query_mechanisms_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_query_mechanisms (
+ SsoAuthService *proxy,
+ const gchar *arg_method,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "queryMechanisms",
+ g_variant_new ("(s)",
+ arg_method),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_query_mechanisms_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_mechanisms: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_query_mechanisms().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_query_mechanisms().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_query_mechanisms_finish (
+ SsoAuthService *proxy,
+ gchar ***out_mechanisms,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(^as)",
+ out_mechanisms);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_query_mechanisms_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @arg_method: Argument to pass with the method invocation.
+ * @out_mechanisms: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryMechanisms">queryMechanisms()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_query_mechanisms() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_query_mechanisms_sync (
+ SsoAuthService *proxy,
+ const gchar *arg_method,
+ gchar ***out_mechanisms,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "queryMechanisms",
+ g_variant_new ("(s)",
+ arg_method),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(^as)",
+ out_mechanisms);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_query_identities:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @arg_filter: Argument to pass with the method invocation.
+ * @arg_applicationContext: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryIdentities">queryIdentities()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_query_identities_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_query_identities_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_query_identities (
+ SsoAuthService *proxy,
+ GVariant *arg_filter,
+ const gchar *arg_applicationContext,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "queryIdentities",
+ g_variant_new ("(@a{sv}s)",
+ arg_filter,
+ arg_applicationContext),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_query_identities_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_identities: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_query_identities().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_query_identities().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_query_identities_finish (
+ SsoAuthService *proxy,
+ GVariant **out_identities,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(@aa{sv})",
+ out_identities);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_query_identities_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @arg_filter: Argument to pass with the method invocation.
+ * @arg_applicationContext: Argument to pass with the method invocation.
+ * @out_identities: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryIdentities">queryIdentities()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_query_identities() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_query_identities_sync (
+ SsoAuthService *proxy,
+ GVariant *arg_filter,
+ const gchar *arg_applicationContext,
+ GVariant **out_identities,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "queryIdentities",
+ g_variant_new ("(@a{sv}s)",
+ arg_filter,
+ arg_applicationContext),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(@aa{sv})",
+ out_identities);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_clear:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.clear">clear()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_clear_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_clear_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_clear (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "clear",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_clear_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_clear().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_clear().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_clear_finish (
+ SsoAuthService *proxy,
+ gboolean *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(b)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_clear_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.clear">clear()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_clear() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_clear_sync (
+ SsoAuthService *proxy,
+ gboolean *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "clear",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(b)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_backup_starts:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.backupStarts">backupStarts()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_backup_starts_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_backup_starts_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_backup_starts (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "backupStarts",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_backup_starts_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_backup_starts().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_backup_starts().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_backup_starts_finish (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(y)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_backup_starts_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.backupStarts">backupStarts()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_backup_starts() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_backup_starts_sync (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "backupStarts",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(y)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_backup_finished:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.backupFinished">backupFinished()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_backup_finished_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_backup_finished_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_backup_finished (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "backupFinished",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_backup_finished_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_backup_finished().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_backup_finished().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_backup_finished_finish (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(y)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_backup_finished_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.backupFinished">backupFinished()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_backup_finished() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_backup_finished_sync (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "backupFinished",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(y)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_restore_starts:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.restoreStarts">restoreStarts()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_restore_starts_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_restore_starts_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_restore_starts (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "restoreStarts",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_restore_starts_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_restore_starts().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_restore_starts().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_restore_starts_finish (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(y)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_restore_starts_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.restoreStarts">restoreStarts()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_restore_starts() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_restore_starts_sync (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "restoreStarts",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(y)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_restore_finished:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.restoreFinished">restoreFinished()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_call_restore_finished_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_call_restore_finished_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_service_call_restore_finished (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "restoreFinished",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_service_call_restore_finished_finish:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_call_restore_finished().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_service_call_restore_finished().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_restore_finished_finish (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(y)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_call_restore_finished_sync:
+ * @proxy: A #SsoAuthServiceProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.restoreFinished">restoreFinished()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_call_restore_finished() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_service_call_restore_finished_sync (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "restoreFinished",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(y)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_service_complete_register_new_identity:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @objectPath: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.registerNewIdentity">registerNewIdentity()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_register_new_identity (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *objectPath)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(o)",
+ objectPath));
+}
+
+/**
+ * sso_auth_service_complete_get_identity:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @objectPath: Parameter to return.
+ * @identityData: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.getIdentity">getIdentity()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_get_identity (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *objectPath,
+ GVariant *identityData)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(o@a{sv})",
+ objectPath,
+ identityData));
+}
+
+/**
+ * sso_auth_service_complete_query_methods:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @authMethods: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryMethods">queryMethods()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_query_methods (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *const *authMethods)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(^as)",
+ authMethods));
+}
+
+/**
+ * sso_auth_service_complete_query_mechanisms:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @mechanisms: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryMechanisms">queryMechanisms()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_query_mechanisms (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *const *mechanisms)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(^as)",
+ mechanisms));
+}
+
+/**
+ * sso_auth_service_complete_query_identities:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @identities: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.queryIdentities">queryIdentities()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_query_identities (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *identities)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(@aa{sv})",
+ identities));
+}
+
+/**
+ * sso_auth_service_complete_clear:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg0: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.clear">clear()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_clear (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ gboolean unnamed_arg0)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(b)",
+ unnamed_arg0));
+}
+
+/**
+ * sso_auth_service_complete_backup_starts:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg0: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.backupStarts">backupStarts()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_backup_starts (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guchar unnamed_arg0)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(y)",
+ unnamed_arg0));
+}
+
+/**
+ * sso_auth_service_complete_backup_finished:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg0: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.backupFinished">backupFinished()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_backup_finished (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guchar unnamed_arg0)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(y)",
+ unnamed_arg0));
+}
+
+/**
+ * sso_auth_service_complete_restore_starts:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg0: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.restoreStarts">restoreStarts()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_restore_starts (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guchar unnamed_arg0)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(y)",
+ unnamed_arg0));
+}
+
+/**
+ * sso_auth_service_complete_restore_finished:
+ * @object: A #SsoAuthService.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg0: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthService.restoreFinished">restoreFinished()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_service_complete_restore_finished (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guchar unnamed_arg0)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(y)",
+ unnamed_arg0));
+}
+
+/* ------------------------------------------------------------------------ */
+
+/**
+ * SsoAuthServiceProxy:
+ *
+ * The #SsoAuthServiceProxy structure contains only private data and should only be accessed using the provided API.
+ */
+
+/**
+ * SsoAuthServiceProxyClass:
+ * @parent_class: The parent class.
+ *
+ * Class structure for #SsoAuthServiceProxy.
+ */
+
+struct _SsoAuthServiceProxyPrivate
+{
+ GData *qdata;
+};
+
+static void sso_auth_service_proxy_iface_init (SsoAuthServiceIface *iface);
+
+G_DEFINE_TYPE_WITH_CODE (SsoAuthServiceProxy, sso_auth_service_proxy, G_TYPE_DBUS_PROXY,
+ G_IMPLEMENT_INTERFACE (TYPE_SSO_AUTH_SERVICE, sso_auth_service_proxy_iface_init));
+
+static void
+sso_auth_service_proxy_finalize (GObject *object)
+{
+ SsoAuthServiceProxy *proxy = SSO_AUTH_SERVICE_PROXY (object);
+ g_datalist_clear (&proxy->priv->qdata);
+ G_OBJECT_CLASS (sso_auth_service_proxy_parent_class)->finalize (object);
+}
+
+static void
+sso_auth_service_proxy_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+}
+
+static void
+sso_auth_service_proxy_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+}
+
+static void
+sso_auth_service_proxy_g_signal (GDBusProxy *proxy,
+ const gchar *sender_name,
+ const gchar *signal_name,
+ GVariant *parameters)
+{
+ _ExtendedGDBusSignalInfo *info;
+ GVariantIter iter;
+ GVariant *child;
+ GValue *paramv;
+ guint num_params;
+ guint n;
+ guint signal_id;
+ info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_sso_auth_service_interface_info, signal_name);
+ if (info == NULL)
+ return;
+ num_params = g_variant_n_children (parameters);
+ paramv = g_new0 (GValue, num_params + 1);
+ g_value_init (¶mv[0], TYPE_SSO_AUTH_SERVICE);
+ g_value_set_object (¶mv[0], proxy);
+ g_variant_iter_init (&iter, parameters);
+ n = 1;
+ while ((child = g_variant_iter_next_value (&iter)) != NULL)
+ {
+ _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1];
+ if (arg_info->use_gvariant)
+ {
+ g_value_init (¶mv[n], G_TYPE_VARIANT);
+ g_value_set_variant (¶mv[n], child);
+ n++;
+ }
+ else
+ g_dbus_gvariant_to_gvalue (child, ¶mv[n++]);
+ g_variant_unref (child);
+ }
+ signal_id = g_signal_lookup (info->signal_name, TYPE_SSO_AUTH_SERVICE);
+ g_signal_emitv (paramv, signal_id, 0, NULL);
+ for (n = 0; n < num_params + 1; n++)
+ g_value_unset (¶mv[n]);
+ g_free (paramv);
+}
+
+static void
+sso_auth_service_proxy_g_properties_changed (GDBusProxy *_proxy,
+ GVariant *changed_properties,
+ const gchar *const *invalidated_properties)
+{
+ SsoAuthServiceProxy *proxy = SSO_AUTH_SERVICE_PROXY (_proxy);
+ guint n;
+ const gchar *key;
+ GVariantIter *iter;
+ _ExtendedGDBusPropertyInfo *info;
+ g_variant_get (changed_properties, "a{sv}", &iter);
+ while (g_variant_iter_next (iter, "{&sv}", &key, NULL))
+ {
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_auth_service_interface_info, key);
+ g_datalist_remove_data (&proxy->priv->qdata, key);
+ if (info != NULL)
+ g_object_notify (G_OBJECT (proxy), info->hyphen_name);
+ }
+ g_variant_iter_free (iter);
+ for (n = 0; invalidated_properties[n] != NULL; n++)
+ {
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_auth_service_interface_info, invalidated_properties[n]);
+ g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]);
+ if (info != NULL)
+ g_object_notify (G_OBJECT (proxy), info->hyphen_name);
+ }
+}
+
+static void
+sso_auth_service_proxy_init (SsoAuthServiceProxy *proxy)
+{
+ proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_SSO_AUTH_SERVICE_PROXY, SsoAuthServiceProxyPrivate);
+ g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), sso_auth_service_interface_info ());
+}
+
+static void
+sso_auth_service_proxy_class_init (SsoAuthServiceProxyClass *klass)
+{
+ GObjectClass *gobject_class;
+ GDBusProxyClass *proxy_class;
+
+ g_type_class_add_private (klass, sizeof (SsoAuthServiceProxyPrivate));
+
+ gobject_class = G_OBJECT_CLASS (klass);
+ gobject_class->finalize = sso_auth_service_proxy_finalize;
+ gobject_class->get_property = sso_auth_service_proxy_get_property;
+ gobject_class->set_property = sso_auth_service_proxy_set_property;
+
+ proxy_class = G_DBUS_PROXY_CLASS (klass);
+ proxy_class->g_signal = sso_auth_service_proxy_g_signal;
+ proxy_class->g_properties_changed = sso_auth_service_proxy_g_properties_changed;
+
+}
+
+static void
+sso_auth_service_proxy_iface_init (SsoAuthServiceIface *iface)
+{
+}
+
+/**
+ * sso_auth_service_proxy_new:
+ * @connection: A #GDBusConnection.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthService.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthService</link>. See g_dbus_proxy_new() for more details.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_proxy_new_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_proxy_new_sync() for the synchronous, blocking version of this constructor.
+ */
+void
+sso_auth_service_proxy_new (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_async_initable_new_async (TYPE_SSO_AUTH_SERVICE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.AuthService", NULL);
+}
+
+/**
+ * sso_auth_service_proxy_new_finish:
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_proxy_new().
+ * @error: Return location for error or %NULL
+ *
+ * Finishes an operation started with sso_auth_service_proxy_new().
+ *
+ * Returns: (transfer full) (type SsoAuthServiceProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoAuthService *
+sso_auth_service_proxy_new_finish (
+ GAsyncResult *res,
+ GError **error)
+{
+ GObject *ret;
+ GObject *source_object;
+ source_object = g_async_result_get_source_object (res);
+ ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
+ g_object_unref (source_object);
+ if (ret != NULL)
+ return SSO_AUTH_SERVICE (ret);
+ else
+ return NULL;
+}
+
+/**
+ * sso_auth_service_proxy_new_sync:
+ * @connection: A #GDBusConnection.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL
+ *
+ * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthService.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthService</link>. See g_dbus_proxy_new_sync() for more details.
+ *
+ * The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_proxy_new() for the asynchronous version of this constructor.
+ *
+ * Returns: (transfer full) (type SsoAuthServiceProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoAuthService *
+sso_auth_service_proxy_new_sync (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GInitable *ret;
+ ret = g_initable_new (TYPE_SSO_AUTH_SERVICE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.AuthService", NULL);
+ if (ret != NULL)
+ return SSO_AUTH_SERVICE (ret);
+ else
+ return NULL;
+}
+
+
+/**
+ * sso_auth_service_proxy_new_for_bus:
+ * @bus_type: A #GBusType.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: A bus name (well-known or unique).
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
+ * @user_data: User data to pass to @callback.
+ *
+ * Like sso_auth_service_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_service_proxy_new_for_bus_finish() to get the result of the operation.
+ *
+ * See sso_auth_service_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.
+ */
+void
+sso_auth_service_proxy_new_for_bus (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_async_initable_new_async (TYPE_SSO_AUTH_SERVICE_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.AuthService", NULL);
+}
+
+/**
+ * sso_auth_service_proxy_new_for_bus_finish:
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_service_proxy_new_for_bus().
+ * @error: Return location for error or %NULL
+ *
+ * Finishes an operation started with sso_auth_service_proxy_new_for_bus().
+ *
+ * Returns: (transfer full) (type SsoAuthServiceProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoAuthService *
+sso_auth_service_proxy_new_for_bus_finish (
+ GAsyncResult *res,
+ GError **error)
+{
+ GObject *ret;
+ GObject *source_object;
+ source_object = g_async_result_get_source_object (res);
+ ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
+ g_object_unref (source_object);
+ if (ret != NULL)
+ return SSO_AUTH_SERVICE (ret);
+ else
+ return NULL;
+}
+
+/**
+ * sso_auth_service_proxy_new_for_bus_sync:
+ * @bus_type: A #GBusType.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: A bus name (well-known or unique).
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL
+ *
+ * Like sso_auth_service_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
+ *
+ * The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_service_proxy_new_for_bus() for the asynchronous version of this constructor.
+ *
+ * Returns: (transfer full) (type SsoAuthServiceProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoAuthService *
+sso_auth_service_proxy_new_for_bus_sync (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GInitable *ret;
+ ret = g_initable_new (TYPE_SSO_AUTH_SERVICE_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.AuthService", NULL);
+ if (ret != NULL)
+ return SSO_AUTH_SERVICE (ret);
+ else
+ return NULL;
+}
+
+
+/* ------------------------------------------------------------------------ */
+
+/**
+ * SsoAuthServiceSkeleton:
+ *
+ * The #SsoAuthServiceSkeleton structure contains only private data and should only be accessed using the provided API.
+ */
+
+/**
+ * SsoAuthServiceSkeletonClass:
+ * @parent_class: The parent class.
+ *
+ * Class structure for #SsoAuthServiceSkeleton.
+ */
+
+struct _SsoAuthServiceSkeletonPrivate
+{
+ GValue *properties;
+ GList *changed_properties;
+ GSource *changed_properties_idle_source;
+ GMainContext *context;
+ GMutex lock;
+};
+
+static void
+_sso_auth_service_skeleton_handle_method_call (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *method_name,
+ GVariant *parameters,
+ GDBusMethodInvocation *invocation,
+ gpointer user_data)
+{
+ SsoAuthServiceSkeleton *skeleton = SSO_AUTH_SERVICE_SKELETON (user_data);
+ _ExtendedGDBusMethodInfo *info;
+ GVariantIter iter;
+ GVariant *child;
+ GValue *paramv;
+ guint num_params;
+ guint num_extra;
+ guint n;
+ guint signal_id;
+ GValue return_value = G_VALUE_INIT;
+ info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation);
+ g_assert (info != NULL);
+ num_params = g_variant_n_children (parameters);
+ num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra);
+ n = 0;
+ g_value_init (¶mv[n], TYPE_SSO_AUTH_SERVICE);
+ g_value_set_object (¶mv[n++], skeleton);
+ g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION);
+ g_value_set_object (¶mv[n++], invocation);
+ if (info->pass_fdlist)
+ {
+#ifdef G_OS_UNIX
+ g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST);
+ g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)));
+#else
+ g_assert_not_reached ();
+#endif
+ }
+ g_variant_iter_init (&iter, parameters);
+ while ((child = g_variant_iter_next_value (&iter)) != NULL)
+ {
+ _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra];
+ if (arg_info->use_gvariant)
+ {
+ g_value_init (¶mv[n], G_TYPE_VARIANT);
+ g_value_set_variant (¶mv[n], child);
+ n++;
+ }
+ else
+ g_dbus_gvariant_to_gvalue (child, ¶mv[n++]);
+ g_variant_unref (child);
+ }
+ signal_id = g_signal_lookup (info->signal_name, TYPE_SSO_AUTH_SERVICE);
+ g_value_init (&return_value, G_TYPE_BOOLEAN);
+ g_signal_emitv (paramv, signal_id, 0, &return_value);
+ if (!g_value_get_boolean (&return_value))
+ g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name);
+ g_value_unset (&return_value);
+ for (n = 0; n < num_params + num_extra; n++)
+ g_value_unset (¶mv[n]);
+ g_free (paramv);
+}
+
+static GVariant *
+_sso_auth_service_skeleton_handle_get_property (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *property_name,
+ GError **error,
+ gpointer user_data)
+{
+ SsoAuthServiceSkeleton *skeleton = SSO_AUTH_SERVICE_SKELETON (user_data);
+ GValue value = G_VALUE_INIT;
+ GParamSpec *pspec;
+ _ExtendedGDBusPropertyInfo *info;
+ GVariant *ret;
+ ret = NULL;
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_auth_service_interface_info, property_name);
+ g_assert (info != NULL);
+ pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
+ if (pspec == NULL)
+ {
+ g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
+ }
+ else
+ {
+ g_value_init (&value, pspec->value_type);
+ g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value);
+ ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature));
+ g_value_unset (&value);
+ }
+ return ret;
+}
+
+static gboolean
+_sso_auth_service_skeleton_handle_set_property (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *property_name,
+ GVariant *variant,
+ GError **error,
+ gpointer user_data)
+{
+ SsoAuthServiceSkeleton *skeleton = SSO_AUTH_SERVICE_SKELETON (user_data);
+ GValue value = G_VALUE_INIT;
+ GParamSpec *pspec;
+ _ExtendedGDBusPropertyInfo *info;
+ gboolean ret;
+ ret = FALSE;
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_auth_service_interface_info, property_name);
+ g_assert (info != NULL);
+ pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
+ if (pspec == NULL)
+ {
+ g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
+ }
+ else
+ {
+ if (info->use_gvariant)
+ g_value_set_variant (&value, variant);
+ else
+ g_dbus_gvariant_to_gvalue (variant, &value);
+ g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value);
+ g_value_unset (&value);
+ ret = TRUE;
+ }
+ return ret;
+}
+
+static const GDBusInterfaceVTable _sso_auth_service_skeleton_vtable =
+{
+ _sso_auth_service_skeleton_handle_method_call,
+ _sso_auth_service_skeleton_handle_get_property,
+ _sso_auth_service_skeleton_handle_set_property
+};
+
+static GDBusInterfaceInfo *
+sso_auth_service_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton)
+{
+ return sso_auth_service_interface_info ();
+}
+
+static GDBusInterfaceVTable *
+sso_auth_service_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton)
+{
+ return (GDBusInterfaceVTable *) &_sso_auth_service_skeleton_vtable;
+}
+
+static GVariant *
+sso_auth_service_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton)
+{
+ SsoAuthServiceSkeleton *skeleton = SSO_AUTH_SERVICE_SKELETON (_skeleton);
+
+ GVariantBuilder builder;
+ guint n;
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
+ if (_sso_auth_service_interface_info.parent_struct.properties == NULL)
+ goto out;
+ for (n = 0; _sso_auth_service_interface_info.parent_struct.properties[n] != NULL; n++)
+ {
+ GDBusPropertyInfo *info = _sso_auth_service_interface_info.parent_struct.properties[n];
+ if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE)
+ {
+ GVariant *value;
+ value = _sso_auth_service_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.google.code.AccountsSSO.gSingleSignOn.AuthService", info->name, NULL, skeleton);
+ if (value != NULL)
+ {
+ g_variant_take_ref (value);
+ g_variant_builder_add (&builder, "{sv}", info->name, value);
+ g_variant_unref (value);
+ }
+ }
+ }
+out:
+ return g_variant_builder_end (&builder);
+}
+
+static void
+sso_auth_service_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton)
+{
+}
+
+static void sso_auth_service_skeleton_iface_init (SsoAuthServiceIface *iface);
+G_DEFINE_TYPE_WITH_CODE (SsoAuthServiceSkeleton, sso_auth_service_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
+ G_IMPLEMENT_INTERFACE (TYPE_SSO_AUTH_SERVICE, sso_auth_service_skeleton_iface_init));
+
+static void
+sso_auth_service_skeleton_finalize (GObject *object)
+{
+ SsoAuthServiceSkeleton *skeleton = SSO_AUTH_SERVICE_SKELETON (object);
+ g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
+ if (skeleton->priv->changed_properties_idle_source != NULL)
+ g_source_destroy (skeleton->priv->changed_properties_idle_source);
+ g_main_context_unref (skeleton->priv->context);
+ g_mutex_clear (&skeleton->priv->lock);
+ G_OBJECT_CLASS (sso_auth_service_skeleton_parent_class)->finalize (object);
+}
+
+static void
+sso_auth_service_skeleton_init (SsoAuthServiceSkeleton *skeleton)
+{
+ skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_SSO_AUTH_SERVICE_SKELETON, SsoAuthServiceSkeletonPrivate);
+ g_mutex_init (&skeleton->priv->lock);
+ skeleton->priv->context = g_main_context_ref_thread_default ();
+}
+
+static void
+sso_auth_service_skeleton_class_init (SsoAuthServiceSkeletonClass *klass)
+{
+ GObjectClass *gobject_class;
+ GDBusInterfaceSkeletonClass *skeleton_class;
+
+ g_type_class_add_private (klass, sizeof (SsoAuthServiceSkeletonPrivate));
+
+ gobject_class = G_OBJECT_CLASS (klass);
+ gobject_class->finalize = sso_auth_service_skeleton_finalize;
+
+ skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass);
+ skeleton_class->get_info = sso_auth_service_skeleton_dbus_interface_get_info;
+ skeleton_class->get_properties = sso_auth_service_skeleton_dbus_interface_get_properties;
+ skeleton_class->flush = sso_auth_service_skeleton_dbus_interface_flush;
+ skeleton_class->get_vtable = sso_auth_service_skeleton_dbus_interface_get_vtable;
+}
+
+static void
+sso_auth_service_skeleton_iface_init (SsoAuthServiceIface *iface)
+{
+}
+
+/**
+ * sso_auth_service_skeleton_new:
+ *
+ * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthService.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthService</link>.
+ *
+ * Returns: (transfer full) (type SsoAuthServiceSkeleton): The skeleton object.
+ */
+SsoAuthService *
+sso_auth_service_skeleton_new (void)
+{
+ return SSO_AUTH_SERVICE (g_object_new (TYPE_SSO_AUTH_SERVICE_SKELETON, NULL));
+}
+
--- /dev/null
+/*
+ * Generated by gdbus-codegen 2.32.4. DO NOT EDIT.
+ *
+ * The license of this code is the same as for the source it was derived from.
+ */
+
+#ifndef __SSO_AUTH_SERVICE_GEN_H__
+#define __SSO_AUTH_SERVICE_GEN_H__
+
+#include <gio/gio.h>
+
+G_BEGIN_DECLS
+
+
+/* ------------------------------------------------------------------------ */
+/* Declarations for com.google.code.AccountsSSO.gSingleSignOn.AuthService */
+
+#define TYPE_SSO_AUTH_SERVICE (sso_auth_service_get_type ())
+#define SSO_AUTH_SERVICE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_AUTH_SERVICE, SsoAuthService))
+#define IS_SSO_AUTH_SERVICE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_AUTH_SERVICE))
+#define SSO_AUTH_SERVICE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_SSO_AUTH_SERVICE, SsoAuthServiceIface))
+
+struct _SsoAuthService;
+typedef struct _SsoAuthService SsoAuthService;
+typedef struct _SsoAuthServiceIface SsoAuthServiceIface;
+
+struct _SsoAuthServiceIface
+{
+ GTypeInterface parent_iface;
+
+ gboolean (*handle_backup_finished) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_backup_starts) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_clear) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_get_identity) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guint arg_id,
+ const gchar *arg_applicationContext);
+
+ gboolean (*handle_query_identities) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *arg_filter,
+ const gchar *arg_applicationContext);
+
+ gboolean (*handle_query_mechanisms) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *arg_method);
+
+ gboolean (*handle_query_methods) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_register_new_identity) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *arg_applicationContext);
+
+ gboolean (*handle_restore_finished) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_restore_starts) (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation);
+
+};
+
+GType sso_auth_service_get_type (void) G_GNUC_CONST;
+
+GDBusInterfaceInfo *sso_auth_service_interface_info (void);
+guint sso_auth_service_override_properties (GObjectClass *klass, guint property_id_begin);
+
+
+/* D-Bus method call completion functions: */
+void sso_auth_service_complete_register_new_identity (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *objectPath);
+
+void sso_auth_service_complete_get_identity (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *objectPath,
+ GVariant *identityData);
+
+void sso_auth_service_complete_query_methods (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *const *authMethods);
+
+void sso_auth_service_complete_query_mechanisms (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *const *mechanisms);
+
+void sso_auth_service_complete_query_identities (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *identities);
+
+void sso_auth_service_complete_clear (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ gboolean unnamed_arg0);
+
+void sso_auth_service_complete_backup_starts (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guchar unnamed_arg0);
+
+void sso_auth_service_complete_backup_finished (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guchar unnamed_arg0);
+
+void sso_auth_service_complete_restore_starts (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guchar unnamed_arg0);
+
+void sso_auth_service_complete_restore_finished (
+ SsoAuthService *object,
+ GDBusMethodInvocation *invocation,
+ guchar unnamed_arg0);
+
+
+
+/* D-Bus method calls: */
+void sso_auth_service_call_register_new_identity (
+ SsoAuthService *proxy,
+ const gchar *arg_applicationContext,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_register_new_identity_finish (
+ SsoAuthService *proxy,
+ gchar **out_objectPath,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_register_new_identity_sync (
+ SsoAuthService *proxy,
+ const gchar *arg_applicationContext,
+ gchar **out_objectPath,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_get_identity (
+ SsoAuthService *proxy,
+ guint arg_id,
+ const gchar *arg_applicationContext,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_get_identity_finish (
+ SsoAuthService *proxy,
+ gchar **out_objectPath,
+ GVariant **out_identityData,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_get_identity_sync (
+ SsoAuthService *proxy,
+ guint arg_id,
+ const gchar *arg_applicationContext,
+ gchar **out_objectPath,
+ GVariant **out_identityData,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_query_methods (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_query_methods_finish (
+ SsoAuthService *proxy,
+ gchar ***out_authMethods,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_query_methods_sync (
+ SsoAuthService *proxy,
+ gchar ***out_authMethods,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_query_mechanisms (
+ SsoAuthService *proxy,
+ const gchar *arg_method,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_query_mechanisms_finish (
+ SsoAuthService *proxy,
+ gchar ***out_mechanisms,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_query_mechanisms_sync (
+ SsoAuthService *proxy,
+ const gchar *arg_method,
+ gchar ***out_mechanisms,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_query_identities (
+ SsoAuthService *proxy,
+ GVariant *arg_filter,
+ const gchar *arg_applicationContext,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_query_identities_finish (
+ SsoAuthService *proxy,
+ GVariant **out_identities,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_query_identities_sync (
+ SsoAuthService *proxy,
+ GVariant *arg_filter,
+ const gchar *arg_applicationContext,
+ GVariant **out_identities,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_clear (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_clear_finish (
+ SsoAuthService *proxy,
+ gboolean *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_clear_sync (
+ SsoAuthService *proxy,
+ gboolean *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_backup_starts (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_backup_starts_finish (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_backup_starts_sync (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_backup_finished (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_backup_finished_finish (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_backup_finished_sync (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_restore_starts (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_restore_starts_finish (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_restore_starts_sync (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_call_restore_finished (
+ SsoAuthService *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_service_call_restore_finished_finish (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_service_call_restore_finished_sync (
+ SsoAuthService *proxy,
+ guchar *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error);
+
+
+
+/* ---- */
+
+#define TYPE_SSO_AUTH_SERVICE_PROXY (sso_auth_service_proxy_get_type ())
+#define SSO_AUTH_SERVICE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_AUTH_SERVICE_PROXY, SsoAuthServiceProxy))
+#define SSO_AUTH_SERVICE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_SSO_AUTH_SERVICE_PROXY, SsoAuthServiceProxyClass))
+#define SSO_AUTH_SERVICE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_SSO_AUTH_SERVICE_PROXY, SsoAuthServiceProxyClass))
+#define IS_SSO_AUTH_SERVICE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_AUTH_SERVICE_PROXY))
+#define IS_SSO_AUTH_SERVICE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_SSO_AUTH_SERVICE_PROXY))
+
+typedef struct _SsoAuthServiceProxy SsoAuthServiceProxy;
+typedef struct _SsoAuthServiceProxyClass SsoAuthServiceProxyClass;
+typedef struct _SsoAuthServiceProxyPrivate SsoAuthServiceProxyPrivate;
+
+struct _SsoAuthServiceProxy
+{
+ /*< private >*/
+ GDBusProxy parent_instance;
+ SsoAuthServiceProxyPrivate *priv;
+};
+
+struct _SsoAuthServiceProxyClass
+{
+ GDBusProxyClass parent_class;
+};
+
+GType sso_auth_service_proxy_get_type (void) G_GNUC_CONST;
+
+void sso_auth_service_proxy_new (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+SsoAuthService *sso_auth_service_proxy_new_finish (
+ GAsyncResult *res,
+ GError **error);
+SsoAuthService *sso_auth_service_proxy_new_sync (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_service_proxy_new_for_bus (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+SsoAuthService *sso_auth_service_proxy_new_for_bus_finish (
+ GAsyncResult *res,
+ GError **error);
+SsoAuthService *sso_auth_service_proxy_new_for_bus_sync (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+
+/* ---- */
+
+#define TYPE_SSO_AUTH_SERVICE_SKELETON (sso_auth_service_skeleton_get_type ())
+#define SSO_AUTH_SERVICE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_AUTH_SERVICE_SKELETON, SsoAuthServiceSkeleton))
+#define SSO_AUTH_SERVICE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_SSO_AUTH_SERVICE_SKELETON, SsoAuthServiceSkeletonClass))
+#define SSO_AUTH_SERVICE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_SSO_AUTH_SERVICE_SKELETON, SsoAuthServiceSkeletonClass))
+#define IS_SSO_AUTH_SERVICE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_AUTH_SERVICE_SKELETON))
+#define IS_SSO_AUTH_SERVICE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_SSO_AUTH_SERVICE_SKELETON))
+
+typedef struct _SsoAuthServiceSkeleton SsoAuthServiceSkeleton;
+typedef struct _SsoAuthServiceSkeletonClass SsoAuthServiceSkeletonClass;
+typedef struct _SsoAuthServiceSkeletonPrivate SsoAuthServiceSkeletonPrivate;
+
+struct _SsoAuthServiceSkeleton
+{
+ /*< private >*/
+ GDBusInterfaceSkeleton parent_instance;
+ SsoAuthServiceSkeletonPrivate *priv;
+};
+
+struct _SsoAuthServiceSkeletonClass
+{
+ GDBusInterfaceSkeletonClass parent_class;
+};
+
+GType sso_auth_service_skeleton_get_type (void) G_GNUC_CONST;
+
+SsoAuthService *sso_auth_service_skeleton_new (void);
+
+
+G_END_DECLS
+
+#endif /* __SSO_AUTH_SERVICE_GEN_H__ */
--- /dev/null
+/*
+ * Generated by gdbus-codegen 2.32.4. DO NOT EDIT.
+ *
+ * The license of this code is the same as for the source it was derived from.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include "sso-auth-session-gen.h"
+
+#include <string.h>
+#ifdef G_OS_UNIX
+# include <gio/gunixfdlist.h>
+#endif
+
+typedef struct
+{
+ GDBusArgInfo parent_struct;
+ gboolean use_gvariant;
+} _ExtendedGDBusArgInfo;
+
+typedef struct
+{
+ GDBusMethodInfo parent_struct;
+ const gchar *signal_name;
+ gboolean pass_fdlist;
+} _ExtendedGDBusMethodInfo;
+
+typedef struct
+{
+ GDBusSignalInfo parent_struct;
+ const gchar *signal_name;
+} _ExtendedGDBusSignalInfo;
+
+typedef struct
+{
+ GDBusPropertyInfo parent_struct;
+ const gchar *hyphen_name;
+ gboolean use_gvariant;
+} _ExtendedGDBusPropertyInfo;
+
+typedef struct
+{
+ GDBusInterfaceInfo parent_struct;
+ const gchar *hyphen_name;
+} _ExtendedGDBusInterfaceInfo;
+
+typedef struct
+{
+ const _ExtendedGDBusPropertyInfo *info;
+ guint prop_id;
+ GValue orig_value; /* the value before the change */
+} ChangedProperty;
+
+static void
+_changed_property_free (ChangedProperty *data)
+{
+ g_value_unset (&data->orig_value);
+ g_free (data);
+}
+
+static gboolean
+_g_strv_equal0 (gchar **a, gchar **b)
+{
+ gboolean ret = FALSE;
+ guint n;
+ if (a == NULL && b == NULL)
+ {
+ ret = TRUE;
+ goto out;
+ }
+ if (a == NULL || b == NULL)
+ goto out;
+ if (g_strv_length (a) != g_strv_length (b))
+ goto out;
+ for (n = 0; a[n] != NULL; n++)
+ if (g_strcmp0 (a[n], b[n]) != 0)
+ goto out;
+ ret = TRUE;
+out:
+ return ret;
+}
+
+static gboolean
+_g_variant_equal0 (GVariant *a, GVariant *b)
+{
+ gboolean ret = FALSE;
+ if (a == NULL && b == NULL)
+ {
+ ret = TRUE;
+ goto out;
+ }
+ if (a == NULL || b == NULL)
+ goto out;
+ ret = g_variant_equal (a, b);
+out:
+ return ret;
+}
+
+G_GNUC_UNUSED static gboolean
+_g_value_equal (const GValue *a, const GValue *b)
+{
+ gboolean ret = FALSE;
+ g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b));
+ switch (G_VALUE_TYPE (a))
+ {
+ case G_TYPE_BOOLEAN:
+ ret = (g_value_get_boolean (a) == g_value_get_boolean (b));
+ break;
+ case G_TYPE_UCHAR:
+ ret = (g_value_get_uchar (a) == g_value_get_uchar (b));
+ break;
+ case G_TYPE_INT:
+ ret = (g_value_get_int (a) == g_value_get_int (b));
+ break;
+ case G_TYPE_UINT:
+ ret = (g_value_get_uint (a) == g_value_get_uint (b));
+ break;
+ case G_TYPE_INT64:
+ ret = (g_value_get_int64 (a) == g_value_get_int64 (b));
+ break;
+ case G_TYPE_UINT64:
+ ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b));
+ break;
+ case G_TYPE_DOUBLE:
+ {
+ /* Avoid -Wfloat-equal warnings by doing a direct bit compare */
+ gdouble da = g_value_get_double (a);
+ gdouble db = g_value_get_double (b);
+ ret = memcmp (&da, &db, sizeof (gdouble)) == 0;
+ }
+ break;
+ case G_TYPE_STRING:
+ ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0);
+ break;
+ case G_TYPE_VARIANT:
+ ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b));
+ break;
+ default:
+ if (G_VALUE_TYPE (a) == G_TYPE_STRV)
+ ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b));
+ else
+ g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a)));
+ break;
+ }
+ return ret;
+}
+
+/* ------------------------------------------------------------------------
+ * Code for interface com.google.code.AccountsSSO.gSingleSignOn.AuthSession
+ * ------------------------------------------------------------------------
+ */
+
+/**
+ * SECTION:SsoAuthSession
+ * @title: SsoAuthSession
+ * @short_description: Generated C code for the com.google.code.AccountsSSO.gSingleSignOn.AuthSession D-Bus interface
+ *
+ * This section contains code for working with the <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthSession</link> D-Bus interface in C.
+ */
+
+/* ---- Introspection data for com.google.code.AccountsSSO.gSingleSignOn.AuthSession ---- */
+
+static const _ExtendedGDBusArgInfo _sso_auth_session_method_info_query_available_mechanisms_IN_ARG_wantedMechanisms =
+{
+ {
+ -1,
+ "wantedMechanisms",
+ "as",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_session_method_info_query_available_mechanisms_IN_ARG_pointers[] =
+{
+ &_sso_auth_session_method_info_query_available_mechanisms_IN_ARG_wantedMechanisms,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_session_method_info_query_available_mechanisms_OUT_ARG_unnamed_arg1 =
+{
+ {
+ -1,
+ "unnamed_arg1",
+ "as",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_session_method_info_query_available_mechanisms_OUT_ARG_pointers[] =
+{
+ &_sso_auth_session_method_info_query_available_mechanisms_OUT_ARG_unnamed_arg1,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_session_method_info_query_available_mechanisms =
+{
+ {
+ -1,
+ "queryAvailableMechanisms",
+ (GDBusArgInfo **) &_sso_auth_session_method_info_query_available_mechanisms_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_auth_session_method_info_query_available_mechanisms_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-query-available-mechanisms",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_session_method_info_process_IN_ARG_sessionDataVa =
+{
+ {
+ -1,
+ "sessionDataVa",
+ "a{sv}",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_session_method_info_process_IN_ARG_mechanism =
+{
+ {
+ -1,
+ "mechanism",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_session_method_info_process_IN_ARG_pointers[] =
+{
+ &_sso_auth_session_method_info_process_IN_ARG_sessionDataVa,
+ &_sso_auth_session_method_info_process_IN_ARG_mechanism,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_session_method_info_process_OUT_ARG_unnamed_arg2 =
+{
+ {
+ -1,
+ "unnamed_arg2",
+ "a{sv}",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_session_method_info_process_OUT_ARG_pointers[] =
+{
+ &_sso_auth_session_method_info_process_OUT_ARG_unnamed_arg2,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_session_method_info_process =
+{
+ {
+ -1,
+ "process",
+ (GDBusArgInfo **) &_sso_auth_session_method_info_process_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_auth_session_method_info_process_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-process",
+ FALSE
+};
+
+static const GDBusAnnotationInfo _sso_auth_session_method_cancel_annotation_info_0 =
+{
+ -1,
+ "org.freedesktop.DBus.Method.NoReply",
+ "true",
+ NULL
+};
+
+static const GDBusAnnotationInfo * const _sso_auth_session_method_cancel_annotation_info_pointers[] =
+{
+ &_sso_auth_session_method_cancel_annotation_info_0,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_auth_session_method_info_cancel =
+{
+ {
+ -1,
+ "cancel",
+ NULL,
+ NULL,
+ (GDBusAnnotationInfo **) &_sso_auth_session_method_cancel_annotation_info_pointers
+ },
+ "handle-cancel",
+ FALSE
+};
+
+static const _ExtendedGDBusMethodInfo * const _sso_auth_session_method_info_pointers[] =
+{
+ &_sso_auth_session_method_info_query_available_mechanisms,
+ &_sso_auth_session_method_info_process,
+ &_sso_auth_session_method_info_cancel,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_session_signal_info_state_changed_ARG_state =
+{
+ {
+ -1,
+ "state",
+ "i",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_auth_session_signal_info_state_changed_ARG_message =
+{
+ {
+ -1,
+ "message",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_auth_session_signal_info_state_changed_ARG_pointers[] =
+{
+ &_sso_auth_session_signal_info_state_changed_ARG_state,
+ &_sso_auth_session_signal_info_state_changed_ARG_message,
+ NULL
+};
+
+static const _ExtendedGDBusSignalInfo _sso_auth_session_signal_info_state_changed =
+{
+ {
+ -1,
+ "stateChanged",
+ (GDBusArgInfo **) &_sso_auth_session_signal_info_state_changed_ARG_pointers,
+ NULL
+ },
+ "state-changed"
+};
+
+static const _ExtendedGDBusSignalInfo _sso_auth_session_signal_info_unregistered =
+{
+ {
+ -1,
+ "unregistered",
+ NULL,
+ NULL
+ },
+ "unregistered"
+};
+
+static const _ExtendedGDBusSignalInfo * const _sso_auth_session_signal_info_pointers[] =
+{
+ &_sso_auth_session_signal_info_state_changed,
+ &_sso_auth_session_signal_info_unregistered,
+ NULL
+};
+
+static const _ExtendedGDBusInterfaceInfo _sso_auth_session_interface_info =
+{
+ {
+ -1,
+ "com.google.code.AccountsSSO.gSingleSignOn.AuthSession",
+ (GDBusMethodInfo **) &_sso_auth_session_method_info_pointers,
+ (GDBusSignalInfo **) &_sso_auth_session_signal_info_pointers,
+ NULL,
+ NULL
+ },
+ "sso-auth-session",
+};
+
+
+/**
+ * sso_auth_session_interface_info:
+ *
+ * Gets a machine-readable description of the <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthSession</link> D-Bus interface.
+ *
+ * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free.
+ */
+GDBusInterfaceInfo *
+sso_auth_session_interface_info (void)
+{
+ return (GDBusInterfaceInfo *) &_sso_auth_session_interface_info;
+}
+
+/**
+ * sso_auth_session_override_properties:
+ * @klass: The class structure for a #GObject<!-- -->-derived class.
+ * @property_id_begin: The property id to assign to the first overridden property.
+ *
+ * Overrides all #GObject properties in the #SsoAuthSession interface for a concrete class.
+ * The properties are overridden in the order they are defined.
+ *
+ * Returns: The last property id.
+ */
+guint
+sso_auth_session_override_properties (GObjectClass *klass, guint property_id_begin)
+{
+ return property_id_begin - 1;
+}
+
+
+
+/**
+ * SsoAuthSession:
+ *
+ * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthSession</link>.
+ */
+
+/**
+ * SsoAuthSessionIface:
+ * @parent_iface: The parent interface.
+ * @handle_cancel: Handler for the #SsoAuthSession::handle-cancel signal.
+ * @handle_process: Handler for the #SsoAuthSession::handle-process signal.
+ * @handle_query_available_mechanisms: Handler for the #SsoAuthSession::handle-query-available-mechanisms signal.
+ * @state_changed: Handler for the #SsoAuthSession::state-changed signal.
+ * @unregistered: Handler for the #SsoAuthSession::unregistered signal.
+ *
+ * Virtual table for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthSession</link>.
+ */
+
+static void
+sso_auth_session_default_init (SsoAuthSessionIface *iface)
+{
+ /* GObject signals for incoming D-Bus method calls: */
+ /**
+ * SsoAuthSession::handle-query-available-mechanisms:
+ * @object: A #SsoAuthSession.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_wantedMechanisms: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.queryAvailableMechanisms">queryAvailableMechanisms()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_session_complete_query_available_mechanisms() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-query-available-mechanisms",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthSessionIface, handle_query_available_mechanisms),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRV);
+
+ /**
+ * SsoAuthSession::handle-process:
+ * @object: A #SsoAuthSession.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_sessionDataVa: Argument passed by remote caller.
+ * @arg_mechanism: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.process">process()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_session_complete_process() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-process",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthSessionIface, handle_process),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 3,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_VARIANT, G_TYPE_STRING);
+
+ /**
+ * SsoAuthSession::handle-cancel:
+ * @object: A #SsoAuthSession.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.cancel">cancel()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_auth_session_complete_cancel() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-cancel",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthSessionIface, handle_cancel),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /* GObject signals for received D-Bus signals: */
+ /**
+ * SsoAuthSession::state-changed:
+ * @object: A #SsoAuthSession.
+ * @arg_state: Argument.
+ * @arg_message: Argument.
+ *
+ * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.stateChanged">"stateChanged"</link> is received.
+ *
+ * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal.
+ */
+ g_signal_new ("state-changed",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthSessionIface, state_changed),
+ NULL,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_NONE,
+ 2, G_TYPE_INT, G_TYPE_STRING);
+
+ /**
+ * SsoAuthSession::unregistered:
+ * @object: A #SsoAuthSession.
+ *
+ * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.unregistered">"unregistered"</link> is received.
+ *
+ * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal.
+ */
+ g_signal_new ("unregistered",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoAuthSessionIface, unregistered),
+ NULL,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_NONE,
+ 0);
+
+}
+
+typedef SsoAuthSessionIface SsoAuthSessionInterface;
+G_DEFINE_INTERFACE (SsoAuthSession, sso_auth_session, G_TYPE_OBJECT);
+
+/**
+ * sso_auth_session_emit_state_changed:
+ * @object: A #SsoAuthSession.
+ * @arg_state: Argument to pass with the signal.
+ * @arg_message: Argument to pass with the signal.
+ *
+ * Emits the <link linkend="gdbus-signal-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.stateChanged">"stateChanged"</link> D-Bus signal.
+ */
+void
+sso_auth_session_emit_state_changed (
+ SsoAuthSession *object,
+ gint arg_state,
+ const gchar *arg_message)
+{
+ g_signal_emit_by_name (object, "state-changed", arg_state, arg_message);
+}
+
+/**
+ * sso_auth_session_emit_unregistered:
+ * @object: A #SsoAuthSession.
+ *
+ * Emits the <link linkend="gdbus-signal-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.unregistered">"unregistered"</link> D-Bus signal.
+ */
+void
+sso_auth_session_emit_unregistered (
+ SsoAuthSession *object)
+{
+ g_signal_emit_by_name (object, "unregistered");
+}
+
+/**
+ * sso_auth_session_call_query_available_mechanisms:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @arg_wantedMechanisms: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.queryAvailableMechanisms">queryAvailableMechanisms()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_session_call_query_available_mechanisms_finish() to get the result of the operation.
+ *
+ * See sso_auth_session_call_query_available_mechanisms_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_session_call_query_available_mechanisms (
+ SsoAuthSession *proxy,
+ const gchar *const *arg_wantedMechanisms,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "queryAvailableMechanisms",
+ g_variant_new ("(^as)",
+ arg_wantedMechanisms),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_session_call_query_available_mechanisms_finish:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_session_call_query_available_mechanisms().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_session_call_query_available_mechanisms().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_session_call_query_available_mechanisms_finish (
+ SsoAuthSession *proxy,
+ gchar ***out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(^as)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_session_call_query_available_mechanisms_sync:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @arg_wantedMechanisms: Argument to pass with the method invocation.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.queryAvailableMechanisms">queryAvailableMechanisms()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_session_call_query_available_mechanisms() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_session_call_query_available_mechanisms_sync (
+ SsoAuthSession *proxy,
+ const gchar *const *arg_wantedMechanisms,
+ gchar ***out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "queryAvailableMechanisms",
+ g_variant_new ("(^as)",
+ arg_wantedMechanisms),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(^as)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_session_call_process:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @arg_sessionDataVa: Argument to pass with the method invocation.
+ * @arg_mechanism: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.process">process()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_session_call_process_finish() to get the result of the operation.
+ *
+ * See sso_auth_session_call_process_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_session_call_process (
+ SsoAuthSession *proxy,
+ GVariant *arg_sessionDataVa,
+ const gchar *arg_mechanism,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "process",
+ g_variant_new ("(@a{sv}s)",
+ arg_sessionDataVa,
+ arg_mechanism),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_session_call_process_finish:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @out_unnamed_arg2: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_session_call_process().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_session_call_process().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_session_call_process_finish (
+ SsoAuthSession *proxy,
+ GVariant **out_unnamed_arg2,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(@a{sv})",
+ out_unnamed_arg2);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_session_call_process_sync:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @arg_sessionDataVa: Argument to pass with the method invocation.
+ * @arg_mechanism: Argument to pass with the method invocation.
+ * @out_unnamed_arg2: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.process">process()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_session_call_process() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_session_call_process_sync (
+ SsoAuthSession *proxy,
+ GVariant *arg_sessionDataVa,
+ const gchar *arg_mechanism,
+ GVariant **out_unnamed_arg2,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "process",
+ g_variant_new ("(@a{sv}s)",
+ arg_sessionDataVa,
+ arg_mechanism),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(@a{sv})",
+ out_unnamed_arg2);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_session_call_cancel:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.cancel">cancel()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_session_call_cancel_finish() to get the result of the operation.
+ *
+ * See sso_auth_session_call_cancel_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_auth_session_call_cancel (
+ SsoAuthSession *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "cancel",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_auth_session_call_cancel_finish:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_session_call_cancel().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_auth_session_call_cancel().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_session_call_cancel_finish (
+ SsoAuthSession *proxy,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "()");
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_session_call_cancel_sync:
+ * @proxy: A #SsoAuthSessionProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.cancel">cancel()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_session_call_cancel() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_auth_session_call_cancel_sync (
+ SsoAuthSession *proxy,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "cancel",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "()");
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_auth_session_complete_query_available_mechanisms:
+ * @object: A #SsoAuthSession.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg1: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.queryAvailableMechanisms">queryAvailableMechanisms()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_session_complete_query_available_mechanisms (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *const *unnamed_arg1)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(^as)",
+ unnamed_arg1));
+}
+
+/**
+ * sso_auth_session_complete_process:
+ * @object: A #SsoAuthSession.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg2: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.process">process()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_session_complete_process (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *unnamed_arg2)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(@a{sv})",
+ unnamed_arg2));
+}
+
+/**
+ * sso_auth_session_complete_cancel:
+ * @object: A #SsoAuthSession.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.cancel">cancel()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_auth_session_complete_cancel (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("()"));
+}
+
+/* ------------------------------------------------------------------------ */
+
+/**
+ * SsoAuthSessionProxy:
+ *
+ * The #SsoAuthSessionProxy structure contains only private data and should only be accessed using the provided API.
+ */
+
+/**
+ * SsoAuthSessionProxyClass:
+ * @parent_class: The parent class.
+ *
+ * Class structure for #SsoAuthSessionProxy.
+ */
+
+struct _SsoAuthSessionProxyPrivate
+{
+ GData *qdata;
+};
+
+static void sso_auth_session_proxy_iface_init (SsoAuthSessionIface *iface);
+
+G_DEFINE_TYPE_WITH_CODE (SsoAuthSessionProxy, sso_auth_session_proxy, G_TYPE_DBUS_PROXY,
+ G_IMPLEMENT_INTERFACE (TYPE_SSO_AUTH_SESSION, sso_auth_session_proxy_iface_init));
+
+static void
+sso_auth_session_proxy_finalize (GObject *object)
+{
+ SsoAuthSessionProxy *proxy = SSO_AUTH_SESSION_PROXY (object);
+ g_datalist_clear (&proxy->priv->qdata);
+ G_OBJECT_CLASS (sso_auth_session_proxy_parent_class)->finalize (object);
+}
+
+static void
+sso_auth_session_proxy_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+}
+
+static void
+sso_auth_session_proxy_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+}
+
+static void
+sso_auth_session_proxy_g_signal (GDBusProxy *proxy,
+ const gchar *sender_name,
+ const gchar *signal_name,
+ GVariant *parameters)
+{
+ _ExtendedGDBusSignalInfo *info;
+ GVariantIter iter;
+ GVariant *child;
+ GValue *paramv;
+ guint num_params;
+ guint n;
+ guint signal_id;
+ info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_sso_auth_session_interface_info, signal_name);
+ if (info == NULL)
+ return;
+ num_params = g_variant_n_children (parameters);
+ paramv = g_new0 (GValue, num_params + 1);
+ g_value_init (¶mv[0], TYPE_SSO_AUTH_SESSION);
+ g_value_set_object (¶mv[0], proxy);
+ g_variant_iter_init (&iter, parameters);
+ n = 1;
+ while ((child = g_variant_iter_next_value (&iter)) != NULL)
+ {
+ _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1];
+ if (arg_info->use_gvariant)
+ {
+ g_value_init (¶mv[n], G_TYPE_VARIANT);
+ g_value_set_variant (¶mv[n], child);
+ n++;
+ }
+ else
+ g_dbus_gvariant_to_gvalue (child, ¶mv[n++]);
+ g_variant_unref (child);
+ }
+ signal_id = g_signal_lookup (info->signal_name, TYPE_SSO_AUTH_SESSION);
+ g_signal_emitv (paramv, signal_id, 0, NULL);
+ for (n = 0; n < num_params + 1; n++)
+ g_value_unset (¶mv[n]);
+ g_free (paramv);
+}
+
+static void
+sso_auth_session_proxy_g_properties_changed (GDBusProxy *_proxy,
+ GVariant *changed_properties,
+ const gchar *const *invalidated_properties)
+{
+ SsoAuthSessionProxy *proxy = SSO_AUTH_SESSION_PROXY (_proxy);
+ guint n;
+ const gchar *key;
+ GVariantIter *iter;
+ _ExtendedGDBusPropertyInfo *info;
+ g_variant_get (changed_properties, "a{sv}", &iter);
+ while (g_variant_iter_next (iter, "{&sv}", &key, NULL))
+ {
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_auth_session_interface_info, key);
+ g_datalist_remove_data (&proxy->priv->qdata, key);
+ if (info != NULL)
+ g_object_notify (G_OBJECT (proxy), info->hyphen_name);
+ }
+ g_variant_iter_free (iter);
+ for (n = 0; invalidated_properties[n] != NULL; n++)
+ {
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_auth_session_interface_info, invalidated_properties[n]);
+ g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]);
+ if (info != NULL)
+ g_object_notify (G_OBJECT (proxy), info->hyphen_name);
+ }
+}
+
+static void
+sso_auth_session_proxy_init (SsoAuthSessionProxy *proxy)
+{
+ proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_SSO_AUTH_SESSION_PROXY, SsoAuthSessionProxyPrivate);
+ g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), sso_auth_session_interface_info ());
+}
+
+static void
+sso_auth_session_proxy_class_init (SsoAuthSessionProxyClass *klass)
+{
+ GObjectClass *gobject_class;
+ GDBusProxyClass *proxy_class;
+
+ g_type_class_add_private (klass, sizeof (SsoAuthSessionProxyPrivate));
+
+ gobject_class = G_OBJECT_CLASS (klass);
+ gobject_class->finalize = sso_auth_session_proxy_finalize;
+ gobject_class->get_property = sso_auth_session_proxy_get_property;
+ gobject_class->set_property = sso_auth_session_proxy_set_property;
+
+ proxy_class = G_DBUS_PROXY_CLASS (klass);
+ proxy_class->g_signal = sso_auth_session_proxy_g_signal;
+ proxy_class->g_properties_changed = sso_auth_session_proxy_g_properties_changed;
+
+}
+
+static void
+sso_auth_session_proxy_iface_init (SsoAuthSessionIface *iface)
+{
+}
+
+/**
+ * sso_auth_session_proxy_new:
+ * @connection: A #GDBusConnection.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthSession</link>. See g_dbus_proxy_new() for more details.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_session_proxy_new_finish() to get the result of the operation.
+ *
+ * See sso_auth_session_proxy_new_sync() for the synchronous, blocking version of this constructor.
+ */
+void
+sso_auth_session_proxy_new (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_async_initable_new_async (TYPE_SSO_AUTH_SESSION_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.AuthSession", NULL);
+}
+
+/**
+ * sso_auth_session_proxy_new_finish:
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_session_proxy_new().
+ * @error: Return location for error or %NULL
+ *
+ * Finishes an operation started with sso_auth_session_proxy_new().
+ *
+ * Returns: (transfer full) (type SsoAuthSessionProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoAuthSession *
+sso_auth_session_proxy_new_finish (
+ GAsyncResult *res,
+ GError **error)
+{
+ GObject *ret;
+ GObject *source_object;
+ source_object = g_async_result_get_source_object (res);
+ ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
+ g_object_unref (source_object);
+ if (ret != NULL)
+ return SSO_AUTH_SESSION (ret);
+ else
+ return NULL;
+}
+
+/**
+ * sso_auth_session_proxy_new_sync:
+ * @connection: A #GDBusConnection.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL
+ *
+ * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthSession</link>. See g_dbus_proxy_new_sync() for more details.
+ *
+ * The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_session_proxy_new() for the asynchronous version of this constructor.
+ *
+ * Returns: (transfer full) (type SsoAuthSessionProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoAuthSession *
+sso_auth_session_proxy_new_sync (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GInitable *ret;
+ ret = g_initable_new (TYPE_SSO_AUTH_SESSION_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.AuthSession", NULL);
+ if (ret != NULL)
+ return SSO_AUTH_SESSION (ret);
+ else
+ return NULL;
+}
+
+
+/**
+ * sso_auth_session_proxy_new_for_bus:
+ * @bus_type: A #GBusType.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: A bus name (well-known or unique).
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
+ * @user_data: User data to pass to @callback.
+ *
+ * Like sso_auth_session_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_auth_session_proxy_new_for_bus_finish() to get the result of the operation.
+ *
+ * See sso_auth_session_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.
+ */
+void
+sso_auth_session_proxy_new_for_bus (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_async_initable_new_async (TYPE_SSO_AUTH_SESSION_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.AuthSession", NULL);
+}
+
+/**
+ * sso_auth_session_proxy_new_for_bus_finish:
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_auth_session_proxy_new_for_bus().
+ * @error: Return location for error or %NULL
+ *
+ * Finishes an operation started with sso_auth_session_proxy_new_for_bus().
+ *
+ * Returns: (transfer full) (type SsoAuthSessionProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoAuthSession *
+sso_auth_session_proxy_new_for_bus_finish (
+ GAsyncResult *res,
+ GError **error)
+{
+ GObject *ret;
+ GObject *source_object;
+ source_object = g_async_result_get_source_object (res);
+ ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
+ g_object_unref (source_object);
+ if (ret != NULL)
+ return SSO_AUTH_SESSION (ret);
+ else
+ return NULL;
+}
+
+/**
+ * sso_auth_session_proxy_new_for_bus_sync:
+ * @bus_type: A #GBusType.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: A bus name (well-known or unique).
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL
+ *
+ * Like sso_auth_session_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
+ *
+ * The calling thread is blocked until a reply is received.
+ *
+ * See sso_auth_session_proxy_new_for_bus() for the asynchronous version of this constructor.
+ *
+ * Returns: (transfer full) (type SsoAuthSessionProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoAuthSession *
+sso_auth_session_proxy_new_for_bus_sync (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GInitable *ret;
+ ret = g_initable_new (TYPE_SSO_AUTH_SESSION_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.AuthSession", NULL);
+ if (ret != NULL)
+ return SSO_AUTH_SESSION (ret);
+ else
+ return NULL;
+}
+
+
+/* ------------------------------------------------------------------------ */
+
+/**
+ * SsoAuthSessionSkeleton:
+ *
+ * The #SsoAuthSessionSkeleton structure contains only private data and should only be accessed using the provided API.
+ */
+
+/**
+ * SsoAuthSessionSkeletonClass:
+ * @parent_class: The parent class.
+ *
+ * Class structure for #SsoAuthSessionSkeleton.
+ */
+
+struct _SsoAuthSessionSkeletonPrivate
+{
+ GValue *properties;
+ GList *changed_properties;
+ GSource *changed_properties_idle_source;
+ GMainContext *context;
+ GMutex lock;
+};
+
+static void
+_sso_auth_session_skeleton_handle_method_call (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *method_name,
+ GVariant *parameters,
+ GDBusMethodInvocation *invocation,
+ gpointer user_data)
+{
+ SsoAuthSessionSkeleton *skeleton = SSO_AUTH_SESSION_SKELETON (user_data);
+ _ExtendedGDBusMethodInfo *info;
+ GVariantIter iter;
+ GVariant *child;
+ GValue *paramv;
+ guint num_params;
+ guint num_extra;
+ guint n;
+ guint signal_id;
+ GValue return_value = G_VALUE_INIT;
+ info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation);
+ g_assert (info != NULL);
+ num_params = g_variant_n_children (parameters);
+ num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra);
+ n = 0;
+ g_value_init (¶mv[n], TYPE_SSO_AUTH_SESSION);
+ g_value_set_object (¶mv[n++], skeleton);
+ g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION);
+ g_value_set_object (¶mv[n++], invocation);
+ if (info->pass_fdlist)
+ {
+#ifdef G_OS_UNIX
+ g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST);
+ g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)));
+#else
+ g_assert_not_reached ();
+#endif
+ }
+ g_variant_iter_init (&iter, parameters);
+ while ((child = g_variant_iter_next_value (&iter)) != NULL)
+ {
+ _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra];
+ if (arg_info->use_gvariant)
+ {
+ g_value_init (¶mv[n], G_TYPE_VARIANT);
+ g_value_set_variant (¶mv[n], child);
+ n++;
+ }
+ else
+ g_dbus_gvariant_to_gvalue (child, ¶mv[n++]);
+ g_variant_unref (child);
+ }
+ signal_id = g_signal_lookup (info->signal_name, TYPE_SSO_AUTH_SESSION);
+ g_value_init (&return_value, G_TYPE_BOOLEAN);
+ g_signal_emitv (paramv, signal_id, 0, &return_value);
+ if (!g_value_get_boolean (&return_value))
+ g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name);
+ g_value_unset (&return_value);
+ for (n = 0; n < num_params + num_extra; n++)
+ g_value_unset (¶mv[n]);
+ g_free (paramv);
+}
+
+static GVariant *
+_sso_auth_session_skeleton_handle_get_property (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *property_name,
+ GError **error,
+ gpointer user_data)
+{
+ SsoAuthSessionSkeleton *skeleton = SSO_AUTH_SESSION_SKELETON (user_data);
+ GValue value = G_VALUE_INIT;
+ GParamSpec *pspec;
+ _ExtendedGDBusPropertyInfo *info;
+ GVariant *ret;
+ ret = NULL;
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_auth_session_interface_info, property_name);
+ g_assert (info != NULL);
+ pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
+ if (pspec == NULL)
+ {
+ g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
+ }
+ else
+ {
+ g_value_init (&value, pspec->value_type);
+ g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value);
+ ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature));
+ g_value_unset (&value);
+ }
+ return ret;
+}
+
+static gboolean
+_sso_auth_session_skeleton_handle_set_property (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *property_name,
+ GVariant *variant,
+ GError **error,
+ gpointer user_data)
+{
+ SsoAuthSessionSkeleton *skeleton = SSO_AUTH_SESSION_SKELETON (user_data);
+ GValue value = G_VALUE_INIT;
+ GParamSpec *pspec;
+ _ExtendedGDBusPropertyInfo *info;
+ gboolean ret;
+ ret = FALSE;
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_auth_session_interface_info, property_name);
+ g_assert (info != NULL);
+ pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
+ if (pspec == NULL)
+ {
+ g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
+ }
+ else
+ {
+ if (info->use_gvariant)
+ g_value_set_variant (&value, variant);
+ else
+ g_dbus_gvariant_to_gvalue (variant, &value);
+ g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value);
+ g_value_unset (&value);
+ ret = TRUE;
+ }
+ return ret;
+}
+
+static const GDBusInterfaceVTable _sso_auth_session_skeleton_vtable =
+{
+ _sso_auth_session_skeleton_handle_method_call,
+ _sso_auth_session_skeleton_handle_get_property,
+ _sso_auth_session_skeleton_handle_set_property
+};
+
+static GDBusInterfaceInfo *
+sso_auth_session_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton)
+{
+ return sso_auth_session_interface_info ();
+}
+
+static GDBusInterfaceVTable *
+sso_auth_session_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton)
+{
+ return (GDBusInterfaceVTable *) &_sso_auth_session_skeleton_vtable;
+}
+
+static GVariant *
+sso_auth_session_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton)
+{
+ SsoAuthSessionSkeleton *skeleton = SSO_AUTH_SESSION_SKELETON (_skeleton);
+
+ GVariantBuilder builder;
+ guint n;
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
+ if (_sso_auth_session_interface_info.parent_struct.properties == NULL)
+ goto out;
+ for (n = 0; _sso_auth_session_interface_info.parent_struct.properties[n] != NULL; n++)
+ {
+ GDBusPropertyInfo *info = _sso_auth_session_interface_info.parent_struct.properties[n];
+ if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE)
+ {
+ GVariant *value;
+ value = _sso_auth_session_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.google.code.AccountsSSO.gSingleSignOn.AuthSession", info->name, NULL, skeleton);
+ if (value != NULL)
+ {
+ g_variant_take_ref (value);
+ g_variant_builder_add (&builder, "{sv}", info->name, value);
+ g_variant_unref (value);
+ }
+ }
+ }
+out:
+ return g_variant_builder_end (&builder);
+}
+
+static void
+sso_auth_session_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton)
+{
+}
+
+static void
+_sso_auth_session_on_signal_state_changed (
+ SsoAuthSession *object,
+ gint arg_state,
+ const gchar *arg_message)
+{
+ SsoAuthSessionSkeleton *skeleton = SSO_AUTH_SESSION_SKELETON (object);
+
+ GList *connections, *l;
+ GVariant *signal_variant;
+ connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton));
+
+ signal_variant = g_variant_ref_sink (g_variant_new ("(is)",
+ arg_state,
+ arg_message));
+ for (l = connections; l != NULL; l = l->next)
+ {
+ GDBusConnection *connection = l->data;
+ g_dbus_connection_emit_signal (connection,
+ NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.google.code.AccountsSSO.gSingleSignOn.AuthSession", "stateChanged",
+ signal_variant, NULL);
+ }
+ g_variant_unref (signal_variant);
+ g_list_free_full (connections, g_object_unref);
+}
+
+static void
+_sso_auth_session_on_signal_unregistered (
+ SsoAuthSession *object)
+{
+ SsoAuthSessionSkeleton *skeleton = SSO_AUTH_SESSION_SKELETON (object);
+
+ GList *connections, *l;
+ GVariant *signal_variant;
+ connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton));
+
+ signal_variant = g_variant_ref_sink (g_variant_new ("()"));
+ for (l = connections; l != NULL; l = l->next)
+ {
+ GDBusConnection *connection = l->data;
+ g_dbus_connection_emit_signal (connection,
+ NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.google.code.AccountsSSO.gSingleSignOn.AuthSession", "unregistered",
+ signal_variant, NULL);
+ }
+ g_variant_unref (signal_variant);
+ g_list_free_full (connections, g_object_unref);
+}
+
+static void sso_auth_session_skeleton_iface_init (SsoAuthSessionIface *iface);
+G_DEFINE_TYPE_WITH_CODE (SsoAuthSessionSkeleton, sso_auth_session_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
+ G_IMPLEMENT_INTERFACE (TYPE_SSO_AUTH_SESSION, sso_auth_session_skeleton_iface_init));
+
+static void
+sso_auth_session_skeleton_finalize (GObject *object)
+{
+ SsoAuthSessionSkeleton *skeleton = SSO_AUTH_SESSION_SKELETON (object);
+ g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
+ if (skeleton->priv->changed_properties_idle_source != NULL)
+ g_source_destroy (skeleton->priv->changed_properties_idle_source);
+ g_main_context_unref (skeleton->priv->context);
+ g_mutex_clear (&skeleton->priv->lock);
+ G_OBJECT_CLASS (sso_auth_session_skeleton_parent_class)->finalize (object);
+}
+
+static void
+sso_auth_session_skeleton_init (SsoAuthSessionSkeleton *skeleton)
+{
+ skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_SSO_AUTH_SESSION_SKELETON, SsoAuthSessionSkeletonPrivate);
+ g_mutex_init (&skeleton->priv->lock);
+ skeleton->priv->context = g_main_context_ref_thread_default ();
+}
+
+static void
+sso_auth_session_skeleton_class_init (SsoAuthSessionSkeletonClass *klass)
+{
+ GObjectClass *gobject_class;
+ GDBusInterfaceSkeletonClass *skeleton_class;
+
+ g_type_class_add_private (klass, sizeof (SsoAuthSessionSkeletonPrivate));
+
+ gobject_class = G_OBJECT_CLASS (klass);
+ gobject_class->finalize = sso_auth_session_skeleton_finalize;
+
+ skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass);
+ skeleton_class->get_info = sso_auth_session_skeleton_dbus_interface_get_info;
+ skeleton_class->get_properties = sso_auth_session_skeleton_dbus_interface_get_properties;
+ skeleton_class->flush = sso_auth_session_skeleton_dbus_interface_flush;
+ skeleton_class->get_vtable = sso_auth_session_skeleton_dbus_interface_get_vtable;
+}
+
+static void
+sso_auth_session_skeleton_iface_init (SsoAuthSessionIface *iface)
+{
+ iface->state_changed = _sso_auth_session_on_signal_state_changed;
+ iface->unregistered = _sso_auth_session_on_signal_unregistered;
+}
+
+/**
+ * sso_auth_session_skeleton_new:
+ *
+ * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-AuthSession.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.AuthSession</link>.
+ *
+ * Returns: (transfer full) (type SsoAuthSessionSkeleton): The skeleton object.
+ */
+SsoAuthSession *
+sso_auth_session_skeleton_new (void)
+{
+ return SSO_AUTH_SESSION (g_object_new (TYPE_SSO_AUTH_SESSION_SKELETON, NULL));
+}
+
--- /dev/null
+/*
+ * Generated by gdbus-codegen 2.32.4. DO NOT EDIT.
+ *
+ * The license of this code is the same as for the source it was derived from.
+ */
+
+#ifndef __SSO_AUTH_SESSION_GEN_H__
+#define __SSO_AUTH_SESSION_GEN_H__
+
+#include <gio/gio.h>
+
+G_BEGIN_DECLS
+
+
+/* ------------------------------------------------------------------------ */
+/* Declarations for com.google.code.AccountsSSO.gSingleSignOn.AuthSession */
+
+#define TYPE_SSO_AUTH_SESSION (sso_auth_session_get_type ())
+#define SSO_AUTH_SESSION(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_AUTH_SESSION, SsoAuthSession))
+#define IS_SSO_AUTH_SESSION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_AUTH_SESSION))
+#define SSO_AUTH_SESSION_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_SSO_AUTH_SESSION, SsoAuthSessionIface))
+
+struct _SsoAuthSession;
+typedef struct _SsoAuthSession SsoAuthSession;
+typedef struct _SsoAuthSessionIface SsoAuthSessionIface;
+
+struct _SsoAuthSessionIface
+{
+ GTypeInterface parent_iface;
+
+
+ gboolean (*handle_cancel) (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_process) (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *arg_sessionDataVa,
+ const gchar *arg_mechanism);
+
+ gboolean (*handle_query_available_mechanisms) (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *const *arg_wantedMechanisms);
+
+ void (*state_changed) (
+ SsoAuthSession *object,
+ gint arg_state,
+ const gchar *arg_message);
+
+ void (*unregistered) (
+ SsoAuthSession *object);
+
+};
+
+GType sso_auth_session_get_type (void) G_GNUC_CONST;
+
+GDBusInterfaceInfo *sso_auth_session_interface_info (void);
+guint sso_auth_session_override_properties (GObjectClass *klass, guint property_id_begin);
+
+
+/* D-Bus method call completion functions: */
+void sso_auth_session_complete_query_available_mechanisms (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *const *unnamed_arg1);
+
+void sso_auth_session_complete_process (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *unnamed_arg2);
+
+void sso_auth_session_complete_cancel (
+ SsoAuthSession *object,
+ GDBusMethodInvocation *invocation);
+
+
+
+/* D-Bus signal emissions functions: */
+void sso_auth_session_emit_state_changed (
+ SsoAuthSession *object,
+ gint arg_state,
+ const gchar *arg_message);
+
+void sso_auth_session_emit_unregistered (
+ SsoAuthSession *object);
+
+
+
+/* D-Bus method calls: */
+void sso_auth_session_call_query_available_mechanisms (
+ SsoAuthSession *proxy,
+ const gchar *const *arg_wantedMechanisms,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_session_call_query_available_mechanisms_finish (
+ SsoAuthSession *proxy,
+ gchar ***out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_session_call_query_available_mechanisms_sync (
+ SsoAuthSession *proxy,
+ const gchar *const *arg_wantedMechanisms,
+ gchar ***out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_session_call_process (
+ SsoAuthSession *proxy,
+ GVariant *arg_sessionDataVa,
+ const gchar *arg_mechanism,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_session_call_process_finish (
+ SsoAuthSession *proxy,
+ GVariant **out_unnamed_arg2,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_session_call_process_sync (
+ SsoAuthSession *proxy,
+ GVariant *arg_sessionDataVa,
+ const gchar *arg_mechanism,
+ GVariant **out_unnamed_arg2,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_session_call_cancel (
+ SsoAuthSession *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_auth_session_call_cancel_finish (
+ SsoAuthSession *proxy,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_auth_session_call_cancel_sync (
+ SsoAuthSession *proxy,
+ GCancellable *cancellable,
+ GError **error);
+
+
+
+/* ---- */
+
+#define TYPE_SSO_AUTH_SESSION_PROXY (sso_auth_session_proxy_get_type ())
+#define SSO_AUTH_SESSION_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_AUTH_SESSION_PROXY, SsoAuthSessionProxy))
+#define SSO_AUTH_SESSION_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_SSO_AUTH_SESSION_PROXY, SsoAuthSessionProxyClass))
+#define SSO_AUTH_SESSION_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_SSO_AUTH_SESSION_PROXY, SsoAuthSessionProxyClass))
+#define IS_SSO_AUTH_SESSION_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_AUTH_SESSION_PROXY))
+#define IS_SSO_AUTH_SESSION_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_SSO_AUTH_SESSION_PROXY))
+
+typedef struct _SsoAuthSessionProxy SsoAuthSessionProxy;
+typedef struct _SsoAuthSessionProxyClass SsoAuthSessionProxyClass;
+typedef struct _SsoAuthSessionProxyPrivate SsoAuthSessionProxyPrivate;
+
+struct _SsoAuthSessionProxy
+{
+ /*< private >*/
+ GDBusProxy parent_instance;
+ SsoAuthSessionProxyPrivate *priv;
+};
+
+struct _SsoAuthSessionProxyClass
+{
+ GDBusProxyClass parent_class;
+};
+
+GType sso_auth_session_proxy_get_type (void) G_GNUC_CONST;
+
+void sso_auth_session_proxy_new (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+SsoAuthSession *sso_auth_session_proxy_new_finish (
+ GAsyncResult *res,
+ GError **error);
+SsoAuthSession *sso_auth_session_proxy_new_sync (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_auth_session_proxy_new_for_bus (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+SsoAuthSession *sso_auth_session_proxy_new_for_bus_finish (
+ GAsyncResult *res,
+ GError **error);
+SsoAuthSession *sso_auth_session_proxy_new_for_bus_sync (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+
+/* ---- */
+
+#define TYPE_SSO_AUTH_SESSION_SKELETON (sso_auth_session_skeleton_get_type ())
+#define SSO_AUTH_SESSION_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_AUTH_SESSION_SKELETON, SsoAuthSessionSkeleton))
+#define SSO_AUTH_SESSION_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_SSO_AUTH_SESSION_SKELETON, SsoAuthSessionSkeletonClass))
+#define SSO_AUTH_SESSION_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_SSO_AUTH_SESSION_SKELETON, SsoAuthSessionSkeletonClass))
+#define IS_SSO_AUTH_SESSION_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_AUTH_SESSION_SKELETON))
+#define IS_SSO_AUTH_SESSION_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_SSO_AUTH_SESSION_SKELETON))
+
+typedef struct _SsoAuthSessionSkeleton SsoAuthSessionSkeleton;
+typedef struct _SsoAuthSessionSkeletonClass SsoAuthSessionSkeletonClass;
+typedef struct _SsoAuthSessionSkeletonPrivate SsoAuthSessionSkeletonPrivate;
+
+struct _SsoAuthSessionSkeleton
+{
+ /*< private >*/
+ GDBusInterfaceSkeleton parent_instance;
+ SsoAuthSessionSkeletonPrivate *priv;
+};
+
+struct _SsoAuthSessionSkeletonClass
+{
+ GDBusInterfaceSkeletonClass parent_class;
+};
+
+GType sso_auth_session_skeleton_get_type (void) G_GNUC_CONST;
+
+SsoAuthSession *sso_auth_session_skeleton_new (void);
+
+
+G_END_DECLS
+
+#endif /* __SSO_AUTH_SESSION_GEN_H__ */
--- /dev/null
+/*
+ * Generated by gdbus-codegen 2.32.4. DO NOT EDIT.
+ *
+ * The license of this code is the same as for the source it was derived from.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include "sso-identity-gen.h"
+
+#include <string.h>
+#ifdef G_OS_UNIX
+# include <gio/gunixfdlist.h>
+#endif
+
+typedef struct
+{
+ GDBusArgInfo parent_struct;
+ gboolean use_gvariant;
+} _ExtendedGDBusArgInfo;
+
+typedef struct
+{
+ GDBusMethodInfo parent_struct;
+ const gchar *signal_name;
+ gboolean pass_fdlist;
+} _ExtendedGDBusMethodInfo;
+
+typedef struct
+{
+ GDBusSignalInfo parent_struct;
+ const gchar *signal_name;
+} _ExtendedGDBusSignalInfo;
+
+typedef struct
+{
+ GDBusPropertyInfo parent_struct;
+ const gchar *hyphen_name;
+ gboolean use_gvariant;
+} _ExtendedGDBusPropertyInfo;
+
+typedef struct
+{
+ GDBusInterfaceInfo parent_struct;
+ const gchar *hyphen_name;
+} _ExtendedGDBusInterfaceInfo;
+
+typedef struct
+{
+ const _ExtendedGDBusPropertyInfo *info;
+ guint prop_id;
+ GValue orig_value; /* the value before the change */
+} ChangedProperty;
+
+static void
+_changed_property_free (ChangedProperty *data)
+{
+ g_value_unset (&data->orig_value);
+ g_free (data);
+}
+
+static gboolean
+_g_strv_equal0 (gchar **a, gchar **b)
+{
+ gboolean ret = FALSE;
+ guint n;
+ if (a == NULL && b == NULL)
+ {
+ ret = TRUE;
+ goto out;
+ }
+ if (a == NULL || b == NULL)
+ goto out;
+ if (g_strv_length (a) != g_strv_length (b))
+ goto out;
+ for (n = 0; a[n] != NULL; n++)
+ if (g_strcmp0 (a[n], b[n]) != 0)
+ goto out;
+ ret = TRUE;
+out:
+ return ret;
+}
+
+static gboolean
+_g_variant_equal0 (GVariant *a, GVariant *b)
+{
+ gboolean ret = FALSE;
+ if (a == NULL && b == NULL)
+ {
+ ret = TRUE;
+ goto out;
+ }
+ if (a == NULL || b == NULL)
+ goto out;
+ ret = g_variant_equal (a, b);
+out:
+ return ret;
+}
+
+G_GNUC_UNUSED static gboolean
+_g_value_equal (const GValue *a, const GValue *b)
+{
+ gboolean ret = FALSE;
+ g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b));
+ switch (G_VALUE_TYPE (a))
+ {
+ case G_TYPE_BOOLEAN:
+ ret = (g_value_get_boolean (a) == g_value_get_boolean (b));
+ break;
+ case G_TYPE_UCHAR:
+ ret = (g_value_get_uchar (a) == g_value_get_uchar (b));
+ break;
+ case G_TYPE_INT:
+ ret = (g_value_get_int (a) == g_value_get_int (b));
+ break;
+ case G_TYPE_UINT:
+ ret = (g_value_get_uint (a) == g_value_get_uint (b));
+ break;
+ case G_TYPE_INT64:
+ ret = (g_value_get_int64 (a) == g_value_get_int64 (b));
+ break;
+ case G_TYPE_UINT64:
+ ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b));
+ break;
+ case G_TYPE_DOUBLE:
+ {
+ /* Avoid -Wfloat-equal warnings by doing a direct bit compare */
+ gdouble da = g_value_get_double (a);
+ gdouble db = g_value_get_double (b);
+ ret = memcmp (&da, &db, sizeof (gdouble)) == 0;
+ }
+ break;
+ case G_TYPE_STRING:
+ ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0);
+ break;
+ case G_TYPE_VARIANT:
+ ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b));
+ break;
+ default:
+ if (G_VALUE_TYPE (a) == G_TYPE_STRV)
+ ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b));
+ else
+ g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a)));
+ break;
+ }
+ return ret;
+}
+
+/* ------------------------------------------------------------------------
+ * Code for interface com.google.code.AccountsSSO.gSingleSignOn.Identity
+ * ------------------------------------------------------------------------
+ */
+
+/**
+ * SECTION:SsoIdentity
+ * @title: SsoIdentity
+ * @short_description: Generated C code for the com.google.code.AccountsSSO.gSingleSignOn.Identity D-Bus interface
+ *
+ * This section contains code for working with the <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-Identity.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.Identity</link> D-Bus interface in C.
+ */
+
+/* ---- Introspection data for com.google.code.AccountsSSO.gSingleSignOn.Identity ---- */
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_request_credentials_update_IN_ARG_message =
+{
+ {
+ -1,
+ "message",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_request_credentials_update_IN_ARG_pointers[] =
+{
+ &_sso_identity_method_info_request_credentials_update_IN_ARG_message,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_request_credentials_update_OUT_ARG_unnamed_arg1 =
+{
+ {
+ -1,
+ "unnamed_arg1",
+ "u",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_request_credentials_update_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_request_credentials_update_OUT_ARG_unnamed_arg1,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_request_credentials_update =
+{
+ {
+ -1,
+ "requestCredentialsUpdate",
+ (GDBusArgInfo **) &_sso_identity_method_info_request_credentials_update_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_identity_method_info_request_credentials_update_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-request-credentials-update",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_get_info_OUT_ARG_identityInfo =
+{
+ {
+ -1,
+ "identityInfo",
+ "a{sv}",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_get_info_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_get_info_OUT_ARG_identityInfo,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_get_info =
+{
+ {
+ -1,
+ "getInfo",
+ NULL,
+ (GDBusArgInfo **) &_sso_identity_method_info_get_info_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-get-info",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_get_auth_session_IN_ARG_method =
+{
+ {
+ -1,
+ "method",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_get_auth_session_IN_ARG_pointers[] =
+{
+ &_sso_identity_method_info_get_auth_session_IN_ARG_method,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_get_auth_session_OUT_ARG_objectPath =
+{
+ {
+ -1,
+ "objectPath",
+ "o",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_get_auth_session_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_get_auth_session_OUT_ARG_objectPath,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_get_auth_session =
+{
+ {
+ -1,
+ "getAuthSession",
+ (GDBusArgInfo **) &_sso_identity_method_info_get_auth_session_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_identity_method_info_get_auth_session_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-get-auth-session",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_verify_user_IN_ARG_params =
+{
+ {
+ -1,
+ "params",
+ "a{sv}",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_verify_user_IN_ARG_pointers[] =
+{
+ &_sso_identity_method_info_verify_user_IN_ARG_params,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_verify_user_OUT_ARG_unnamed_arg1 =
+{
+ {
+ -1,
+ "unnamed_arg1",
+ "b",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_verify_user_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_verify_user_OUT_ARG_unnamed_arg1,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_verify_user =
+{
+ {
+ -1,
+ "verifyUser",
+ (GDBusArgInfo **) &_sso_identity_method_info_verify_user_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_identity_method_info_verify_user_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-verify-user",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_verify_secret_IN_ARG_secret =
+{
+ {
+ -1,
+ "secret",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_verify_secret_IN_ARG_pointers[] =
+{
+ &_sso_identity_method_info_verify_secret_IN_ARG_secret,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_verify_secret_OUT_ARG_unnamed_arg1 =
+{
+ {
+ -1,
+ "unnamed_arg1",
+ "b",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_verify_secret_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_verify_secret_OUT_ARG_unnamed_arg1,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_verify_secret =
+{
+ {
+ -1,
+ "verifySecret",
+ (GDBusArgInfo **) &_sso_identity_method_info_verify_secret_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_identity_method_info_verify_secret_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-verify-secret",
+ FALSE
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_remove =
+{
+ {
+ -1,
+ "remove",
+ NULL,
+ NULL,
+ NULL
+ },
+ "handle-remove",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_sign_out_OUT_ARG_unnamed_arg0 =
+{
+ {
+ -1,
+ "unnamed_arg0",
+ "b",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_sign_out_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_sign_out_OUT_ARG_unnamed_arg0,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_sign_out =
+{
+ {
+ -1,
+ "signOut",
+ NULL,
+ (GDBusArgInfo **) &_sso_identity_method_info_sign_out_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-sign-out",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_store_IN_ARG_unnamed_arg0 =
+{
+ {
+ -1,
+ "unnamed_arg0",
+ "a{sv}",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_store_IN_ARG_pointers[] =
+{
+ &_sso_identity_method_info_store_IN_ARG_unnamed_arg0,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_store_OUT_ARG_unnamed_arg1 =
+{
+ {
+ -1,
+ "unnamed_arg1",
+ "u",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_store_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_store_OUT_ARG_unnamed_arg1,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_store =
+{
+ {
+ -1,
+ "store",
+ (GDBusArgInfo **) &_sso_identity_method_info_store_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_identity_method_info_store_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-store",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_add_reference_IN_ARG_reference =
+{
+ {
+ -1,
+ "reference",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_add_reference_IN_ARG_pointers[] =
+{
+ &_sso_identity_method_info_add_reference_IN_ARG_reference,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_add_reference_OUT_ARG_unnamed_arg1 =
+{
+ {
+ -1,
+ "unnamed_arg1",
+ "i",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_add_reference_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_add_reference_OUT_ARG_unnamed_arg1,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_add_reference =
+{
+ {
+ -1,
+ "addReference",
+ (GDBusArgInfo **) &_sso_identity_method_info_add_reference_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_identity_method_info_add_reference_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-add-reference",
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_remove_reference_IN_ARG_reference =
+{
+ {
+ -1,
+ "reference",
+ "s",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_remove_reference_IN_ARG_pointers[] =
+{
+ &_sso_identity_method_info_remove_reference_IN_ARG_reference,
+ NULL
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_method_info_remove_reference_OUT_ARG_unnamed_arg1 =
+{
+ {
+ -1,
+ "unnamed_arg1",
+ "i",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_method_info_remove_reference_OUT_ARG_pointers[] =
+{
+ &_sso_identity_method_info_remove_reference_OUT_ARG_unnamed_arg1,
+ NULL
+};
+
+static const _ExtendedGDBusMethodInfo _sso_identity_method_info_remove_reference =
+{
+ {
+ -1,
+ "removeReference",
+ (GDBusArgInfo **) &_sso_identity_method_info_remove_reference_IN_ARG_pointers,
+ (GDBusArgInfo **) &_sso_identity_method_info_remove_reference_OUT_ARG_pointers,
+ NULL
+ },
+ "handle-remove-reference",
+ FALSE
+};
+
+static const _ExtendedGDBusMethodInfo * const _sso_identity_method_info_pointers[] =
+{
+ &_sso_identity_method_info_request_credentials_update,
+ &_sso_identity_method_info_get_info,
+ &_sso_identity_method_info_get_auth_session,
+ &_sso_identity_method_info_verify_user,
+ &_sso_identity_method_info_verify_secret,
+ &_sso_identity_method_info_remove,
+ &_sso_identity_method_info_sign_out,
+ &_sso_identity_method_info_store,
+ &_sso_identity_method_info_add_reference,
+ &_sso_identity_method_info_remove_reference,
+ NULL
+};
+
+static const _ExtendedGDBusSignalInfo _sso_identity_signal_info_unregistered =
+{
+ {
+ -1,
+ "unregistered",
+ NULL,
+ NULL
+ },
+ "unregistered"
+};
+
+static const _ExtendedGDBusArgInfo _sso_identity_signal_info_info_updated_ARG_unnamed_arg0 =
+{
+ {
+ -1,
+ "unnamed_arg0",
+ "i",
+ NULL
+ },
+ FALSE
+};
+
+static const _ExtendedGDBusArgInfo * const _sso_identity_signal_info_info_updated_ARG_pointers[] =
+{
+ &_sso_identity_signal_info_info_updated_ARG_unnamed_arg0,
+ NULL
+};
+
+static const _ExtendedGDBusSignalInfo _sso_identity_signal_info_info_updated =
+{
+ {
+ -1,
+ "infoUpdated",
+ (GDBusArgInfo **) &_sso_identity_signal_info_info_updated_ARG_pointers,
+ NULL
+ },
+ "info-updated"
+};
+
+static const _ExtendedGDBusSignalInfo * const _sso_identity_signal_info_pointers[] =
+{
+ &_sso_identity_signal_info_unregistered,
+ &_sso_identity_signal_info_info_updated,
+ NULL
+};
+
+static const _ExtendedGDBusInterfaceInfo _sso_identity_interface_info =
+{
+ {
+ -1,
+ "com.google.code.AccountsSSO.gSingleSignOn.Identity",
+ (GDBusMethodInfo **) &_sso_identity_method_info_pointers,
+ (GDBusSignalInfo **) &_sso_identity_signal_info_pointers,
+ NULL,
+ NULL
+ },
+ "sso-identity",
+};
+
+
+/**
+ * sso_identity_interface_info:
+ *
+ * Gets a machine-readable description of the <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-Identity.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.Identity</link> D-Bus interface.
+ *
+ * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free.
+ */
+GDBusInterfaceInfo *
+sso_identity_interface_info (void)
+{
+ return (GDBusInterfaceInfo *) &_sso_identity_interface_info;
+}
+
+/**
+ * sso_identity_override_properties:
+ * @klass: The class structure for a #GObject<!-- -->-derived class.
+ * @property_id_begin: The property id to assign to the first overridden property.
+ *
+ * Overrides all #GObject properties in the #SsoIdentity interface for a concrete class.
+ * The properties are overridden in the order they are defined.
+ *
+ * Returns: The last property id.
+ */
+guint
+sso_identity_override_properties (GObjectClass *klass, guint property_id_begin)
+{
+ return property_id_begin - 1;
+}
+
+
+
+/**
+ * SsoIdentity:
+ *
+ * Abstract interface type for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-Identity.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.Identity</link>.
+ */
+
+/**
+ * SsoIdentityIface:
+ * @parent_iface: The parent interface.
+ * @handle_add_reference: Handler for the #SsoIdentity::handle-add-reference signal.
+ * @handle_get_auth_session: Handler for the #SsoIdentity::handle-get-auth-session signal.
+ * @handle_get_info: Handler for the #SsoIdentity::handle-get-info signal.
+ * @handle_remove: Handler for the #SsoIdentity::handle-remove signal.
+ * @handle_remove_reference: Handler for the #SsoIdentity::handle-remove-reference signal.
+ * @handle_request_credentials_update: Handler for the #SsoIdentity::handle-request-credentials-update signal.
+ * @handle_sign_out: Handler for the #SsoIdentity::handle-sign-out signal.
+ * @handle_store: Handler for the #SsoIdentity::handle-store signal.
+ * @handle_verify_secret: Handler for the #SsoIdentity::handle-verify-secret signal.
+ * @handle_verify_user: Handler for the #SsoIdentity::handle-verify-user signal.
+ * @info_updated: Handler for the #SsoIdentity::info-updated signal.
+ * @unregistered: Handler for the #SsoIdentity::unregistered signal.
+ *
+ * Virtual table for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-Identity.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.Identity</link>.
+ */
+
+static void
+sso_identity_default_init (SsoIdentityIface *iface)
+{
+ /* GObject signals for incoming D-Bus method calls: */
+ /**
+ * SsoIdentity::handle-request-credentials-update:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_message: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.requestCredentialsUpdate">requestCredentialsUpdate()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_request_credentials_update() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-request-credentials-update",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_request_credentials_update),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING);
+
+ /**
+ * SsoIdentity::handle-get-info:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.getInfo">getInfo()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_get_info() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-get-info",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_get_info),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /**
+ * SsoIdentity::handle-get-auth-session:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_method: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.getAuthSession">getAuthSession()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_get_auth_session() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-get-auth-session",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_get_auth_session),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING);
+
+ /**
+ * SsoIdentity::handle-verify-user:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_params: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.verifyUser">verifyUser()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_verify_user() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-verify-user",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_verify_user),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_VARIANT);
+
+ /**
+ * SsoIdentity::handle-verify-secret:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_secret: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.verifySecret">verifySecret()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_verify_secret() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-verify-secret",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_verify_secret),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING);
+
+ /**
+ * SsoIdentity::handle-remove:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.remove">remove()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_remove() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-remove",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_remove),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /**
+ * SsoIdentity::handle-sign-out:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.signOut">signOut()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_sign_out() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-sign-out",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_sign_out),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 1,
+ G_TYPE_DBUS_METHOD_INVOCATION);
+
+ /**
+ * SsoIdentity::handle-store:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_unnamed_arg0: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.store">store()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_store() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-store",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_store),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_VARIANT);
+
+ /**
+ * SsoIdentity::handle-add-reference:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_reference: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.addReference">addReference()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_add_reference() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-add-reference",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_add_reference),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING);
+
+ /**
+ * SsoIdentity::handle-remove-reference:
+ * @object: A #SsoIdentity.
+ * @invocation: A #GDBusMethodInvocation.
+ * @arg_reference: Argument passed by remote caller.
+ *
+ * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.removeReference">removeReference()</link> D-Bus method.
+ *
+ * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call sso_identity_complete_remove_reference() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.
+ *
+ * Returns: %TRUE if the invocation was handled, %FALSE to let other signal handlers run.
+ */
+ g_signal_new ("handle-remove-reference",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, handle_remove_reference),
+ g_signal_accumulator_true_handled,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_BOOLEAN,
+ 2,
+ G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING);
+
+ /* GObject signals for received D-Bus signals: */
+ /**
+ * SsoIdentity::unregistered:
+ * @object: A #SsoIdentity.
+ *
+ * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-com-google-code-AccountsSSO-gSingleSignOn-Identity.unregistered">"unregistered"</link> is received.
+ *
+ * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal.
+ */
+ g_signal_new ("unregistered",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, unregistered),
+ NULL,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_NONE,
+ 0);
+
+ /**
+ * SsoIdentity::info-updated:
+ * @object: A #SsoIdentity.
+ * @arg_unnamed_arg0: Argument.
+ *
+ * On the client-side, this signal is emitted whenever the D-Bus signal <link linkend="gdbus-signal-com-google-code-AccountsSSO-gSingleSignOn-Identity.infoUpdated">"infoUpdated"</link> is received.
+ *
+ * On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal.
+ */
+ g_signal_new ("info-updated",
+ G_TYPE_FROM_INTERFACE (iface),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SsoIdentityIface, info_updated),
+ NULL,
+ NULL,
+ g_cclosure_marshal_generic,
+ G_TYPE_NONE,
+ 1, G_TYPE_INT);
+
+}
+
+typedef SsoIdentityIface SsoIdentityInterface;
+G_DEFINE_INTERFACE (SsoIdentity, sso_identity, G_TYPE_OBJECT);
+
+/**
+ * sso_identity_emit_unregistered:
+ * @object: A #SsoIdentity.
+ *
+ * Emits the <link linkend="gdbus-signal-com-google-code-AccountsSSO-gSingleSignOn-Identity.unregistered">"unregistered"</link> D-Bus signal.
+ */
+void
+sso_identity_emit_unregistered (
+ SsoIdentity *object)
+{
+ g_signal_emit_by_name (object, "unregistered");
+}
+
+/**
+ * sso_identity_emit_info_updated:
+ * @object: A #SsoIdentity.
+ * @arg_unnamed_arg0: Argument to pass with the signal.
+ *
+ * Emits the <link linkend="gdbus-signal-com-google-code-AccountsSSO-gSingleSignOn-Identity.infoUpdated">"infoUpdated"</link> D-Bus signal.
+ */
+void
+sso_identity_emit_info_updated (
+ SsoIdentity *object,
+ gint arg_unnamed_arg0)
+{
+ g_signal_emit_by_name (object, "info-updated", arg_unnamed_arg0);
+}
+
+/**
+ * sso_identity_call_request_credentials_update:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_message: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.requestCredentialsUpdate">requestCredentialsUpdate()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_request_credentials_update_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_request_credentials_update_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_request_credentials_update (
+ SsoIdentity *proxy,
+ const gchar *arg_message,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "requestCredentialsUpdate",
+ g_variant_new ("(s)",
+ arg_message),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_request_credentials_update_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_request_credentials_update().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_request_credentials_update().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_request_credentials_update_finish (
+ SsoIdentity *proxy,
+ guint *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(u)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_request_credentials_update_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_message: Argument to pass with the method invocation.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.requestCredentialsUpdate">requestCredentialsUpdate()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_request_credentials_update() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_request_credentials_update_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_message,
+ guint *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "requestCredentialsUpdate",
+ g_variant_new ("(s)",
+ arg_message),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(u)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_get_info:
+ * @proxy: A #SsoIdentityProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.getInfo">getInfo()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_get_info_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_get_info_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_get_info (
+ SsoIdentity *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "getInfo",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_get_info_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_identityInfo: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_get_info().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_get_info().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_get_info_finish (
+ SsoIdentity *proxy,
+ GVariant **out_identityInfo,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(@a{sv})",
+ out_identityInfo);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_get_info_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_identityInfo: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.getInfo">getInfo()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_get_info() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_get_info_sync (
+ SsoIdentity *proxy,
+ GVariant **out_identityInfo,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "getInfo",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(@a{sv})",
+ out_identityInfo);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_get_auth_session:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_method: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.getAuthSession">getAuthSession()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_get_auth_session_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_get_auth_session_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_get_auth_session (
+ SsoIdentity *proxy,
+ const gchar *arg_method,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "getAuthSession",
+ g_variant_new ("(s)",
+ arg_method),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_get_auth_session_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_objectPath: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_get_auth_session().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_get_auth_session().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_get_auth_session_finish (
+ SsoIdentity *proxy,
+ gchar **out_objectPath,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(o)",
+ out_objectPath);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_get_auth_session_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_method: Argument to pass with the method invocation.
+ * @out_objectPath: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.getAuthSession">getAuthSession()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_get_auth_session() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_get_auth_session_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_method,
+ gchar **out_objectPath,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "getAuthSession",
+ g_variant_new ("(s)",
+ arg_method),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(o)",
+ out_objectPath);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_verify_user:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_params: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.verifyUser">verifyUser()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_verify_user_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_verify_user_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_verify_user (
+ SsoIdentity *proxy,
+ GVariant *arg_params,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "verifyUser",
+ g_variant_new ("(@a{sv})",
+ arg_params),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_verify_user_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_verify_user().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_verify_user().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_verify_user_finish (
+ SsoIdentity *proxy,
+ gboolean *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(b)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_verify_user_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_params: Argument to pass with the method invocation.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.verifyUser">verifyUser()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_verify_user() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_verify_user_sync (
+ SsoIdentity *proxy,
+ GVariant *arg_params,
+ gboolean *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "verifyUser",
+ g_variant_new ("(@a{sv})",
+ arg_params),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(b)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_verify_secret:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_secret: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.verifySecret">verifySecret()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_verify_secret_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_verify_secret_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_verify_secret (
+ SsoIdentity *proxy,
+ const gchar *arg_secret,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "verifySecret",
+ g_variant_new ("(s)",
+ arg_secret),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_verify_secret_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_verify_secret().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_verify_secret().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_verify_secret_finish (
+ SsoIdentity *proxy,
+ gboolean *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(b)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_verify_secret_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_secret: Argument to pass with the method invocation.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.verifySecret">verifySecret()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_verify_secret() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_verify_secret_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_secret,
+ gboolean *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "verifySecret",
+ g_variant_new ("(s)",
+ arg_secret),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(b)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_remove:
+ * @proxy: A #SsoIdentityProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.remove">remove()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_remove_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_remove_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_remove (
+ SsoIdentity *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "remove",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_remove_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_remove().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_remove().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_remove_finish (
+ SsoIdentity *proxy,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "()");
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_remove_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.remove">remove()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_remove() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_remove_sync (
+ SsoIdentity *proxy,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "remove",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "()");
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_sign_out:
+ * @proxy: A #SsoIdentityProxy.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.signOut">signOut()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_sign_out_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_sign_out_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_sign_out (
+ SsoIdentity *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "signOut",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_sign_out_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_sign_out().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_sign_out().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_sign_out_finish (
+ SsoIdentity *proxy,
+ gboolean *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(b)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_sign_out_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_unnamed_arg0: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.signOut">signOut()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_sign_out() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_sign_out_sync (
+ SsoIdentity *proxy,
+ gboolean *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "signOut",
+ g_variant_new ("()"),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(b)",
+ out_unnamed_arg0);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_store:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_unnamed_arg0: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.store">store()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_store_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_store_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_store (
+ SsoIdentity *proxy,
+ GVariant *arg_unnamed_arg0,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "store",
+ g_variant_new ("(@a{sv})",
+ arg_unnamed_arg0),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_store_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_store().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_store().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_store_finish (
+ SsoIdentity *proxy,
+ guint *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(u)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_store_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_unnamed_arg0: Argument to pass with the method invocation.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.store">store()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_store() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_store_sync (
+ SsoIdentity *proxy,
+ GVariant *arg_unnamed_arg0,
+ guint *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "store",
+ g_variant_new ("(@a{sv})",
+ arg_unnamed_arg0),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(u)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_add_reference:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_reference: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.addReference">addReference()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_add_reference_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_add_reference_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_add_reference (
+ SsoIdentity *proxy,
+ const gchar *arg_reference,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "addReference",
+ g_variant_new ("(s)",
+ arg_reference),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_add_reference_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_add_reference().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_add_reference().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_add_reference_finish (
+ SsoIdentity *proxy,
+ gint *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(i)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_add_reference_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_reference: Argument to pass with the method invocation.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.addReference">addReference()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_add_reference() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_add_reference_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_reference,
+ gint *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "addReference",
+ g_variant_new ("(s)",
+ arg_reference),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(i)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_remove_reference:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_reference: Argument to pass with the method invocation.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.removeReference">removeReference()</link> D-Bus method on @proxy.
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_call_remove_reference_finish() to get the result of the operation.
+ *
+ * See sso_identity_call_remove_reference_sync() for the synchronous, blocking version of this method.
+ */
+void
+sso_identity_call_remove_reference (
+ SsoIdentity *proxy,
+ const gchar *arg_reference,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_dbus_proxy_call (G_DBUS_PROXY (proxy),
+ "removeReference",
+ g_variant_new ("(s)",
+ arg_reference),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ callback,
+ user_data);
+}
+
+/**
+ * sso_identity_call_remove_reference_finish:
+ * @proxy: A #SsoIdentityProxy.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_call_remove_reference().
+ * @error: Return location for error or %NULL.
+ *
+ * Finishes an operation started with sso_identity_call_remove_reference().
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_remove_reference_finish (
+ SsoIdentity *proxy,
+ gint *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(i)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_call_remove_reference_sync:
+ * @proxy: A #SsoIdentityProxy.
+ * @arg_reference: Argument to pass with the method invocation.
+ * @out_unnamed_arg1: (out): Return location for return parameter or %NULL to ignore.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL.
+ *
+ * Synchronously invokes the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.removeReference">removeReference()</link> D-Bus method on @proxy. The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_call_remove_reference() for the asynchronous version of this method.
+ *
+ * Returns: (skip): %TRUE if the call succeded, %FALSE if @error is set.
+ */
+gboolean
+sso_identity_call_remove_reference_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_reference,
+ gint *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GVariant *_ret;
+ _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy),
+ "removeReference",
+ g_variant_new ("(s)",
+ arg_reference),
+ G_DBUS_CALL_FLAGS_NONE,
+ -1,
+ cancellable,
+ error);
+ if (_ret == NULL)
+ goto _out;
+ g_variant_get (_ret,
+ "(i)",
+ out_unnamed_arg1);
+ g_variant_unref (_ret);
+_out:
+ return _ret != NULL;
+}
+
+/**
+ * sso_identity_complete_request_credentials_update:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg1: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.requestCredentialsUpdate">requestCredentialsUpdate()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_request_credentials_update (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ guint unnamed_arg1)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(u)",
+ unnamed_arg1));
+}
+
+/**
+ * sso_identity_complete_get_info:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @identityInfo: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.getInfo">getInfo()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_get_info (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *identityInfo)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(@a{sv})",
+ identityInfo));
+}
+
+/**
+ * sso_identity_complete_get_auth_session:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @objectPath: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.getAuthSession">getAuthSession()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_get_auth_session (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *objectPath)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(o)",
+ objectPath));
+}
+
+/**
+ * sso_identity_complete_verify_user:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg1: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.verifyUser">verifyUser()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_verify_user (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gboolean unnamed_arg1)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(b)",
+ unnamed_arg1));
+}
+
+/**
+ * sso_identity_complete_verify_secret:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg1: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.verifySecret">verifySecret()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_verify_secret (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gboolean unnamed_arg1)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(b)",
+ unnamed_arg1));
+}
+
+/**
+ * sso_identity_complete_remove:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.remove">remove()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_remove (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("()"));
+}
+
+/**
+ * sso_identity_complete_sign_out:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg0: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.signOut">signOut()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_sign_out (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gboolean unnamed_arg0)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(b)",
+ unnamed_arg0));
+}
+
+/**
+ * sso_identity_complete_store:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg1: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.store">store()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_store (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ guint unnamed_arg1)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(u)",
+ unnamed_arg1));
+}
+
+/**
+ * sso_identity_complete_add_reference:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg1: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.addReference">addReference()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_add_reference (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gint unnamed_arg1)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(i)",
+ unnamed_arg1));
+}
+
+/**
+ * sso_identity_complete_remove_reference:
+ * @object: A #SsoIdentity.
+ * @invocation: (transfer full): A #GDBusMethodInvocation.
+ * @unnamed_arg1: Parameter to return.
+ *
+ * Helper function used in service implementations to finish handling invocations of the <link linkend="gdbus-method-com-google-code-AccountsSSO-gSingleSignOn-Identity.removeReference">removeReference()</link> D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.
+ *
+ * This method will free @invocation, you cannot use it afterwards.
+ */
+void
+sso_identity_complete_remove_reference (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gint unnamed_arg1)
+{
+ g_dbus_method_invocation_return_value (invocation,
+ g_variant_new ("(i)",
+ unnamed_arg1));
+}
+
+/* ------------------------------------------------------------------------ */
+
+/**
+ * SsoIdentityProxy:
+ *
+ * The #SsoIdentityProxy structure contains only private data and should only be accessed using the provided API.
+ */
+
+/**
+ * SsoIdentityProxyClass:
+ * @parent_class: The parent class.
+ *
+ * Class structure for #SsoIdentityProxy.
+ */
+
+struct _SsoIdentityProxyPrivate
+{
+ GData *qdata;
+};
+
+static void sso_identity_proxy_iface_init (SsoIdentityIface *iface);
+
+G_DEFINE_TYPE_WITH_CODE (SsoIdentityProxy, sso_identity_proxy, G_TYPE_DBUS_PROXY,
+ G_IMPLEMENT_INTERFACE (TYPE_SSO_IDENTITY, sso_identity_proxy_iface_init));
+
+static void
+sso_identity_proxy_finalize (GObject *object)
+{
+ SsoIdentityProxy *proxy = SSO_IDENTITY_PROXY (object);
+ g_datalist_clear (&proxy->priv->qdata);
+ G_OBJECT_CLASS (sso_identity_proxy_parent_class)->finalize (object);
+}
+
+static void
+sso_identity_proxy_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+}
+
+static void
+sso_identity_proxy_set_property (GObject *object,
+ guint prop_id,
+ const GValue *value,
+ GParamSpec *pspec)
+{
+}
+
+static void
+sso_identity_proxy_g_signal (GDBusProxy *proxy,
+ const gchar *sender_name,
+ const gchar *signal_name,
+ GVariant *parameters)
+{
+ _ExtendedGDBusSignalInfo *info;
+ GVariantIter iter;
+ GVariant *child;
+ GValue *paramv;
+ guint num_params;
+ guint n;
+ guint signal_id;
+ info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_sso_identity_interface_info, signal_name);
+ if (info == NULL)
+ return;
+ num_params = g_variant_n_children (parameters);
+ paramv = g_new0 (GValue, num_params + 1);
+ g_value_init (¶mv[0], TYPE_SSO_IDENTITY);
+ g_value_set_object (¶mv[0], proxy);
+ g_variant_iter_init (&iter, parameters);
+ n = 1;
+ while ((child = g_variant_iter_next_value (&iter)) != NULL)
+ {
+ _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1];
+ if (arg_info->use_gvariant)
+ {
+ g_value_init (¶mv[n], G_TYPE_VARIANT);
+ g_value_set_variant (¶mv[n], child);
+ n++;
+ }
+ else
+ g_dbus_gvariant_to_gvalue (child, ¶mv[n++]);
+ g_variant_unref (child);
+ }
+ signal_id = g_signal_lookup (info->signal_name, TYPE_SSO_IDENTITY);
+ g_signal_emitv (paramv, signal_id, 0, NULL);
+ for (n = 0; n < num_params + 1; n++)
+ g_value_unset (¶mv[n]);
+ g_free (paramv);
+}
+
+static void
+sso_identity_proxy_g_properties_changed (GDBusProxy *_proxy,
+ GVariant *changed_properties,
+ const gchar *const *invalidated_properties)
+{
+ SsoIdentityProxy *proxy = SSO_IDENTITY_PROXY (_proxy);
+ guint n;
+ const gchar *key;
+ GVariantIter *iter;
+ _ExtendedGDBusPropertyInfo *info;
+ g_variant_get (changed_properties, "a{sv}", &iter);
+ while (g_variant_iter_next (iter, "{&sv}", &key, NULL))
+ {
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_identity_interface_info, key);
+ g_datalist_remove_data (&proxy->priv->qdata, key);
+ if (info != NULL)
+ g_object_notify (G_OBJECT (proxy), info->hyphen_name);
+ }
+ g_variant_iter_free (iter);
+ for (n = 0; invalidated_properties[n] != NULL; n++)
+ {
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_identity_interface_info, invalidated_properties[n]);
+ g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]);
+ if (info != NULL)
+ g_object_notify (G_OBJECT (proxy), info->hyphen_name);
+ }
+}
+
+static void
+sso_identity_proxy_init (SsoIdentityProxy *proxy)
+{
+ proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_SSO_IDENTITY_PROXY, SsoIdentityProxyPrivate);
+ g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), sso_identity_interface_info ());
+}
+
+static void
+sso_identity_proxy_class_init (SsoIdentityProxyClass *klass)
+{
+ GObjectClass *gobject_class;
+ GDBusProxyClass *proxy_class;
+
+ g_type_class_add_private (klass, sizeof (SsoIdentityProxyPrivate));
+
+ gobject_class = G_OBJECT_CLASS (klass);
+ gobject_class->finalize = sso_identity_proxy_finalize;
+ gobject_class->get_property = sso_identity_proxy_get_property;
+ gobject_class->set_property = sso_identity_proxy_set_property;
+
+ proxy_class = G_DBUS_PROXY_CLASS (klass);
+ proxy_class->g_signal = sso_identity_proxy_g_signal;
+ proxy_class->g_properties_changed = sso_identity_proxy_g_properties_changed;
+
+}
+
+static void
+sso_identity_proxy_iface_init (SsoIdentityIface *iface)
+{
+}
+
+/**
+ * sso_identity_proxy_new:
+ * @connection: A #GDBusConnection.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
+ * @user_data: User data to pass to @callback.
+ *
+ * Asynchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-Identity.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.Identity</link>. See g_dbus_proxy_new() for more details.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_proxy_new_finish() to get the result of the operation.
+ *
+ * See sso_identity_proxy_new_sync() for the synchronous, blocking version of this constructor.
+ */
+void
+sso_identity_proxy_new (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_async_initable_new_async (TYPE_SSO_IDENTITY_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.Identity", NULL);
+}
+
+/**
+ * sso_identity_proxy_new_finish:
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_proxy_new().
+ * @error: Return location for error or %NULL
+ *
+ * Finishes an operation started with sso_identity_proxy_new().
+ *
+ * Returns: (transfer full) (type SsoIdentityProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoIdentity *
+sso_identity_proxy_new_finish (
+ GAsyncResult *res,
+ GError **error)
+{
+ GObject *ret;
+ GObject *source_object;
+ source_object = g_async_result_get_source_object (res);
+ ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
+ g_object_unref (source_object);
+ if (ret != NULL)
+ return SSO_IDENTITY (ret);
+ else
+ return NULL;
+}
+
+/**
+ * sso_identity_proxy_new_sync:
+ * @connection: A #GDBusConnection.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: (allow-none): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL
+ *
+ * Synchronously creates a proxy for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-Identity.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.Identity</link>. See g_dbus_proxy_new_sync() for more details.
+ *
+ * The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_proxy_new() for the asynchronous version of this constructor.
+ *
+ * Returns: (transfer full) (type SsoIdentityProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoIdentity *
+sso_identity_proxy_new_sync (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GInitable *ret;
+ ret = g_initable_new (TYPE_SSO_IDENTITY_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-connection", connection, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.Identity", NULL);
+ if (ret != NULL)
+ return SSO_IDENTITY (ret);
+ else
+ return NULL;
+}
+
+
+/**
+ * sso_identity_proxy_new_for_bus:
+ * @bus_type: A #GBusType.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: A bus name (well-known or unique).
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @callback: A #GAsyncReadyCallback to call when the request is satisfied.
+ * @user_data: User data to pass to @callback.
+ *
+ * Like sso_identity_proxy_new() but takes a #GBusType instead of a #GDBusConnection.
+ *
+ * When the operation is finished, @callback will be invoked in the <link linkend="g-main-context-push-thread-default">thread-default main loop</link> of the thread you are calling this method from.
+ * You can then call sso_identity_proxy_new_for_bus_finish() to get the result of the operation.
+ *
+ * See sso_identity_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.
+ */
+void
+sso_identity_proxy_new_for_bus (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
+{
+ g_async_initable_new_async (TYPE_SSO_IDENTITY_PROXY, G_PRIORITY_DEFAULT, cancellable, callback, user_data, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.Identity", NULL);
+}
+
+/**
+ * sso_identity_proxy_new_for_bus_finish:
+ * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to sso_identity_proxy_new_for_bus().
+ * @error: Return location for error or %NULL
+ *
+ * Finishes an operation started with sso_identity_proxy_new_for_bus().
+ *
+ * Returns: (transfer full) (type SsoIdentityProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoIdentity *
+sso_identity_proxy_new_for_bus_finish (
+ GAsyncResult *res,
+ GError **error)
+{
+ GObject *ret;
+ GObject *source_object;
+ source_object = g_async_result_get_source_object (res);
+ ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error);
+ g_object_unref (source_object);
+ if (ret != NULL)
+ return SSO_IDENTITY (ret);
+ else
+ return NULL;
+}
+
+/**
+ * sso_identity_proxy_new_for_bus_sync:
+ * @bus_type: A #GBusType.
+ * @flags: Flags from the #GDBusProxyFlags enumeration.
+ * @name: A bus name (well-known or unique).
+ * @object_path: An object path.
+ * @cancellable: (allow-none): A #GCancellable or %NULL.
+ * @error: Return location for error or %NULL
+ *
+ * Like sso_identity_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.
+ *
+ * The calling thread is blocked until a reply is received.
+ *
+ * See sso_identity_proxy_new_for_bus() for the asynchronous version of this constructor.
+ *
+ * Returns: (transfer full) (type SsoIdentityProxy): The constructed proxy object or %NULL if @error is set.
+ */
+SsoIdentity *
+sso_identity_proxy_new_for_bus_sync (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error)
+{
+ GInitable *ret;
+ ret = g_initable_new (TYPE_SSO_IDENTITY_PROXY, cancellable, error, "g-flags", flags, "g-name", name, "g-bus-type", bus_type, "g-object-path", object_path, "g-interface-name", "com.google.code.AccountsSSO.gSingleSignOn.Identity", NULL);
+ if (ret != NULL)
+ return SSO_IDENTITY (ret);
+ else
+ return NULL;
+}
+
+
+/* ------------------------------------------------------------------------ */
+
+/**
+ * SsoIdentitySkeleton:
+ *
+ * The #SsoIdentitySkeleton structure contains only private data and should only be accessed using the provided API.
+ */
+
+/**
+ * SsoIdentitySkeletonClass:
+ * @parent_class: The parent class.
+ *
+ * Class structure for #SsoIdentitySkeleton.
+ */
+
+struct _SsoIdentitySkeletonPrivate
+{
+ GValue *properties;
+ GList *changed_properties;
+ GSource *changed_properties_idle_source;
+ GMainContext *context;
+ GMutex lock;
+};
+
+static void
+_sso_identity_skeleton_handle_method_call (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *method_name,
+ GVariant *parameters,
+ GDBusMethodInvocation *invocation,
+ gpointer user_data)
+{
+ SsoIdentitySkeleton *skeleton = SSO_IDENTITY_SKELETON (user_data);
+ _ExtendedGDBusMethodInfo *info;
+ GVariantIter iter;
+ GVariant *child;
+ GValue *paramv;
+ guint num_params;
+ guint num_extra;
+ guint n;
+ guint signal_id;
+ GValue return_value = G_VALUE_INIT;
+ info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation);
+ g_assert (info != NULL);
+ num_params = g_variant_n_children (parameters);
+ num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra);
+ n = 0;
+ g_value_init (¶mv[n], TYPE_SSO_IDENTITY);
+ g_value_set_object (¶mv[n++], skeleton);
+ g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION);
+ g_value_set_object (¶mv[n++], invocation);
+ if (info->pass_fdlist)
+ {
+#ifdef G_OS_UNIX
+ g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST);
+ g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation)));
+#else
+ g_assert_not_reached ();
+#endif
+ }
+ g_variant_iter_init (&iter, parameters);
+ while ((child = g_variant_iter_next_value (&iter)) != NULL)
+ {
+ _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra];
+ if (arg_info->use_gvariant)
+ {
+ g_value_init (¶mv[n], G_TYPE_VARIANT);
+ g_value_set_variant (¶mv[n], child);
+ n++;
+ }
+ else
+ g_dbus_gvariant_to_gvalue (child, ¶mv[n++]);
+ g_variant_unref (child);
+ }
+ signal_id = g_signal_lookup (info->signal_name, TYPE_SSO_IDENTITY);
+ g_value_init (&return_value, G_TYPE_BOOLEAN);
+ g_signal_emitv (paramv, signal_id, 0, &return_value);
+ if (!g_value_get_boolean (&return_value))
+ g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD, "Method %s is not implemented on interface %s", method_name, interface_name);
+ g_value_unset (&return_value);
+ for (n = 0; n < num_params + num_extra; n++)
+ g_value_unset (¶mv[n]);
+ g_free (paramv);
+}
+
+static GVariant *
+_sso_identity_skeleton_handle_get_property (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *property_name,
+ GError **error,
+ gpointer user_data)
+{
+ SsoIdentitySkeleton *skeleton = SSO_IDENTITY_SKELETON (user_data);
+ GValue value = G_VALUE_INIT;
+ GParamSpec *pspec;
+ _ExtendedGDBusPropertyInfo *info;
+ GVariant *ret;
+ ret = NULL;
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_identity_interface_info, property_name);
+ g_assert (info != NULL);
+ pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
+ if (pspec == NULL)
+ {
+ g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
+ }
+ else
+ {
+ g_value_init (&value, pspec->value_type);
+ g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value);
+ ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature));
+ g_value_unset (&value);
+ }
+ return ret;
+}
+
+static gboolean
+_sso_identity_skeleton_handle_set_property (
+ GDBusConnection *connection,
+ const gchar *sender,
+ const gchar *object_path,
+ const gchar *interface_name,
+ const gchar *property_name,
+ GVariant *variant,
+ GError **error,
+ gpointer user_data)
+{
+ SsoIdentitySkeleton *skeleton = SSO_IDENTITY_SKELETON (user_data);
+ GValue value = G_VALUE_INIT;
+ GParamSpec *pspec;
+ _ExtendedGDBusPropertyInfo *info;
+ gboolean ret;
+ ret = FALSE;
+ info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_sso_identity_interface_info, property_name);
+ g_assert (info != NULL);
+ pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name);
+ if (pspec == NULL)
+ {
+ g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name);
+ }
+ else
+ {
+ if (info->use_gvariant)
+ g_value_set_variant (&value, variant);
+ else
+ g_dbus_gvariant_to_gvalue (variant, &value);
+ g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value);
+ g_value_unset (&value);
+ ret = TRUE;
+ }
+ return ret;
+}
+
+static const GDBusInterfaceVTable _sso_identity_skeleton_vtable =
+{
+ _sso_identity_skeleton_handle_method_call,
+ _sso_identity_skeleton_handle_get_property,
+ _sso_identity_skeleton_handle_set_property
+};
+
+static GDBusInterfaceInfo *
+sso_identity_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton)
+{
+ return sso_identity_interface_info ();
+}
+
+static GDBusInterfaceVTable *
+sso_identity_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton)
+{
+ return (GDBusInterfaceVTable *) &_sso_identity_skeleton_vtable;
+}
+
+static GVariant *
+sso_identity_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton)
+{
+ SsoIdentitySkeleton *skeleton = SSO_IDENTITY_SKELETON (_skeleton);
+
+ GVariantBuilder builder;
+ guint n;
+ g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}"));
+ if (_sso_identity_interface_info.parent_struct.properties == NULL)
+ goto out;
+ for (n = 0; _sso_identity_interface_info.parent_struct.properties[n] != NULL; n++)
+ {
+ GDBusPropertyInfo *info = _sso_identity_interface_info.parent_struct.properties[n];
+ if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE)
+ {
+ GVariant *value;
+ value = _sso_identity_skeleton_handle_get_property (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)), NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.google.code.AccountsSSO.gSingleSignOn.Identity", info->name, NULL, skeleton);
+ if (value != NULL)
+ {
+ g_variant_take_ref (value);
+ g_variant_builder_add (&builder, "{sv}", info->name, value);
+ g_variant_unref (value);
+ }
+ }
+ }
+out:
+ return g_variant_builder_end (&builder);
+}
+
+static void
+sso_identity_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton)
+{
+}
+
+static void
+_sso_identity_on_signal_unregistered (
+ SsoIdentity *object)
+{
+ SsoIdentitySkeleton *skeleton = SSO_IDENTITY_SKELETON (object);
+
+ GList *connections, *l;
+ GVariant *signal_variant;
+ connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton));
+
+ signal_variant = g_variant_ref_sink (g_variant_new ("()"));
+ for (l = connections; l != NULL; l = l->next)
+ {
+ GDBusConnection *connection = l->data;
+ g_dbus_connection_emit_signal (connection,
+ NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.google.code.AccountsSSO.gSingleSignOn.Identity", "unregistered",
+ signal_variant, NULL);
+ }
+ g_variant_unref (signal_variant);
+ g_list_free_full (connections, g_object_unref);
+}
+
+static void
+_sso_identity_on_signal_info_updated (
+ SsoIdentity *object,
+ gint arg_unnamed_arg0)
+{
+ SsoIdentitySkeleton *skeleton = SSO_IDENTITY_SKELETON (object);
+
+ GList *connections, *l;
+ GVariant *signal_variant;
+ connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton));
+
+ signal_variant = g_variant_ref_sink (g_variant_new ("(i)",
+ arg_unnamed_arg0));
+ for (l = connections; l != NULL; l = l->next)
+ {
+ GDBusConnection *connection = l->data;
+ g_dbus_connection_emit_signal (connection,
+ NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.google.code.AccountsSSO.gSingleSignOn.Identity", "infoUpdated",
+ signal_variant, NULL);
+ }
+ g_variant_unref (signal_variant);
+ g_list_free_full (connections, g_object_unref);
+}
+
+static void sso_identity_skeleton_iface_init (SsoIdentityIface *iface);
+G_DEFINE_TYPE_WITH_CODE (SsoIdentitySkeleton, sso_identity_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON,
+ G_IMPLEMENT_INTERFACE (TYPE_SSO_IDENTITY, sso_identity_skeleton_iface_init));
+
+static void
+sso_identity_skeleton_finalize (GObject *object)
+{
+ SsoIdentitySkeleton *skeleton = SSO_IDENTITY_SKELETON (object);
+ g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free);
+ if (skeleton->priv->changed_properties_idle_source != NULL)
+ g_source_destroy (skeleton->priv->changed_properties_idle_source);
+ g_main_context_unref (skeleton->priv->context);
+ g_mutex_clear (&skeleton->priv->lock);
+ G_OBJECT_CLASS (sso_identity_skeleton_parent_class)->finalize (object);
+}
+
+static void
+sso_identity_skeleton_init (SsoIdentitySkeleton *skeleton)
+{
+ skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_SSO_IDENTITY_SKELETON, SsoIdentitySkeletonPrivate);
+ g_mutex_init (&skeleton->priv->lock);
+ skeleton->priv->context = g_main_context_ref_thread_default ();
+}
+
+static void
+sso_identity_skeleton_class_init (SsoIdentitySkeletonClass *klass)
+{
+ GObjectClass *gobject_class;
+ GDBusInterfaceSkeletonClass *skeleton_class;
+
+ g_type_class_add_private (klass, sizeof (SsoIdentitySkeletonPrivate));
+
+ gobject_class = G_OBJECT_CLASS (klass);
+ gobject_class->finalize = sso_identity_skeleton_finalize;
+
+ skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass);
+ skeleton_class->get_info = sso_identity_skeleton_dbus_interface_get_info;
+ skeleton_class->get_properties = sso_identity_skeleton_dbus_interface_get_properties;
+ skeleton_class->flush = sso_identity_skeleton_dbus_interface_flush;
+ skeleton_class->get_vtable = sso_identity_skeleton_dbus_interface_get_vtable;
+}
+
+static void
+sso_identity_skeleton_iface_init (SsoIdentityIface *iface)
+{
+ iface->unregistered = _sso_identity_on_signal_unregistered;
+ iface->info_updated = _sso_identity_on_signal_info_updated;
+}
+
+/**
+ * sso_identity_skeleton_new:
+ *
+ * Creates a skeleton object for the D-Bus interface <link linkend="gdbus-interface-com-google-code-AccountsSSO-gSingleSignOn-Identity.top_of_page">com.google.code.AccountsSSO.gSingleSignOn.Identity</link>.
+ *
+ * Returns: (transfer full) (type SsoIdentitySkeleton): The skeleton object.
+ */
+SsoIdentity *
+sso_identity_skeleton_new (void)
+{
+ return SSO_IDENTITY (g_object_new (TYPE_SSO_IDENTITY_SKELETON, NULL));
+}
+
--- /dev/null
+/*
+ * Generated by gdbus-codegen 2.32.4. DO NOT EDIT.
+ *
+ * The license of this code is the same as for the source it was derived from.
+ */
+
+#ifndef __SSO_IDENTITY_GEN_H__
+#define __SSO_IDENTITY_GEN_H__
+
+#include <gio/gio.h>
+
+G_BEGIN_DECLS
+
+
+/* ------------------------------------------------------------------------ */
+/* Declarations for com.google.code.AccountsSSO.gSingleSignOn.Identity */
+
+#define TYPE_SSO_IDENTITY (sso_identity_get_type ())
+#define SSO_IDENTITY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_IDENTITY, SsoIdentity))
+#define IS_SSO_IDENTITY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_IDENTITY))
+#define SSO_IDENTITY_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_SSO_IDENTITY, SsoIdentityIface))
+
+struct _SsoIdentity;
+typedef struct _SsoIdentity SsoIdentity;
+typedef struct _SsoIdentityIface SsoIdentityIface;
+
+struct _SsoIdentityIface
+{
+ GTypeInterface parent_iface;
+
+
+ gboolean (*handle_add_reference) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *arg_reference);
+
+ gboolean (*handle_get_auth_session) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *arg_method);
+
+ gboolean (*handle_get_info) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_remove) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_remove_reference) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *arg_reference);
+
+ gboolean (*handle_request_credentials_update) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *arg_message);
+
+ gboolean (*handle_sign_out) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation);
+
+ gboolean (*handle_store) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *arg_unnamed_arg0);
+
+ gboolean (*handle_verify_secret) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *arg_secret);
+
+ gboolean (*handle_verify_user) (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *arg_params);
+
+ void (*info_updated) (
+ SsoIdentity *object,
+ gint arg_unnamed_arg0);
+
+ void (*unregistered) (
+ SsoIdentity *object);
+
+};
+
+GType sso_identity_get_type (void) G_GNUC_CONST;
+
+GDBusInterfaceInfo *sso_identity_interface_info (void);
+guint sso_identity_override_properties (GObjectClass *klass, guint property_id_begin);
+
+
+/* D-Bus method call completion functions: */
+void sso_identity_complete_request_credentials_update (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ guint unnamed_arg1);
+
+void sso_identity_complete_get_info (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ GVariant *identityInfo);
+
+void sso_identity_complete_get_auth_session (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ const gchar *objectPath);
+
+void sso_identity_complete_verify_user (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gboolean unnamed_arg1);
+
+void sso_identity_complete_verify_secret (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gboolean unnamed_arg1);
+
+void sso_identity_complete_remove (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation);
+
+void sso_identity_complete_sign_out (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gboolean unnamed_arg0);
+
+void sso_identity_complete_store (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ guint unnamed_arg1);
+
+void sso_identity_complete_add_reference (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gint unnamed_arg1);
+
+void sso_identity_complete_remove_reference (
+ SsoIdentity *object,
+ GDBusMethodInvocation *invocation,
+ gint unnamed_arg1);
+
+
+
+/* D-Bus signal emissions functions: */
+void sso_identity_emit_unregistered (
+ SsoIdentity *object);
+
+void sso_identity_emit_info_updated (
+ SsoIdentity *object,
+ gint arg_unnamed_arg0);
+
+
+
+/* D-Bus method calls: */
+void sso_identity_call_request_credentials_update (
+ SsoIdentity *proxy,
+ const gchar *arg_message,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_request_credentials_update_finish (
+ SsoIdentity *proxy,
+ guint *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_request_credentials_update_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_message,
+ guint *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_get_info (
+ SsoIdentity *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_get_info_finish (
+ SsoIdentity *proxy,
+ GVariant **out_identityInfo,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_get_info_sync (
+ SsoIdentity *proxy,
+ GVariant **out_identityInfo,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_get_auth_session (
+ SsoIdentity *proxy,
+ const gchar *arg_method,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_get_auth_session_finish (
+ SsoIdentity *proxy,
+ gchar **out_objectPath,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_get_auth_session_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_method,
+ gchar **out_objectPath,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_verify_user (
+ SsoIdentity *proxy,
+ GVariant *arg_params,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_verify_user_finish (
+ SsoIdentity *proxy,
+ gboolean *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_verify_user_sync (
+ SsoIdentity *proxy,
+ GVariant *arg_params,
+ gboolean *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_verify_secret (
+ SsoIdentity *proxy,
+ const gchar *arg_secret,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_verify_secret_finish (
+ SsoIdentity *proxy,
+ gboolean *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_verify_secret_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_secret,
+ gboolean *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_remove (
+ SsoIdentity *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_remove_finish (
+ SsoIdentity *proxy,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_remove_sync (
+ SsoIdentity *proxy,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_sign_out (
+ SsoIdentity *proxy,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_sign_out_finish (
+ SsoIdentity *proxy,
+ gboolean *out_unnamed_arg0,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_sign_out_sync (
+ SsoIdentity *proxy,
+ gboolean *out_unnamed_arg0,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_store (
+ SsoIdentity *proxy,
+ GVariant *arg_unnamed_arg0,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_store_finish (
+ SsoIdentity *proxy,
+ guint *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_store_sync (
+ SsoIdentity *proxy,
+ GVariant *arg_unnamed_arg0,
+ guint *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_add_reference (
+ SsoIdentity *proxy,
+ const gchar *arg_reference,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_add_reference_finish (
+ SsoIdentity *proxy,
+ gint *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_add_reference_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_reference,
+ gint *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_call_remove_reference (
+ SsoIdentity *proxy,
+ const gchar *arg_reference,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean sso_identity_call_remove_reference_finish (
+ SsoIdentity *proxy,
+ gint *out_unnamed_arg1,
+ GAsyncResult *res,
+ GError **error);
+
+gboolean sso_identity_call_remove_reference_sync (
+ SsoIdentity *proxy,
+ const gchar *arg_reference,
+ gint *out_unnamed_arg1,
+ GCancellable *cancellable,
+ GError **error);
+
+
+
+/* ---- */
+
+#define TYPE_SSO_IDENTITY_PROXY (sso_identity_proxy_get_type ())
+#define SSO_IDENTITY_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_IDENTITY_PROXY, SsoIdentityProxy))
+#define SSO_IDENTITY_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_SSO_IDENTITY_PROXY, SsoIdentityProxyClass))
+#define SSO_IDENTITY_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_SSO_IDENTITY_PROXY, SsoIdentityProxyClass))
+#define IS_SSO_IDENTITY_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_IDENTITY_PROXY))
+#define IS_SSO_IDENTITY_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_SSO_IDENTITY_PROXY))
+
+typedef struct _SsoIdentityProxy SsoIdentityProxy;
+typedef struct _SsoIdentityProxyClass SsoIdentityProxyClass;
+typedef struct _SsoIdentityProxyPrivate SsoIdentityProxyPrivate;
+
+struct _SsoIdentityProxy
+{
+ /*< private >*/
+ GDBusProxy parent_instance;
+ SsoIdentityProxyPrivate *priv;
+};
+
+struct _SsoIdentityProxyClass
+{
+ GDBusProxyClass parent_class;
+};
+
+GType sso_identity_proxy_get_type (void) G_GNUC_CONST;
+
+void sso_identity_proxy_new (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+SsoIdentity *sso_identity_proxy_new_finish (
+ GAsyncResult *res,
+ GError **error);
+SsoIdentity *sso_identity_proxy_new_sync (
+ GDBusConnection *connection,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+void sso_identity_proxy_new_for_bus (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+SsoIdentity *sso_identity_proxy_new_for_bus_finish (
+ GAsyncResult *res,
+ GError **error);
+SsoIdentity *sso_identity_proxy_new_for_bus_sync (
+ GBusType bus_type,
+ GDBusProxyFlags flags,
+ const gchar *name,
+ const gchar *object_path,
+ GCancellable *cancellable,
+ GError **error);
+
+
+/* ---- */
+
+#define TYPE_SSO_IDENTITY_SKELETON (sso_identity_skeleton_get_type ())
+#define SSO_IDENTITY_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SSO_IDENTITY_SKELETON, SsoIdentitySkeleton))
+#define SSO_IDENTITY_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_SSO_IDENTITY_SKELETON, SsoIdentitySkeletonClass))
+#define SSO_IDENTITY_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_SSO_IDENTITY_SKELETON, SsoIdentitySkeletonClass))
+#define IS_SSO_IDENTITY_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SSO_IDENTITY_SKELETON))
+#define IS_SSO_IDENTITY_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_SSO_IDENTITY_SKELETON))
+
+typedef struct _SsoIdentitySkeleton SsoIdentitySkeleton;
+typedef struct _SsoIdentitySkeletonClass SsoIdentitySkeletonClass;
+typedef struct _SsoIdentitySkeletonPrivate SsoIdentitySkeletonPrivate;
+
+struct _SsoIdentitySkeleton
+{
+ /*< private >*/
+ GDBusInterfaceSkeleton parent_instance;
+ SsoIdentitySkeletonPrivate *priv;
+};
+
+struct _SsoIdentitySkeletonClass
+{
+ GDBusInterfaceSkeletonClass parent_class;
+};
+
+GType sso_identity_skeleton_get_type (void) G_GNUC_CONST;
+
+SsoIdentity *sso_identity_skeleton_new (void);
+
+
+G_END_DECLS
+
+#endif /* __SSO_IDENTITY_GEN_H__ */
+++ /dev/null
-../dists/rpm/libgsignon-glib-tizen.changes
\ No newline at end of file
--- /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
-../dists/rpm/libgsignon-glib-tizen.spec
\ No newline at end of file
--- /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: 1
+Group: System/Libraries
+License: LGPL-2.1
+Source: %{name}-%{version}.tar.gz
+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: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description devel
+%{summary}.
+
+
+%prep
+%setup -q -n %{name}-%{version}
+
+
+%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,-)
+%doc AUTHORS COPYING ChangeLog INSTALL NEWS README
+%{_libdir}/%{name}.so.*
+
+
+%files devel
+%defattr(-,root,root,-)
+%{_includedir}/%{name}/*.h
+%{_libdir}/%{name}.so
+%{_libdir}/pkgconfig/%{name}.pc
+%{_datadir}/gtk-doc/html/%{name}/*
+%{_bindir}/gsso-example
+
static void
_setup ()
{
+#if !GLIB_CHECK_VERSION (2, 36, 0)
g_type_init ();
+#endif
if (main_loop == NULL) {
main_loop = g_main_loop_new (NULL, FALSE);
}
GHashTable *methods;
guint id = 0;
- idty = signon_identity_new (NULL);
+ idty = signon_identity_new ();
fail_unless (SIGNON_IS_IDENTITY (idty));
methods = g_hash_table_new (g_str_hash, g_str_equal);
g_hash_table_insert (methods, "ssotest", ssotest_mechanisms);
GError *err = NULL;
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new(NULL);
+ SignonIdentity *idty = signon_identity_new();
fail_unless (idty != NULL, "Cannot create Iddentity object");
SignonAuthSession *auth_session = signon_identity_create_session(idty,
GError *err = NULL;
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new(NULL);
+ SignonIdentity *idty = signon_identity_new();
fail_unless (idty != NULL, "Cannot create Iddentity object");
SignonAuthSession *auth_session = signon_identity_create_session(idty,
gboolean auth_sess_destroyed = FALSE;
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new(NULL);
+ SignonIdentity *idty = signon_identity_new();
fail_unless (idty != NULL, "Cannot create Identity object");
SignonAuthSession *auth_session = signon_identity_create_session(idty,
GError *err = NULL;
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new(NULL);
+ SignonIdentity *idty = signon_identity_new();
fail_unless (idty != NULL, "Cannot create Iddentity object");
SignonAuthSession *auth_session = signon_identity_create_session(idty,
fail_unless (id != 0);
- idty = signon_identity_new_from_db (id, NULL);
+ idty = signon_identity_new_from_db (id);
fail_unless (idty != NULL, "Cannot create Identity object");
- auth_session = signon_auth_session_new (G_OBJECT (idty),
- "ssotest",
- &error);
+ auth_session = signon_auth_session_new_for_identity (idty,
+ "ssotest",
+ &error);
fail_unless (auth_session != NULL, "Cannot create AuthSession object");
fail_unless (error == NULL);
g_debug("%s", G_STRFUNC);
- idty = signon_identity_new (NULL);
+ idty = signon_identity_new ();
fail_unless (SIGNON_IS_IDENTITY (idty),
"Failed to initialize the Identity.");
fail_unless (id != 0);
- identity = signon_identity_new_from_db (id, NULL);
+ identity = signon_identity_new_from_db (id);
fail_unless (identity != NULL);
fail_unless (SIGNON_IS_IDENTITY (identity),
START_TEST(test_get_nonexisting_identity)
{
g_debug("%s", G_STRFUNC);
- identity = signon_identity_new_from_db (G_MAXINT, NULL);
+ identity = signon_identity_new_from_db (G_MAXINT);
fail_unless (identity != NULL);
fail_unless (SIGNON_IS_IDENTITY (identity),
START_TEST(test_store_credentials_identity)
{
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new(NULL);
+ SignonIdentity *idty = signon_identity_new();
fail_unless (idty != NULL);
fail_unless (SIGNON_IS_IDENTITY (idty),
"Failed to initialize the Identity.");
START_TEST(test_remove_identity)
{
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new (NULL);
+ SignonIdentity *idty = signon_identity_new ();
fail_unless (idty != NULL);
fail_unless (SIGNON_IS_IDENTITY (idty),
"Failed to initialize the Identity.");
* */
gint id = new_identity();
- SignonIdentity *idty2 = signon_identity_new_from_db (id, NULL);
+ SignonIdentity *idty2 = signon_identity_new_from_db (id);
signon_identity_remove(idty2, identity_remove_cb, NULL);
_run_mainloop ();
return present;
}
-static void identity_info_cb(SignonIdentity *self, const SignonIdentityInfo *info, const GError *error, gpointer user_data)
+static void identity_info_cb(SignonIdentity *self, SignonIdentityInfo *info, const GError *error, gpointer user_data)
{
if (error)
{
START_TEST(test_info_identity)
{
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new (NULL);
+ SignonIdentity *idty = signon_identity_new ();
fail_unless (idty != NULL);
fail_unless (SIGNON_IS_IDENTITY (idty),
"Failed to initialize the Identity.");
gint id = signon_identity_info_get_id (info);
fail_unless (id != 0);
- SignonIdentity *idty2 = signon_identity_new_from_db (id, NULL);
+ SignonIdentity *idty2 = signon_identity_new_from_db (id);
signon_identity_query_info (idty2, identity_info_cb, &info);
_run_mainloop ();
{
gboolean as1_destroyed = FALSE, as2_destroyed = FALSE;
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new (NULL);
+ SignonIdentity *idty = signon_identity_new ();
fail_unless (idty != NULL);
fail_unless (SIGNON_IS_IDENTITY (idty),
"Failed to initialize the Identity.");
_run_mainloop ();
gint id = signon_identity_info_get_id (info);
- SignonIdentity *idty2 = signon_identity_new_from_db (id, NULL);
+ SignonIdentity *idty2 = signon_identity_new_from_db (id);
/* wait some more time to ensure that the object gets registered */
g_timeout_add_seconds (2, test_quit_main_loop_cb, main_loop);
START_TEST(test_unregistered_identity)
{
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new (NULL);
+ SignonIdentity *idty = signon_identity_new ();
fail_unless (idty != NULL);
fail_unless (SIGNON_IS_IDENTITY (idty),
"Failed to initialize the Identity.");
* give the time for identity to became idle
* */
sleep(SIGNOND_IDLE_TIMEOUT);
- SignonIdentity *idty2 = signon_identity_new (NULL);
+ SignonIdentity *idty2 = signon_identity_new ();
/*
* give time to handle unregistered signal
START_TEST(test_unregistered_auth_session)
{
g_debug("%s", G_STRFUNC);
- SignonIdentity *idty = signon_identity_new (NULL);
+ SignonIdentity *idty = signon_identity_new ();
fail_unless (idty != NULL);
fail_unless (SIGNON_IS_IDENTITY (idty),
"Failed to initialize the Identity.");
* give the time for identity to became idle
* */
sleep(SIGNOND_IDLE_TIMEOUT);
- SignonIdentity *idty2 = signon_identity_new (NULL);
+ SignonIdentity *idty2 = signon_identity_new ();
/*
* give time to handle unregistered signal
guint id = new_identity();
fail_unless (id != 0);
- idty = signon_identity_new_from_db (id, NULL);
+ idty = signon_identity_new_from_db (id);
fail_unless (idty != NULL);
- auth_session = signon_auth_session_new (G_OBJECT (idty), "ssotest",
- &error);
+ auth_session = signon_auth_session_new_for_identity (idty, "ssotest",
+ &error);
fail_unless (auth_session != NULL);
session_data = g_hash_table_new (g_str_hash, g_str_equal);