ionian 0.6.3 → 0.6.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +63 -0
  3. data/doc/Ionian/Extension/IO.html +1062 -599
  4. data/doc/Ionian/Extension/Socket.html +2140 -1314
  5. data/doc/Ionian/Extension.html +98 -70
  6. data/doc/Ionian/Server.html +577 -345
  7. data/doc/Ionian/Socket.html +1100 -612
  8. data/doc/Ionian.html +100 -70
  9. data/doc/_index.html +164 -0
  10. data/doc/class_list.html +54 -0
  11. data/doc/css/common.css +1 -0
  12. data/doc/css/full_list.css +57 -0
  13. data/doc/css/style.css +338 -0
  14. data/doc/file.README.html +133 -0
  15. data/doc/file.license.html +73 -0
  16. data/doc/file_list.html +59 -0
  17. data/doc/frames.html +26 -0
  18. data/doc/index.html +111 -71
  19. data/doc/js/app.js +219 -0
  20. data/doc/js/full_list.js +178 -0
  21. data/doc/js/jquery.js +4 -18
  22. data/doc/method_list.html +419 -0
  23. data/doc/top-level-namespace.html +112 -0
  24. data/lib/ionian/extension/io.rb +4 -2
  25. data/lib/ionian/socket.rb +1 -1
  26. data/license.txt +2 -0
  27. metadata +28 -54
  28. data/doc/created.rid +0 -6
  29. data/doc/fonts/Lato-Light.ttf +0 -0
  30. data/doc/fonts/Lato-LightItalic.ttf +0 -0
  31. data/doc/fonts/Lato-Regular.ttf +0 -0
  32. data/doc/fonts/Lato-RegularItalic.ttf +0 -0
  33. data/doc/fonts/SourceCodePro-Bold.ttf +0 -0
  34. data/doc/fonts/SourceCodePro-Regular.ttf +0 -0
  35. data/doc/fonts.css +0 -167
  36. data/doc/images/add.png +0 -0
  37. data/doc/images/arrow_up.png +0 -0
  38. data/doc/images/brick.png +0 -0
  39. data/doc/images/brick_link.png +0 -0
  40. data/doc/images/bug.png +0 -0
  41. data/doc/images/bullet_black.png +0 -0
  42. data/doc/images/bullet_toggle_minus.png +0 -0
  43. data/doc/images/bullet_toggle_plus.png +0 -0
  44. data/doc/images/date.png +0 -0
  45. data/doc/images/delete.png +0 -0
  46. data/doc/images/find.png +0 -0
  47. data/doc/images/loadingAnimation.gif +0 -0
  48. data/doc/images/macFFBgHack.png +0 -0
  49. data/doc/images/package.png +0 -0
  50. data/doc/images/page_green.png +0 -0
  51. data/doc/images/page_white_text.png +0 -0
  52. data/doc/images/page_white_width.png +0 -0
  53. data/doc/images/plugin.png +0 -0
  54. data/doc/images/ruby.png +0 -0
  55. data/doc/images/tag_blue.png +0 -0
  56. data/doc/images/tag_green.png +0 -0
  57. data/doc/images/transparent.png +0 -0
  58. data/doc/images/wrench.png +0 -0
  59. data/doc/images/wrench_orange.png +0 -0
  60. data/doc/images/zoom.png +0 -0
  61. data/doc/js/darkfish.js +0 -140
  62. data/doc/js/navigation.js +0 -142
  63. data/doc/js/search.js +0 -109
  64. data/doc/js/search_index.js +0 -1
  65. data/doc/js/searcher.js +0 -228
  66. data/doc/rdoc.css +0 -580
  67. data/doc/table_of_contents.html +0 -402
@@ -1,1410 +1,2236 @@
1
- <!DOCTYPE html>
2
-
3
- <html>
4
- <head>
5
- <meta charset="UTF-8">
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: Ionian::Extension::Socket
8
+
9
+ &mdash; Documentation by YARD 0.8.7.3
10
+
11
+ </title>
6
12
 
7
- <title>module Ionian::Extension::Socket - RDoc Documentation</title>
13
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" charset="utf-8" />
8
14
 
9
- <link href="../../fonts.css" rel="stylesheet">
10
- <link href="../../rdoc.css" rel="stylesheet">
15
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" charset="utf-8" />
11
16
 
12
- <script type="text/javascript">
13
- var rdoc_rel_prefix = "../../";
17
+ <script type="text/javascript" charset="utf-8">
18
+ hasFrames = window.top.frames.main ? true : false;
19
+ relpath = '../../';
20
+ framesUrl = "../../frames.html#!" + escape(window.location.href);
14
21
  </script>
15
22
 
16
- <script src="../../js/jquery.js"></script>
17
- <script src="../../js/navigation.js"></script>
18
- <script src="../../js/search_index.js"></script>
19
- <script src="../../js/search.js"></script>
20
- <script src="../../js/searcher.js"></script>
21
- <script src="../../js/darkfish.js"></script>
22
-
23
-
24
- <body id="top" role="document" class="module">
25
- <nav role="navigation">
26
- <div id="project-navigation">
27
- <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
- <h2>
29
- <a href="../../index.html" rel="home">Home</a>
30
- </h2>
31
-
32
- <div id="table-of-contents-navigation">
33
- <a href="../../table_of_contents.html#pages">Pages</a>
34
- <a href="../../table_of_contents.html#classes">Classes</a>
35
- <a href="../../table_of_contents.html#methods">Methods</a>
36
- </div>
37
- </div>
38
23
 
39
- <div id="search-section" role="search" class="project-section initially-hidden">
40
- <form action="#" method="get" accept-charset="utf-8">
41
- <div id="search-field-wrapper">
42
- <input id="search-field" role="combobox" aria-label="Search"
43
- aria-autocomplete="list" aria-controls="search-results"
44
- type="text" name="search" placeholder="Search" spellcheck="false"
45
- title="Type to search, Up and Down to navigate, Enter to load">
46
- </div>
24
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
47
25
 
48
- <ul id="search-results" aria-label="Search Results"
49
- aria-busy="false" aria-expanded="false"
50
- aria-atomic="false" class="initially-hidden"></ul>
51
- </form>
52
- </div>
26
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
53
27
 
54
- </div>
55
28
 
29
+ </head>
30
+ <body>
31
+ <div id="header">
32
+ <div id="menu">
33
+
34
+ <a href="../../_index.html">Index (S)</a> &raquo;
35
+ <span class='title'><span class='object_link'><a href="../../Ionian.html" title="Ionian (module)">Ionian</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Extension.html" title="Ionian::Extension (module)">Extension</a></span></span>
36
+ &raquo;
37
+ <span class="title">Socket</span>
56
38
 
57
39
 
58
- <div id="class-metadata">
59
-
60
-
61
-
62
- <div id="extends-section" class="nav-section">
63
- <h3>Extended With Modules</h3>
40
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
+ </div>
64
42
 
65
- <ul class="link-list">
66
-
43
+ <div id="search">
67
44
 
68
- <li><a class="extend" href="IO.html">Ionian::Extension::IO</a>
45
+ <a class="full_list_link" id="class_list_link"
46
+ href="../../class_list.html">
47
+ Class List
48
+ </a>
69
49
 
50
+ <a class="full_list_link" id="method_list_link"
51
+ href="../../method_list.html">
52
+ Method List
53
+ </a>
54
+
55
+ <a class="full_list_link" id="file_list_link"
56
+ href="../../file_list.html">
57
+ File List
58
+ </a>
70
59
 
71
- </ul>
72
60
  </div>
61
+ <div class="clear"></div>
62
+ </div>
73
63
 
74
- <!-- Method Quickref -->
75
- <div id="method-list-section" class="nav-section">
76
- <h3>Methods</h3>
64
+ <iframe id="search_frame"></iframe>
77
65
 
78
- <ul class="link-list" role="directory">
66
+ <div id="content"><h1>Module: Ionian::Extension::Socket
67
+
68
+
69
+
70
+ </h1>
71
+
72
+ <dl class="box">
73
+
74
+
79
75
 
80
- <li ><a href="#method-c-extended">::extended</a>
76
+
81
77
 
82
- <li ><a href="#method-i-cork">#cork</a>
78
+
79
+
80
+
81
+ <dt class="r1 last">Defined in:</dt>
82
+ <dd class="r1 last">lib/ionian/extension/socket.rb</dd>
83
+
84
+ </dl>
85
+ <div class="clear"></div>
86
+
87
+ <h2>Overview</h2><div class="docstring">
88
+ <div class="discussion">
83
89
 
84
- <li ><a href="#method-i-cork-3D">#cork=</a>
90
+ <p>A mixin for Socket objects.</p>
91
+
92
+ <p>This module was designed to be extended by instantiated objects that
93
+ implement the standard library Socket class. my_socket.extend
94
+ Ionian::Socket</p>
95
+
96
+ <p>Extending this module also extends Ionian::IO.</p>
97
+
98
+
99
+ </div>
100
+ </div>
101
+ <div class="tags">
102
+
103
+
104
+ </div>
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+ <h2>
113
+ Class Method Summary
114
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
115
+ </h2>
116
+
117
+ <ul class="summary">
118
+
119
+ <li class="public ">
120
+ <span class="summary_signature">
85
121
 
86
- <li ><a href="#method-i-cork-3F">#cork?</a>
122
+ <a href="#extended-class_method" title="extended (class method)">+ (Object) <strong>extended</strong>(obj) </a>
87
123
 
88
- <li ><a href="#method-i-initialize_ionian_socket">#initialize_ionian_socket</a>
124
+
89
125
 
90
- <li ><a href="#method-i-ip_add_membership">#ip_add_membership</a>
126
+ </span>
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+ <span class="summary_desc"><div class='inline'>
137
+ <p>Called automaticallly when the object is extended with #extend.</p>
138
+ </div></span>
139
+
140
+ </li>
141
+
142
+
143
+ <li class="public ">
144
+ <span class="summary_signature">
91
145
 
92
- <li ><a href="#method-i-ip_drop_membership">#ip_drop_membership</a>
146
+ <a href="#multicast-class_method" title="multicast (class method)">+ (Object) <strong>multicast</strong>(address) </a>
93
147
 
94
- <li ><a href="#method-i-ip_multicast_if">#ip_multicast_if</a>
148
+
95
149
 
96
- <li ><a href="#method-i-ip_multicast_if-3D">#ip_multicast_if=</a>
150
+ </span>
151
+
152
+
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+ <span class="summary_desc"><div class='inline'>
161
+ <p>Returns true if the given address is within the multicast range.</p>
162
+ </div></span>
163
+
164
+ </li>
165
+
166
+
167
+ <li class="public ">
168
+ <span class="summary_signature">
97
169
 
98
- <li ><a href="#method-i-ip_multicast_loop">#ip_multicast_loop</a>
170
+ <a href="#multicast%3F-class_method" title="multicast? (class method)">+ (Object) <strong>multicast?</strong> </a>
99
171
 
100
- <li ><a href="#method-i-ip_multicast_loop-3D">#ip_multicast_loop=</a>
172
+
101
173
 
102
- <li ><a href="#method-i-ip_multicast_loop-3F">#ip_multicast_loop?</a>
174
+ </span>
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+ <span class="summary_desc"><div class='inline'>
185
+ <p>Returns true if the given address is within the multicast range.</p>
186
+ </div></span>
187
+
188
+ </li>
189
+
190
+
191
+ </ul>
192
+
193
+ <h2>
194
+ Instance Method Summary
195
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
196
+ </h2>
197
+
198
+ <ul class="summary">
199
+
200
+ <li class="public ">
201
+ <span class="summary_signature">
103
202
 
104
- <li ><a href="#method-i-ip_multicast_ttl">#ip_multicast_ttl</a>
203
+ <a href="#cork-instance_method" title="#cork (instance method)">- (Object) <strong>cork</strong> </a>
105
204
 
106
- <li ><a href="#method-i-ip_multicast_ttl-3D">#ip_multicast_ttl=</a>
205
+
107
206
 
108
- <li ><a href="#method-i-ipv6_add_membership">#ipv6_add_membership</a>
207
+ (also: #cork?)
109
208
 
110
- <li ><a href="#method-i-ipv6_drop_membership">#ipv6_drop_membership</a>
209
+ </span>
210
+
211
+
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+ <span class="summary_desc"><div class='inline'>
220
+ <p>Returns true if multiple writes are buffered into a single segment.</p>
221
+ </div></span>
222
+
223
+ </li>
224
+
225
+
226
+ <li class="public ">
227
+ <span class="summary_signature">
111
228
 
112
- <li ><a href="#method-i-ipv6_multicast_hops">#ipv6_multicast_hops</a>
229
+ <a href="#cork%3D-instance_method" title="#cork= (instance method)">- (Object) <strong>cork=</strong>(value) </a>
113
230
 
114
- <li ><a href="#method-i-ipv6_multicast_hops-3D">#ipv6_multicast_hops=</a>
231
+
115
232
 
116
- <li ><a href="#method-i-ipv6_multicast_if">#ipv6_multicast_if</a>
233
+ </span>
234
+
235
+
236
+
237
+
238
+
239
+
240
+
241
+
242
+
243
+ <span class="summary_desc"><div class='inline'>
244
+ <p>Buffers multiple writes into a single segment if true.</p>
245
+ </div></span>
246
+
247
+ </li>
248
+
249
+
250
+ <li class="public ">
251
+ <span class="summary_signature">
117
252
 
118
- <li ><a href="#method-i-ipv6_multicast_if-3D">#ipv6_multicast_if=</a>
253
+ <a href="#initialize_ionian_socket-instance_method" title="#initialize_ionian_socket (instance method)">- (Object) <strong>initialize_ionian_socket</strong> </a>
119
254
 
120
- <li ><a href="#method-i-ipv6_multicast_loop">#ipv6_multicast_loop</a>
255
+
121
256
 
122
- <li ><a href="#method-i-ipv6_multicast_loop-3D">#ipv6_multicast_loop=</a>
257
+ </span>
258
+
259
+
260
+
261
+
262
+
263
+
264
+
265
+
266
+
267
+ <span class="summary_desc"><div class='inline'>
268
+ <p>Initialize the Ionian Socket variables.</p>
269
+ </div></span>
270
+
271
+ </li>
272
+
273
+
274
+ <li class="public ">
275
+ <span class="summary_signature">
123
276
 
124
- <li ><a href="#method-i-ipv6_multicast_loop-3F">#ipv6_multicast_loop?</a>
277
+ <a href="#ip_add_membership-instance_method" title="#ip_add_membership (instance method)">- (Object) <strong>ip_add_membership</strong>(address = nil, interface = nil) </a>
125
278
 
126
- <li ><a href="#method-i-multicast">#multicast</a>
279
+
127
280
 
128
- <li ><a href="#method-i-multicast-3F">#multicast?</a>
281
+ </span>
282
+
283
+
284
+
285
+
286
+
287
+
288
+
289
+
290
+
291
+ <span class="summary_desc"><div class='inline'>
292
+ <p>Join a multicast group.</p>
293
+ </div></span>
294
+
295
+ </li>
296
+
297
+
298
+ <li class="public ">
299
+ <span class="summary_signature">
129
300
 
130
- <li ><a href="#method-i-no_delay">#no_delay</a>
301
+ <a href="#ip_drop_membership-instance_method" title="#ip_drop_membership (instance method)">- (Object) <strong>ip_drop_membership</strong>(address = nil, interface = nil) </a>
131
302
 
132
- <li ><a href="#method-i-no_delay-3D">#no_delay=</a>
303
+
133
304
 
134
- <li ><a href="#method-i-no_delay-3F">#no_delay?</a>
305
+ </span>
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+
314
+
315
+ <span class="summary_desc"><div class='inline'>
316
+ <p>Leave a multicast group.</p>
317
+ </div></span>
318
+
319
+ </li>
320
+
321
+
322
+ <li class="public ">
323
+ <span class="summary_signature">
135
324
 
136
- <li ><a href="#method-i-recork">#recork</a>
325
+ <a href="#ip_multicast_if-instance_method" title="#ip_multicast_if (instance method)">- (Object) <strong>ip_multicast_if</strong> </a>
137
326
 
138
- <li ><a href="#method-i-reuse_addr">#reuse_addr</a>
327
+
139
328
 
140
- <li ><a href="#method-i-reuse_addr-3D">#reuse_addr=</a>
329
+ </span>
330
+
331
+
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+ <span class="summary_desc"><div class='inline'>
340
+ <p>Returns the default interface for outgoing multicasts.</p>
341
+ </div></span>
342
+
343
+ </li>
344
+
345
+
346
+ <li class="public ">
347
+ <span class="summary_signature">
141
348
 
142
- <li ><a href="#method-i-reuse_addr-3F">#reuse_addr?</a>
349
+ <a href="#ip_multicast_if%3D-instance_method" title="#ip_multicast_if= (instance method)">- (Object) <strong>ip_multicast_if=</strong>(interface = nil) </a>
143
350
 
144
- <li ><a href="#method-i-ttl">#ttl</a>
351
+
145
352
 
146
- <li ><a href="#method-i-ttl-3D">#ttl=</a>
353
+ </span>
354
+
355
+
356
+
357
+
358
+
359
+
360
+
361
+
362
+
363
+ <span class="summary_desc"><div class='inline'>
364
+ <p>Specify default interface for outgoing multicasts.</p>
365
+ </div></span>
366
+
367
+ </li>
368
+
369
+
370
+ <li class="public ">
371
+ <span class="summary_signature">
147
372
 
148
- <li ><a href="#method-i-ttl-3F">#ttl?</a>
373
+ <a href="#ip_multicast_loop-instance_method" title="#ip_multicast_loop (instance method)">- (Object) <strong>ip_multicast_loop</strong> </a>
149
374
 
150
- </ul>
151
- </div>
152
375
 
153
- </div>
154
- </nav>
376
+
377
+ (also: #ip_multicast_loop?)
378
+
379
+ </span>
380
+
381
+
382
+
383
+
384
+
385
+
386
+
155
387
 
156
- <main role="main" aria-labelledby="module-Ionian::Extension::Socket">
157
- <h1 id="module-Ionian::Extension::Socket" class="module">
158
- module Ionian::Extension::Socket
159
- </h1>
388
+
389
+ <span class="summary_desc"><div class='inline'>
390
+ <p>Returns true if loopback of outgoing multicasts is enabled.</p>
391
+ </div></span>
392
+
393
+ </li>
160
394
 
161
- <section class="description">
395
+
396
+ <li class="public ">
397
+ <span class="summary_signature">
398
+
399
+ <a href="#ip_multicast_loop%3D-instance_method" title="#ip_multicast_loop= (instance method)">- (Object) <strong>ip_multicast_loop=</strong>(value) </a>
162
400
 
163
- <p>A mixin for <a href="Socket.html">Socket</a> objects.</p>
164
401
 
165
- <p>This module was designed to be extended by instantiated objects that
166
- implement the standard library <a href="Socket.html">Socket</a> class.
167
- my_socket.extend <a href="../Socket.html">Ionian::Socket</a></p>
402
+
403
+ </span>
404
+
405
+
406
+
407
+
408
+
409
+
410
+
168
411
 
169
- <p>Extending this module also extends Ionian::IO.</p>
412
+
413
+ <span class="summary_desc"><div class='inline'>
414
+ <p>Enables loopback of outgoing multicasts if true.</p>
415
+ </div></span>
416
+
417
+ </li>
170
418
 
171
- </section>
419
+
420
+ <li class="public ">
421
+ <span class="summary_signature">
422
+
423
+ <a href="#ip_multicast_ttl-instance_method" title="#ip_multicast_ttl (instance method)">- (Object) <strong>ip_multicast_ttl</strong> </a>
424
+
172
425
 
426
+
427
+ </span>
428
+
429
+
430
+
431
+
173
432
 
174
433
 
175
434
 
176
- <section id="5Buntitled-5D" class="documentation-section">
177
-
178
435
 
179
-
436
+
437
+ <span class="summary_desc"><div class='inline'>
438
+ <p>Returns the time to live (hop limit) for outgoing multicasts.</p>
439
+ </div></span>
440
+
441
+ </li>
180
442
 
443
+
444
+ <li class="public ">
445
+ <span class="summary_signature">
181
446
 
182
-
447
+ <a href="#ip_multicast_ttl%3D-instance_method" title="#ip_multicast_ttl= (instance method)">- (Object) <strong>ip_multicast_ttl=</strong>(value) </a>
183
448
 
184
449
 
185
450
 
186
- <section id="public-class-5Buntitled-5D-method-details" class="method-section">
187
- <header>
188
- <h3>Public Class Methods</h3>
189
- </header>
451
+ </span>
452
+
453
+
454
+
455
+
456
+
457
+
458
+
190
459
 
191
-
192
- <div id="method-c-extended" class="method-detail ">
193
-
194
- <div class="method-heading">
195
- <span class="method-name">extended</span><span
196
- class="method-args">(obj)</span>
197
-
198
- <span class="method-click-advice">click to toggle source</span>
199
-
200
- </div>
201
-
460
+
461
+ <span class="summary_desc"><div class='inline'>
462
+ <p>Set the time to live (hop limit) for outgoing multicasts.</p>
463
+ </div></span>
464
+
465
+ </li>
202
466
 
203
- <div class="method-description">
204
-
205
- <p>Called automaticallly when the object is extended with extend.</p>
206
-
207
-
467
+
468
+ <li class="public ">
469
+ <span class="summary_signature">
470
+
471
+ <a href="#ipv6_add_membership-instance_method" title="#ipv6_add_membership (instance method)">- (Object) <strong>ipv6_add_membership</strong> </a>
472
+
208
473
 
209
-
210
- <div class="method-source-code" id="extended-source">
211
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 17</span>
212
- <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">extended</span>(<span class="ruby-identifier">obj</span>)
213
- <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">extend</span> <span class="ruby-constant">Ionian</span><span class="ruby-operator">::</span><span class="ruby-constant">Extension</span><span class="ruby-operator">::</span><span class="ruby-constant">IO</span>
214
- <span class="ruby-identifier">obj</span>.<span class="ruby-identifier">initialize_ionian_socket</span>
215
- <span class="ruby-keyword">end</span></pre>
216
- </div>
217
-
218
- </div>
474
+
475
+ </span>
476
+
477
+
478
+
479
+
480
+
481
+
482
+
219
483
 
220
-
484
+
485
+ <span class="summary_desc"><div class='inline'>
486
+ <p>Not yet implemented.</p>
487
+ </div></span>
488
+
489
+ </li>
221
490
 
222
-
223
- </div>
491
+
492
+ <li class="public ">
493
+ <span class="summary_signature">
494
+
495
+ <a href="#ipv6_drop_membership-instance_method" title="#ipv6_drop_membership (instance method)">- (Object) <strong>ipv6_drop_membership</strong> </a>
496
+
224
497
 
225
498
 
226
- </section>
499
+ </span>
500
+
501
+
502
+
503
+
504
+
505
+
227
506
 
228
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
229
- <header>
230
- <h3>Public Instance Methods</h3>
231
- </header>
232
507
 
233
-
234
- <div id="method-i-cork" class="method-detail ">
235
-
236
- <div class="method-heading">
237
- <span class="method-name">cork</span><span
238
- class="method-args">()</span>
239
-
240
- <span class="method-click-advice">click to toggle source</span>
241
-
242
- </div>
243
-
508
+
509
+ <span class="summary_desc"><div class='inline'>
510
+ <p>Not yet implemented.</p>
511
+ </div></span>
512
+
513
+ </li>
244
514
 
245
- <div class="method-description">
246
-
247
- <p>Returns true if multiple writes are buffered into a single segment. See <a
248
- href="Socket.html#method-i-recork">recork</a>. Linux only. ( TCP_CORK )</p>
249
-
250
-
515
+
516
+ <li class="public ">
517
+ <span class="summary_signature">
518
+
519
+ <a href="#ipv6_multicast_hops-instance_method" title="#ipv6_multicast_hops (instance method)">- (Object) <strong>ipv6_multicast_hops</strong> </a>
520
+
251
521
 
252
-
253
- <div class="method-source-code" id="cork-source">
254
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 80</span>
255
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">cork</span>
256
- <span class="ruby-identifier">param</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_CORK</span>)
257
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;i&#39;</span>).<span class="ruby-identifier">first</span>
258
- <span class="ruby-identifier">param</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
259
- <span class="ruby-keyword">end</span></pre>
260
- </div>
261
-
262
- </div>
522
+
523
+ </span>
524
+
525
+
526
+
527
+
528
+
529
+
530
+
263
531
 
264
-
265
- <div class="aliases">
266
- Also aliased as: <a href="Socket.html#method-i-cork-3F">cork?</a>
267
- </div>
268
-
532
+
533
+ <span class="summary_desc"><div class='inline'>
534
+ <p>Not yet implemented.</p>
535
+ </div></span>
536
+
537
+ </li>
269
538
 
270
-
271
- </div>
539
+
540
+ <li class="public ">
541
+ <span class="summary_signature">
542
+
543
+ <a href="#ipv6_multicast_hops%3D-instance_method" title="#ipv6_multicast_hops= (instance method)">- (Object) <strong>ipv6_multicast_hops=</strong>(value) </a>
544
+
272
545
 
273
546
 
274
- <div id="method-i-cork-3D" class="method-detail ">
275
-
276
- <div class="method-heading">
277
- <span class="method-name">cork=</span><span
278
- class="method-args">(value)</span>
279
-
280
- <span class="method-click-advice">click to toggle source</span>
281
-
282
- </div>
283
-
284
-
285
- <div class="method-description">
286
-
287
- <p>Buffers multiple writes into a single segment if true. The segment is sent
288
- once the cork flag is disabled, the upper limit on the size of a segment is
289
- reached, the socket is closed, or 200ms elapses from the time the first
290
- corked byte is written. See <a
291
- href="Socket.html#method-i-recork">recork</a>. Linux only. ( TCP_CORK )</p>
292
-
293
-
294
-
295
-
296
- <div class="method-source-code" id="cork-3D-source">
297
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 96</span>
298
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">cork=</span>(<span class="ruby-identifier">value</span>)
299
- <span class="ruby-identifier">param</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
300
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_CORK</span>, [<span class="ruby-identifier">param</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;i&#39;</span>)
301
- <span class="ruby-keyword">end</span></pre>
302
- </div>
303
-
304
- </div>
305
-
306
-
307
-
308
-
309
- </div>
310
-
311
-
312
- <div id="method-i-cork-3F" class="method-detail method-alias">
313
-
314
- <div class="method-heading">
315
- <span class="method-name">cork?</span><span
316
- class="method-args">()</span>
317
-
318
- </div>
319
-
320
-
321
- <div class="method-description">
322
-
323
-
324
-
325
-
326
-
327
-
328
- </div>
329
-
330
-
331
-
332
-
333
- <div class="aliases">
334
- Alias for: <a href="Socket.html#method-i-cork">cork</a>
335
- </div>
336
-
337
- </div>
338
-
339
-
340
- <div id="method-i-initialize_ionian_socket" class="method-detail ">
341
-
342
- <div class="method-heading">
343
- <span class="method-name">initialize_ionian_socket</span><span
344
- class="method-args">()</span>
345
-
346
- <span class="method-click-advice">click to toggle source</span>
347
-
348
- </div>
349
-
350
-
351
- <div class="method-description">
352
-
353
- <p>Initialize the <a href="../../Ionian.html">Ionian</a> <a
354
- href="Socket.html">Socket</a> variables. This is called automatically if
355
- extend is called on an object.</p>
356
-
357
-
358
-
359
-
360
- <div class="method-source-code" id="initialize_ionian_socket-source">
361
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 24</span>
362
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">initialize_ionian_socket</span>
363
- <span class="ruby-keyword">end</span></pre>
364
- </div>
365
-
366
- </div>
367
-
368
-
369
-
370
-
371
- </div>
372
-
373
-
374
- <div id="method-i-ip_add_membership" class="method-detail ">
375
-
376
- <div class="method-heading">
377
- <span class="method-name">ip_add_membership</span><span
378
- class="method-args">(address = nil, interface = nil)</span>
379
-
380
- <span class="method-click-advice">click to toggle source</span>
381
-
382
- </div>
383
-
384
-
385
- <div class="method-description">
386
-
387
- <p>Join a multicast group. Address is the class D multicast address (uses
547
+ </span>
548
+
549
+
550
+
551
+
552
+
553
+
554
+
555
+
556
+
557
+ <span class="summary_desc"><div class='inline'>
558
+ <p>Not yet implemented.</p>
559
+ </div></span>
560
+
561
+ </li>
562
+
563
+
564
+ <li class="public ">
565
+ <span class="summary_signature">
566
+
567
+ <a href="#ipv6_multicast_if-instance_method" title="#ipv6_multicast_if (instance method)">- (Object) <strong>ipv6_multicast_if</strong> </a>
568
+
569
+
570
+
571
+ </span>
572
+
573
+
574
+
575
+
576
+
577
+
578
+
579
+
580
+
581
+ <span class="summary_desc"><div class='inline'>
582
+ <p>Not yet implemented.</p>
583
+ </div></span>
584
+
585
+ </li>
586
+
587
+
588
+ <li class="public ">
589
+ <span class="summary_signature">
590
+
591
+ <a href="#ipv6_multicast_if%3D-instance_method" title="#ipv6_multicast_if= (instance method)">- (Object) <strong>ipv6_multicast_if=</strong>(value) </a>
592
+
593
+
594
+
595
+ </span>
596
+
597
+
598
+
599
+
600
+
601
+
602
+
603
+
604
+
605
+ <span class="summary_desc"><div class='inline'>
606
+ <p>Not yet implemented.</p>
607
+ </div></span>
608
+
609
+ </li>
610
+
611
+
612
+ <li class="public ">
613
+ <span class="summary_signature">
614
+
615
+ <a href="#ipv6_multicast_loop-instance_method" title="#ipv6_multicast_loop (instance method)">- (Object) <strong>ipv6_multicast_loop</strong> </a>
616
+
617
+
618
+
619
+ (also: #ipv6_multicast_loop?)
620
+
621
+ </span>
622
+
623
+
624
+
625
+
626
+
627
+
628
+
629
+
630
+
631
+ <span class="summary_desc"><div class='inline'>
632
+ <p>Not yet implemented.</p>
633
+ </div></span>
634
+
635
+ </li>
636
+
637
+
638
+ <li class="public ">
639
+ <span class="summary_signature">
640
+
641
+ <a href="#ipv6_multicast_loop%3D-instance_method" title="#ipv6_multicast_loop= (instance method)">- (Object) <strong>ipv6_multicast_loop=</strong>(value) </a>
642
+
643
+
644
+
645
+ </span>
646
+
647
+
648
+
649
+
650
+
651
+
652
+
653
+
654
+
655
+ <span class="summary_desc"><div class='inline'>
656
+ <p>Not yet implemented.</p>
657
+ </div></span>
658
+
659
+ </li>
660
+
661
+
662
+ <li class="public ">
663
+ <span class="summary_signature">
664
+
665
+ <a href="#multicast-instance_method" title="#multicast (instance method)">- (Object) <strong>multicast</strong> </a>
666
+
667
+
668
+
669
+ (also: #multicast?)
670
+
671
+ </span>
672
+
673
+
674
+
675
+
676
+
677
+
678
+
679
+
680
+
681
+ <span class="summary_desc"><div class='inline'>
682
+ <p>Returns true if the socket&#39;s address is in the multicast range.</p>
683
+ </div></span>
684
+
685
+ </li>
686
+
687
+
688
+ <li class="public ">
689
+ <span class="summary_signature">
690
+
691
+ <a href="#no_delay-instance_method" title="#no_delay (instance method)">- (Object) <strong>no_delay</strong> </a>
692
+
693
+
694
+
695
+ (also: #no_delay?)
696
+
697
+ </span>
698
+
699
+
700
+
701
+
702
+
703
+
704
+
705
+
706
+
707
+ <span class="summary_desc"><div class='inline'>
708
+ <p>Returns true if the Nagle algorithm is disabled.</p>
709
+ </div></span>
710
+
711
+ </li>
712
+
713
+
714
+ <li class="public ">
715
+ <span class="summary_signature">
716
+
717
+ <a href="#no_delay%3D-instance_method" title="#no_delay= (instance method)">- (Object) <strong>no_delay=</strong>(value) </a>
718
+
719
+
720
+
721
+ </span>
722
+
723
+
724
+
725
+
726
+
727
+
728
+
729
+
730
+
731
+ <span class="summary_desc"><div class='inline'>
732
+ <p>Disables the Nagle algorithm if true.</p>
733
+ </div></span>
734
+
735
+ </li>
736
+
737
+
738
+ <li class="public ">
739
+ <span class="summary_signature">
740
+
741
+ <a href="#recork-instance_method" title="#recork (instance method)">- (Object) <strong>recork</strong> </a>
742
+
743
+
744
+
745
+ </span>
746
+
747
+
748
+
749
+
750
+
751
+
752
+
753
+
754
+
755
+ <span class="summary_desc"><div class='inline'>
756
+ <p>Unsets cork to transmit data, then reapplies cork.</p>
757
+ </div></span>
758
+
759
+ </li>
760
+
761
+
762
+ <li class="public ">
763
+ <span class="summary_signature">
764
+
765
+ <a href="#reuse_addr-instance_method" title="#reuse_addr (instance method)">- (Object) <strong>reuse_addr</strong> </a>
766
+
767
+
768
+
769
+ (also: #reuse_addr?)
770
+
771
+ </span>
772
+
773
+
774
+
775
+
776
+
777
+
778
+
779
+
780
+
781
+ <span class="summary_desc"><div class='inline'>
782
+ <p>Returns true if local address reuse is allowed.</p>
783
+ </div></span>
784
+
785
+ </li>
786
+
787
+
788
+ <li class="public ">
789
+ <span class="summary_signature">
790
+
791
+ <a href="#reuse_addr%3D-instance_method" title="#reuse_addr= (instance method)">- (Object) <strong>reuse_addr=</strong>(value) </a>
792
+
793
+
794
+
795
+ </span>
796
+
797
+
798
+
799
+
800
+
801
+
802
+
803
+
804
+
805
+ <span class="summary_desc"><div class='inline'>
806
+ <p>Allows local address reuse if true.</p>
807
+ </div></span>
808
+
809
+ </li>
810
+
811
+
812
+ <li class="public ">
813
+ <span class="summary_signature">
814
+
815
+ <a href="#ttl-instance_method" title="#ttl (instance method)">- (Object) <strong>ttl</strong> </a>
816
+
817
+
818
+
819
+ (also: #ttl?)
820
+
821
+ </span>
822
+
823
+
824
+
825
+
826
+
827
+
828
+
829
+
830
+
831
+ <span class="summary_desc"><div class='inline'>
832
+ <p>Returns the time to live (hop limit).</p>
833
+ </div></span>
834
+
835
+ </li>
836
+
837
+
838
+ <li class="public ">
839
+ <span class="summary_signature">
840
+
841
+ <a href="#ttl%3D-instance_method" title="#ttl= (instance method)">- (Object) <strong>ttl=</strong>(value) </a>
842
+
843
+
844
+
845
+ </span>
846
+
847
+
848
+
849
+
850
+
851
+
852
+
853
+
854
+
855
+ <span class="summary_desc"><div class='inline'>
856
+ <p>Sets the time to live (hop limit).</p>
857
+ </div></span>
858
+
859
+ </li>
860
+
861
+
862
+ </ul>
863
+
864
+
865
+
866
+
867
+ <div id="class_method_details" class="method_details_list">
868
+ <h2>Class Method Details</h2>
869
+
870
+
871
+ <div class="method_details first">
872
+ <h3 class="signature first" id="extended-class_method">
873
+
874
+ + (<tt>Object</tt>) <strong>extended</strong>(obj)
875
+
876
+
877
+
878
+
879
+
880
+ </h3><div class="docstring">
881
+ <div class="discussion">
882
+
883
+ <p>Called automaticallly when the object is extended with #extend.</p>
884
+
885
+
886
+ </div>
887
+ </div>
888
+ <div class="tags">
889
+
890
+
891
+ </div><table class="source_code">
892
+ <tr>
893
+ <td>
894
+ <pre class="lines">
895
+
896
+
897
+ 17
898
+ 18
899
+ 19
900
+ 20</pre>
901
+ </td>
902
+ <td>
903
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 17</span>
904
+
905
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_extended'>extended</span><span class='lparen'>(</span><span class='id identifier rubyid_obj'>obj</span><span class='rparen'>)</span>
906
+ <span class='id identifier rubyid_obj'>obj</span><span class='period'>.</span><span class='id identifier rubyid_extend'>extend</span> <span class='const'>Ionian</span><span class='op'>::</span><span class='const'>Extension</span><span class='op'>::</span><span class='const'>IO</span>
907
+ <span class='id identifier rubyid_obj'>obj</span><span class='period'>.</span><span class='id identifier rubyid_initialize_ionian_socket'>initialize_ionian_socket</span>
908
+ <span class='kw'>end</span></pre>
909
+ </td>
910
+ </tr>
911
+ </table>
912
+ </div>
913
+
914
+ <div class="method_details ">
915
+ <h3 class="signature " id="multicast-class_method">
916
+
917
+ + (<tt>Object</tt>) <strong>multicast</strong>(address)
918
+
919
+
920
+
921
+
922
+
923
+ </h3><div class="docstring">
924
+ <div class="discussion">
925
+
926
+ <p>Returns true if the given address is within the multicast range.</p>
927
+
928
+
929
+ </div>
930
+ </div>
931
+ <div class="tags">
932
+
933
+
934
+ </div><table class="source_code">
935
+ <tr>
936
+ <td>
937
+ <pre class="lines">
938
+
939
+
940
+ 238
941
+ 239
942
+ 240</pre>
943
+ </td>
944
+ <td>
945
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 238</span>
946
+
947
+ <span class='kw'>def</span> <span class='id identifier rubyid_multicast'>multicast</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span><span class='rparen'>)</span>
948
+ <span class='id identifier rubyid_address'>address</span> <span class='op'>&gt;=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>224.0.0.0</span><span class='tstring_end'>&#39;</span></span> <span class='kw'>and</span> <span class='id identifier rubyid_address'>address</span> <span class='op'>&lt;=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>239.255.255.255</span><span class='tstring_end'>&#39;</span></span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
949
+ <span class='kw'>end</span></pre>
950
+ </td>
951
+ </tr>
952
+ </table>
953
+ </div>
954
+
955
+ <div class="method_details ">
956
+ <h3 class="signature " id="multicast?-class_method">
957
+
958
+ + (<tt>Object</tt>) <strong>multicast?</strong>
959
+
960
+
961
+
962
+
963
+
964
+ </h3><div class="docstring">
965
+ <div class="discussion">
966
+
967
+ <p>Returns true if the given address is within the multicast range.</p>
968
+
969
+
970
+ </div>
971
+ </div>
972
+ <div class="tags">
973
+
974
+
975
+ </div><table class="source_code">
976
+ <tr>
977
+ <td>
978
+ <pre class="lines">
979
+
980
+
981
+ 242
982
+ 243
983
+ 244</pre>
984
+ </td>
985
+ <td>
986
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 242</span>
987
+
988
+ <span class='kw'>def</span> <span class='id identifier rubyid_multicast'>multicast</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span><span class='rparen'>)</span>
989
+ <span class='id identifier rubyid_address'>address</span> <span class='op'>&gt;=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>224.0.0.0</span><span class='tstring_end'>&#39;</span></span> <span class='kw'>and</span> <span class='id identifier rubyid_address'>address</span> <span class='op'>&lt;=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>239.255.255.255</span><span class='tstring_end'>&#39;</span></span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
990
+ <span class='kw'>end</span></pre>
991
+ </td>
992
+ </tr>
993
+ </table>
994
+ </div>
995
+
996
+ </div>
997
+
998
+ <div id="instance_method_details" class="method_details_list">
999
+ <h2>Instance Method Details</h2>
1000
+
1001
+
1002
+ <div class="method_details first">
1003
+ <h3 class="signature first" id="cork-instance_method">
1004
+
1005
+ - (<tt>Object</tt>) <strong>cork</strong>
1006
+
1007
+
1008
+
1009
+ <span class="aliases">Also known as:
1010
+ <span class="names"><span id='cork?-instance_method'>cork?</span></span>
1011
+ </span>
1012
+
1013
+
1014
+
1015
+ </h3><div class="docstring">
1016
+ <div class="discussion">
1017
+
1018
+ <p>Returns true if multiple writes are buffered into a single segment. See
1019
+ #recork. Linux only. ( TCP_CORK )</p>
1020
+
1021
+
1022
+ </div>
1023
+ </div>
1024
+ <div class="tags">
1025
+
1026
+
1027
+ </div><table class="source_code">
1028
+ <tr>
1029
+ <td>
1030
+ <pre class="lines">
1031
+
1032
+
1033
+ 80
1034
+ 81
1035
+ 82
1036
+ 83
1037
+ 84</pre>
1038
+ </td>
1039
+ <td>
1040
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 80</span>
1041
+
1042
+ <span class='kw'>def</span> <span class='id identifier rubyid_cork'>cork</span>
1043
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_CORK</span><span class='rparen'>)</span><span class='period'>
1044
+ </span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
1045
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>&gt;</span> <span class='int'>0</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
1046
+ <span class='kw'>end</span></pre>
1047
+ </td>
1048
+ </tr>
1049
+ </table>
1050
+ </div>
1051
+
1052
+ <div class="method_details ">
1053
+ <h3 class="signature " id="cork=-instance_method">
1054
+
1055
+ - (<tt>Object</tt>) <strong>cork=</strong>(value)
1056
+
1057
+
1058
+
1059
+
1060
+
1061
+ </h3><div class="docstring">
1062
+ <div class="discussion">
1063
+
1064
+ <p>Buffers multiple writes into a single segment if true. The segment is sent
1065
+ once the cork flag is disabled, the upper limit on the size of a segment is
1066
+ reached, the socket is closed, or 200ms elapses from the time the first
1067
+ corked byte is written. See #recork. Linux only. ( TCP_CORK )</p>
1068
+
1069
+
1070
+ </div>
1071
+ </div>
1072
+ <div class="tags">
1073
+
1074
+
1075
+ </div><table class="source_code">
1076
+ <tr>
1077
+ <td>
1078
+ <pre class="lines">
1079
+
1080
+
1081
+ 96
1082
+ 97
1083
+ 98
1084
+ 99</pre>
1085
+ </td>
1086
+ <td>
1087
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 96</span>
1088
+
1089
+ <span class='kw'>def</span> <span class='id identifier rubyid_cork='>cork=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1090
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='int'>0</span>
1091
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_CORK</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_param'>param</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1092
+ <span class='kw'>end</span></pre>
1093
+ </td>
1094
+ </tr>
1095
+ </table>
1096
+ </div>
1097
+
1098
+ <div class="method_details ">
1099
+ <h3 class="signature " id="initialize_ionian_socket-instance_method">
1100
+
1101
+ - (<tt>Object</tt>) <strong>initialize_ionian_socket</strong>
1102
+
1103
+
1104
+
1105
+
1106
+
1107
+ </h3><div class="docstring">
1108
+ <div class="discussion">
1109
+
1110
+ <p>Initialize the Ionian Socket variables. This is called automatically if
1111
+ #extend is called on an object.</p>
1112
+
1113
+
1114
+ </div>
1115
+ </div>
1116
+ <div class="tags">
1117
+
1118
+
1119
+ </div><table class="source_code">
1120
+ <tr>
1121
+ <td>
1122
+ <pre class="lines">
1123
+
1124
+
1125
+ 24
1126
+ 25</pre>
1127
+ </td>
1128
+ <td>
1129
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 24</span>
1130
+
1131
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize_ionian_socket'>initialize_ionian_socket</span>
1132
+ <span class='kw'>end</span></pre>
1133
+ </td>
1134
+ </tr>
1135
+ </table>
1136
+ </div>
1137
+
1138
+ <div class="method_details ">
1139
+ <h3 class="signature " id="ip_add_membership-instance_method">
1140
+
1141
+ - (<tt>Object</tt>) <strong>ip_add_membership</strong>(address = nil, interface = nil)
1142
+
1143
+
1144
+
1145
+
1146
+
1147
+ </h3><div class="docstring">
1148
+ <div class="discussion">
1149
+
1150
+ <p>Join a multicast group. Address is the class D multicast address (uses
388
1151
  remote address if not specified). Interface is the local network interface
389
1152
  to receive the multicast traffic on (all interfaces if not specified). (
390
1153
  IP_ADD_MEMBERSHIP )</p>
391
-
392
-
393
-
394
-
395
- <div class="method-source-code" id="ip_add_membership-source">
396
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 114</span>
397
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_add_membership</span>(<span class="ruby-identifier">address</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">interface</span> = <span class="ruby-keyword">nil</span>)
398
- <span class="ruby-identifier">address</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">remote_address</span>.<span class="ruby-identifier">ip_address</span>
399
- <span class="ruby-identifier">interface</span> <span class="ruby-operator">||=</span> <span class="ruby-string">&#39;0.0.0.0&#39;</span>
400
-
401
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>,
402
- <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_ADD_MEMBERSHIP</span>,
403
- <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">address</span>).<span class="ruby-identifier">hton</span> <span class="ruby-operator">+</span> <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">interface</span>).<span class="ruby-identifier">hton</span>
404
- <span class="ruby-keyword">end</span></pre>
405
- </div>
406
-
407
- </div>
408
-
409
-
410
-
411
-
412
- </div>
413
-
414
-
415
- <div id="method-i-ip_drop_membership" class="method-detail ">
416
-
417
- <div class="method-heading">
418
- <span class="method-name">ip_drop_membership</span><span
419
- class="method-args">(address = nil, interface = nil)</span>
420
-
421
- <span class="method-click-advice">click to toggle source</span>
422
-
423
- </div>
424
-
425
-
426
- <div class="method-description">
427
-
428
- <p>Leave a multicast group. Address is the class D multicast address (uses
1154
+
1155
+
1156
+ </div>
1157
+ </div>
1158
+ <div class="tags">
1159
+
1160
+
1161
+ </div><table class="source_code">
1162
+ <tr>
1163
+ <td>
1164
+ <pre class="lines">
1165
+
1166
+
1167
+ 114
1168
+ 115
1169
+ 116
1170
+ 117
1171
+ 118
1172
+ 119
1173
+ 120
1174
+ 121
1175
+ 122</pre>
1176
+ </td>
1177
+ <td>
1178
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 114</span>
1179
+
1180
+ <span class='kw'>def</span> <span class='id identifier rubyid_ip_add_membership'>ip_add_membership</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_interface'>interface</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1181
+ <span class='id identifier rubyid_address'>address</span> <span class='op'>||=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_remote_address'>remote_address</span><span class='period'>.</span><span class='id identifier rubyid_ip_address'>ip_address</span>
1182
+ <span class='id identifier rubyid_interface'>interface</span> <span class='op'>||=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>0.0.0.0</span><span class='tstring_end'>&#39;</span></span>
1183
+
1184
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> \
1185
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span>
1186
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_ADD_MEMBERSHIP</span><span class='comma'>,</span>
1187
+ <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span> <span class='op'>+</span> <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_interface'>interface</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span>
1188
+ <span class='kw'>end</span></pre>
1189
+ </td>
1190
+ </tr>
1191
+ </table>
1192
+ </div>
1193
+
1194
+ <div class="method_details ">
1195
+ <h3 class="signature " id="ip_drop_membership-instance_method">
1196
+
1197
+ - (<tt>Object</tt>) <strong>ip_drop_membership</strong>(address = nil, interface = nil)
1198
+
1199
+
1200
+
1201
+
1202
+
1203
+ </h3><div class="docstring">
1204
+ <div class="discussion">
1205
+
1206
+ <p>Leave a multicast group. Address is the class D multicast address (uses
429
1207
  remote address if not specified). Interface is the local network interface
430
1208
  the multicast traffic is received on (all interfaces if not specified). (
431
1209
  IP_DROP_MEMBERSHIP )</p>
432
-
433
-
434
-
435
-
436
- <div class="method-source-code" id="ip_drop_membership-source">
437
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 130</span>
438
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_drop_membership</span>(<span class="ruby-identifier">address</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">interface</span> = <span class="ruby-keyword">nil</span>)
439
- <span class="ruby-identifier">address</span> <span class="ruby-operator">||=</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">remote_address</span>.<span class="ruby-identifier">ip_address</span>
440
- <span class="ruby-identifier">interface</span> <span class="ruby-operator">||=</span> <span class="ruby-string">&#39;0.0.0.0&#39;</span>
441
-
442
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>,
443
- <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_DROP_MEMBERSHIP</span>,
444
- <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">address</span>).<span class="ruby-identifier">hton</span> <span class="ruby-operator">+</span> <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">interface</span>).<span class="ruby-identifier">hton</span>
445
- <span class="ruby-keyword">end</span></pre>
446
- </div>
447
-
448
- </div>
449
-
450
-
451
-
452
-
453
- </div>
454
-
455
-
456
- <div id="method-i-ip_multicast_if" class="method-detail ">
457
-
458
- <div class="method-heading">
459
- <span class="method-name">ip_multicast_if</span><span
460
- class="method-args">()</span>
461
-
462
- <span class="method-click-advice">click to toggle source</span>
463
-
464
- </div>
465
-
466
-
467
- <div class="method-description">
468
-
469
- <p>Returns the default interface for outgoing multicasts. ( IP_MULTICAST_IF )</p>
470
-
471
-
472
-
473
-
474
- <div class="method-source-code" id="ip_multicast_if-source">
475
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 142</span>
476
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_if</span>
477
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_IF</span>)
478
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;CCCC&#39;</span>).<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39;.&#39;</span>)
479
- <span class="ruby-keyword">end</span></pre>
480
- </div>
481
-
482
- </div>
483
-
484
-
485
-
486
-
487
- </div>
488
-
489
-
490
- <div id="method-i-ip_multicast_if-3D" class="method-detail ">
491
-
492
- <div class="method-heading">
493
- <span class="method-name">ip_multicast_if=</span><span
494
- class="method-args">(interface = nil)</span>
495
-
496
- <span class="method-click-advice">click to toggle source</span>
497
-
498
- </div>
499
-
500
-
501
- <div class="method-description">
502
-
503
- <p>Specify default interface for outgoing multicasts. ( IP_MULTICAST_IF )</p>
504
-
505
-
506
-
507
-
508
- <div class="method-source-code" id="ip_multicast_if-3D-source">
509
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 149</span>
510
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_if=</span>(<span class="ruby-identifier">interface</span> = <span class="ruby-keyword">nil</span>)
511
- <span class="ruby-identifier">interface</span> <span class="ruby-operator">||=</span> <span class="ruby-string">&#39;0.0.0.0&#39;</span>
512
-
513
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>,
514
- <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_IF</span>,
515
- <span class="ruby-constant">IPAddr</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">interface</span>).<span class="ruby-identifier">hton</span>
516
- <span class="ruby-keyword">end</span></pre>
517
- </div>
518
-
519
- </div>
520
-
521
-
522
-
523
-
524
- </div>
525
-
526
-
527
- <div id="method-i-ip_multicast_loop" class="method-detail ">
528
-
529
- <div class="method-heading">
530
- <span class="method-name">ip_multicast_loop</span><span
531
- class="method-args">()</span>
532
-
533
- <span class="method-click-advice">click to toggle source</span>
534
-
535
- </div>
536
-
537
-
538
- <div class="method-description">
539
-
540
- <p>Returns true if loopback of outgoing multicasts is enabled. (
1210
+
1211
+
1212
+ </div>
1213
+ </div>
1214
+ <div class="tags">
1215
+
1216
+
1217
+ </div><table class="source_code">
1218
+ <tr>
1219
+ <td>
1220
+ <pre class="lines">
1221
+
1222
+
1223
+ 130
1224
+ 131
1225
+ 132
1226
+ 133
1227
+ 134
1228
+ 135
1229
+ 136
1230
+ 137
1231
+ 138</pre>
1232
+ </td>
1233
+ <td>
1234
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 130</span>
1235
+
1236
+ <span class='kw'>def</span> <span class='id identifier rubyid_ip_drop_membership'>ip_drop_membership</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_interface'>interface</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1237
+ <span class='id identifier rubyid_address'>address</span> <span class='op'>||=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_remote_address'>remote_address</span><span class='period'>.</span><span class='id identifier rubyid_ip_address'>ip_address</span>
1238
+ <span class='id identifier rubyid_interface'>interface</span> <span class='op'>||=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>0.0.0.0</span><span class='tstring_end'>&#39;</span></span>
1239
+
1240
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> \
1241
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span>
1242
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_DROP_MEMBERSHIP</span><span class='comma'>,</span>
1243
+ <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_address'>address</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span> <span class='op'>+</span> <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_interface'>interface</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span>
1244
+ <span class='kw'>end</span></pre>
1245
+ </td>
1246
+ </tr>
1247
+ </table>
1248
+ </div>
1249
+
1250
+ <div class="method_details ">
1251
+ <h3 class="signature " id="ip_multicast_if-instance_method">
1252
+
1253
+ - (<tt>Object</tt>) <strong>ip_multicast_if</strong>
1254
+
1255
+
1256
+
1257
+
1258
+
1259
+ </h3><div class="docstring">
1260
+ <div class="discussion">
1261
+
1262
+ <p>Returns the default interface for outgoing multicasts. ( IP_MULTICAST_IF )</p>
1263
+
1264
+
1265
+ </div>
1266
+ </div>
1267
+ <div class="tags">
1268
+
1269
+
1270
+ </div><table class="source_code">
1271
+ <tr>
1272
+ <td>
1273
+ <pre class="lines">
1274
+
1275
+
1276
+ 142
1277
+ 143
1278
+ 144
1279
+ 145</pre>
1280
+ </td>
1281
+ <td>
1282
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 142</span>
1283
+
1284
+ <span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_if'>ip_multicast_if</span>
1285
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_IF</span><span class='rparen'>)</span><span class='period'>
1286
+ </span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>CCCC</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>.</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1287
+ <span class='kw'>end</span></pre>
1288
+ </td>
1289
+ </tr>
1290
+ </table>
1291
+ </div>
1292
+
1293
+ <div class="method_details ">
1294
+ <h3 class="signature " id="ip_multicast_if=-instance_method">
1295
+
1296
+ - (<tt>Object</tt>) <strong>ip_multicast_if=</strong>(interface = nil)
1297
+
1298
+
1299
+
1300
+
1301
+
1302
+ </h3><div class="docstring">
1303
+ <div class="discussion">
1304
+
1305
+ <p>Specify default interface for outgoing multicasts. ( IP_MULTICAST_IF )</p>
1306
+
1307
+
1308
+ </div>
1309
+ </div>
1310
+ <div class="tags">
1311
+
1312
+
1313
+ </div><table class="source_code">
1314
+ <tr>
1315
+ <td>
1316
+ <pre class="lines">
1317
+
1318
+
1319
+ 149
1320
+ 150
1321
+ 151
1322
+ 152
1323
+ 153
1324
+ 154
1325
+ 155
1326
+ 156</pre>
1327
+ </td>
1328
+ <td>
1329
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 149</span>
1330
+
1331
+ <span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_if='>ip_multicast_if=</span><span class='lparen'>(</span><span class='id identifier rubyid_interface'>interface</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='rparen'>)</span>
1332
+ <span class='id identifier rubyid_interface'>interface</span> <span class='op'>||=</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>0.0.0.0</span><span class='tstring_end'>&#39;</span></span>
1333
+
1334
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> \
1335
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span>
1336
+ <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_IF</span><span class='comma'>,</span>
1337
+ <span class='const'>IPAddr</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_interface'>interface</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hton'>hton</span>
1338
+ <span class='kw'>end</span></pre>
1339
+ </td>
1340
+ </tr>
1341
+ </table>
1342
+ </div>
1343
+
1344
+ <div class="method_details ">
1345
+ <h3 class="signature " id="ip_multicast_loop-instance_method">
1346
+
1347
+ - (<tt>Object</tt>) <strong>ip_multicast_loop</strong>
1348
+
1349
+
1350
+
1351
+ <span class="aliases">Also known as:
1352
+ <span class="names"><span id='ip_multicast_loop?-instance_method'>ip_multicast_loop?</span></span>
1353
+ </span>
1354
+
1355
+
1356
+
1357
+ </h3><div class="docstring">
1358
+ <div class="discussion">
1359
+
1360
+ <p>Returns true if loopback of outgoing multicasts is enabled. (
541
1361
  IP_MULTICAST_LOOP )</p>
542
-
543
-
544
-
545
-
546
- <div class="method-source-code" id="ip_multicast_loop-source">
547
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 173</span>
548
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_loop</span>
549
- <span class="ruby-identifier">param</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_LOOP</span>)
550
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;C&#39;</span>).<span class="ruby-identifier">first</span>
551
- <span class="ruby-identifier">param</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
552
- <span class="ruby-keyword">end</span></pre>
553
- </div>
554
-
555
- </div>
556
-
557
-
558
- <div class="aliases">
559
- Also aliased as: <a href="Socket.html#method-i-ip_multicast_loop-3F">ip_multicast_loop?</a>
560
- </div>
561
-
562
-
563
-
564
- </div>
565
-
566
-
567
- <div id="method-i-ip_multicast_loop-3D" class="method-detail ">
568
-
569
- <div class="method-heading">
570
- <span class="method-name">ip_multicast_loop=</span><span
571
- class="method-args">(value)</span>
572
-
573
- <span class="method-click-advice">click to toggle source</span>
574
-
575
- </div>
576
-
577
-
578
- <div class="method-description">
579
-
580
- <p>Enables loopback of outgoing multicasts if true. ( IP_MULTICAST_LOOP )</p>
581
-
582
-
583
-
584
-
585
- <div class="method-source-code" id="ip_multicast_loop-3D-source">
586
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 183</span>
587
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_loop=</span>(<span class="ruby-identifier">value</span>)
588
- <span class="ruby-identifier">param</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
589
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_LOOP</span>, [<span class="ruby-identifier">param</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;C&#39;</span>)
590
- <span class="ruby-keyword">end</span></pre>
591
- </div>
592
-
593
- </div>
594
-
595
-
596
-
597
-
598
- </div>
599
-
600
-
601
- <div id="method-i-ip_multicast_loop-3F" class="method-detail method-alias">
602
-
603
- <div class="method-heading">
604
- <span class="method-name">ip_multicast_loop?</span><span
605
- class="method-args">()</span>
606
-
607
- </div>
608
-
609
-
610
- <div class="method-description">
611
-
612
-
613
-
614
-
615
-
616
-
617
- </div>
618
-
619
-
620
-
621
-
622
- <div class="aliases">
623
- Alias for: <a href="Socket.html#method-i-ip_multicast_loop">ip_multicast_loop</a>
624
- </div>
625
-
626
- </div>
627
-
628
-
629
- <div id="method-i-ip_multicast_ttl" class="method-detail ">
630
-
631
- <div class="method-heading">
632
- <span class="method-name">ip_multicast_ttl</span><span
633
- class="method-args">()</span>
634
-
635
- <span class="method-click-advice">click to toggle source</span>
636
-
637
- </div>
638
-
639
-
640
- <div class="method-description">
641
-
642
- <p>Returns the time to live (hop limit) for outgoing multicasts. (
1362
+
1363
+
1364
+ </div>
1365
+ </div>
1366
+ <div class="tags">
1367
+
1368
+
1369
+ </div><table class="source_code">
1370
+ <tr>
1371
+ <td>
1372
+ <pre class="lines">
1373
+
1374
+
1375
+ 173
1376
+ 174
1377
+ 175
1378
+ 176
1379
+ 177</pre>
1380
+ </td>
1381
+ <td>
1382
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 173</span>
1383
+
1384
+ <span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_loop'>ip_multicast_loop</span>
1385
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_LOOP</span><span class='rparen'>)</span><span class='period'>
1386
+ </span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>C</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
1387
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>&gt;</span> <span class='int'>0</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
1388
+ <span class='kw'>end</span></pre>
1389
+ </td>
1390
+ </tr>
1391
+ </table>
1392
+ </div>
1393
+
1394
+ <div class="method_details ">
1395
+ <h3 class="signature " id="ip_multicast_loop=-instance_method">
1396
+
1397
+ - (<tt>Object</tt>) <strong>ip_multicast_loop=</strong>(value)
1398
+
1399
+
1400
+
1401
+
1402
+
1403
+ </h3><div class="docstring">
1404
+ <div class="discussion">
1405
+
1406
+ <p>Enables loopback of outgoing multicasts if true. ( IP_MULTICAST_LOOP )</p>
1407
+
1408
+
1409
+ </div>
1410
+ </div>
1411
+ <div class="tags">
1412
+
1413
+
1414
+ </div><table class="source_code">
1415
+ <tr>
1416
+ <td>
1417
+ <pre class="lines">
1418
+
1419
+
1420
+ 183
1421
+ 184
1422
+ 185
1423
+ 186</pre>
1424
+ </td>
1425
+ <td>
1426
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 183</span>
1427
+
1428
+ <span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_loop='>ip_multicast_loop=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1429
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='int'>0</span>
1430
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_LOOP</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_param'>param</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>C</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1431
+ <span class='kw'>end</span></pre>
1432
+ </td>
1433
+ </tr>
1434
+ </table>
1435
+ </div>
1436
+
1437
+ <div class="method_details ">
1438
+ <h3 class="signature " id="ip_multicast_ttl-instance_method">
1439
+
1440
+ - (<tt>Object</tt>) <strong>ip_multicast_ttl</strong>
1441
+
1442
+
1443
+
1444
+
1445
+
1446
+ </h3><div class="docstring">
1447
+ <div class="discussion">
1448
+
1449
+ <p>Returns the time to live (hop limit) for outgoing multicasts. (
643
1450
  IP_MULTICAST_TTL )</p>
644
-
645
-
646
-
647
-
648
- <div class="method-source-code" id="ip_multicast_ttl-source">
649
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 160</span>
650
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_ttl</span>
651
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_TTL</span>)
652
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;C&#39;</span>).<span class="ruby-identifier">first</span>
653
- <span class="ruby-keyword">end</span></pre>
654
- </div>
655
-
656
- </div>
657
-
658
-
659
-
660
-
661
- </div>
662
-
663
-
664
- <div id="method-i-ip_multicast_ttl-3D" class="method-detail ">
665
-
666
- <div class="method-heading">
667
- <span class="method-name">ip_multicast_ttl=</span><span
668
- class="method-args">(value)</span>
669
-
670
- <span class="method-click-advice">click to toggle source</span>
671
-
672
- </div>
673
-
674
-
675
- <div class="method-description">
676
-
677
- <p>Set the time to live (hop limit) for outgoing multicasts. (
1451
+
1452
+
1453
+ </div>
1454
+ </div>
1455
+ <div class="tags">
1456
+
1457
+
1458
+ </div><table class="source_code">
1459
+ <tr>
1460
+ <td>
1461
+ <pre class="lines">
1462
+
1463
+
1464
+ 160
1465
+ 161
1466
+ 162
1467
+ 163</pre>
1468
+ </td>
1469
+ <td>
1470
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 160</span>
1471
+
1472
+ <span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_ttl'>ip_multicast_ttl</span>
1473
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_TTL</span><span class='rparen'>)</span><span class='period'>
1474
+ </span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>C</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
1475
+ <span class='kw'>end</span></pre>
1476
+ </td>
1477
+ </tr>
1478
+ </table>
1479
+ </div>
1480
+
1481
+ <div class="method_details ">
1482
+ <h3 class="signature " id="ip_multicast_ttl=-instance_method">
1483
+
1484
+ - (<tt>Object</tt>) <strong>ip_multicast_ttl=</strong>(value)
1485
+
1486
+
1487
+
1488
+
1489
+
1490
+ </h3><div class="docstring">
1491
+ <div class="discussion">
1492
+
1493
+ <p>Set the time to live (hop limit) for outgoing multicasts. (
678
1494
  IP_MULTICAST_TTL )</p>
679
-
680
-
681
-
682
-
683
- <div class="method-source-code" id="ip_multicast_ttl-3D-source">
684
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 167</span>
685
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ip_multicast_ttl=</span>(<span class="ruby-identifier">value</span>)
686
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_MULTICAST_TTL</span>, [<span class="ruby-identifier">value</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;C&#39;</span>)
687
- <span class="ruby-keyword">end</span></pre>
688
- </div>
689
-
690
- </div>
691
-
692
-
693
-
694
-
695
- </div>
696
-
697
-
698
- <div id="method-i-ipv6_add_membership" class="method-detail ">
699
-
700
- <div class="method-heading">
701
- <span class="method-name">ipv6_add_membership</span><span
702
- class="method-args">()</span>
703
-
704
- <span class="method-click-advice">click to toggle source</span>
705
-
706
- </div>
707
-
708
-
709
- <div class="method-description">
710
-
711
- <p>Not yet implemented.</p>
712
-
713
-
714
-
715
-
716
- <div class="method-source-code" id="ipv6_add_membership-source">
717
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 189</span>
718
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_add_membership</span>
719
- <span class="ruby-comment"># TODO: Implement</span>
720
- <span class="ruby-keyword">false</span>
721
- <span class="ruby-keyword">end</span></pre>
722
- </div>
723
-
724
- </div>
725
-
726
-
727
-
728
-
729
- </div>
730
-
731
-
732
- <div id="method-i-ipv6_drop_membership" class="method-detail ">
733
-
734
- <div class="method-heading">
735
- <span class="method-name">ipv6_drop_membership</span><span
736
- class="method-args">()</span>
737
-
738
- <span class="method-click-advice">click to toggle source</span>
739
-
740
- </div>
741
-
742
-
743
- <div class="method-description">
744
-
745
- <p>Not yet implemented.</p>
746
-
747
-
748
-
749
-
750
- <div class="method-source-code" id="ipv6_drop_membership-source">
751
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 195</span>
752
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_drop_membership</span>
753
- <span class="ruby-comment"># TODO: Implement</span>
754
- <span class="ruby-keyword">false</span>
755
- <span class="ruby-keyword">end</span></pre>
756
- </div>
757
-
758
- </div>
759
-
760
-
761
-
762
-
763
- </div>
764
-
765
-
766
- <div id="method-i-ipv6_multicast_hops" class="method-detail ">
767
-
768
- <div class="method-heading">
769
- <span class="method-name">ipv6_multicast_hops</span><span
770
- class="method-args">()</span>
771
-
772
- <span class="method-click-advice">click to toggle source</span>
773
-
774
- </div>
775
-
776
-
777
- <div class="method-description">
778
-
779
- <p>Not yet implemented.</p>
780
-
781
-
782
-
783
-
784
- <div class="method-source-code" id="ipv6_multicast_hops-source">
785
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 212</span>
786
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_hops</span>
787
- <span class="ruby-comment"># TODO: Implement</span>
788
- <span class="ruby-keyword">false</span>
789
- <span class="ruby-keyword">end</span></pre>
790
- </div>
791
-
792
- </div>
793
-
794
-
795
-
796
-
797
- </div>
798
-
799
-
800
- <div id="method-i-ipv6_multicast_hops-3D" class="method-detail ">
801
-
802
- <div class="method-heading">
803
- <span class="method-name">ipv6_multicast_hops=</span><span
804
- class="method-args">(value)</span>
805
-
806
- <span class="method-click-advice">click to toggle source</span>
807
-
808
- </div>
809
-
810
-
811
- <div class="method-description">
812
-
813
- <p>Not yet implemented.</p>
814
-
815
-
816
-
817
-
818
- <div class="method-source-code" id="ipv6_multicast_hops-3D-source">
819
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 218</span>
820
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_hops=</span>(<span class="ruby-identifier">value</span>)
821
- <span class="ruby-comment"># TODO: Implement</span>
822
- <span class="ruby-keyword">end</span></pre>
823
- </div>
824
-
825
- </div>
826
-
827
-
828
-
829
-
830
- </div>
831
-
832
-
833
- <div id="method-i-ipv6_multicast_if" class="method-detail ">
834
-
835
- <div class="method-heading">
836
- <span class="method-name">ipv6_multicast_if</span><span
837
- class="method-args">()</span>
838
-
839
- <span class="method-click-advice">click to toggle source</span>
840
-
841
- </div>
842
-
843
-
844
- <div class="method-description">
845
-
846
- <p>Not yet implemented.</p>
847
-
848
-
849
-
850
-
851
- <div class="method-source-code" id="ipv6_multicast_if-source">
852
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 201</span>
853
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_if</span>
854
- <span class="ruby-comment"># TODO: Implement</span>
855
- <span class="ruby-keyword">false</span>
856
- <span class="ruby-keyword">end</span></pre>
857
- </div>
858
-
859
- </div>
860
-
861
-
862
-
863
-
864
- </div>
865
-
866
-
867
- <div id="method-i-ipv6_multicast_if-3D" class="method-detail ">
868
-
869
- <div class="method-heading">
870
- <span class="method-name">ipv6_multicast_if=</span><span
871
- class="method-args">(value)</span>
872
-
873
- <span class="method-click-advice">click to toggle source</span>
874
-
875
- </div>
876
-
877
-
878
- <div class="method-description">
879
-
880
- <p>Not yet implemented.</p>
881
-
882
-
883
-
884
-
885
- <div class="method-source-code" id="ipv6_multicast_if-3D-source">
886
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 207</span>
887
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_if=</span>(<span class="ruby-identifier">value</span>)
888
- <span class="ruby-comment"># TODO: Implement</span>
889
- <span class="ruby-keyword">end</span></pre>
890
- </div>
891
-
892
- </div>
893
-
894
-
895
-
896
-
897
- </div>
898
-
899
-
900
- <div id="method-i-ipv6_multicast_loop" class="method-detail ">
901
-
902
- <div class="method-heading">
903
- <span class="method-name">ipv6_multicast_loop</span><span
904
- class="method-args">()</span>
905
-
906
- <span class="method-click-advice">click to toggle source</span>
907
-
908
- </div>
909
-
910
-
911
- <div class="method-description">
912
-
913
- <p>Not yet implemented.</p>
914
-
915
-
916
-
917
-
918
- <div class="method-source-code" id="ipv6_multicast_loop-source">
919
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 223</span>
920
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_loop</span>
921
- <span class="ruby-comment"># TODO: Implement</span>
922
- <span class="ruby-keyword">false</span>
923
- <span class="ruby-keyword">end</span></pre>
924
- </div>
925
-
926
- </div>
927
-
928
-
929
- <div class="aliases">
930
- Also aliased as: <a href="Socket.html#method-i-ipv6_multicast_loop-3F">ipv6_multicast_loop?</a>
931
- </div>
932
-
933
-
934
-
935
- </div>
936
-
937
-
938
- <div id="method-i-ipv6_multicast_loop-3D" class="method-detail ">
939
-
940
- <div class="method-heading">
941
- <span class="method-name">ipv6_multicast_loop=</span><span
942
- class="method-args">(value)</span>
943
-
944
- <span class="method-click-advice">click to toggle source</span>
945
-
946
- </div>
947
-
948
-
949
- <div class="method-description">
950
-
951
- <p>Not yet implemented.</p>
952
-
953
-
954
-
955
-
956
- <div class="method-source-code" id="ipv6_multicast_loop-3D-source">
957
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 231</span>
958
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ipv6_multicast_loop=</span>(<span class="ruby-identifier">value</span>)
959
- <span class="ruby-comment"># TODO: Implement</span>
960
- <span class="ruby-keyword">end</span></pre>
961
- </div>
962
-
963
- </div>
964
-
965
-
966
-
967
-
968
- </div>
969
-
970
-
971
- <div id="method-i-ipv6_multicast_loop-3F" class="method-detail method-alias">
972
-
973
- <div class="method-heading">
974
- <span class="method-name">ipv6_multicast_loop?</span><span
975
- class="method-args">()</span>
976
-
977
- </div>
978
-
979
-
980
- <div class="method-description">
981
-
982
-
983
-
984
-
985
-
986
-
987
- </div>
988
-
989
-
990
-
991
-
992
- <div class="aliases">
993
- Alias for: <a href="Socket.html#method-i-ipv6_multicast_loop">ipv6_multicast_loop</a>
994
- </div>
995
-
996
- </div>
997
-
998
-
999
- <div id="method-i-multicast" class="method-detail ">
1000
-
1001
- <div class="method-heading">
1002
- <span class="method-name">multicast</span><span
1003
- class="method-args">(address)</span>
1004
-
1005
- <span class="method-click-advice">click to toggle source</span>
1006
-
1007
- </div>
1008
-
1009
-
1010
- <div class="method-description">
1011
-
1012
- <p>Returns true if the given address is within the multicast range.</p>
1013
-
1014
-
1015
-
1016
-
1017
- <div class="method-source-code" id="multicast-source">
1018
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 238</span>
1019
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">multicast</span>(<span class="ruby-identifier">address</span>)
1020
- <span class="ruby-identifier">address</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-string">&#39;224.0.0.0&#39;</span> <span class="ruby-keyword">and</span> <span class="ruby-identifier">address</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-string">&#39;239.255.255.255&#39;</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
1021
- <span class="ruby-keyword">end</span></pre>
1022
- </div>
1023
-
1024
- </div>
1025
-
1026
-
1027
- <div class="aliases">
1028
- Also aliased as: <a href="Socket.html#method-i-multicast-3F">multicast?</a>
1029
- </div>
1030
-
1031
-
1032
-
1033
- </div>
1034
-
1035
-
1036
- <div id="method-i-multicast-3F" class="method-detail method-alias">
1037
-
1038
- <div class="method-heading">
1039
- <span class="method-name">multicast?</span><span
1040
- class="method-args">(address)</span>
1041
-
1042
- </div>
1043
-
1044
-
1045
- <div class="method-description">
1046
-
1047
-
1048
-
1049
-
1050
-
1051
-
1052
- </div>
1053
-
1054
-
1055
-
1056
-
1057
- <div class="aliases">
1058
- Alias for: <a href="Socket.html#method-i-multicast">multicast</a>
1059
- </div>
1060
-
1061
- </div>
1062
-
1063
-
1064
- <div id="method-i-no_delay" class="method-detail ">
1065
-
1066
- <div class="method-heading">
1067
- <span class="method-name">no_delay</span><span
1068
- class="method-args">()</span>
1069
-
1070
- <span class="method-click-advice">click to toggle source</span>
1071
-
1072
- </div>
1073
-
1074
-
1075
- <div class="method-description">
1076
-
1077
- <p>Returns true if the Nagle algorithm is disabled. ( TCP_NODELAY )</p>
1078
-
1079
-
1080
-
1081
-
1082
- <div class="method-source-code" id="no_delay-source">
1083
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 61</span>
1084
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">no_delay</span>
1085
- <span class="ruby-identifier">param</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_NODELAY</span>)
1086
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;i&#39;</span>).<span class="ruby-identifier">first</span>
1087
- <span class="ruby-identifier">param</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
1088
- <span class="ruby-keyword">end</span></pre>
1089
- </div>
1090
-
1091
- </div>
1092
-
1093
-
1094
- <div class="aliases">
1095
- Also aliased as: <a href="Socket.html#method-i-no_delay-3F">no_delay?</a>
1096
- </div>
1097
-
1098
-
1099
-
1100
- </div>
1101
-
1102
-
1103
- <div id="method-i-no_delay-3D" class="method-detail ">
1104
-
1105
- <div class="method-heading">
1106
- <span class="method-name">no_delay=</span><span
1107
- class="method-args">(value)</span>
1108
-
1109
- <span class="method-click-advice">click to toggle source</span>
1110
-
1111
- </div>
1112
-
1113
-
1114
- <div class="method-description">
1115
-
1116
- <p>Disables the Nagle algorithm if true. ( TCP_NODELAY )</p>
1117
-
1118
-
1119
-
1120
-
1121
- <div class="method-source-code" id="no_delay-3D-source">
1122
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 71</span>
1123
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">no_delay=</span>(<span class="ruby-identifier">value</span>)
1124
- <span class="ruby-identifier">param</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
1125
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_NODELAY</span>, [<span class="ruby-identifier">param</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;i&#39;</span>)
1126
- <span class="ruby-keyword">end</span></pre>
1127
- </div>
1128
-
1129
- </div>
1130
-
1131
-
1132
-
1133
-
1134
- </div>
1135
-
1136
-
1137
- <div id="method-i-no_delay-3F" class="method-detail method-alias">
1138
-
1139
- <div class="method-heading">
1140
- <span class="method-name">no_delay?</span><span
1141
- class="method-args">()</span>
1142
-
1143
- </div>
1144
-
1145
-
1146
- <div class="method-description">
1147
-
1148
-
1149
-
1150
-
1151
-
1152
-
1153
- </div>
1154
-
1155
-
1156
-
1157
-
1158
- <div class="aliases">
1159
- Alias for: <a href="Socket.html#method-i-no_delay">no_delay</a>
1160
- </div>
1161
-
1162
- </div>
1163
-
1164
-
1165
- <div id="method-i-recork" class="method-detail ">
1166
-
1167
- <div class="method-heading">
1168
- <span class="method-name">recork</span><span
1169
- class="method-args">()</span>
1170
-
1171
- <span class="method-click-advice">click to toggle source</span>
1172
-
1173
- </div>
1174
-
1175
-
1176
- <div class="method-description">
1177
-
1178
- <p>Unsets cork to transmit data, then reapplies cork. ( TCP_CORK )</p>
1179
-
1180
-
1181
-
1182
-
1183
- <div class="method-source-code" id="recork-source">
1184
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 103</span>
1185
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">recork</span>
1186
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_CORK</span>, [<span class="ruby-value">0</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;i&#39;</span>)
1187
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_TCP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">TCP_CORK</span>, [<span class="ruby-value">1</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;i&#39;</span>)
1188
- <span class="ruby-keyword">end</span></pre>
1189
- </div>
1190
-
1191
- </div>
1192
-
1193
-
1194
-
1195
-
1196
- </div>
1197
-
1198
-
1199
- <div id="method-i-reuse_addr" class="method-detail ">
1200
-
1201
- <div class="method-heading">
1202
- <span class="method-name">reuse_addr</span><span
1203
- class="method-args">()</span>
1204
-
1205
- <span class="method-click-advice">click to toggle source</span>
1206
-
1207
- </div>
1208
-
1209
-
1210
- <div class="method-description">
1211
-
1212
- <p>Returns true if local address reuse is allowed. ( SO_REUSEADDR )</p>
1213
-
1214
-
1215
-
1216
-
1217
- <div class="method-source-code" id="reuse_addr-source">
1218
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 29</span>
1219
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">reuse_addr</span>
1220
- <span class="ruby-identifier">param</span> = <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">SOL_SOCKET</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">SO_REUSEADDR</span>)
1221
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;i&#39;</span>).<span class="ruby-identifier">first</span>
1222
- <span class="ruby-identifier">param</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
1223
- <span class="ruby-keyword">end</span></pre>
1224
- </div>
1225
-
1226
- </div>
1227
-
1228
-
1229
- <div class="aliases">
1230
- Also aliased as: <a href="Socket.html#method-i-reuse_addr-3F">reuse_addr?</a>
1231
- </div>
1232
-
1233
-
1234
-
1235
- </div>
1236
-
1237
-
1238
- <div id="method-i-reuse_addr-3D" class="method-detail ">
1239
-
1240
- <div class="method-heading">
1241
- <span class="method-name">reuse_addr=</span><span
1242
- class="method-args">(value)</span>
1243
-
1244
- <span class="method-click-advice">click to toggle source</span>
1245
-
1246
- </div>
1247
-
1248
-
1249
- <div class="method-description">
1250
-
1251
- <p>Allows local address reuse if true. ( SO_REUSEADDR )</p>
1252
-
1253
-
1254
-
1255
-
1256
- <div class="method-source-code" id="reuse_addr-3D-source">
1257
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 39</span>
1258
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">reuse_addr=</span>(<span class="ruby-identifier">value</span>)
1259
- <span class="ruby-identifier">param</span> = <span class="ruby-identifier">value</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
1260
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">SOL_SOCKET</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">SO_REUSEADDR</span>, [<span class="ruby-identifier">param</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;i&#39;</span>)
1261
- <span class="ruby-keyword">end</span></pre>
1262
- </div>
1263
-
1264
- </div>
1265
-
1266
-
1267
-
1268
-
1269
- </div>
1270
-
1271
-
1272
- <div id="method-i-reuse_addr-3F" class="method-detail method-alias">
1273
-
1274
- <div class="method-heading">
1275
- <span class="method-name">reuse_addr?</span><span
1276
- class="method-args">()</span>
1277
-
1278
- </div>
1279
-
1280
-
1281
- <div class="method-description">
1282
-
1283
-
1284
-
1285
-
1286
-
1287
-
1288
- </div>
1289
-
1290
-
1291
-
1292
-
1293
- <div class="aliases">
1294
- Alias for: <a href="Socket.html#method-i-reuse_addr">reuse_addr</a>
1295
- </div>
1296
-
1297
- </div>
1298
-
1299
-
1300
- <div id="method-i-ttl" class="method-detail ">
1301
-
1302
- <div class="method-heading">
1303
- <span class="method-name">ttl</span><span
1304
- class="method-args">()</span>
1305
-
1306
- <span class="method-click-advice">click to toggle source</span>
1307
-
1308
- </div>
1309
-
1310
-
1311
- <div class="method-description">
1312
-
1313
- <p>Returns the time to live (hop limit). ( IP_TTL )</p>
1314
-
1315
-
1316
-
1317
-
1318
- <div class="method-source-code" id="ttl-source">
1319
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 46</span>
1320
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ttl</span>
1321
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">getsockopt</span>(<span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_TTL</span>)
1322
- .<span class="ruby-identifier">data</span>.<span class="ruby-identifier">unpack</span>(<span class="ruby-string">&#39;i&#39;</span>).<span class="ruby-identifier">first</span>
1323
- <span class="ruby-keyword">end</span></pre>
1324
- </div>
1325
-
1326
- </div>
1327
-
1328
-
1329
- <div class="aliases">
1330
- Also aliased as: <a href="Socket.html#method-i-ttl-3F">ttl?</a>
1331
- </div>
1332
-
1333
-
1334
-
1335
- </div>
1336
-
1337
-
1338
- <div id="method-i-ttl-3D" class="method-detail ">
1339
-
1340
- <div class="method-heading">
1341
- <span class="method-name">ttl=</span><span
1342
- class="method-args">(value)</span>
1343
-
1344
- <span class="method-click-advice">click to toggle source</span>
1345
-
1346
- </div>
1347
-
1348
-
1349
- <div class="method-description">
1350
-
1351
- <p>Sets the time to live (hop limit). ( IP_TTL )</p>
1352
-
1353
-
1354
-
1355
-
1356
- <div class="method-source-code" id="ttl-3D-source">
1357
- <pre><span class="ruby-comment"># File lib/ionian/extension/socket.rb, line 55</span>
1358
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ttl=</span>(<span class="ruby-identifier">value</span>)
1359
- <span class="ruby-keyword">self</span>.<span class="ruby-identifier">setsockopt</span> <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IPPROTO_IP</span>, <span class="ruby-operator">::</span><span class="ruby-constant">Socket</span><span class="ruby-operator">::</span><span class="ruby-constant">IP_TTL</span>, [<span class="ruby-identifier">value</span>].<span class="ruby-identifier">pack</span>(<span class="ruby-string">&#39;i&#39;</span>)
1360
- <span class="ruby-keyword">end</span></pre>
1361
- </div>
1362
-
1363
- </div>
1364
-
1365
-
1366
-
1367
-
1368
- </div>
1369
-
1370
-
1371
- <div id="method-i-ttl-3F" class="method-detail method-alias">
1372
-
1373
- <div class="method-heading">
1374
- <span class="method-name">ttl?</span><span
1375
- class="method-args">()</span>
1376
-
1377
- </div>
1378
-
1379
-
1380
- <div class="method-description">
1381
-
1382
-
1383
-
1384
-
1385
-
1386
-
1387
- </div>
1388
-
1389
-
1390
-
1391
-
1392
- <div class="aliases">
1393
- Alias for: <a href="Socket.html#method-i-ttl">ttl</a>
1394
- </div>
1395
-
1396
- </div>
1397
-
1398
-
1399
- </section>
1400
-
1401
- </section>
1402
- </main>
1403
-
1404
-
1405
- <footer id="validator-badges" role="contentinfo">
1406
- <p><a href="http://validator.w3.org/check/referer">Validate</a>
1407
- <p>Generated by <a href="http://rdoc.rubyforge.org">RDoc</a> 4.1.1.
1408
- <p>Based on <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
1409
- </footer>
1410
1495
 
1496
+
1497
+ </div>
1498
+ </div>
1499
+ <div class="tags">
1500
+
1501
+
1502
+ </div><table class="source_code">
1503
+ <tr>
1504
+ <td>
1505
+ <pre class="lines">
1506
+
1507
+
1508
+ 167
1509
+ 168
1510
+ 169</pre>
1511
+ </td>
1512
+ <td>
1513
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 167</span>
1514
+
1515
+ <span class='kw'>def</span> <span class='id identifier rubyid_ip_multicast_ttl='>ip_multicast_ttl=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1516
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_MULTICAST_TTL</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_value'>value</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>C</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1517
+ <span class='kw'>end</span></pre>
1518
+ </td>
1519
+ </tr>
1520
+ </table>
1521
+ </div>
1522
+
1523
+ <div class="method_details ">
1524
+ <h3 class="signature " id="ipv6_add_membership-instance_method">
1525
+
1526
+ - (<tt>Object</tt>) <strong>ipv6_add_membership</strong>
1527
+
1528
+
1529
+
1530
+
1531
+
1532
+ </h3><div class="docstring">
1533
+ <div class="discussion">
1534
+
1535
+ <p>Not yet implemented.</p>
1536
+
1537
+
1538
+ </div>
1539
+ </div>
1540
+ <div class="tags">
1541
+
1542
+
1543
+ </div><table class="source_code">
1544
+ <tr>
1545
+ <td>
1546
+ <pre class="lines">
1547
+
1548
+
1549
+ 189
1550
+ 190
1551
+ 191
1552
+ 192</pre>
1553
+ </td>
1554
+ <td>
1555
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 189</span>
1556
+
1557
+ <span class='kw'>def</span> <span class='id identifier rubyid_ipv6_add_membership'>ipv6_add_membership</span>
1558
+ <span class='comment'># TODO: Implement
1559
+ </span> <span class='kw'>false</span>
1560
+ <span class='kw'>end</span></pre>
1561
+ </td>
1562
+ </tr>
1563
+ </table>
1564
+ </div>
1565
+
1566
+ <div class="method_details ">
1567
+ <h3 class="signature " id="ipv6_drop_membership-instance_method">
1568
+
1569
+ - (<tt>Object</tt>) <strong>ipv6_drop_membership</strong>
1570
+
1571
+
1572
+
1573
+
1574
+
1575
+ </h3><div class="docstring">
1576
+ <div class="discussion">
1577
+
1578
+ <p>Not yet implemented.</p>
1579
+
1580
+
1581
+ </div>
1582
+ </div>
1583
+ <div class="tags">
1584
+
1585
+
1586
+ </div><table class="source_code">
1587
+ <tr>
1588
+ <td>
1589
+ <pre class="lines">
1590
+
1591
+
1592
+ 195
1593
+ 196
1594
+ 197
1595
+ 198</pre>
1596
+ </td>
1597
+ <td>
1598
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 195</span>
1599
+
1600
+ <span class='kw'>def</span> <span class='id identifier rubyid_ipv6_drop_membership'>ipv6_drop_membership</span>
1601
+ <span class='comment'># TODO: Implement
1602
+ </span> <span class='kw'>false</span>
1603
+ <span class='kw'>end</span></pre>
1604
+ </td>
1605
+ </tr>
1606
+ </table>
1607
+ </div>
1608
+
1609
+ <div class="method_details ">
1610
+ <h3 class="signature " id="ipv6_multicast_hops-instance_method">
1611
+
1612
+ - (<tt>Object</tt>) <strong>ipv6_multicast_hops</strong>
1613
+
1614
+
1615
+
1616
+
1617
+
1618
+ </h3><div class="docstring">
1619
+ <div class="discussion">
1620
+
1621
+ <p>Not yet implemented.</p>
1622
+
1623
+
1624
+ </div>
1625
+ </div>
1626
+ <div class="tags">
1627
+
1628
+
1629
+ </div><table class="source_code">
1630
+ <tr>
1631
+ <td>
1632
+ <pre class="lines">
1633
+
1634
+
1635
+ 212
1636
+ 213
1637
+ 214
1638
+ 215</pre>
1639
+ </td>
1640
+ <td>
1641
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 212</span>
1642
+
1643
+ <span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_hops'>ipv6_multicast_hops</span>
1644
+ <span class='comment'># TODO: Implement
1645
+ </span> <span class='kw'>false</span>
1646
+ <span class='kw'>end</span></pre>
1647
+ </td>
1648
+ </tr>
1649
+ </table>
1650
+ </div>
1651
+
1652
+ <div class="method_details ">
1653
+ <h3 class="signature " id="ipv6_multicast_hops=-instance_method">
1654
+
1655
+ - (<tt>Object</tt>) <strong>ipv6_multicast_hops=</strong>(value)
1656
+
1657
+
1658
+
1659
+
1660
+
1661
+ </h3><div class="docstring">
1662
+ <div class="discussion">
1663
+
1664
+ <p>Not yet implemented.</p>
1665
+
1666
+
1667
+ </div>
1668
+ </div>
1669
+ <div class="tags">
1670
+
1671
+
1672
+ </div><table class="source_code">
1673
+ <tr>
1674
+ <td>
1675
+ <pre class="lines">
1676
+
1677
+
1678
+ 218
1679
+ 219
1680
+ 220</pre>
1681
+ </td>
1682
+ <td>
1683
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 218</span>
1684
+
1685
+ <span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_hops='>ipv6_multicast_hops=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1686
+ <span class='comment'># TODO: Implement
1687
+ </span><span class='kw'>end</span></pre>
1688
+ </td>
1689
+ </tr>
1690
+ </table>
1691
+ </div>
1692
+
1693
+ <div class="method_details ">
1694
+ <h3 class="signature " id="ipv6_multicast_if-instance_method">
1695
+
1696
+ - (<tt>Object</tt>) <strong>ipv6_multicast_if</strong>
1697
+
1698
+
1699
+
1700
+
1701
+
1702
+ </h3><div class="docstring">
1703
+ <div class="discussion">
1704
+
1705
+ <p>Not yet implemented.</p>
1706
+
1707
+
1708
+ </div>
1709
+ </div>
1710
+ <div class="tags">
1711
+
1712
+
1713
+ </div><table class="source_code">
1714
+ <tr>
1715
+ <td>
1716
+ <pre class="lines">
1717
+
1718
+
1719
+ 201
1720
+ 202
1721
+ 203
1722
+ 204</pre>
1723
+ </td>
1724
+ <td>
1725
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 201</span>
1726
+
1727
+ <span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_if'>ipv6_multicast_if</span>
1728
+ <span class='comment'># TODO: Implement
1729
+ </span> <span class='kw'>false</span>
1730
+ <span class='kw'>end</span></pre>
1731
+ </td>
1732
+ </tr>
1733
+ </table>
1734
+ </div>
1735
+
1736
+ <div class="method_details ">
1737
+ <h3 class="signature " id="ipv6_multicast_if=-instance_method">
1738
+
1739
+ - (<tt>Object</tt>) <strong>ipv6_multicast_if=</strong>(value)
1740
+
1741
+
1742
+
1743
+
1744
+
1745
+ </h3><div class="docstring">
1746
+ <div class="discussion">
1747
+
1748
+ <p>Not yet implemented.</p>
1749
+
1750
+
1751
+ </div>
1752
+ </div>
1753
+ <div class="tags">
1754
+
1755
+
1756
+ </div><table class="source_code">
1757
+ <tr>
1758
+ <td>
1759
+ <pre class="lines">
1760
+
1761
+
1762
+ 207
1763
+ 208
1764
+ 209</pre>
1765
+ </td>
1766
+ <td>
1767
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 207</span>
1768
+
1769
+ <span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_if='>ipv6_multicast_if=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1770
+ <span class='comment'># TODO: Implement
1771
+ </span><span class='kw'>end</span></pre>
1772
+ </td>
1773
+ </tr>
1774
+ </table>
1775
+ </div>
1776
+
1777
+ <div class="method_details ">
1778
+ <h3 class="signature " id="ipv6_multicast_loop-instance_method">
1779
+
1780
+ - (<tt>Object</tt>) <strong>ipv6_multicast_loop</strong>
1781
+
1782
+
1783
+
1784
+ <span class="aliases">Also known as:
1785
+ <span class="names"><span id='ipv6_multicast_loop?-instance_method'>ipv6_multicast_loop?</span></span>
1786
+ </span>
1787
+
1788
+
1789
+
1790
+ </h3><div class="docstring">
1791
+ <div class="discussion">
1792
+
1793
+ <p>Not yet implemented.</p>
1794
+
1795
+
1796
+ </div>
1797
+ </div>
1798
+ <div class="tags">
1799
+
1800
+
1801
+ </div><table class="source_code">
1802
+ <tr>
1803
+ <td>
1804
+ <pre class="lines">
1805
+
1806
+
1807
+ 223
1808
+ 224
1809
+ 225
1810
+ 226</pre>
1811
+ </td>
1812
+ <td>
1813
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 223</span>
1814
+
1815
+ <span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_loop'>ipv6_multicast_loop</span>
1816
+ <span class='comment'># TODO: Implement
1817
+ </span> <span class='kw'>false</span>
1818
+ <span class='kw'>end</span></pre>
1819
+ </td>
1820
+ </tr>
1821
+ </table>
1822
+ </div>
1823
+
1824
+ <div class="method_details ">
1825
+ <h3 class="signature " id="ipv6_multicast_loop=-instance_method">
1826
+
1827
+ - (<tt>Object</tt>) <strong>ipv6_multicast_loop=</strong>(value)
1828
+
1829
+
1830
+
1831
+
1832
+
1833
+ </h3><div class="docstring">
1834
+ <div class="discussion">
1835
+
1836
+ <p>Not yet implemented.</p>
1837
+
1838
+
1839
+ </div>
1840
+ </div>
1841
+ <div class="tags">
1842
+
1843
+
1844
+ </div><table class="source_code">
1845
+ <tr>
1846
+ <td>
1847
+ <pre class="lines">
1848
+
1849
+
1850
+ 231
1851
+ 232
1852
+ 233</pre>
1853
+ </td>
1854
+ <td>
1855
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 231</span>
1856
+
1857
+ <span class='kw'>def</span> <span class='id identifier rubyid_ipv6_multicast_loop='>ipv6_multicast_loop=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1858
+ <span class='comment'># TODO: Implement
1859
+ </span><span class='kw'>end</span></pre>
1860
+ </td>
1861
+ </tr>
1862
+ </table>
1863
+ </div>
1864
+
1865
+ <div class="method_details ">
1866
+ <h3 class="signature " id="multicast-instance_method">
1867
+
1868
+ - (<tt>Object</tt>) <strong>multicast</strong>
1869
+
1870
+
1871
+
1872
+ <span class="aliases">Also known as:
1873
+ <span class="names"><span id='multicast?-instance_method'>multicast?</span></span>
1874
+ </span>
1875
+
1876
+
1877
+
1878
+ </h3><div class="docstring">
1879
+ <div class="discussion">
1880
+
1881
+ <p>Returns true if the socket&#39;s address is in the multicast range.</p>
1882
+
1883
+
1884
+ </div>
1885
+ </div>
1886
+ <div class="tags">
1887
+
1888
+
1889
+ </div><table class="source_code">
1890
+ <tr>
1891
+ <td>
1892
+ <pre class="lines">
1893
+
1894
+
1895
+ 246
1896
+ 247
1897
+ 248</pre>
1898
+ </td>
1899
+ <td>
1900
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 246</span>
1901
+
1902
+ <span class='kw'>def</span> <span class='id identifier rubyid_multicast'>multicast</span>
1903
+ <span class='const'>Ionian</span><span class='op'>::</span><span class='const'>Extension</span><span class='op'>::</span><span class='const'>Socket</span><span class='period'>.</span><span class='id identifier rubyid_multicast'>multicast</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_remote_address'>remote_address</span><span class='period'>.</span><span class='id identifier rubyid_ip_address'>ip_address</span>
1904
+ <span class='kw'>end</span></pre>
1905
+ </td>
1906
+ </tr>
1907
+ </table>
1908
+ </div>
1909
+
1910
+ <div class="method_details ">
1911
+ <h3 class="signature " id="no_delay-instance_method">
1912
+
1913
+ - (<tt>Object</tt>) <strong>no_delay</strong>
1914
+
1915
+
1916
+
1917
+ <span class="aliases">Also known as:
1918
+ <span class="names"><span id='no_delay?-instance_method'>no_delay?</span></span>
1919
+ </span>
1920
+
1921
+
1922
+
1923
+ </h3><div class="docstring">
1924
+ <div class="discussion">
1925
+
1926
+ <p>Returns true if the Nagle algorithm is disabled. ( TCP_NODELAY )</p>
1927
+
1928
+
1929
+ </div>
1930
+ </div>
1931
+ <div class="tags">
1932
+
1933
+
1934
+ </div><table class="source_code">
1935
+ <tr>
1936
+ <td>
1937
+ <pre class="lines">
1938
+
1939
+
1940
+ 61
1941
+ 62
1942
+ 63
1943
+ 64
1944
+ 65</pre>
1945
+ </td>
1946
+ <td>
1947
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 61</span>
1948
+
1949
+ <span class='kw'>def</span> <span class='id identifier rubyid_no_delay'>no_delay</span>
1950
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_NODELAY</span><span class='rparen'>)</span><span class='period'>
1951
+ </span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
1952
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>&gt;</span> <span class='int'>0</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
1953
+ <span class='kw'>end</span></pre>
1954
+ </td>
1955
+ </tr>
1956
+ </table>
1957
+ </div>
1958
+
1959
+ <div class="method_details ">
1960
+ <h3 class="signature " id="no_delay=-instance_method">
1961
+
1962
+ - (<tt>Object</tt>) <strong>no_delay=</strong>(value)
1963
+
1964
+
1965
+
1966
+
1967
+
1968
+ </h3><div class="docstring">
1969
+ <div class="discussion">
1970
+
1971
+ <p>Disables the Nagle algorithm if true. ( TCP_NODELAY )</p>
1972
+
1973
+
1974
+ </div>
1975
+ </div>
1976
+ <div class="tags">
1977
+
1978
+
1979
+ </div><table class="source_code">
1980
+ <tr>
1981
+ <td>
1982
+ <pre class="lines">
1983
+
1984
+
1985
+ 71
1986
+ 72
1987
+ 73
1988
+ 74</pre>
1989
+ </td>
1990
+ <td>
1991
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 71</span>
1992
+
1993
+ <span class='kw'>def</span> <span class='id identifier rubyid_no_delay='>no_delay=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
1994
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='int'>0</span>
1995
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_NODELAY</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_param'>param</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
1996
+ <span class='kw'>end</span></pre>
1997
+ </td>
1998
+ </tr>
1999
+ </table>
2000
+ </div>
2001
+
2002
+ <div class="method_details ">
2003
+ <h3 class="signature " id="recork-instance_method">
2004
+
2005
+ - (<tt>Object</tt>) <strong>recork</strong>
2006
+
2007
+
2008
+
2009
+
2010
+
2011
+ </h3><div class="docstring">
2012
+ <div class="discussion">
2013
+
2014
+ <p>Unsets cork to transmit data, then reapplies cork. ( TCP_CORK )</p>
2015
+
2016
+
2017
+ </div>
2018
+ </div>
2019
+ <div class="tags">
2020
+
2021
+
2022
+ </div><table class="source_code">
2023
+ <tr>
2024
+ <td>
2025
+ <pre class="lines">
2026
+
2027
+
2028
+ 103
2029
+ 104
2030
+ 105
2031
+ 106</pre>
2032
+ </td>
2033
+ <td>
2034
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 103</span>
2035
+
2036
+ <span class='kw'>def</span> <span class='id identifier rubyid_recork'>recork</span>
2037
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_CORK</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
2038
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_TCP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>TCP_CORK</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
2039
+ <span class='kw'>end</span></pre>
2040
+ </td>
2041
+ </tr>
2042
+ </table>
2043
+ </div>
2044
+
2045
+ <div class="method_details ">
2046
+ <h3 class="signature " id="reuse_addr-instance_method">
2047
+
2048
+ - (<tt>Object</tt>) <strong>reuse_addr</strong>
2049
+
2050
+
2051
+
2052
+ <span class="aliases">Also known as:
2053
+ <span class="names"><span id='reuse_addr?-instance_method'>reuse_addr?</span></span>
2054
+ </span>
2055
+
2056
+
2057
+
2058
+ </h3><div class="docstring">
2059
+ <div class="discussion">
2060
+
2061
+ <p>Returns true if local address reuse is allowed. ( SO_REUSEADDR )</p>
2062
+
2063
+
2064
+ </div>
2065
+ </div>
2066
+ <div class="tags">
2067
+
2068
+
2069
+ </div><table class="source_code">
2070
+ <tr>
2071
+ <td>
2072
+ <pre class="lines">
2073
+
2074
+
2075
+ 29
2076
+ 30
2077
+ 31
2078
+ 32
2079
+ 33</pre>
2080
+ </td>
2081
+ <td>
2082
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 29</span>
2083
+
2084
+ <span class='kw'>def</span> <span class='id identifier rubyid_reuse_addr'>reuse_addr</span>
2085
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>SOL_SOCKET</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>SO_REUSEADDR</span><span class='rparen'>)</span><span class='period'>
2086
+ </span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
2087
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>&gt;</span> <span class='int'>0</span> <span class='op'>?</span> <span class='kw'>true</span> <span class='op'>:</span> <span class='kw'>false</span>
2088
+ <span class='kw'>end</span></pre>
2089
+ </td>
2090
+ </tr>
2091
+ </table>
2092
+ </div>
2093
+
2094
+ <div class="method_details ">
2095
+ <h3 class="signature " id="reuse_addr=-instance_method">
2096
+
2097
+ - (<tt>Object</tt>) <strong>reuse_addr=</strong>(value)
2098
+
2099
+
2100
+
2101
+
2102
+
2103
+ </h3><div class="docstring">
2104
+ <div class="discussion">
2105
+
2106
+ <p>Allows local address reuse if true. ( SO_REUSEADDR )</p>
2107
+
2108
+
2109
+ </div>
2110
+ </div>
2111
+ <div class="tags">
2112
+
2113
+
2114
+ </div><table class="source_code">
2115
+ <tr>
2116
+ <td>
2117
+ <pre class="lines">
2118
+
2119
+
2120
+ 39
2121
+ 40
2122
+ 41
2123
+ 42</pre>
2124
+ </td>
2125
+ <td>
2126
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 39</span>
2127
+
2128
+ <span class='kw'>def</span> <span class='id identifier rubyid_reuse_addr='>reuse_addr=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
2129
+ <span class='id identifier rubyid_param'>param</span> <span class='op'>=</span> <span class='id identifier rubyid_value'>value</span> <span class='op'>?</span> <span class='int'>1</span> <span class='op'>:</span> <span class='int'>0</span>
2130
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>SOL_SOCKET</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>SO_REUSEADDR</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_param'>param</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
2131
+ <span class='kw'>end</span></pre>
2132
+ </td>
2133
+ </tr>
2134
+ </table>
2135
+ </div>
2136
+
2137
+ <div class="method_details ">
2138
+ <h3 class="signature " id="ttl-instance_method">
2139
+
2140
+ - (<tt>Object</tt>) <strong>ttl</strong>
2141
+
2142
+
2143
+
2144
+ <span class="aliases">Also known as:
2145
+ <span class="names"><span id='ttl?-instance_method'>ttl?</span></span>
2146
+ </span>
2147
+
2148
+
2149
+
2150
+ </h3><div class="docstring">
2151
+ <div class="discussion">
2152
+
2153
+ <p>Returns the time to live (hop limit). ( IP_TTL )</p>
2154
+
2155
+
2156
+ </div>
2157
+ </div>
2158
+ <div class="tags">
2159
+
2160
+
2161
+ </div><table class="source_code">
2162
+ <tr>
2163
+ <td>
2164
+ <pre class="lines">
2165
+
2166
+
2167
+ 46
2168
+ 47
2169
+ 48
2170
+ 49</pre>
2171
+ </td>
2172
+ <td>
2173
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 46</span>
2174
+
2175
+ <span class='kw'>def</span> <span class='id identifier rubyid_ttl'>ttl</span>
2176
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_getsockopt'>getsockopt</span><span class='lparen'>(</span><span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_TTL</span><span class='rparen'>)</span><span class='period'>
2177
+ </span><span class='id identifier rubyid_ .data'> .data</span><span class='period'>.</span><span class='id identifier rubyid_unpack'>unpack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
2178
+ <span class='kw'>end</span></pre>
2179
+ </td>
2180
+ </tr>
2181
+ </table>
2182
+ </div>
2183
+
2184
+ <div class="method_details ">
2185
+ <h3 class="signature " id="ttl=-instance_method">
2186
+
2187
+ - (<tt>Object</tt>) <strong>ttl=</strong>(value)
2188
+
2189
+
2190
+
2191
+
2192
+
2193
+ </h3><div class="docstring">
2194
+ <div class="discussion">
2195
+
2196
+ <p>Sets the time to live (hop limit). ( IP_TTL )</p>
2197
+
2198
+
2199
+ </div>
2200
+ </div>
2201
+ <div class="tags">
2202
+
2203
+
2204
+ </div><table class="source_code">
2205
+ <tr>
2206
+ <td>
2207
+ <pre class="lines">
2208
+
2209
+
2210
+ 55
2211
+ 56
2212
+ 57</pre>
2213
+ </td>
2214
+ <td>
2215
+ <pre class="code"><span class="info file"># File 'lib/ionian/extension/socket.rb', line 55</span>
2216
+
2217
+ <span class='kw'>def</span> <span class='id identifier rubyid_ttl='>ttl=</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
2218
+ <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_setsockopt'>setsockopt</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IPPROTO_IP</span><span class='comma'>,</span> <span class='op'>::</span><span class='const'>Socket</span><span class='op'>::</span><span class='const'>IP_TTL</span><span class='comma'>,</span> <span class='lbracket'>[</span><span class='id identifier rubyid_value'>value</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_pack'>pack</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>i</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
2219
+ <span class='kw'>end</span></pre>
2220
+ </td>
2221
+ </tr>
2222
+ </table>
2223
+ </div>
2224
+
2225
+ </div>
2226
+
2227
+ </div>
2228
+
2229
+ <div id="footer">
2230
+ Generated on Sat Mar 15 21:04:54 2014 by
2231
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
2232
+ 0.8.7.3 (ruby-2.1.1).
2233
+ </div>
2234
+
2235
+ </body>
2236
+ </html>