From 7895bb8989684b4bec6e3a05c1287c94b47ee65e Mon Sep 17 00:00:00 2001 From: Imran Zaman Date: Mon, 25 Nov 2013 17:08:24 +0200 Subject: [PATCH] Release 2.0.3 Change-Id: I53c8ff52f4ebab8b0b3ae2c28a2ed00121460226 --- ChangeLog | 116 ++++ Makefile.in | 27 +- configure | 50 +- configure.ac | 5 +- dists/debian/rules | 0 dists/rpm/libgsignon-glib-suse.spec | 9 +- dists/rpm/libgsignon-glib-tizen.changes | 3 + dists/rpm/libgsignon-glib-tizen.spec | 8 +- docs/reference/Makefile.am | 2 +- docs/reference/Makefile.in | 16 +- docs/reference/html/SignonAuthSession.html | 99 ++- docs/reference/html/SignonIdentityInfo.html | 200 +++++- docs/reference/html/SignonSecurityContext.html | 319 +++++---- docs/reference/html/annotation-glossary.html | 2 +- docs/reference/html/api-index-1-8.html | 2 +- docs/reference/html/api-index-deprecated.html | 2 +- docs/reference/html/api-index-full.html | 100 +-- docs/reference/html/appendices.html | 8 +- docs/reference/html/credential-management.html | 16 +- ...code.AccountsSSO.gSingleSignOn.AuthService.html | 264 ------- ...code.AccountsSSO.gSingleSignOn.AuthSession.html | 167 ----- ...le.code.AccountsSSO.gSingleSignOn.Identity.html | 305 --------- docs/reference/html/gsso-examples.html | 199 ++++++ docs/reference/html/gsso-intro.html | 104 +++ docs/reference/html/index.html | 45 +- docs/reference/html/index.sgml | 318 ++++----- ...html => libgsignon-glib-SignonAuthService.html} | 250 ++++--- ...Error.html => libgsignon-glib-SignonError.html} | 54 +- ...ty.html => libgsignon-glib-SignonIdentity.html} | 759 ++++++++++----------- docs/reference/html/libgsignon-glib-objects.html | 16 +- docs/reference/html/libgsignon-glib-overview.html | 24 +- docs/reference/html/libgsignon-glib.devhelp2 | 269 ++++---- docs/reference/html/object-tree.html | 7 - docs/reference/html/signond-dbus-api.html | 52 -- docs/reference/libgsignon-glib-sections.txt | 162 +++++ docs/reference/libgsignon-glib.types | 3 - examples/Makefile.in | 590 ++++++++++++++++ tests/check_signon.c | 5 +- tools/prepare-tizen.sh | 4 +- 39 files changed, 2580 insertions(+), 2001 deletions(-) mode change 100644 => 100755 dists/debian/rules delete mode 100644 docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.AuthService.html delete mode 100644 docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.AuthSession.html delete mode 100644 docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.Identity.html create mode 100644 docs/reference/html/gsso-examples.html create mode 100644 docs/reference/html/gsso-intro.html rename docs/reference/html/{SignonAuthService.html => libgsignon-glib-SignonAuthService.html} (62%) rename docs/reference/html/{SignonError.html => libgsignon-glib-SignonError.html} (81%) rename docs/reference/html/{SignonIdentity.html => libgsignon-glib-SignonIdentity.html} (56%) delete mode 100644 docs/reference/html/signond-dbus-api.html create mode 100644 docs/reference/libgsignon-glib-sections.txt create mode 100644 examples/Makefile.in diff --git a/ChangeLog b/ChangeLog index bd017e5..0efed50 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,119 @@ +2013-11-25 Imran Zaman + +Release 2.0.3 + +2013-11-25 Jussi Laako + +test: update test to better test access control cases + +2013-11-25 Jussi Laako + +configure: depend on gthread (needed on Debian Jessie at least) + +2013-11-22 Alexander Kanavin + +docs: added missing files to dist tarball + +2013-11-22 Imran Zaman + +Release 2.0.2 + +2013-11-06 Jussi Laako + +doc: change a sentence to say what it was intended to say... + +2013-11-05 Alexander Kanavin + +docs: fix up grammar + +2013-11-05 Jussi Laako + +example: fix function prototypes + +2013-11-05 Jussi Laako + +doc: fix documentation to match intended behavior + +2013-09-05 Alexander Kanavin + +docs: remove all autogenerated files with 'make clean' + +2013-09-04 Alexander Kanavin + +docs: rearrange APIs in more logical order + +2013-09-04 Alexander Kanavin + +docs: update documentation of SignonSecurityContext + +2013-09-04 Alexander Kanavin + +docs: update documentation of SignonIdentityInfo + +2013-09-04 Alexander Kanavin + +docs: update documentation of SignonIdentity + +2013-09-04 Alexander Kanavin + +docs: fix assorted warnings + +2013-09-04 Alexander Kanavin + +docs: fix up SignonError + +2013-09-04 Alexander Kanavin + +docs: fix up SignonAuthSession + +2013-09-04 Alexander Kanavin + +docs: fix up SignonAuthService docs + +2013-09-04 Alexander Kanavin + +docs: remove autogenerated libgsignon-glib-sections.txt file + +2013-09-04 Alexander Kanavin + +docs: drop irrelevant d-bus api reference + +2013-09-04 Alexander Kanavin + +docs: add introduction chapter + +2013-08-28 Alexander Kanavin + +docs: add a gSSO examples chapter + +2013-08-28 Alexander Kanavin + +examples: initial commit + +2013-08-23 Alexander Kanavin + +docs: add the documentation URL and a makefile recipe for documentation updates + +2013-07-10 Jussi Laako + +packaging: build debuginfo and debugsource packages on suse + +2013-07-10 Jussi Laako + +packaging: create debug package on debian/ubuntu + +2013-07-04 Jussi Laako + +packaging: add ubuntu/debian packaging + +2013-06-28 Jussi Laako + +packaging: require feature "gsignon" and update license tag + +2013-06-24 Imran Zaman + +Removes the stale files if deleted from the git repo + 2013-06-24 Imran Zaman Release 2.0.1 diff --git a/Makefile.in b/Makefile.in index 9c457e7..88cf522 100644 --- a/Makefile.in +++ b/Makefile.in @@ -109,7 +109,7 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags -DIST_SUBDIRS = libgsignon-glib docs pygobject tests +DIST_SUBDIRS = libgsignon-glib docs examples pygobject tests DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -302,7 +302,8 @@ AM_DISTCHECK_CONFIGURE_FLAGS = \ --enable-gtk-doc \ --enable-introspection=yes -SUBDIRS = libgsignon-glib docs $(am__append_1) $(am__append_2) +SUBDIRS = libgsignon-glib docs examples $(am__append_1) \ + $(am__append_2) pkgconfigdir = $(libdir)/pkgconfig pkgconfig_in_files = libgsignon-glib.pc.in pkgconfig_DATA = $(pkgconfig_in_files:.pc.in=.pc) @@ -856,6 +857,9 @@ uninstall-am: uninstall-pkgconfigDATA dist-hook: git-changelog-hook + @echo + @echo "==== Run 'make update-online-doc' to update online documentation ====" + @echo git-changelog-hook: Makefile $(AM_V_at)if $(top_srcdir)/build-aux/missing --run git \ @@ -870,6 +874,25 @@ valgrind: .PHONY: git-changelog-hook +update-online-doc: + @tar zxf $(PACKAGE)-$(VERSION).tar.gz && \ + pushd . > /dev/null && \ + cd .. && \ + git clone https://code.google.com/p/accounts-sso.gsignon-docs/ ; \ + cd accounts-sso.gsignon-docs && \ + git pull ; \ + mkdir -p $(PACKAGE) && \ + rm -rf $(PACKAGE)/* && \ + popd > /dev/null && \ + cp -rf $(PACKAGE)-$(VERSION)/docs/reference/html/* ../accounts-sso.gsignon-docs/$(PACKAGE)/ && \ + pushd . > /dev/null && \ + cd ../accounts-sso.gsignon-docs && \ + git add $(PACKAGE)/* && \ + git commit -m "Updated documentation for $(PACKAGE) to version $(VERSION)" && \ + git push ; \ + popd > /dev/null && \ + rm -rf $(PACKAGE)-$(VERSION) + # 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: diff --git a/configure b/configure index 1a774ab..9e06377 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68 for libgsignon-glib 2.0.1. +# Generated by GNU Autoconf 2.68 for libgsignon-glib 2.0.3. # # Report bugs to . # @@ -571,8 +571,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='libgsignon-glib' PACKAGE_TARNAME='libgsignon-glib' -PACKAGE_VERSION='2.0.1' -PACKAGE_STRING='libgsignon-glib 2.0.1' +PACKAGE_VERSION='2.0.3' +PACKAGE_STRING='libgsignon-glib 2.0.3' PACKAGE_BUGREPORT='http://code.google.com/p/accounts-sso/issues/entry' PACKAGE_URL='http://code.google.com/p/accounts-sso/' @@ -1369,7 +1369,7 @@ if test "$ac_init_help" = "long"; then # 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.1 to adapt to many kinds of systems. +\`configure' configures libgsignon-glib 2.0.3 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1439,7 +1439,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libgsignon-glib 2.0.1:";; + short | recursive ) echo "Configuration of libgsignon-glib 2.0.3:";; esac cat <<\_ACEOF @@ -1579,7 +1579,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libgsignon-glib configure 2.0.1 +libgsignon-glib configure 2.0.3 generated by GNU Autoconf 2.68 Copyright (C) 2010 Free Software Foundation, Inc. @@ -1857,7 +1857,7 @@ cat >config.log <<_ACEOF 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.1, which was +It was created by libgsignon-glib $as_me 2.0.3, which was generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -2717,7 +2717,7 @@ fi # Define the identity of the package. PACKAGE='libgsignon-glib' - VERSION='2.0.1' + VERSION='2.0.3' cat >>confdefs.h <<_ACEOF @@ -12230,18 +12230,21 @@ if test -n "$DEPS_CFLAGS"; then { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0\""; } >&5 + gobject-2.0, + gthread-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0") 2>&5 + gobject-2.0, + gthread-2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DEPS_CFLAGS=`$PKG_CONFIG --cflags "gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0" 2>/dev/null` + gobject-2.0, + gthread-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes @@ -12256,18 +12259,21 @@ if test -n "$DEPS_LIBS"; then { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0\""; } >&5 + gobject-2.0, + gthread-2.0\""; } >&5 ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0") 2>&5 + gobject-2.0, + gthread-2.0") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then pkg_cv_DEPS_LIBS=`$PKG_CONFIG --libs "gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0" 2>/dev/null` + gobject-2.0, + gthread-2.0" 2>/dev/null` test "x$?" != "x0" && pkg_failed=yes else pkg_failed=yes @@ -12291,12 +12297,14 @@ fi DEPS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0" 2>&1` + gobject-2.0, + gthread-2.0" 2>&1` else DEPS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0" 2>&1` + gobject-2.0, + gthread-2.0" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DEPS_PKG_ERRORS" >&5 @@ -12304,7 +12312,8 @@ fi as_fn_error $? "Package requirements (gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0) were not met: + gobject-2.0, + gthread-2.0) were not met: $DEPS_PKG_ERRORS @@ -13172,7 +13181,7 @@ else fi -ac_config_files="$ac_config_files Makefile libgsignon-glib/Makefile libgsignon-glib.pc docs/Makefile docs/reference/Makefile docs/reference/version.xml tests/Makefile pygobject/Makefile" +ac_config_files="$ac_config_files Makefile libgsignon-glib/Makefile libgsignon-glib.pc docs/Makefile docs/reference/Makefile docs/reference/version.xml tests/Makefile pygobject/Makefile examples/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure @@ -13744,7 +13753,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # 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.1, which was +This file was extended by libgsignon-glib $as_me 2.0.3, which was generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -13811,7 +13820,7 @@ _ACEOF 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.1 +libgsignon-glib config.status 2.0.3 configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" @@ -14228,6 +14237,7 @@ do "docs/reference/version.xml") CONFIG_FILES="$CONFIG_FILES docs/reference/version.xml" ;; "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;; "pygobject/Makefile") CONFIG_FILES="$CONFIG_FILES pygobject/Makefile" ;; + "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac diff --git a/configure.ac b/configure.ac index 6c1be71..2cf6a8b 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ dnl Process this file with autoconf to produce a configure script. AC_PREREQ([2.64]) AC_INIT([libgsignon-glib], - [2.0.2], + [2.0.3], [http://code.google.com/p/accounts-sso/issues/entry], [libgsignon-glib], [http://code.google.com/p/accounts-sso/]) @@ -33,7 +33,8 @@ PKG_CHECK_MODULES( [gio-2.0 >= 2.30 gio-unix-2.0 glib-2.0 >= 2.32 - gobject-2.0]) + gobject-2.0, + gthread-2.0]) AC_SUBST(DEPS_CFLAGS) AC_SUBST(DEPS_LIBS) diff --git a/dists/debian/rules b/dists/debian/rules old mode 100644 new mode 100755 diff --git a/dists/rpm/libgsignon-glib-suse.spec b/dists/rpm/libgsignon-glib-suse.spec index c8cb082..ab84170 100644 --- a/dists/rpm/libgsignon-glib-suse.spec +++ b/dists/rpm/libgsignon-glib-suse.spec @@ -3,10 +3,10 @@ Name: libgsignon-glib Summary: GLib API for the SSO framework -Version: 2.0.2 -Release: 4 +Version: 2.0.3 +Release: 1 Group: System/Libraries -License: LGPL-2.1+ +License: LGPL-2.1 Source: %{name}-%{version}.tar.gz URL: https://01.org/gsso Requires: dbus-1 @@ -82,6 +82,9 @@ rm -rf %{buildroot} %changelog +* Mon Nov 25 2013 Imran Zaman +- Release 2.0.3 that fixes unit test and spec file bugs + * Fri Nov 22 2013 Imran Zaman - Release 2.0.2 that fixes package licensing info and added docs diff --git a/dists/rpm/libgsignon-glib-tizen.changes b/dists/rpm/libgsignon-glib-tizen.changes index 6ed2244..edbbf20 100644 --- a/dists/rpm/libgsignon-glib-tizen.changes +++ b/dists/rpm/libgsignon-glib-tizen.changes @@ -1,3 +1,6 @@ +* Mon Nov 25 2013 Imran Zaman +- Release 2.0.3 that fixes unit test and spec file bugs + * Fri Nov 22 2013 Imran Zaman - Release 2.0.2 that fixes package licensing info and added docs diff --git a/dists/rpm/libgsignon-glib-tizen.spec b/dists/rpm/libgsignon-glib-tizen.spec index 51c76cd..739c158 100644 --- a/dists/rpm/libgsignon-glib-tizen.spec +++ b/dists/rpm/libgsignon-glib-tizen.spec @@ -3,10 +3,10 @@ Name: libgsignon-glib Summary: GLib API for the SSO framework -Version: 2.0.2 -Release: 4 +Version: 2.0.3 +Release: 1 Group: System/Libraries -License: LGPL-2.1+ +License: LGPL-2.1 Source: %{name}-%{version}.tar.gz URL: https://01.org/gsso Requires: dbus-1 @@ -69,8 +69,6 @@ rm -rf %{buildroot} %{_includedir}/%{name}/*.h %{_libdir}/%{name}.so %{_libdir}/pkgconfig/%{name}.pc -%{_libdir}/girepository-1.0/gSignon-1.0.typelib -%{_datadir}/gir-1.0/gSignon-1.0.gir %{_datadir}/gtk-doc/html/%{name}/* %{_bindir}/gsso-example diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am index 8790bb0..77140c8 100644 --- a/docs/reference/Makefile.am +++ b/docs/reference/Makefile.am @@ -67,7 +67,7 @@ HTML_IMAGES= # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE). # e.g. content_files=running.sgml building.sgml changes-2.0.sgml -content_files= +content_files=examples.xml introduction.xml # CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library. # Only needed if you are using gtkdoc-scangobj to dynamically query widget diff --git a/docs/reference/Makefile.in b/docs/reference/Makefile.in index 352716e..4adcb65 100644 --- a/docs/reference/Makefile.in +++ b/docs/reference/Makefile.in @@ -242,11 +242,13 @@ SCAN_OPTIONS = --rebuild-types --deprecated-guards="SIGNON_DISABLE_DEPRECATED" # Extra options to supply to gtkdoc-mkdb. # e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml -MKDB_OPTIONS = --source-dir=$(top_srcdir)/libgsignon-glib --sgml-mode --output-format=xml --name-space=signon +MKDB_OPTIONS = --source-dir=$(top_srcdir)/libgsignon-glib --sgml-mode --output-format=xml --name-space=signon \ +--ignore-files="sso-auth-service-gen.c sso-auth-session-gen.c sso-identity-gen.c" + # Extra options to supply to gtkdoc-fixref. Not normally needed. # e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html -FIXXREF_OPTIONS = +FIXXREF_OPTIONS = --extra-dir=../../../accounts-sso.gsignond/docs/html # Used for dependencies. The docs will be rebuilt if any of these change. # e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h @@ -261,14 +263,17 @@ IGNORE_HFILES = \ signon-client-glib-gen.h \ signon-identity-glib-gen.h \ signon-dbus-queue.h \ + signon-enum-types.h \ signon-internals.h \ signon-proxy.h \ + signon-types.h \ signon-utils.h \ signon-marshal.h \ sso-auth-service-gen.h \ sso-auth-service.h \ sso-auth-session-gen.h \ - sso-identity-gen.h + sso-identity-gen.h \ + stamp-signon-enum-types.h # Images to copy into HTML directory. @@ -277,7 +282,7 @@ HTML_IMAGES = # Extra SGML files that are included by $(DOC_MAIN_SGML_FILE). # e.g. content_files=running.sgml building.sgml changes-2.0.sgml -content_files = +content_files = examples.xml introduction.xml # CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library. # Only needed if you are using gtkdoc-scangobj to dynamically query widget @@ -326,7 +331,8 @@ REPORT_FILES = \ $(DOC_MODULE)-undeclared.txt \ $(DOC_MODULE)-unused.txt -CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) +CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) \ + $(DOC_MODULE)-*.txt $(DOC_MODULE).types @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp @ENABLE_GTK_DOC_TRUE@@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = diff --git a/docs/reference/html/SignonAuthSession.html b/docs/reference/html/SignonAuthSession.html index 2f8df17..4e6ad53 100644 --- a/docs/reference/html/SignonAuthSession.html +++ b/docs/reference/html/SignonAuthSession.html @@ -6,19 +6,19 @@ - - + + - + - + - + @@ -224,6 +218,24 @@ Opaque struct. Use the accessor functions below.
+

struct SignonAuthSessionClass

+
struct SignonAuthSessionClass {
+    GObjectClass parent;
+};
+
+

+Opaque struct. Use the accessor functions below. +

+
++ + + + +

GObjectClass parent;

reference to the parent class
+
+
+

SignonAuthSessionProcessCb ()

void                (*SignonAuthSessionProcessCb)       (SignonAuthSession *self,
                                                          GHashTable *session_data,
@@ -297,7 +309,7 @@ Callback to be passed to 
-

enum SignonSessionDataUiPolicy

+

enum SignonSessionDataUiPolicy

typedef enum {
     SIGNON_POLICY_DEFAULT = 0,
     SIGNON_POLICY_REQUEST_PASSWORD,
@@ -306,7 +318,7 @@ Callback to be passed to @@ -387,7 +399,7 @@ the specified method.
 
+SignonIdentity parent object.
@@ -418,11 +430,11 @@ function fails.

signon_auth_session_process has been deprecated since version 1.8 and should not be used in newly-written code. Use signon_auth_session_process_async() instead.

-Performs one step of the authentication process. If the SignonAuthSession -object is bound to an existing identity, the identity properties such as -username and password will be also passed to the authentication plugin, so -there's no need to fill them into session_data. -session_data can be used to add additional authentication parameters to the +Performs one step of the authentication process. If the SignonIdentity 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 +session_data. +session_data should be used to add additional authentication parameters to the session, or to override the parameters otherwise taken from the identity.

parent :

-SignonIdentity parent object.

method_name :

@@ -463,13 +475,19 @@ session, or to override the parameters otherwise taken from the identity. GAsyncReadyCallback callback, gpointer user_data);

-Performs one step of the authentication process. If the SignonAuthSession -object is bound to an existing identity, the identity properties such as -username and password will be also passed to the authentication plugin, so -there's no need to fill them into session_data. -session_data can be used to add additional authentication parameters to the +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. +session_data should be used to add additional authentication parameters to the session, or to override the parameters otherwise taken from the identity.

+

+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. +

@@ -479,7 +497,7 @@ session, or to override the parameters otherwise taken from the identity. - @@ -533,7 +551,11 @@ Collect the result of the Returns :

+authentication reply. As with signon_auth_session_process_async(), specific +parameters contained in the GVariant can be found from plugins' documentation: +"response-final" for the final response, and "response" +for the intermediate responses. See, for example, GSignondPasswordPlugin +and GSignondDigestPlugin.

session_data :

a dictionary of parameters. [transfer floating] +a dictionary of parameters. [transfer full]
a GVariant of type G_VARIANT_TYPE_VARDICT containing the -authentication reply.
@@ -548,9 +570,10 @@ authentication reply. SignonAuthSessionQueryAvailableMechanismsCb cb, gpointer user_data);

-Queries the mechanisms available for this authentication session. the result +Queries the mechanisms available for this authentication session. The result will be the intersection between wanted_mechanisms and the mechanisms -supported by the authentication plugin. +supported by the authentication plugin (and allowed by the SignonIdentity that this +session belongs to).

@@ -580,7 +603,7 @@ supported by the authentication plugin.

Property Details

The "identity" property

-
  "identity"                 SignonIdentity*       : Read / Write / Construct Only
+
  "identity"                 SignonIdentity*       : Read / Write / Construct Only

Identity Object construct parameter.

@@ -594,6 +617,8 @@ supported by the authentication plugin. gpointer user_data) : Action

Emitted when the state of the SignonAuthSession changes. +FIXME: state should be registered as a GLib type (or use one from +libgsignond-common)

diff --git a/docs/reference/html/SignonIdentityInfo.html b/docs/reference/html/SignonIdentityInfo.html index 5d573a4..b04cf1e 100644 --- a/docs/reference/html/SignonIdentityInfo.html +++ b/docs/reference/html/SignonIdentityInfo.html @@ -6,7 +6,7 @@ - + @@ -14,7 +14,7 @@
- + @@ -33,23 +33,28 @@

SignonIdentityInfo

-

SignonIdentityInfo — Extra data for a SignonIdentity.

+

SignonIdentityInfo — data contained in a SignonIdentity.

Synopsis

-
                    SignonIdentityInfo;
-enum                SignonIdentityType;
+
                    SignonIdentityInfo;
+enum                SignonIdentityType;
+void                signon_identity_info_access_control_list_append
+                                                        (SignonIdentityInfo *info,
+                                                         SignonSecurityContext *security_context);
 SignonIdentityInfo * signon_identity_info_copy          (const SignonIdentityInfo *other);
 void                signon_identity_info_free           (SignonIdentityInfo *info);
 const SignonSecurityContextList * signon_identity_info_get_access_control_list
                                                         (const SignonIdentityInfo *info);
 const gchar *       signon_identity_info_get_caption    (const SignonIdentityInfo *info);
 gint                signon_identity_info_get_id         (const SignonIdentityInfo *info);
-SignonIdentityType  signon_identity_info_get_identity_type
+SignonIdentityType  signon_identity_info_get_identity_type
                                                         (const SignonIdentityInfo *info);
 const GHashTable *  signon_identity_info_get_methods    (const SignonIdentityInfo *info);
+const SignonSecurityContext * signon_identity_info_get_owner
+                                                        (const SignonIdentityInfo *info);
 const gchar * const * signon_identity_info_get_realms   (const SignonIdentityInfo *info);
 gboolean            signon_identity_info_get_storing_secret
                                                         (const SignonIdentityInfo *info);
@@ -64,10 +69,18 @@ const const gchar *caption);
 void                signon_identity_info_set_identity_type
                                                         (SignonIdentityInfo *info,
-                                                         SignonIdentityType type);
+                                                         SignonIdentityType type);
 void                signon_identity_info_set_method     (SignonIdentityInfo *info,
                                                          const gchar *method,
                                                          const gchar * const *mechanisms);
+void                signon_identity_info_set_methods    (SignonIdentityInfo *info,
+                                                         const GHashTable *methods);
+void                signon_identity_info_set_owner      (SignonIdentityInfo *info,
+                                                         const SignonSecurityContext *owner);
+void                signon_identity_info_set_owner_from_values
+                                                        (SignonIdentityInfo *info,
+                                                         const gchar *system_context,
+                                                         const gchar *application_context);
 void                signon_identity_info_set_realms     (SignonIdentityInfo *info,
                                                          const gchar * const *realms);
 void                signon_identity_info_set_secret     (SignonIdentityInfo *info,
@@ -83,15 +96,16 @@ const 
-  GFlags
-   +----SignonIdentityType
-

Description

-Extra data retreived from a SignonIdentity. +SignonIdentityInfo represents data contained in a database record for an identity +and provides getters and setters for individual items. +

+

+See SignonIdentity for a detailed discussion +of what each item means and how and when it's used.

@@ -105,7 +119,7 @@ Opaque struct. Use the accessor functions below.

-

enum SignonIdentityType

+

enum SignonIdentityType

typedef enum {
     SIGNON_IDENTITY_TYPE_OTHER = 0,
     SIGNON_IDENTITY_TYPE_APP = 1 << 0,
@@ -114,7 +128,7 @@ Opaque struct. Use the accessor functions below.
 } SignonIdentityType;
 

-Types used in SignonIdentityInfo. +Identity types used in SignonIdentityInfo.

@@ -144,6 +158,30 @@ Types used in +

signon_identity_info_access_control_list_append ()

+
void                signon_identity_info_access_control_list_append
+                                                        (SignonIdentityInfo *info,
+                                                         SignonSecurityContext *security_context);
+

+Appends a new SignonSecurityContext item to the access control list. +

+
++ + + + + + + + + + +

info :

the SignonIdentityInfo.

security_context :

a security context to be appended. [transfer full] +
+
+
+

signon_identity_info_copy ()

SignonIdentityInfo * signon_identity_info_copy          (const SignonIdentityInfo *other);

@@ -184,7 +222,7 @@ Destroys the given const SignonSecurityContextList * signon_identity_info_get_access_control_list (const SignonIdentityInfo *info);

-Get an array of ACL statements of the identity. +Get an access control list associated with an identity.

@@ -227,7 +265,7 @@ Get the display name of info.

signon_identity_info_get_id ()

gint                signon_identity_info_get_id         (const SignonIdentityInfo *info);

-Get the numeric ID of info. +Get the numeric identity ID of info.

@@ -246,7 +284,7 @@ Get the numeric ID of info.

signon_identity_info_get_identity_type ()

-
SignonIdentityType  signon_identity_info_get_identity_type
+
SignonIdentityType  signon_identity_info_get_identity_type
                                                         (const SignonIdentityInfo *info);

Get the type of the identity. @@ -270,7 +308,8 @@ Get the type of the identity.

signon_identity_info_get_methods ()

const GHashTable *  signon_identity_info_get_methods    (const SignonIdentityInfo *info);

-Get a hash table of the methods and mechanisms of info. +Get a hash table of the methods and mechanisms of info. See +signon_identity_info_set_methods().

@@ -281,8 +320,31 @@ Get a hash table of the methods and mechanisms of in - + + +

Returns :

the table of allowed -methods and mechanisms. [transfer none][element-type utf8 GStrv] +(element-type utf8 GStrv): the table of allowed +methods and mechanisms. [transfer none] +
+
+
+
+

signon_identity_info_get_owner ()

+
const SignonSecurityContext * signon_identity_info_get_owner
+                                                        (const SignonIdentityInfo *info);
+

+Get identity owner's security context. +

+
++ + + + + + + + @@ -316,7 +378,7 @@ Get an array of the realms of info.
gboolean            signon_identity_info_get_storing_secret
                                                         (const SignonIdentityInfo *info);

-Get whether the secret of info should be stored. +Get whether the secret of info should be stored by gSSO in the secret database.

info :

the SignonIdentityInfo.

Returns :

a security context. [transfer none]
@@ -328,7 +390,7 @@ Get whether the secret of info should be +TRUE if gSSO must store the secret, FALSE otherwise.

Returns :

-TRUE if Signon must store the secret, FALSE otherwise.
@@ -338,7 +400,7 @@ Get whether the secret of info should be

signon_identity_info_get_username ()

const gchar *       signon_identity_info_get_username   (const SignonIdentityInfo *info);

-Get the username of info. +Get the username associated with an identity.

@@ -375,8 +437,7 @@ Creates a new void signon_identity_info_remove_method (SignonIdentityInfo *info, const gchar *method);

-Remove method from the list of allowed authentication methods. If all -methods are removed, then all methods are allowed. +Remove method from the list of allowed authentication methods.

@@ -399,8 +460,7 @@ methods are removed, then all methods are allowed. (SignonIdentityInfo *info, const SignonSecurityContextList *access_control_list);

-Specifies the ACL for this identity. The actual meaning of the ACL depends -on the security framework used by signond. Ownership of the list is trans +Set an access control list associated with an identity.

@@ -411,7 +471,8 @@ on the security framework used by signond. Ownership of the list is trans - +

access_control_list :

(transfer none) a list of ACL security contexts.a list of ACL security contexts. [transfer none] +
@@ -443,7 +504,7 @@ Sets the caption (display name) for the identity.

signon_identity_info_set_identity_type ()

void                signon_identity_info_set_identity_type
                                                         (SignonIdentityInfo *info,
-                                                         SignonIdentityType type);
+ SignonIdentityType type);

Specifies the type of this identity.

@@ -468,8 +529,7 @@ Specifies the type of this identity. const gchar *method, const gchar * const *mechanisms);

-Adds a method to the list of allowed methods. -Mechanisms are method-specific functions. +Adds a method to the list of allowed authentication methods.

@@ -484,7 +544,81 @@ Mechanisms are method-specific functions. - + + + +

mechanisms :

a NULL-termianted list of mechanisms.a NULL-terminated list of mechanisms.
+
+
+
+

signon_identity_info_set_methods ()

+
void                signon_identity_info_set_methods    (SignonIdentityInfo *info,
+                                                         const GHashTable *methods);
+

+Set authentication methods that are allowed to be used with this identity. +

+
++ + + + + + + + + + +

info :

the SignonIdentityInfo.

methods :

(element-type utf8 GStrv): methods. [transfer none] +
+
+
+
+

signon_identity_info_set_owner ()

+
void                signon_identity_info_set_owner      (SignonIdentityInfo *info,
+                                                         const SignonSecurityContext *owner);
+

+Set identity owner's security context. +

+
++ + + + + + + + + + +

info :

the SignonIdentityInfo.

owner :

a security context of owner. [transfer none] +
+
+
+
+

signon_identity_info_set_owner_from_values ()

+
void                signon_identity_info_set_owner_from_values
+                                                        (SignonIdentityInfo *info,
+                                                         const gchar *system_context,
+                                                         const gchar *application_context);
+

+Set identity owner's security context. +

+
++ + + + + + + + + + + +

info :

the SignonIdentityInfo.

system_context :

owner's system context.

application_context :

owner's application context.
@@ -518,7 +652,7 @@ Specify what realms this identity can be used in. const gchar *secret, gboolean store_secret);

-Sets the secret (password) for the identity, and whether the signon daemon +Sets the secret (password) for the identity, and whether the gSSO daemon should remember it.

diff --git a/docs/reference/html/SignonSecurityContext.html b/docs/reference/html/SignonSecurityContext.html index cc58972..d980fda 100644 --- a/docs/reference/html/SignonSecurityContext.html +++ b/docs/reference/html/SignonSecurityContext.html @@ -7,7 +7,7 @@ - + @@ -18,7 +18,7 @@ - + - +
Up Home libgsignon-glib Reference ManualNextNext
Top @@ -33,7 +33,7 @@

SignonSecurityContext

-

SignonSecurityContext — Representation of a security context.

+

SignonSecurityContext — representation of a security context.

@@ -41,33 +41,33 @@

Synopsis

struct              SignonSecurityContext;
 typedef             SignonSecurityContextList;
-SignonSecurityContext * signon_security_context_new     ();
-SignonSecurityContext * signon_security_context_new_from_values
-                                                        (const gchar *system_context,
-                                                         const gchar *application_context);
+GVariant *          signon_security_context_build_variant
+                                                        (const SignonSecurityContext *ctx);
 SignonSecurityContext * signon_security_context_copy    (const SignonSecurityContext *src_ctx);
+SignonSecurityContext * signon_security_context_deconstruct_variant
+                                                        (GVariant *variant);
 void                signon_security_context_free        (SignonSecurityContext *ctx);
-void                signon_security_context_set_system_context
-                                                        (SignonSecurityContext *ctx,
-                                                         const gchar *system_context);
-const gchar *       signon_security_context_get_system_context
-                                                        (const SignonSecurityContext *ctx);
-void                signon_security_context_set_application_context
-                                                        (SignonSecurityContext *ctx,
-                                                         const gchar *application_context);
 const gchar *       signon_security_context_get_application_context
                                                         (const SignonSecurityContext *ctx);
-GVariant *          signon_security_context_build_variant
+const gchar *       signon_security_context_get_system_context
                                                         (const SignonSecurityContext *ctx);
-SignonSecurityContext * signon_security_context_deconstruct_variant
-                                                        (GVariant *variant);
 GVariant *          signon_security_context_list_build_variant
                                                         (const SignonSecurityContextList *list);
-SignonSecurityContextList * signon_security_context_list_deconstruct_variant
-                                                        (GVariant *variant);
 SignonSecurityContextList * signon_security_context_list_copy
                                                         (const SignonSecurityContextList *src_list);
+SignonSecurityContextList * signon_security_context_list_deconstruct_variant
+                                                        (GVariant *variant);
 void                signon_security_context_list_free   (SignonSecurityContextList *seclist);
+SignonSecurityContext * signon_security_context_new     ();
+SignonSecurityContext * signon_security_context_new_from_values
+                                                        (const gchar *system_context,
+                                                         const gchar *application_context);
+void                signon_security_context_set_application_context
+                                                        (SignonSecurityContext *ctx,
+                                                         const gchar *application_context);
+void                signon_security_context_set_system_context
+                                                        (SignonSecurityContext *ctx,
+                                                         const gchar *system_context);
 
@@ -81,7 +81,41 @@ const

Description

The SignonSecurityContext represents a security context within -system and also within application. +system and also within application. Security contexts are used: +

+

+

+
    +
  • within identities to specify the owner of the identity, and +users of the identity (items on the access control list). See SignonIdentity.

  • +
  • 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.

  • +
+

+

+

+SignonSecurityContext contains two strings: a system context and an +application context. +

+

+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. +

+

+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). +

+

+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).

@@ -94,7 +128,7 @@ system and also within application. };

-Security context descriptor. Practically a string tuple. +Security context descriptor used for access control checks.

@@ -122,63 +156,70 @@ GList of -

signon_security_context_new ()

-
SignonSecurityContext * signon_security_context_new     ();
+

signon_security_context_build_variant ()

+
GVariant *          signon_security_context_build_variant
+                                                        (const SignonSecurityContext *ctx);

-Allocates a new security context item. +Build a GVariant of type "(ss)" from a SignonSecurityContext item.

- + + + + + + - - + + +

ctx :

+SignonSecurityContext item.

Returns :

(transfer full) allocated SignonSecurityContext.
GVariant construct of a SignonSecurityContext. [transfer full] +

-

signon_security_context_new_from_values ()

-
SignonSecurityContext * signon_security_context_new_from_values
-                                                        (const gchar *system_context,
-                                                         const gchar *application_context);
+

signon_security_context_copy ()

+
SignonSecurityContext * signon_security_context_copy    (const SignonSecurityContext *src_ctx);

-Allocates and initializes a new security context item. +Copy a security context item.

- - - - - - + + - +

system_context :

system security context (such as SMACK/MSSF label/token).

application_context :

application security context (such as a script name).

src_ctx :

source security context to copy.

Returns :

(transfer full) allocated SignonSecurityContext.a copy of the SignonSecurityContext item. [transfer full] +

-

signon_security_context_copy ()

-
SignonSecurityContext * signon_security_context_copy    (const SignonSecurityContext *src_ctx);
+

signon_security_context_deconstruct_variant ()

+
SignonSecurityContext * signon_security_context_deconstruct_variant
+                                                        (GVariant *variant);

-Copy a security context item. +Builds a SignonSecurityContext item from a GVariant of type "(ss)".

- - + + - +

src_ctx :

source security context to copy.

variant :

GVariant item with a SignonSecurityContext construct.

Returns :

(transfer full) a copy of the SignonSecurityContext item. +SignonSecurityContext item. [transfer full] +
@@ -201,13 +242,12 @@ Frees a security context item.

-

signon_security_context_set_system_context ()

-
void                signon_security_context_set_system_context
-                                                        (SignonSecurityContext *ctx,
-                                                         const gchar *system_context);
+

signon_security_context_get_application_context ()

+
const gchar *       signon_security_context_get_application_context
+                                                        (const SignonSecurityContext *ctx);

-Sets the system context part (such as SMACK label or MSSF token) of the -SignonSecurityContext. +Get the application context part (such as script name or a web page) of +the SignonSecurityContext.

@@ -218,8 +258,9 @@ Sets the system context part (such as SMACK label or MSSF token) of the SignonSecurityContext item. - - + +

system_context :

system security context.

Returns :

application context. [transfer none] +
@@ -243,149 +284,142 @@ Get the system context part (such as SMACK label or MSSF token) of the

Returns :

(transfer none) system context.system context. [transfer none] +

-

signon_security_context_set_application_context ()

-
void                signon_security_context_set_application_context
-                                                        (SignonSecurityContext *ctx,
-                                                         const gchar *application_context);
+

signon_security_context_list_build_variant ()

+
GVariant *          signon_security_context_list_build_variant
+                                                        (const SignonSecurityContextList *list);

-Sets the application context part (such as a script name or a web page) of -the SignonSecurityContext. +Builds a GVariant of type "a(ss)" from a GList of SignonSecurityContext +items.

- + +SignonSecurityContextList item. - - + +

ctx :

list :

-SignonSecurityContext item.

application_context :

application security context.

Returns :

GVariant construct of a SignonSecurityContextList. [transfer full] +

-

signon_security_context_get_application_context ()

-
const gchar *       signon_security_context_get_application_context
-                                                        (const SignonSecurityContext *ctx);
+

signon_security_context_list_copy ()

+
SignonSecurityContextList * signon_security_context_list_copy
+                                                        (const SignonSecurityContextList *src_list);

-Get the application context part (such as script name or a web page) of -the SignonSecurityContext. +Copies a GList of SignonSecurityContext items.

- - + + - +

ctx :

-SignonSecurityContext item.

src_list :

source SignonSecurityContextList.

Returns :

(transfer none) application context. +SignonSecurityContextList item. [transfer full] +

-

signon_security_context_build_variant ()

-
GVariant *          signon_security_context_build_variant
-                                                        (const SignonSecurityContext *ctx);
+

signon_security_context_list_deconstruct_variant ()

+
SignonSecurityContextList * signon_security_context_list_deconstruct_variant
+                                                        (GVariant *variant);

-Build a GVariant of type "(ss)" from a SignonSecurityContext item. +Builds a GList of SignonSecurityContext items from a GVariant of type +"a(ss)".

- - + + - +

ctx :

-SignonSecurityContext item.

variant :

GVariant item with a list of security context tuples.

Returns :

(transfer full) GVariant construct of a SignonSecurityContext. +SignonSecurityContextList item. [transfer full] +

-

signon_security_context_deconstruct_variant ()

-
SignonSecurityContext * signon_security_context_deconstruct_variant
-                                                        (GVariant *variant);
+

signon_security_context_list_free ()

+
void                signon_security_context_list_free   (SignonSecurityContextList *seclist);

-Builds a SignonSecurityContext item from a GVariant of type "(ss)". +Frees all items and the GList of SignonSecurityContext.

- - - - - - - - - - + + + +

variant :

GVariant item with a SignonSecurityContext construct.

Returns :

(transfer full) SignonSecurityContext item.

seclist :

+SignonSecurityContextList item. [transfer full] +

-

signon_security_context_list_build_variant ()

-
GVariant *          signon_security_context_list_build_variant
-                                                        (const SignonSecurityContextList *list);
+

signon_security_context_new ()

+
SignonSecurityContext * signon_security_context_new     ();

-Builds a GVariant of type "a(ss)" from a GList of SignonSecurityContext -items. +Allocates a new security context item.

- - - - - - + - - - + +

list :

-SignonSecurityContextList item.

Returns :

(transfer full) GVariant construct of a SignonSecurityContextList.
allocated SignonSecurityContext. [transfer full] +

-

signon_security_context_list_deconstruct_variant ()

-
SignonSecurityContextList * signon_security_context_list_deconstruct_variant
-                                                        (GVariant *variant);
+

signon_security_context_new_from_values ()

+
SignonSecurityContext * signon_security_context_new_from_values
+                                                        (const gchar *system_context,
+                                                         const gchar *application_context);

-Builds a GList of SignonSecurityContext items from a GVariant of type -"a(ss)". +Allocates and initializes a new security context item.

- - + + + + + + - @@ -393,41 +427,52 @@ Builds a GList of -

signon_security_context_list_copy ()

-
SignonSecurityContextList * signon_security_context_list_copy
-                                                        (const SignonSecurityContextList *src_list);
+

signon_security_context_set_application_context ()

+
void                signon_security_context_set_application_context
+                                                        (SignonSecurityContext *ctx,
+                                                         const gchar *application_context);

-Copies a GList of SignonSecurityContext items. +Sets the application context part (such as a script name or a web page) of +the SignonSecurityContext.

variant :

GVariant item with a list of security context tuples.

system_context :

system security context (such as SMACK/MSSF label/token).

application_context :

application security context (such as a script name).

Returns :

-SignonSecurityContextList item. [transfer full] +allocated SignonSecurityContext. [transfer full]
- - + + - - + +

src_list :

source SignonSecurityContextList.

ctx :

+SignonSecurityContext item.

Returns :

-SignonSecurityContextList item. [transfer full] -

application_context :

application security context.

-

signon_security_context_list_free ()

-
void                signon_security_context_list_free   (SignonSecurityContextList *seclist);
+

signon_security_context_set_system_context ()

+
void                signon_security_context_set_system_context
+                                                        (SignonSecurityContext *ctx,
+                                                         const gchar *system_context);

-Frees all items and the GList of SignonSecurityContext. +Sets the system context part (such as SMACK label or MSSF token) of the +SignonSecurityContext.

- - - - + + + + + + + + + +

seclist :

(transfer full) SignonSecurityContextList item.

ctx :

+SignonSecurityContext item.

system_context :

system security context.
diff --git a/docs/reference/html/annotation-glossary.html b/docs/reference/html/annotation-glossary.html index 3b7b303..e6044a1 100644 --- a/docs/reference/html/annotation-glossary.html +++ b/docs/reference/html/annotation-glossary.html @@ -5,7 +5,7 @@ Annotation Glossary - + diff --git a/docs/reference/html/api-index-1-8.html b/docs/reference/html/api-index-1-8.html index 951f05f..de0e9bb 100644 --- a/docs/reference/html/api-index-1-8.html +++ b/docs/reference/html/api-index-1-8.html @@ -5,7 +5,7 @@ Index of new symbols in 1.8 - + diff --git a/docs/reference/html/api-index-deprecated.html b/docs/reference/html/api-index-deprecated.html index 233ec90..07b2829 100644 --- a/docs/reference/html/api-index-deprecated.html +++ b/docs/reference/html/api-index-deprecated.html @@ -5,7 +5,7 @@ Index of deprecated symbols - + diff --git a/docs/reference/html/api-index-full.html b/docs/reference/html/api-index-full.html index 5766612..140fa9d 100644 --- a/docs/reference/html/api-index-full.html +++ b/docs/reference/html/api-index-full.html @@ -5,8 +5,8 @@ API Index - - + + @@ -37,7 +37,7 @@ API Index

A

-SignonAuthService, struct in SignonAuthService +SignonAuthServiceClass, struct in SignonAuthService
@@ -53,6 +53,10 @@
+SignonAuthSessionClass, struct in SignonAuthSession +
+
+
SignonAuthSessionProcessCb, user_function in SignonAuthSession
@@ -61,19 +65,19 @@
-signon_auth_service_new, function in SignonAuthService +signon_auth_service_new, function in SignonAuthService
-signon_auth_service_query_identities, function in SignonAuthService +signon_auth_service_query_identities, function in SignonAuthService
-signon_auth_service_query_mechanisms, function in SignonAuthService +signon_auth_service_query_mechanisms, function in SignonAuthService
-signon_auth_service_query_methods, function in SignonAuthService +signon_auth_service_query_methods, function in SignonAuthService
@@ -106,28 +110,24 @@

E

-SignonError, enum in SignonError -
-
-

I

-
-SignonIdentity, struct in SignonIdentity +SignonError, enum in SignonError
-SignonIdentity::signout, object signal in SignonIdentity +SIGNON_ERROR, macro in SignonError
-SignonIdentity:app-ctx, object property in SignonIdentity +signon_error_quark, function in SignonError
+

I

-SignonIdentity:id, object property in SignonIdentity +SignonIdentityClass, struct in SignonIdentity
-SignonIdentityFilter, typedef in SignonIdentity +SignonIdentityFilter, typedef in SignonAuthService
@@ -135,67 +135,67 @@
-SignonIdentityInfoCb, user_function in SignonIdentity +SignonIdentityInfoCb, user_function in SignonIdentity
-SignonIdentityList, typedef in SignonIdentity +SignonIdentityList, typedef in SignonAuthService
-SignonIdentityReferenceAddedCb, typedef in SignonIdentity +SignonIdentityReferenceAddedCb, typedef in SignonIdentity
-SignonIdentityReferenceRemovedCb, typedef in SignonIdentity +SignonIdentityReferenceRemovedCb, typedef in SignonIdentity
-SignonIdentityRemovedCb, typedef in SignonIdentity +SignonIdentityRemovedCb, typedef in SignonIdentity
-SignonIdentitySessionReadyCb, user_function in SignonIdentity +SignonIdentitySessionReadyCb, user_function in SignonIdentity
-SignonIdentitySignedOutCb, typedef in SignonIdentity +SignonIdentitySignedOutCb, typedef in SignonIdentity
-SignonIdentityStoreCredentialsCb, user_function in SignonIdentity +SignonIdentityStoreCredentialsCb, user_function in SignonIdentity
-SignonIdentityType, enum in SignonIdentityInfo +SignonIdentityType, enum in SignonIdentityInfo
-SignonIdentityVerifyCb, user_function in SignonIdentity +SignonIdentityVerifyCb, user_function in SignonIdentity
-SignonIdentityVoidCb, user_function in SignonIdentity +SignonIdentityVoidCb, user_function in SignonIdentity
-signon_identity_add_reference, function in SignonIdentity +signon_identity_add_reference, function in SignonIdentity
-signon_identity_create_session, function in SignonIdentity +signon_identity_create_session, function in SignonIdentity
-signon_identity_get_auth_session, function in SignonIdentity +signon_identity_get_auth_session, function in SignonIdentity
-signon_identity_get_last_error, function in SignonIdentity +signon_identity_get_last_error, function in SignonIdentity
-signon_identity_info_access_control_list_append, function in SignonIdentity +signon_identity_info_access_control_list_append, function in SignonIdentityInfo
@@ -227,7 +227,7 @@
-signon_identity_info_get_owner, function in SignonIdentity +signon_identity_info_get_owner, function in SignonIdentityInfo
@@ -267,15 +267,15 @@
-signon_identity_info_set_methods, function in SignonIdentity +signon_identity_info_set_methods, function in SignonIdentityInfo
-signon_identity_info_set_owner, function in SignonIdentity +signon_identity_info_set_owner, function in SignonIdentityInfo
-signon_identity_info_set_owner_from_values, function in SignonIdentity +signon_identity_info_set_owner_from_values, function in SignonIdentityInfo
@@ -291,52 +291,52 @@
-signon_identity_new, function in SignonIdentity +signon_identity_new, function in SignonIdentity
-signon_identity_new_from_db, function in SignonIdentity +signon_identity_new_from_db, function in SignonIdentity
-signon_identity_query_info, function in SignonIdentity +signon_identity_query_info, function in SignonIdentity
-signon_identity_remove, function in SignonIdentity +signon_identity_remove, function in SignonIdentity
-signon_identity_remove_reference, function in SignonIdentity +signon_identity_remove_reference, function in SignonIdentity
-signon_identity_signout, function in SignonIdentity +signon_identity_signout, function in SignonIdentity
-signon_identity_store_credentials_with_args, function in SignonIdentity +signon_identity_store_credentials_with_args, function in SignonIdentity
-signon_identity_store_credentials_with_info, function in SignonIdentity +signon_identity_store_credentials_with_info, function in SignonIdentity
-signon_identity_verify_secret, function in SignonIdentity +signon_identity_verify_secret, function in SignonIdentity

Q

-SignonQueryIdentitiesCb, user_function in SignonAuthService +SignonQueryIdentitiesCb, user_function in SignonAuthService
-SignonQueryMechanismCb, user_function in SignonAuthService +SignonQueryMechanismCb, user_function in SignonAuthService
-SignonQueryMethodsCb, user_function in SignonAuthService +SignonQueryMethodsCb, user_function in SignonAuthService

S

@@ -405,7 +405,7 @@
-SignonSessionDataUiPolicy, enum in SignonAuthSession +SignonSessionDataUiPolicy, enum in SignonAuthSession
diff --git a/docs/reference/html/appendices.html b/docs/reference/html/appendices.html index f68f145..e53479c 100644 --- a/docs/reference/html/appendices.html +++ b/docs/reference/html/appendices.html @@ -2,18 +2,18 @@ -Part IV. Appendices +Part III. Appendices - + - + @@ -21,7 +21,7 @@

-Part IV. Appendices

+Part III. Appendices

Table of Contents

diff --git a/docs/reference/html/credential-management.html b/docs/reference/html/credential-management.html index 7f831e5..7ca3b20 100644 --- a/docs/reference/html/credential-management.html +++ b/docs/reference/html/credential-management.html @@ -7,7 +7,7 @@ - + @@ -17,29 +17,29 @@ Up Home libgsignon-glib Reference Manual -Next +Next

Credential management

-SignonAuthService — The authorization service object +SignonAuthService — the authorization service object
-SignonAuthSession — Authentication session handler. +SignonIdentity — client side presentation of a credential.
-SignonError — Possible errors from Signon. +SignonIdentityInfo — data contained in a SignonIdentity.
-SignonIdentity — Client side presentation of a credential. +SignonSecurityContext — representation of a security context.
-SignonIdentityInfo — Extra data for a SignonIdentity. +SignonAuthSession — the authentication session object
-SignonSecurityContext — Representation of a security context. +SignonError — possible gSSO errors
diff --git a/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.AuthService.html b/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.AuthService.html deleted file mode 100644 index c9522ae..0000000 --- a/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.AuthService.html +++ /dev/null @@ -1,264 +0,0 @@ - - - - -com.google.code.AccountsSSO.gSingleSignOn.AuthService - - - - - - - - - - - - - - - - - - - -
-
-
- - -
-

com.google.code.AccountsSSO.gSingleSignOn.AuthService

-

com.google.code.AccountsSSO.gSingleSignOn.AuthService

-
-
-

Methods

-
-registerNewIdentity (IN  s      applicationContext,
-                     OUT o      objectPath);
-getIdentity         (IN  u      id,
-                     IN  s      applicationContext,
-                     OUT o      objectPath,
-                     OUT a{sv}  identityData);
-queryMethods        (OUT as     authMethods);
-queryMechanisms     (IN  s      method,
-                     OUT as     mechanisms);
-queryIdentities     (IN  a{sv}  filter,
-                     IN  s      applicationContext,
-                     OUT aa{sv} identities);
-clear               (OUT b      unnamed_arg0);
-backupStarts        (OUT y      unnamed_arg0);
-backupFinished      (OUT y      unnamed_arg0);
-restoreStarts       (OUT y      unnamed_arg0);
-restoreFinished     (OUT y      unnamed_arg0);
-
-
-
-

Description

-

-
-
-

Method Details

-
-

The registerNewIdentity() method

-
-registerNewIdentity (IN  s applicationContext,
-                     OUT o objectPath);
-
-

-
-- - - - - - - - - - -

IN s applicationContext:

OUT o objectPath:

-
-
-
-

The getIdentity() method

-
-getIdentity (IN  u     id,
-             IN  s     applicationContext,
-             OUT o     objectPath,
-             OUT a{sv} identityData);
-
-

-
-- - - - - - - - - - - - - - - - - - -

IN u id:

IN s applicationContext:

OUT o objectPath:

OUT a{sv} identityData:

-
-
-
-

The queryMethods() method

-
-queryMethods (OUT as authMethods);
-
-

-
-- - - - -

OUT as authMethods:

-
-
-
-

The queryMechanisms() method

-
-queryMechanisms (IN  s  method,
-                 OUT as mechanisms);
-
-

-
-- - - - - - - - - - -

IN s method:

OUT as mechanisms:

-
-
-
-

The queryIdentities() method

-
-queryIdentities (IN  a{sv}  filter,
-                 IN  s      applicationContext,
-                 OUT aa{sv} identities);
-
-

-
-- - - - - - - - - - - - - - -

IN a{sv} filter:

IN s applicationContext:

OUT aa{sv} identities:

-
-
-
-

The clear() method

-
-clear (OUT b unnamed_arg0);
-
-

-
-- - - - -

OUT b unnamed_arg0:

-
-
-
-

The backupStarts() method

-
-backupStarts (OUT y unnamed_arg0);
-
-

-
-- - - - -

OUT y unnamed_arg0:

-
-
-
-

The backupFinished() method

-
-backupFinished (OUT y unnamed_arg0);
-
-

-
-- - - - -

OUT y unnamed_arg0:

-
-
-
-

The restoreStarts() method

-
-restoreStarts (OUT y unnamed_arg0);
-
-

-
-- - - - -

OUT y unnamed_arg0:

-
-
-
-

The restoreFinished() method

-
-restoreFinished (OUT y unnamed_arg0);
-
-

-
-- - - - -

OUT y unnamed_arg0:

-
-
-
- - - \ No newline at end of file diff --git a/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.AuthSession.html b/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.AuthSession.html deleted file mode 100644 index 0994236..0000000 --- a/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.AuthSession.html +++ /dev/null @@ -1,167 +0,0 @@ - - - - -com.google.code.AccountsSSO.gSingleSignOn.AuthSession - - - - - - - - - - - - - - - - - - - -
-
-
- - -
-

com.google.code.AccountsSSO.gSingleSignOn.AuthSession

-

com.google.code.AccountsSSO.gSingleSignOn.AuthSession

-
-
-

Methods

-
-queryAvailableMechanisms (IN  as    wantedMechanisms,
-                          OUT as    unnamed_arg1);
-process                  (IN  a{sv} sessionDataVa,
-                          IN  s     mechanism,
-                          OUT a{sv} unnamed_arg2);
-cancel                   ();
-
-
-
-

Signals

-
-stateChanged (i state,
-              s message);
-unregistered ();
-
-
-
-

Description

-

-
-
-

Method Details

-
-

The queryAvailableMechanisms() method

-
-queryAvailableMechanisms (IN  as wantedMechanisms,
-                          OUT as unnamed_arg1);
-
-

-
-- - - - - - - - - - -

IN as wantedMechanisms:

OUT as unnamed_arg1:

-
-
-
-

The process() method

-
-process (IN  a{sv} sessionDataVa,
-         IN  s     mechanism,
-         OUT a{sv} unnamed_arg2);
-
-

-
-- - - - - - - - - - - - - - -

IN a{sv} sessionDataVa:

IN s mechanism:

OUT a{sv} unnamed_arg2:

-
-
-
-

The cancel() method

-
-cancel ();
-
-

-
-- -
-
-
-
-

Signal Details

-
-

The "stateChanged" signal

-
-stateChanged (i state,
-              s message);
-
-

-
-- - - - - - - - - - -

i state:

s message:

-
-
-
-

The "unregistered" signal

-
-unregistered ();
-
-

-
-- -
-
-
-
- - - \ No newline at end of file diff --git a/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.Identity.html b/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.Identity.html deleted file mode 100644 index f418cfd..0000000 --- a/docs/reference/html/gdbus-com.google.code.AccountsSSO.gSingleSignOn.Identity.html +++ /dev/null @@ -1,305 +0,0 @@ - - - - -com.google.code.AccountsSSO.gSingleSignOn.Identity - - - - - - - - - - - - - - - - - - - -
-
-
- - -
-

com.google.code.AccountsSSO.gSingleSignOn.Identity

-

com.google.code.AccountsSSO.gSingleSignOn.Identity

-
-
-

Methods

-
-requestCredentialsUpdate (IN  s     message,
-                          OUT u     unnamed_arg1);
-getInfo                  (OUT a{sv} identityInfo);
-getAuthSession           (IN  s     method,
-                          OUT o     objectPath);
-verifyUser               (IN  a{sv} params,
-                          OUT b     unnamed_arg1);
-verifySecret             (IN  s     secret,
-                          OUT b     unnamed_arg1);
-remove                   ();
-signOut                  (OUT b     unnamed_arg0);
-store                    (IN  a{sv} unnamed_arg0,
-                          OUT u     unnamed_arg1);
-addReference             (IN  s     reference,
-                          OUT i     unnamed_arg1);
-removeReference          (IN  s     reference,
-                          OUT i     unnamed_arg1);
-
-
-
-

Signals

-
-unregistered ();
-infoUpdated  (i unnamed_arg0);
-
-
-
-

Description

-

-
-
-

Method Details

-
-

The requestCredentialsUpdate() method

-
-requestCredentialsUpdate (IN  s message,
-                          OUT u unnamed_arg1);
-
-

-
-- - - - - - - - - - -

IN s message:

OUT u unnamed_arg1:

-
-
-
-

The getInfo() method

-
-getInfo (OUT a{sv} identityInfo);
-
-

-
-- - - - -

OUT a{sv} identityInfo:

-
-
-
-

The getAuthSession() method

-
-getAuthSession (IN  s method,
-                OUT o objectPath);
-
-

-
-- - - - - - - - - - -

IN s method:

OUT o objectPath:

-
-
-
-

The verifyUser() method

-
-verifyUser (IN  a{sv} params,
-            OUT b     unnamed_arg1);
-
-

-
-- - - - - - - - - - -

IN a{sv} params:

OUT b unnamed_arg1:

-
-
-
-

The verifySecret() method

-
-verifySecret (IN  s secret,
-              OUT b unnamed_arg1);
-
-

-
-- - - - - - - - - - -

IN s secret:

OUT b unnamed_arg1:

-
-
-
-

The remove() method

-
-remove ();
-
-

-
-- -
-
-
-
-

The signOut() method

-
-signOut (OUT b unnamed_arg0);
-
-

-
-- - - - -

OUT b unnamed_arg0:

-
-
-
-

The store() method

-
-store (IN  a{sv} unnamed_arg0,
-       OUT u     unnamed_arg1);
-
-

-
-- - - - - - - - - - -

IN a{sv} unnamed_arg0:

OUT u unnamed_arg1:

-
-
-
-

The addReference() method

-
-addReference (IN  s reference,
-              OUT i unnamed_arg1);
-
-

-
-- - - - - - - - - - -

IN s reference:

OUT i unnamed_arg1:

-
-
-
-

The removeReference() method

-
-removeReference (IN  s reference,
-                 OUT i unnamed_arg1);
-
-

-
-- - - - - - - - - - -

IN s reference:

OUT i unnamed_arg1:

-
-
-
-

Signal Details

-
-

The "unregistered" signal

-
-unregistered ();
-
-

-
-- -
-
-
-
-

The "infoUpdated" signal

-
-infoUpdated (i unnamed_arg0);
-
-

-
-- - - - -

i unnamed_arg0:

-
-
-
- - - \ No newline at end of file diff --git a/docs/reference/html/gsso-examples.html b/docs/reference/html/gsso-examples.html new file mode 100644 index 0000000..ddd6958 --- /dev/null +++ b/docs/reference/html/gsso-examples.html @@ -0,0 +1,199 @@ + + + + +gSSO usage examples + + + + + + + + + + + + + + + + +
+
+
+

Introduction

+

+ libgsignond-glib comes with an example application gsso-example + that demonstrates the most common use cases: listing available authentication methods and + their mechanisms, creating and removing identities and performing authentication + sessions. +

+

+ Before running the example application, make sure that gSSO daemon and + gSSO UI (that is appropriate for your system) are installed and configured + correctly. +

+

+ The source code for the example application is available at + + http://code.google.com/p/accounts-sso/source/browse/examples/gsso-example.c?repo=libgsignon-glib&name=master +

+

+ The full list of available gsso-example options can be + obtained with gsso-example --help-all +

+
+
+

Authentication methods and mechanisms

+

+ The list of available authentication methods can be obtained with + --query-methods: +

+


+> gsso-example --query-methods:
+Available authentication methods:
+        password
+        oauth
+        digest
+        

+

+

+

+ For each of the available authentication methods it's possible to query + available authentication mechanisms with + gsso-example --query-mechanisms=method: +

+


+> gsso-example --query-mechanisms=oauth
+Available authentication mechanisms for method oauth:
+        oauth1
+        oauth2
+        

+

+

+
+
+

Identity management

+

+ The list of stored identities that the gsso-example application is allowed + to use can be obtained with gsso-example --query-identities: +

+


+> gsso-example --query-identities
+Available identities:
+        id=27 caption='My test identity'
+        id=28 caption='Another test identity'
+        

+

+

+

+ To create an identity, use --create-identity option + with identity caption (user-readable name) and --identity-method + with the authentication method that the identity will be using. +

+


+> gsso-example --create-identity="My test identity" --identity-method=password
+Identity stored with id 28            
+        

+

+

+

+ To remove an identity, use --remove-identity option + with identity id: +

+


+> gsso-example --remove-identity=28
+Identity removed
+        

+

+

+
+
+

Using 'password' authentication method

+

+ 'password' authentication simply returns to the application the username + and the password associated with an identity. If they haven't been stored + in gSSO secret database, they're asked from the user through gSSO UI. +

+

+ To use the method, first create an identity with authentication method + set to 'password' (as shown above), note its identitiy id and then run: +

+


+> gsso-example --get-password=27
+Geting password
+Got response: {'UserName': <'megauser'>, 'Secret': <'megapassword'>}
+        

+

+

+
+
+

Using 'oauth' authentication method

+

+ 'oauth' authentication method is used to obtain an OAuth1 or OAuth2 + authentication token from a remote service over HTTP. An application + needs to supply a few service-specific parameters when initiating the + authentication. gSSO example application supports obtaining an oauth + token from Google service (google-specific parameters are hardcoded + into the app source code). +

+

+ Obtaining an OAuth token may also include authorization of the application + by the user, which is done through user interaction with the service webpages + that are shown by gSSO UI. From the application point of view this authorization + happens completely transparently behind the scenes. +

+

+ Before trying the example, if you're behind a proxy, and are using + the Gtk-based gSSO UI, make sure that your GNOME proxy settings are + correctly configured, either via GNOME UI, or via command line: +

+


+> gsettings list-recursively org.gnome.system.proxy
+        

+

+ To set the proxy, use: +

+


+> gsettings set org.gnome.system.proxy mode 'manual'
+> gsettings set org.gnome.system.proxy.http port 8080
+> gsettings set org.gnome.system.proxy.http host 'myproxy.domain.lan'

+        

+

+ To disable the proxy, use +

+


+> gsettings set org.gnome.system.proxy mode 'none'
+        

+

+ See all available configurations keys here: + + http://developer.gnome.org/ProxyConfiguration/ +

+

+ You would also need a client identifier and key from Google. Instructions + about how to get them are available at + https://developers.google.com/console/help/#generatingoauth2 +

+

+ Once the above are settled, create an identity with 'oauth' method + (as shown above) and issue: +

+


+> gsso-example --get-google-token=12 --client-id=xxxxxxx.apps.googleusercontent.com --client-secret=yyyyyyyyyyyyy
+Geting token
+Got response: {'Scope': <'email'>, 'AccessToken': <'tokenvalue'>, 
+               'TokenParameters': <@a{sv} {}>, 'TokenType': <'Bearer'>, 
+               'RefreshToken': <'refreshtokenvalue'>, 'Duration': <int64 3600>, 
+               'Timestamp': <int64 1377707888>}                
+        

+

+

+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/gsso-intro.html b/docs/reference/html/gsso-intro.html new file mode 100644 index 0000000..7328400 --- /dev/null +++ b/docs/reference/html/gsso-intro.html @@ -0,0 +1,104 @@ + + + + +gSSO introduction + + + + + + + + + + + + + + + + +
+
+
+

What is gSSO?

+

+ gSSO is a framework for centrally storing authentication credentials + and handling authentication on behalf of applications as requested by + them. It consists of a gSSO daemon that implements secure storage of + login credentials (for example usernames and passwords), plugins for + different authentication systems and a client library (libgsignond-glib) + for applications to communicate with this system. +

+

+ By using this client library, an application can authenticate to a + (usually remote) service using an existing set of credentials, and manage + the credentials database as well (subject to access restrictions). +

+

+ Some authentication methods require interaction with the user, for example + to request a username and password, or to show a webpage with which the + user is expected to interact. This functionality is provided by gSSO UI + component, and it's completely invisible from the applications' point + of view. +

+

+ The client library (libgsignond-glib) interacts with gSSO daemon through + D-Bus. These D-Bus APIs should not be used directly as they are not documented, subject + to change and don't come with backwards compatibility guarantees. +

+
+
+

Terminology

+

+ gSSO is built around a few key concepts which are explained below: +

+
    +
  • + Authentication service: 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. +

  • +
  • + Identity: 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 + SignonIdentity objects. +

  • +
  • + Security context: The information that is used by gSSO daemon + to make access control decisions when applications try to access identities + for reading, writing, or starting authentication sessions. Security contexts + consist of two strings: the system context which identifies the application process, + and application context which identifies what the application process is doing. Security + contexts are represented in the client library by + SignonSecurityContext objects. +

  • +
  • + Authentication method: the SSO daemon supports different + authentication methods, each implemented by a plugin. Well known examples of + authentication methods include SASL, + or OAuth. Authentication methods + might support different authentication mechanisms, which are method-specific variants of authentication process. +

  • +
  • + Authentication session: the process of performing the authentication. + It is represented in the client library by SignonAuthSession objects. + Authentication sessions are started from existing identites. +

  • +
+

+

+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/index.html b/docs/reference/html/index.html index 6db3ee0..528c995 100644 --- a/docs/reference/html/index.html +++ b/docs/reference/html/index.html @@ -5,7 +5,7 @@ libgsignon-glib Reference Manual - + @@ -15,54 +15,51 @@

- This document is for libgsignon-glib, version 2.0.1 + This document is for libgsignon-glib, version 2.0.3 . The latest - version of this documentation can be built from the source code at - https://code.google.com/p/accounts-sso/source/checkout?repo=libgsignon-glib. + version of this documentation can be found on-line at + + http://gsignon-docs.accounts-sso.googlecode.com/git/libgsignon-glib/index.html.


-
I. libgsignon-glib Overview
+
I. gSSO Overview
+
+
+gSSO introduction +
+
+gSSO usage examples +
+
II. libgsignon-glib Objects
Object Hierarchy
Credential management
-SignonAuthService — The authorization service object +SignonAuthService — the authorization service object
-SignonAuthSession — Authentication session handler. +SignonIdentity — client side presentation of a credential.
-SignonError — Possible errors from Signon. +SignonIdentityInfo — data contained in a SignonIdentity.
-SignonIdentity — Client side presentation of a credential. +SignonSecurityContext — representation of a security context.
-SignonIdentityInfo — Extra data for a SignonIdentity. +SignonAuthSession — the authentication session object
-SignonSecurityContext — Representation of a security context. +SignonError — possible gSSO errors
-
III. signond D-Bus API
-
-
-com.google.code.AccountsSSO.gSingleSignOn.AuthService -
-
-com.google.code.AccountsSSO.gSingleSignOn.AuthSession -
-
-com.google.code.AccountsSSO.gSingleSignOn.Identity -
-
-
IV. Appendices
+
III. Appendices
API Index
Index of deprecated symbols
diff --git a/docs/reference/html/index.sgml b/docs/reference/html/index.sgml index b743c7c..8238d1f 100644 --- a/docs/reference/html/index.sgml +++ b/docs/reference/html/index.sgml @@ -1,148 +1,60 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + @@ -150,6 +62,7 @@ + @@ -159,6 +72,9 @@ + + + @@ -169,58 +85,98 @@ - - + + - - - - - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/reference/html/SignonAuthService.html b/docs/reference/html/libgsignon-glib-SignonAuthService.html similarity index 62% rename from docs/reference/html/SignonAuthService.html rename to docs/reference/html/libgsignon-glib-SignonAuthService.html index 0849d22..bf46132 100644 --- a/docs/reference/html/SignonAuthService.html +++ b/docs/reference/html/libgsignon-glib-SignonAuthService.html @@ -7,7 +7,7 @@ - + @@ -18,105 +18,123 @@ Up Home libgsignon-glib Reference Manual -Next +Next -Top +Top  |  - Description -  |  - Object Hierarchy + Description
-
+
-

SignonAuthService

-

SignonAuthService — The authorization service object

+

SignonAuthService

+

SignonAuthService — the authorization service object

-

Synopsis

-
                    SignonAuthService;
-void                (*SignonQueryMechanismCb)           (SignonAuthService *auth_service,
+

Synopsis

+
struct              SignonAuthServiceClass;
+typedef             SignonIdentityFilter;
+typedef             SignonIdentityList;
+void                (*SignonQueryIdentitiesCb)          (SignonAuthService *auth_service,
+                                                         SignonIdentityList *identities,
+                                                         const GError *error,
+                                                         gpointer user_data);
+void                (*SignonQueryMechanismCb)           (SignonAuthService *auth_service,
                                                          const gchar *method,
                                                          gchar **mechanisms,
                                                          const GError *error,
                                                          gpointer user_data);
-void                (*SignonQueryMethodsCb)             (SignonAuthService *auth_service,
+void                (*SignonQueryMethodsCb)             (SignonAuthService *auth_service,
                                                          gchar **methods,
                                                          const GError *error,
                                                          gpointer user_data);
-void                (*SignonQueryIdentitiesCb)          (SignonAuthService *auth_service,
-                                                         SignonIdentityList *identities,
-                                                         const GError *error,
+SignonAuthService * signon_auth_service_new             ();
+void                signon_auth_service_query_identities
+                                                        (SignonAuthService *auth_service,
+                                                         SignonIdentityFilter *filter,
+                                                         const gchar *application_context,
+                                                         SignonQueryIdentitiesCb cb,
                                                          gpointer user_data);
-SignonAuthService * signon_auth_service_new             ();
-void                signon_auth_service_query_mechanisms
-                                                        (SignonAuthService *auth_service,
+void                signon_auth_service_query_mechanisms
+                                                        (SignonAuthService *auth_service,
                                                          const gchar *method,
-                                                         SignonQueryMechanismCb cb,
-                                                         gpointer user_data);
-void                signon_auth_service_query_methods   (SignonAuthService *auth_service,
-                                                         SignonQueryMethodsCb cb,
+                                                         SignonQueryMechanismCb cb,
                                                          gpointer user_data);
-void                signon_auth_service_query_identities
-                                                        (SignonAuthService *auth_service,
-                                                         SignonIdentityFilter *filter,
-                                                         const gchar *application_context,
-                                                         SignonQueryIdentitiesCb cb,
+void                signon_auth_service_query_methods   (SignonAuthService *auth_service,
+                                                         SignonQueryMethodsCb cb,
                                                          gpointer user_data);
 
-

Object Hierarchy

-
-  GObject
-   +----SignonAuthService
-
-
-
-

Description

+

Description

-The SignonAuthService is the main object in this library. +The SignonAuthService is the main object in this library. It provides top-level +functions to query existing identities, available methods and their mechanisms.

-

Details

+

Details

-

SignonAuthService

-
typedef struct _SignonAuthService SignonAuthService;
+

struct SignonAuthServiceClass

+
struct SignonAuthServiceClass {
+    GObjectClass parent_class;
+};
+

Opaque struct. Use the accessor functions below.

+
++ + + + +

GObjectClass parent_class;

a reference to the parent class

-

SignonQueryMechanismCb ()

-
void                (*SignonQueryMechanismCb)           (SignonAuthService *auth_service,
-                                                         const gchar *method,
-                                                         gchar **mechanisms,
+

SignonIdentityFilter

+
typedef GHashTable SignonIdentityFilter;
+
+

+GHashTable based filter variant dictionary. +

+
+
+
+

SignonIdentityList

+
typedef GList SignonIdentityList;
+
+

+GList of SignonIdentity items. +

+
+
+
+

SignonQueryIdentitiesCb ()

+
void                (*SignonQueryIdentitiesCb)          (SignonAuthService *auth_service,
+                                                         SignonIdentityList *identities,
                                                          const GError *error,
                                                          gpointer user_data);

-Callback to be passed to signon_auth_service_query_mechanisms(). +Callback to be passed to signon_auth_service_query_identities().

- + - - - - - - + @@ -132,24 +150,29 @@ Callback to be passed to -

SignonQueryMethodsCb ()

-
void                (*SignonQueryMethodsCb)             (SignonAuthService *auth_service,
-                                                         gchar **methods,
+

SignonQueryMechanismCb ()

+
void                (*SignonQueryMechanismCb)           (SignonAuthService *auth_service,
+                                                         const gchar *method,
+                                                         gchar **mechanisms,
                                                          const GError *error,
                                                          gpointer user_data);

-Callback to be passed to signon_auth_service_query_methods(). +Callback to be passed to signon_auth_service_query_mechanisms().

auth_service :

the SignonAuthService.the SignonAuthService.

method :

the authentication method being inspected.

mechanisms :

list of available mechanisms. [transfer full][type GStrv] +

identities :

+GList based list of SignonIdentityInfo. [transfer full]
- + - - + + + + + @@ -165,25 +188,24 @@ Callback to be passed to -

SignonQueryIdentitiesCb ()

-
void                (*SignonQueryIdentitiesCb)          (SignonAuthService *auth_service,
-                                                         SignonIdentityList *identities,
+

SignonQueryMethodsCb ()

+
void                (*SignonQueryMethodsCb)             (SignonAuthService *auth_service,
+                                                         gchar **methods,
                                                          const GError *error,
                                                          gpointer user_data);

-Callback to be passed to signon_auth_service_query_identities(). +Callback to be passed to signon_auth_service_query_methods().

auth_service :

the SignonAuthService.the SignonAuthService.

methods :

list of available methods. [transfer full][type GStrv] +

method :

the authentication method being inspected.

mechanisms :

list of available mechanisms. [transfer full][type GStrv]
- + - - + @@ -200,40 +222,70 @@ Callback to be passed to

signon_auth_service_new ()

-
SignonAuthService * signon_auth_service_new             ();
+
SignonAuthService * signon_auth_service_new             ();

-Create a new SignonAuthService. +Create a new SignonAuthService.

auth_service :

the SignonAuthService.the SignonAuthService.

identities :

-GList based list of SignonIdentityInfo. [transfer full] +

methods :

list of available methods. [transfer full][type GStrv]
- +

Returns :

an instance of an SignonAuthService.an instance of an SignonAuthService.

-

signon_auth_service_query_mechanisms ()

-
void                signon_auth_service_query_mechanisms
-                                                        (SignonAuthService *auth_service,
-                                                         const gchar *method,
-                                                         SignonQueryMechanismCb cb,
+

signon_auth_service_query_identities ()

+
void                signon_auth_service_query_identities
+                                                        (SignonAuthService *auth_service,
+                                                         SignonIdentityFilter *filter,
+                                                         const gchar *application_context,
+                                                         SignonQueryIdentitiesCb cb,
                                                          gpointer user_data);

-Lists all the available mechanisms. +Query available identities, possibly applying a filter. +

+

+filter is a GHashTable that contains filter conditions in the form of +string keys and GVariant values. Currently the following keys are supported: +

+

+

+
    +
  • "Owner". The value should be a SignonSecurityContext (use +signon_security_context_build_variant() to create a GVariant). +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 GSignondAccessControlManager.

  • +
  • "Type". The value should be a SignonIdentityType.

  • +
  • "Caption". The value is a string, and only those identites whose caption +begins with the supplied value will be returned.

  • +
+

+

+

+The meaning of application_context is explained in SignonSecurityContext. +It is used by GSignondAccessControlManager to determine if the requesting +application is a keychain application. If it is, then all identites will be +returned (subject to "Owner" key in filter). 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 filter).

- + - - + + + + + + @@ -249,19 +301,26 @@ retrieved.
-

signon_auth_service_query_methods ()

-
void                signon_auth_service_query_methods   (SignonAuthService *auth_service,
-                                                         SignonQueryMethodsCb cb,
+

signon_auth_service_query_mechanisms ()

+
void                signon_auth_service_query_mechanisms
+                                                        (SignonAuthService *auth_service,
+                                                         const gchar *method,
+                                                         SignonQueryMechanismCb cb,
                                                          gpointer user_data);

-Lists all the available methods. +Lists all the available mechanisms for an authentication method.

auth_service :

the SignonAuthService.the SignonAuthService.

method :

the name of the method whose mechanisms must be -retrieved.

filter :

filter variant dictionary based on GHashTable.

application_context :

application security context, can be NULL.

cb :

- + + + + + @@ -277,30 +336,19 @@ Lists all the available methods.
-

signon_auth_service_query_identities ()

-
void                signon_auth_service_query_identities
-                                                        (SignonAuthService *auth_service,
-                                                         SignonIdentityFilter *filter,
-                                                         const gchar *application_context,
-                                                         SignonQueryIdentitiesCb cb,
+

signon_auth_service_query_methods ()

+
void                signon_auth_service_query_methods   (SignonAuthService *auth_service,
+                                                         SignonQueryMethodsCb cb,
                                                          gpointer user_data);

-Query identities. +Lists all the available authentication methods.

auth_service :

the SignonAuthService.the SignonAuthService.

method :

the name of the method whose mechanisms must be +retrieved.

cb :

- - - - - - - - - + diff --git a/docs/reference/html/SignonError.html b/docs/reference/html/libgsignon-glib-SignonError.html similarity index 81% rename from docs/reference/html/SignonError.html rename to docs/reference/html/libgsignon-glib-SignonError.html index 9371b3f..6847d07 100644 --- a/docs/reference/html/SignonError.html +++ b/docs/reference/html/libgsignon-glib-SignonError.html @@ -7,7 +7,7 @@ - + @@ -18,47 +18,49 @@ - +

auth_service :

the SignonAuthService.

filter :

filter variant dictionary based on GHashTable.

application_context :

application security context, can be NULL.the SignonAuthService.

cb :

Up Home libgsignon-glib Reference ManualNextNext
-Top +Top  |  - Description -  |  - Object Hierarchy + Description
-
+
-

SignonError

-

SignonError — Possible errors from Signon.

+

SignonError

+

SignonError — possible gSSO errors

-

Synopsis

-
enum                SignonError;
+

Synopsis

+
#define             SIGNON_ERROR
+enum                SignonError;
+GQuark              signon_error_quark                  (void);
 
-

Object Hierarchy

-
-  GEnum
-   +----SignonError
-
+

Description

+

+An enumeration of errors that are possible when using gSSO +

-

Description

+

Details

+
+

SIGNON_ERROR

+
#define SIGNON_ERROR (signon_error_quark())
+

-An enumeration of errors that are possible from Signon. +This macro is used when creating a GError in libgsignond-glib library

-
-

Details

+
-

enum SignonError

+

enum SignonError

typedef enum {
     SIGNON_ERROR_UNKNOWN = 1,
     SIGNON_ERROR_INTERNAL_SERVER = 2,
@@ -149,7 +151,7 @@ insufficient client permissions.
 
 
 

SIGNON_ERROR_IDENTITY_NOT_FOUND

-The identity mathching the SignonIdentity +The identity mathching the SignonIdentity was not found on the service. @@ -296,6 +298,14 @@ specific.
+
+
+

signon_error_quark ()

+
GQuark              signon_error_quark                  (void);
+

+Creates and returns a domain for gSSO errors. +

+