44
44
</tr></table></div>
45
45
<div class="refsynopsisdiv" title="Synopsis">
46
46
<a name="gp11-gp11-module.synopsis"></a><h2>Synopsis</h2>
47
<a name="GP11Module"></a><pre class="synopsis">
48
<a class="link" href="gp11-gp11-module.html#GP11Module-struct" title="GP11Module">GP11Module</a>;
49
<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a>* <a class="link" href="gp11-gp11-module.html#gp11-module-new" title="gp11_module_new ()">gp11_module_new</a> (CK_FUNCTION_LIST_PTR funcs);
50
<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a>* <a class="link" href="gp11-gp11-module.html#gp11-module-initialize" title="gp11_module_initialize ()">gp11_module_initialize</a> (const <a
51
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
54
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
55
>gpointer</a> reserved,
57
href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"
60
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
61
>gboolean</a> <a class="link" href="gp11-gp11-module.html#gp11-module-equal" title="gp11_module_equal ()">gp11_module_equal</a> (<a
62
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"
63
>gconstpointer</a> module1,
65
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"
66
>gconstpointer</a> module2);
68
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"
69
>guint</a> <a class="link" href="gp11-gp11-module.html#gp11-module-hash" title="gp11_module_hash ()">gp11_module_hash</a> (<a
70
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"
71
>gconstpointer</a> module);
73
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
74
>gchar</a>* <a class="link" href="gp11-gp11-module.html#gp11-module-get-path" title="gp11_module_get_path ()">gp11_module_get_path</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self);
75
CK_FUNCTION_LIST_PTR <a class="link" href="gp11-gp11-module.html#gp11-module-get-functions" title="gp11_module_get_functions ()">gp11_module_get_functions</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self);
76
<a class="link" href="gp11-gp11-module.html#GP11ModuleInfo" title="GP11ModuleInfo">GP11ModuleInfo</a>* <a class="link" href="gp11-gp11-module.html#gp11-module-get-info" title="gp11_module_get_info ()">gp11_module_get_info</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self);
78
href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"
79
>GList</a>* <a class="link" href="gp11-gp11-module.html#gp11-module-get-slots" title="gp11_module_get_slots ()">gp11_module_get_slots</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self,
81
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
82
>gboolean</a> token_present);
84
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
85
>gboolean</a> <a class="link" href="gp11-gp11-module.html#gp11-module-get-pool-sessions" title="gp11_module_get_pool_sessions ()">gp11_module_get_pool_sessions</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self);
86
void <a class="link" href="gp11-gp11-module.html#gp11-module-set-pool-sessions" title="gp11_module_set_pool_sessions ()">gp11_module_set_pool_sessions</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self,
88
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
91
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"
92
>gint</a> <a class="link" href="gp11-gp11-module.html#gp11-module-get-auto-authenticate" title="gp11_module_get_auto_authenticate ()">gp11_module_get_auto_authenticate</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self);
93
void <a class="link" href="gp11-gp11-module.html#gp11-module-set-auto-authenticate" title="gp11_module_set_auto_authenticate ()">gp11_module_set_auto_authenticate</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self,
95
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"
96
>gint</a> auto_authenticate);
98
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
99
>gboolean</a> <a class="link" href="gp11-gp11-module.html#gp11-module-enumerate-objects" title="gp11_module_enumerate_objects ()">gp11_module_enumerate_objects</a> (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *self,
100
<a class="link" href="gp11-gp11-module.html#GP11ObjectForeachFunc" title="GP11ObjectForeachFunc ()">GP11ObjectForeachFunc</a> func,
102
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
103
>gpointer</a> user_data,
47
<a name="GP11Module"></a><pre class="synopsis"> <a class="link" href="gp11-gp11-module.html#GP11Module-struct" title="GP11Module">GP11Module</a>;
48
<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a>* <a class="link" href="gp11-gp11-module.html#gp11-module-new" title="gp11_module_new ()">gp11_module_new</a> (<span class="returnvalue">CK_FUNCTION_LIST_PTR</span> funcs);
49
<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a>* <a class="link" href="gp11-gp11-module.html#gp11-module-initialize" title="gp11_module_initialize ()">gp11_module_initialize</a> (const <span class="returnvalue">gchar</span> *path,
50
<span class="returnvalue">gpointer</span> reserved,
51
<span class="returnvalue">GError</span> **err);
52
<span class="returnvalue">gboolean</span> <a class="link" href="gp11-gp11-module.html#gp11-module-equal" title="gp11_module_equal ()">gp11_module_equal</a> (<span class="returnvalue">gconstpointer</span> module1,
53
<span class="returnvalue">gconstpointer</span> module2);
54
<span class="returnvalue">guint</span> <a class="link" href="gp11-gp11-module.html#gp11-module-hash" title="gp11_module_hash ()">gp11_module_hash</a> (<span class="returnvalue">gconstpointer</span> module);
55
const <span class="returnvalue">gchar</span>* <a class="link" href="gp11-gp11-module.html#gp11-module-get-path" title="gp11_module_get_path ()">gp11_module_get_path</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self);
56
<span class="returnvalue">CK_FUNCTION_LIST_PTR</span> <a class="link" href="gp11-gp11-module.html#gp11-module-get-functions" title="gp11_module_get_functions ()">gp11_module_get_functions</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self);
57
<a class="link" href="gp11-gp11-module.html#GP11ModuleInfo" title="GP11ModuleInfo"><span class="returnvalue">GP11ModuleInfo</span></a>* <a class="link" href="gp11-gp11-module.html#gp11-module-get-info" title="gp11_module_get_info ()">gp11_module_get_info</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self);
58
<span class="returnvalue">GList</span>* <a class="link" href="gp11-gp11-module.html#gp11-module-get-slots" title="gp11_module_get_slots ()">gp11_module_get_slots</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self,
59
<span class="returnvalue">gboolean</span> token_present);
60
<span class="returnvalue">gboolean</span> <a class="link" href="gp11-gp11-module.html#gp11-module-get-pool-sessions" title="gp11_module_get_pool_sessions ()">gp11_module_get_pool_sessions</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self);
61
<span class="returnvalue">void</span> <a class="link" href="gp11-gp11-module.html#gp11-module-set-pool-sessions" title="gp11_module_set_pool_sessions ()">gp11_module_set_pool_sessions</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self,
62
<span class="returnvalue">gboolean</span> pool);
63
<span class="returnvalue">gint</span> <a class="link" href="gp11-gp11-module.html#gp11-module-get-auto-authenticate" title="gp11_module_get_auto_authenticate ()">gp11_module_get_auto_authenticate</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self);
64
<span class="returnvalue">void</span> <a class="link" href="gp11-gp11-module.html#gp11-module-set-auto-authenticate" title="gp11_module_set_auto_authenticate ()">gp11_module_set_auto_authenticate</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self,
65
<span class="returnvalue">gint</span> auto_authenticate);
66
<span class="returnvalue">gboolean</span> <a class="link" href="gp11-gp11-module.html#gp11-module-enumerate-objects" title="gp11_module_enumerate_objects ()">gp11_module_enumerate_objects</a> (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="returnvalue">GP11Module</span></a> *self,
67
<a class="link" href="gp11-gp11-module.html#GP11ObjectForeachFunc" title="GP11ObjectForeachFunc ()"><span class="returnvalue">GP11ObjectForeachFunc</span></a> func,
68
<span class="returnvalue">gpointer</span> user_data,
106
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
107
>gboolean</a> (<a class="link" href="gp11-gp11-module.html#GP11ObjectForeachFunc" title="GP11ObjectForeachFunc ()">*GP11ObjectForeachFunc</a>) (<a class="link" href="gp11-gp11-object.html#GP11Object">GP11Object</a> *object,
109
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
110
>gpointer</a> user_data);
70
<span class="returnvalue">gboolean</span> (<a class="link" href="gp11-gp11-module.html#GP11ObjectForeachFunc" title="GP11ObjectForeachFunc ()">*GP11ObjectForeachFunc</a>) (<a class="link" href="gp11-gp11-object.html#GP11Object"><span class="returnvalue">GP11Object</span></a> *object,
71
<span class="returnvalue">gpointer</span> user_data);
111
72
<a class="link" href="gp11-gp11-module.html#GP11ModuleInfo" title="GP11ModuleInfo">GP11ModuleInfo</a>;
112
void <a class="link" href="gp11-gp11-module.html#gp11-module-info-free" title="gp11_module_info_free ()">gp11_module_info_free</a> (<a class="link" href="gp11-gp11-module.html#GP11ModuleInfo" title="GP11ModuleInfo">GP11ModuleInfo</a> *module_info);
73
<span class="returnvalue">void</span> <a class="link" href="gp11-gp11-module.html#gp11-module-info-free" title="gp11_module_info_free ()">gp11_module_info_free</a> (<a class="link" href="gp11-gp11-module.html#GP11ModuleInfo" title="GP11ModuleInfo"><span class="returnvalue">GP11ModuleInfo</span></a> *module_info);
115
76
<div class="refsect1" title="Object Hierarchy">
116
77
<a name="gp11-gp11-module.object-hierarchy"></a><h2>Object Hierarchy</h2>
117
78
<pre class="synopsis">
119
href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"
124
83
<div class="refsect1" title="Properties">
125
84
<a name="gp11-gp11-module.properties"></a><h2>Properties</h2>
126
85
<pre class="synopsis">
127
"<a class="link" href="gp11-gp11-module.html#GP11Module--auto-authenticate" title='The "auto-authenticate" property'>auto-authenticate</a>" <a
128
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"
129
>gint</a> : Read / Write
130
"<a class="link" href="gp11-gp11-module.html#GP11Module--functions" title='The "functions" property'>functions</a>" <a
131
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
132
>gpointer</a> : Read / Write / Construct Only
133
"<a class="link" href="gp11-gp11-module.html#GP11Module--path" title='The "path" property'>path</a>" <a
134
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
135
>gchar</a>* : Read / Write / Construct Only
136
"<a class="link" href="gp11-gp11-module.html#GP11Module--pool-sessions" title='The "pool-sessions" property'>pool-sessions</a>" <a
137
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
138
>gboolean</a> : Read / Write
86
"<a class="link" href="gp11-gp11-module.html#GP11Module--auto-authenticate" title='The "auto-authenticate" property'>auto-authenticate</a>" <span class="type">gint</span> : Read / Write
87
"<a class="link" href="gp11-gp11-module.html#GP11Module--functions" title='The "functions" property'>functions</a>" <span class="type">gpointer</span> : Read / Write / Construct Only
88
"<a class="link" href="gp11-gp11-module.html#GP11Module--path" title='The "path" property'>path</a>" <span class="type">gchar</span>* : Read / Write / Construct Only
89
"<a class="link" href="gp11-gp11-module.html#GP11Module--pool-sessions" title='The "pool-sessions" property'>pool-sessions</a>" <span class="type">gboolean</span> : Read / Write
141
92
<div class="refsect1" title="Signals">
683
564
Use <a class="link" href="gp11-gp11-module.html#gp11-module-info-free" title="gp11_module_info_free ()"><code class="function">gp11_module_info_free()</code></a> to release this structure when done with it.</p>
686
565
<div class="variablelist"><table border="0">
687
566
<col align="left" valign="top">
690
<td><p><span class="term"><a
691
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"
692
>guint8</a> <em class="structfield"><code>pkcs11_version_major</code></em>;</span></p></td>
569
<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="GP11ModuleInfo.pkcs11-version-major"></a>pkcs11_version_major</code></em>;</span></p></td>
693
570
<td> The major version of the module.
697
<td><p><span class="term"><a
698
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"
699
>guint8</a> <em class="structfield"><code>pkcs11_version_minor</code></em>;</span></p></td>
574
<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="GP11ModuleInfo.pkcs11-version-minor"></a>pkcs11_version_minor</code></em>;</span></p></td>
700
575
<td> The minor version of the module.
704
<td><p><span class="term"><a
705
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
706
>gchar</a> *<em class="structfield"><code>manufacturer_id</code></em>;</span></p></td>
579
<td><p><span class="term"><span class="type">gchar</span> *<em class="structfield"><code><a name="GP11ModuleInfo.manufacturer-id"></a>manufacturer_id</code></em>;</span></p></td>
707
580
<td> The module manufacturer.
711
<td><p><span class="term"><a
712
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gulong"
713
>gulong</a> <em class="structfield"><code>flags</code></em>;</span></p></td>
584
<td><p><span class="term"><span class="type">gulong</span> <em class="structfield"><code><a name="GP11ModuleInfo.flags"></a>flags</code></em>;</span></p></td>
714
585
<td> The module PKCS#11 flags.
718
<td><p><span class="term"><a
719
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
720
>gchar</a> *<em class="structfield"><code>library_description</code></em>;</span></p></td>
589
<td><p><span class="term"><span class="type">gchar</span> *<em class="structfield"><code><a name="GP11ModuleInfo.library-description"></a>library_description</code></em>;</span></p></td>
721
590
<td> The module description.
725
<td><p><span class="term"><a
726
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"
727
>guint8</a> <em class="structfield"><code>library_version_major</code></em>;</span></p></td>
594
<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="GP11ModuleInfo.library-version-major"></a>library_version_major</code></em>;</span></p></td>
728
595
<td> The major version of the library.
732
<td><p><span class="term"><a
733
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"
734
>guint8</a> <em class="structfield"><code>library_version_minor</code></em>;</span></p></td>
599
<td><p><span class="term"><span class="type">guint8</span> <em class="structfield"><code><a name="GP11ModuleInfo.library-version-minor"></a>library_version_minor</code></em>;</span></p></td>
735
600
<td> The minor version of the library.
771
632
The <a class="link" href="gp11-gp11-module.html#GP11Module-authenticate-object" title='The "authenticate-object" signal'><span class="type">"authenticate-object"</span></a> signal will be fired when an
772
633
object needs to be authenticated.</p>
775
634
<p>Allowed values: >= 0</p>
776
635
<p>Default value: 0</p>
779
638
<div class="refsect2" title='The "functions" property'>
780
639
<a name="GP11Module--functions"></a><h3>The <code class="literal">"functions"</code> property</h3>
781
<pre class="programlisting"> "functions" <a
782
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
783
>gpointer</a> : Read / Write / Construct Only</pre>
640
<pre class="programlisting"> "functions" <span class="type">gpointer</span> : Read / Write / Construct Only</pre>
785
642
The raw PKCS#11 function list for the module.
788
645
This points to a CK_FUNCTION_LIST structure.</p>
793
648
<div class="refsect2" title='The "path" property'>
794
649
<a name="GP11Module--path"></a><h3>The <code class="literal">"path"</code> property</h3>
795
<pre class="programlisting"> "path" <a
796
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
797
>gchar</a>* : Read / Write / Construct Only</pre>
650
<pre class="programlisting"> "path" <span class="type">gchar</span>* : Read / Write / Construct Only</pre>
799
652
The PKCS#11 module file path.
802
655
This may be set to NULL if this object was created from an already
803
656
initialized module via the <a class="link" href="gp11-gp11-module.html#gp11-module-new" title="gp11_module_new ()"><code class="function">gp11_module_new()</code></a> function.</p>
806
657
<p>Default value: NULL</p>
809
660
<div class="refsect2" title='The "pool-sessions" property'>
810
661
<a name="GP11Module--pool-sessions"></a><h3>The <code class="literal">"pool-sessions"</code> property</h3>
811
<pre class="programlisting"> "pool-sessions" <a
812
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
813
>gboolean</a> : Read / Write</pre>
662
<pre class="programlisting"> "pool-sessions" <span class="type">gboolean</span> : Read / Write</pre>
815
664
Whether or not to pool PKCS#11 sessions. When this is set, sessions
816
665
will be pooled and reused if their flags match when <a class="link" href="gp11-gp11-slot.html#gp11-slot-open-session" title="gp11_slot_open_session ()"><code class="function">gp11_slot_open_session()</code></a>
820
667
<p>Default value: FALSE</p>
824
671
<a name="gp11-gp11-module.signal-details"></a><h2>Signal Details</h2>
825
672
<div class="refsect2" title='The "authenticate-object" signal'>
826
673
<a name="GP11Module-authenticate-object"></a><h3>The <code class="literal">"authenticate-object"</code> signal</h3>
827
<pre class="programlisting"><a
828
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
829
>gboolean</a> user_function (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *module,
830
<a class="link" href="gp11-gp11-object.html#GP11Object">GP11Object</a> *object,
832
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
835
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
836
>gpointer</a> password,
838
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
839
>gpointer</a> user_data) : Run Last</pre>
674
<pre class="programlisting"><span class="returnvalue">gboolean</span> user_function (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="type">GP11Module</span></a> *module,
675
<a class="link" href="gp11-gp11-object.html#GP11Object"><span class="type">GP11Object</span></a> *object,
676
<span class="type">gchar</span> *label,
677
<span class="type">gpointer</span> password,
678
<span class="type">gpointer</span> user_data) : Run Last</pre>
841
680
This signal is emitted when a password is needed to authenticate a PKCS#11
842
681
object like a key. If the module prompts for passwords itself, then this signal will
843
682
not be emitted.</p>
846
683
<div class="variablelist"><table border="0">
847
684
<col align="left" valign="top">
882
719
<div class="refsect2" title='The "authenticate-slot" signal'>
883
720
<a name="GP11Module-authenticate-slot"></a><h3>The <code class="literal">"authenticate-slot"</code> signal</h3>
884
<pre class="programlisting"><a
885
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"
886
>gboolean</a> user_function (<a class="link" href="gp11-gp11-module.html#GP11Module">GP11Module</a> *module,
887
<a class="link" href="gp11-gp11-slot.html#GP11Slot">GP11Slot</a> *slot,
889
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"
892
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
893
>gpointer</a> password,
895
href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"
896
>gpointer</a> user_data) : Run Last</pre>
721
<pre class="programlisting"><span class="returnvalue">gboolean</span> user_function (<a class="link" href="gp11-gp11-module.html#GP11Module"><span class="type">GP11Module</span></a> *module,
722
<a class="link" href="gp11-gp11-slot.html#GP11Slot"><span class="type">GP11Slot</span></a> *slot,
723
<span class="type">gchar</span> *string,
724
<span class="type">gpointer</span> password,
725
<span class="type">gpointer</span> user_data) : Run Last</pre>
898
727
This signal is emitted when a password is needed to authenticate a PKCS#11
899
728
slot. If the module prompts for passwords itself, then this signal will
900
729
not be emitted.</p>
903
730
<div class="variablelist"><table border="0">
904
731
<col align="left" valign="top">