~ivoks/ubuntu/lucid/glib2.0/887946

« back to all changes in this revision

Viewing changes to docs/reference/gio/html/GSocketControlMessage.html

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher
  • Date: 2010-05-05 12:42:47 UTC
  • Revision ID: james.westby@ubuntu.com-20100505124247-oyejlzn54pq4ihdl
Tags: 2.24.1-0ubuntu1
New upstream version (lp: #575777):
Bugs fixed:
615379 g_new macros crash if sizeof(struct_type) == 0
614185 g_type_class_add_private() documentation is not correct
614372 g_stat() is funny
615111 GAsyncInitable's default implementation is broken
Fix race in g_cancellable_cancel
Fix for g_variant_iter_loop
Make g_string_append_len() accept NULL lf len == 0
Fix typo in GMutex error message

Show diffs side-by-side

added added

removed removed

Lines of Context:
8
8
<link rel="up" href="networking.html" title="Lowlevel platform-independent network support">
9
9
<link rel="prev" href="GUnixSocketAddress.html" title="GUnixSocketAddress">
10
10
<link rel="next" href="GUnixFDList.html" title="GUnixFDList">
11
 
<meta name="generator" content="GTK-Doc V1.13 (XML mode)">
 
11
<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
 
<link rel="part" href="pt01.html" title="Part I. GIO Overview">
14
 
<link rel="chapter" href="ch01.html" title="Introduction">
15
 
<link rel="chapter" href="ch02.html" title="Compiling GIO applications">
16
 
<link rel="chapter" href="ch03.html" title="Running GIO applications">
17
 
<link rel="chapter" href="extending-gio.html" title="Extending GIO">
18
 
<link rel="part" href="pt02.html" title="Part II. API Reference">
19
 
<link rel="chapter" href="file_ops.html" title="File Operations">
20
 
<link rel="chapter" href="file_mon.html" title="File System Monitoring">
21
 
<link rel="chapter" href="async.html" title="Asynchronous I/O">
22
 
<link rel="chapter" href="conversion.html" title="Data conversion">
23
 
<link rel="chapter" href="streaming.html" title="Streaming I/O">
24
 
<link rel="chapter" href="types.html" title="File types and applications">
25
 
<link rel="chapter" href="volume_mon.html" title="Volumes and Drives">
26
 
<link rel="chapter" href="icons.html" title="Icons">
27
 
<link rel="chapter" href="failable_initialization.html" title="Failable Initialization">
28
 
<link rel="chapter" href="networking.html" title="Lowlevel platform-independent network support">
29
 
<link rel="chapter" href="resolver.html" title="DNS resolution">
30
 
<link rel="chapter" href="highlevel-socket.html" title="Highlevel network functionallity">
31
 
<link rel="chapter" href="utils.html" title="Utilities">
32
 
<link rel="chapter" href="extending.html" title="Extending GIO">
33
 
<link rel="part" href="migrating.html" title="Part III. Migrating to GIO">
34
 
<link rel="chapter" href="ch19.html" title="Migrating from POSIX to GIO">
35
 
<link rel="chapter" href="ch20.html" title="Migrating from GnomeVFS to GIO">
36
 
<link rel="chapter" href="gio-hierarchy.html" title="Object Hierarchy">
37
 
<link rel="index" href="api-index-full.html" title="Index">
38
 
<link rel="index" href="api-index-deprecated.html" title="Index of deprecated symbols">
39
 
<link rel="index" href="api-index-2-18.html" title="Index of new symbols in 2.18">
40
 
<link rel="index" href="api-index-2-20.html" title="Index of new symbols in 2.20">
41
 
<link rel="index" href="api-index-2-22.html" title="Index of new symbols in 2.22">
42
 
<link rel="index" href="api-index-2-24.html" title="Index of new symbols in 2.24">
43
13
</head>
44
14
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
45
15
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
71
41
<a name="GSocketControlMessage.synopsis"></a><h2>Synopsis</h2>
72
42
<pre class="synopsis">                    <a class="link" href="GSocketControlMessage.html#GSocketControlMessage-struct" title="GSocketControlMessage">GSocketControlMessage</a>;
73
43
<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> * <a class="link" href="GSocketControlMessage.html#g-socket-control-message-deserialize" title="g_socket_control_message_deserialize ()">g_socket_control_message_deserialize</a>
74
 
                                                        (<span class="returnvalue">int</span> level,
75
 
                                                         <span class="returnvalue">int</span> type,
76
 
                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a> size,
77
 
                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data);
78
 
<span class="returnvalue">int</span>                 <a class="link" href="GSocketControlMessage.html#g-socket-control-message-get-level" title="g_socket_control_message_get_level ()">g_socket_control_message_get_level</a>  (<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> *message);
 
44
                                                        (<em class="parameter"><code><span class="type">int</span> level</code></em>,
 
45
                                                         <em class="parameter"><code><span class="type">int</span> type</code></em>,
 
46
                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
 
47
                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
 
48
<span class="returnvalue">int</span>                 <a class="link" href="GSocketControlMessage.html#g-socket-control-message-get-level" title="g_socket_control_message_get_level ()">g_socket_control_message_get_level</a>  (<em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> *message</code></em>);
79
49
<span class="returnvalue">int</span>                 <a class="link" href="GSocketControlMessage.html#g-socket-control-message-get-msg-type" title="g_socket_control_message_get_msg_type ()">g_socket_control_message_get_msg_type</a>
80
 
                                                        (<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> *message);
81
 
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>               <a class="link" href="GSocketControlMessage.html#g-socket-control-message-get-size" title="g_socket_control_message_get_size ()">g_socket_control_message_get_size</a>   (<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> *message);
82
 
<span class="returnvalue">void</span>                <a class="link" href="GSocketControlMessage.html#g-socket-control-message-serialize" title="g_socket_control_message_serialize ()">g_socket_control_message_serialize</a>  (<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> *message,
83
 
                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data);
 
50
                                                        (<em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> *message</code></em>);
 
51
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>               <a class="link" href="GSocketControlMessage.html#g-socket-control-message-get-size" title="g_socket_control_message_get_size ()">g_socket_control_message_get_size</a>   (<em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> *message</code></em>);
 
52
<span class="returnvalue">void</span>                <a class="link" href="GSocketControlMessage.html#g-socket-control-message-serialize" title="g_socket_control_message_serialize ()">g_socket_control_message_serialize</a>  (<em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> *message</code></em>,
 
53
                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
84
54
</pre>
85
55
</div>
86
56
<div class="refsect1" title="Object Hierarchy">
87
57
<a name="GSocketControlMessage.object-hierarchy"></a><h2>Object Hierarchy</h2>
88
58
<pre class="synopsis">
89
 
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
 
59
  <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a>
90
60
   +----GSocketControlMessage
91
61
         +----<a class="link" href="GUnixFDMessage.html" title="GUnixFDMessage">GUnixFDMessage</a>
92
62
</pre>
117
87
To extend the set of control messages that can be received, subclass
118
88
this class and implement the deserialize method. Also, make sure your
119
89
class is registered with the GType typesystem before calling
120
 
<a class="link" href="GSocket.html#g-socket-receive-message" title="g_socket_receive_message ()"><code class="function">g_socket_receive_message()</code></a> to read such a message.</p>
 
90
<a class="link" href="GSocket.html#g-socket-receive-message" title="g_socket_receive_message ()"><code class="function">g_socket_receive_message()</code></a> to read such a message.
 
91
</p>
121
92
</div>
122
93
<div class="refsect1" title="Details">
123
94
<a name="GSocketControlMessage.details"></a><h2>Details</h2>
126
97
<pre class="programlisting">typedef struct _GSocketControlMessage GSocketControlMessage;</pre>
127
98
<p>
128
99
Base class for socket-type specific control messages that can be sent and
129
 
received over <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.</p>
 
100
received over <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
 
101
</p>
130
102
</div>
131
103
<hr>
132
104
<div class="refsect2" title="g_socket_control_message_deserialize ()">
133
105
<a name="g-socket-control-message-deserialize"></a><h3>g_socket_control_message_deserialize ()</h3>
134
106
<pre class="programlisting"><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> * g_socket_control_message_deserialize
135
 
                                                        (<span class="returnvalue">int</span> level,
136
 
                                                         <span class="returnvalue">int</span> type,
137
 
                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a> size,
138
 
                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data);</pre>
 
107
                                                        (<em class="parameter"><code><span class="type">int</span> level</code></em>,
 
108
                                                         <em class="parameter"><code><span class="type">int</span> type</code></em>,
 
109
                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
 
110
                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
139
111
<p>
140
112
Tries to deserialize a socket control message of a given
141
113
<em class="parameter"><code>level</code></em> and <em class="parameter"><code>type</code></em>. This will ask all known (to GType) subclasses
143
115
of message and if so deserialize it into a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>.
144
116
</p>
145
117
<p>
146
 
If there is no implementation for this kind of control message, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
147
 
will be returned.</p>
 
118
If there is no implementation for this kind of control message, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 
119
will be returned.
 
120
</p>
148
121
<div class="variablelist"><table border="0">
149
122
<col align="left" valign="top">
150
123
<tbody>
151
124
<tr>
152
125
<td><p><span class="term"><em class="parameter"><code>level</code></em> :</span></p></td>
153
 
<td> a socket level
 
126
<td>a socket level
154
127
</td>
155
128
</tr>
156
129
<tr>
157
130
<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
158
 
<td> a socket control message type for the given <em class="parameter"><code>level</code></em>
 
131
<td>a socket control message type for the given <em class="parameter"><code>level</code></em>
159
132
</td>
160
133
</tr>
161
134
<tr>
162
135
<td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
163
 
<td> the size of the data in bytes
 
136
<td>the size of the data in bytes
164
137
</td>
165
138
</tr>
166
139
<tr>
167
140
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
168
 
<td> pointer to the message data
 
141
<td>pointer to the message data
169
142
</td>
170
143
</tr>
171
144
<tr>
172
145
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
173
 
<td> the deserialized message or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
 
146
<td> the deserialized message or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
174
147
 
175
148
</td>
176
149
</tr>
181
154
<hr>
182
155
<div class="refsect2" title="g_socket_control_message_get_level ()">
183
156
<a name="g-socket-control-message-get-level"></a><h3>g_socket_control_message_get_level ()</h3>
184
 
<pre class="programlisting"><span class="returnvalue">int</span>                 g_socket_control_message_get_level  (<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> *message);</pre>
 
157
<pre class="programlisting"><span class="returnvalue">int</span>                 g_socket_control_message_get_level  (<em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> *message</code></em>);</pre>
185
158
<p>
186
159
Returns the "level" (i.e. the originating protocol) of the control message.
187
 
This is often SOL_SOCKET.</p>
 
160
This is often SOL_SOCKET.
 
161
</p>
188
162
<div class="variablelist"><table border="0">
189
163
<col align="left" valign="top">
190
164
<tbody>
191
165
<tr>
192
166
<td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td>
193
 
<td> a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>
 
167
<td>a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>
194
168
</td>
195
169
</tr>
196
170
<tr>
207
181
<div class="refsect2" title="g_socket_control_message_get_msg_type ()">
208
182
<a name="g-socket-control-message-get-msg-type"></a><h3>g_socket_control_message_get_msg_type ()</h3>
209
183
<pre class="programlisting"><span class="returnvalue">int</span>                 g_socket_control_message_get_msg_type
210
 
                                                        (<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> *message);</pre>
 
184
                                                        (<em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> *message</code></em>);</pre>
211
185
<p>
212
186
Returns the protocol specific type of the control message.
213
 
For instance, for UNIX fd passing this would be SCM_RIGHTS.</p>
 
187
For instance, for UNIX fd passing this would be SCM_RIGHTS.
 
188
</p>
214
189
<div class="variablelist"><table border="0">
215
190
<col align="left" valign="top">
216
191
<tbody>
217
192
<tr>
218
193
<td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td>
219
 
<td> a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>
 
194
<td>a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>
220
195
</td>
221
196
</tr>
222
197
<tr>
232
207
<hr>
233
208
<div class="refsect2" title="g_socket_control_message_get_size ()">
234
209
<a name="g-socket-control-message-get-size"></a><h3>g_socket_control_message_get_size ()</h3>
235
 
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>               g_socket_control_message_get_size   (<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> *message);</pre>
 
210
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>               g_socket_control_message_get_size   (<em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> *message</code></em>);</pre>
236
211
<p>
237
212
Returns the space required for the control message, not including
238
 
headers or alignment.</p>
 
213
headers or alignment.
 
214
</p>
239
215
<div class="variablelist"><table border="0">
240
216
<col align="left" valign="top">
241
217
<tbody>
242
218
<tr>
243
219
<td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td>
244
 
<td> a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>
 
220
<td>a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>
245
221
</td>
246
222
</tr>
247
223
<tr>
257
233
<hr>
258
234
<div class="refsect2" title="g_socket_control_message_serialize ()">
259
235
<a name="g-socket-control-message-serialize"></a><h3>g_socket_control_message_serialize ()</h3>
260
 
<pre class="programlisting"><span class="returnvalue">void</span>                g_socket_control_message_serialize  (<a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="returnvalue">GSocketControlMessage</span></a> *message,
261
 
                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> data);</pre>
 
236
<pre class="programlisting"><span class="returnvalue">void</span>                g_socket_control_message_serialize  (<em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> *message</code></em>,
 
237
                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
262
238
<p>
263
239
Converts the data in the message to bytes placed in the
264
240
message.
266
242
<p>
267
243
<em class="parameter"><code>data</code></em> is guaranteed to have enough space to fit the size
268
244
returned by <a class="link" href="GSocketControlMessage.html#g-socket-control-message-get-size" title="g_socket_control_message_get_size ()"><code class="function">g_socket_control_message_get_size()</code></a> on this
269
 
object.</p>
 
245
object.
 
246
</p>
270
247
<div class="variablelist"><table border="0">
271
248
<col align="left" valign="top">
272
249
<tbody>
273
250
<tr>
274
251
<td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td>
275
 
<td> a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>
 
252
<td>a <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a>
276
253
</td>
277
254
</tr>
278
255
<tr>
279
256
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
280
 
<td> A buffer to write data to
 
257
<td>A buffer to write data to
281
258
</td>
282
259
</tr>
283
260
</tbody>
292
269
</div>
293
270
<div class="footer">
294
271
<hr>
295
 
          Generated by GTK-Doc V1.13</div>
 
272
          Generated by GTK-Doc V1.14</div>
296
273
</body>
297
274
</html>
 
 
b'\\ No newline at end of file'