glib2 0.90.2-x86-mingw32

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 (875) hide show
  1. data/ChangeLog +3115 -0
  2. data/README +40 -0
  3. data/Rakefile +69 -0
  4. data/ext/glib2/depend +10 -0
  5. data/ext/glib2/extconf.rb +61 -0
  6. data/ext/glib2/glib2.def +89 -0
  7. data/ext/glib2/rbgcompat.h +30 -0
  8. data/ext/glib2/rbglib.c +330 -0
  9. data/ext/glib2/rbglib.h +96 -0
  10. data/ext/glib2/rbglib_bookmarkfile.c +595 -0
  11. data/ext/glib2/rbglib_completion.c +192 -0
  12. data/ext/glib2/rbglib_convert.c +195 -0
  13. data/ext/glib2/rbglib_error.c +95 -0
  14. data/ext/glib2/rbglib_fileutils.c +83 -0
  15. data/ext/glib2/rbglib_i18n.c +44 -0
  16. data/ext/glib2/rbglib_int64.c +157 -0
  17. data/ext/glib2/rbglib_iochannel.c +883 -0
  18. data/ext/glib2/rbglib_keyfile.c +846 -0
  19. data/ext/glib2/rbglib_maincontext.c +915 -0
  20. data/ext/glib2/rbglib_mainloop.c +87 -0
  21. data/ext/glib2/rbglib_messages.c +150 -0
  22. data/ext/glib2/rbglib_pollfd.c +111 -0
  23. data/ext/glib2/rbglib_shell.c +68 -0
  24. data/ext/glib2/rbglib_source.c +190 -0
  25. data/ext/glib2/rbglib_spawn.c +345 -0
  26. data/ext/glib2/rbglib_threads.c +51 -0
  27. data/ext/glib2/rbglib_timer.c +127 -0
  28. data/ext/glib2/rbglib_unicode.c +611 -0
  29. data/ext/glib2/rbglib_utils.c +386 -0
  30. data/ext/glib2/rbglib_win32.c +136 -0
  31. data/ext/glib2/rbgobj_boxed.c +251 -0
  32. data/ext/glib2/rbgobj_closure.c +337 -0
  33. data/ext/glib2/rbgobj_convert.c +167 -0
  34. data/ext/glib2/rbgobj_enums.c +961 -0
  35. data/ext/glib2/rbgobj_fundamental.c +30 -0
  36. data/ext/glib2/rbgobj_object.c +892 -0
  37. data/ext/glib2/rbgobj_param.c +390 -0
  38. data/ext/glib2/rbgobj_paramspecs.c +305 -0
  39. data/ext/glib2/rbgobj_signal.c +963 -0
  40. data/ext/glib2/rbgobj_strv.c +61 -0
  41. data/ext/glib2/rbgobj_type.c +851 -0
  42. data/ext/glib2/rbgobj_typeinstance.c +121 -0
  43. data/ext/glib2/rbgobj_typeinterface.c +148 -0
  44. data/ext/glib2/rbgobj_typemodule.c +66 -0
  45. data/ext/glib2/rbgobj_typeplugin.c +49 -0
  46. data/ext/glib2/rbgobj_value.c +313 -0
  47. data/ext/glib2/rbgobj_valuearray.c +59 -0
  48. data/ext/glib2/rbgobj_valuetypes.c +298 -0
  49. data/ext/glib2/rbgobject.c +406 -0
  50. data/ext/glib2/rbgobject.h +265 -0
  51. data/ext/glib2/rbgprivate.h +88 -0
  52. data/ext/glib2/rbgutil.c +316 -0
  53. data/ext/glib2/rbgutil.h +82 -0
  54. data/ext/glib2/rbgutil_callback.c +231 -0
  55. data/extconf.rb +49 -0
  56. data/lib/1.8/glib2.so +0 -0
  57. data/lib/1.9/glib2.so +0 -0
  58. data/lib/glib-mkenums.rb +199 -0
  59. data/lib/glib2.rb +239 -0
  60. data/lib/gnome2-win32-binary-downloader.rb +92 -0
  61. data/lib/mkmf-gnome2.rb +377 -0
  62. data/sample/bookmarkfile.rb +66 -0
  63. data/sample/completion.rb +45 -0
  64. data/sample/idle.rb +41 -0
  65. data/sample/iochannel.rb +44 -0
  66. data/sample/keyfile.rb +62 -0
  67. data/sample/shell.rb +36 -0
  68. data/sample/spawn.rb +25 -0
  69. data/sample/timeout.rb +28 -0
  70. data/sample/timeout2.rb +35 -0
  71. data/sample/timer.rb +40 -0
  72. data/sample/type-register.rb +103 -0
  73. data/sample/type-register2.rb +104 -0
  74. data/sample/utils.rb +54 -0
  75. data/test/glib-test-init.rb +6 -0
  76. data/test/glib-test-utils.rb +12 -0
  77. data/test/run-test.rb +21 -0
  78. data/test/test_enum.rb +99 -0
  79. data/test/test_file_utils.rb +15 -0
  80. data/test/test_glib2.rb +120 -0
  81. data/test/test_iochannel.rb +275 -0
  82. data/test/test_key_file.rb +38 -0
  83. data/test/test_mkenums.rb +25 -0
  84. data/test/test_signal.rb +20 -0
  85. data/test/test_timeout.rb +28 -0
  86. data/test/test_unicode.rb +369 -0
  87. data/test/test_utils.rb +37 -0
  88. data/test/test_win32.rb +13 -0
  89. data/test-unit/COPYING +56 -0
  90. data/test-unit/GPL +340 -0
  91. data/test-unit/History.txt +232 -0
  92. data/test-unit/Manifest.txt +110 -0
  93. data/test-unit/PSFL +271 -0
  94. data/test-unit/README.txt +75 -0
  95. data/test-unit/Rakefile +53 -0
  96. data/test-unit/TODO +5 -0
  97. data/test-unit/bin/testrb +5 -0
  98. data/test-unit/html/bar.png +0 -0
  99. data/test-unit/html/bar.svg +153 -0
  100. data/test-unit/html/developer.png +0 -0
  101. data/test-unit/html/developer.svg +469 -0
  102. data/test-unit/html/famfamfam-logo.png +0 -0
  103. data/test-unit/html/favicon.ico +0 -0
  104. data/test-unit/html/favicon.png +0 -0
  105. data/test-unit/html/favicon.svg +82 -0
  106. data/test-unit/html/heading-mark.png +0 -0
  107. data/test-unit/html/heading-mark.svg +393 -0
  108. data/test-unit/html/index.html +247 -0
  109. data/test-unit/html/index.html.ja +270 -0
  110. data/test-unit/html/install.png +0 -0
  111. data/test-unit/html/install.svg +636 -0
  112. data/test-unit/html/jp.png +0 -0
  113. data/test-unit/html/kinotan-failure.png +0 -0
  114. data/test-unit/html/kinotan-pass.png +0 -0
  115. data/test-unit/html/logo.png +0 -0
  116. data/test-unit/html/logo.svg +483 -0
  117. data/test-unit/html/reference.png +0 -0
  118. data/test-unit/html/rubyforge.png +0 -0
  119. data/test-unit/html/tango-logo.png +0 -0
  120. data/test-unit/html/test-unit.css +339 -0
  121. data/test-unit/html/tutorial.png +0 -0
  122. data/test-unit/html/tutorial.svg +559 -0
  123. data/test-unit/html/us.png +0 -0
  124. data/test-unit/images/color-diff.png +0 -0
  125. data/test-unit/lib/test/unit/assertionfailederror.rb +25 -0
  126. data/test-unit/lib/test/unit/assertions.rb +1334 -0
  127. data/test-unit/lib/test/unit/attribute.rb +125 -0
  128. data/test-unit/lib/test/unit/autorunner.rb +363 -0
  129. data/test-unit/lib/test/unit/collector/descendant.rb +23 -0
  130. data/test-unit/lib/test/unit/collector/dir.rb +108 -0
  131. data/test-unit/lib/test/unit/collector/load.rb +144 -0
  132. data/test-unit/lib/test/unit/collector/objectspace.rb +34 -0
  133. data/test-unit/lib/test/unit/collector.rb +36 -0
  134. data/test-unit/lib/test/unit/color-scheme.rb +106 -0
  135. data/test-unit/lib/test/unit/color.rb +96 -0
  136. data/test-unit/lib/test/unit/diff.rb +740 -0
  137. data/test-unit/lib/test/unit/error.rb +130 -0
  138. data/test-unit/lib/test/unit/exceptionhandler.rb +39 -0
  139. data/test-unit/lib/test/unit/failure.rb +136 -0
  140. data/test-unit/lib/test/unit/fixture.rb +176 -0
  141. data/test-unit/lib/test/unit/notification.rb +129 -0
  142. data/test-unit/lib/test/unit/omission.rb +191 -0
  143. data/test-unit/lib/test/unit/pending.rb +150 -0
  144. data/test-unit/lib/test/unit/priority.rb +180 -0
  145. data/test-unit/lib/test/unit/runner/console.rb +52 -0
  146. data/test-unit/lib/test/unit/runner/emacs.rb +8 -0
  147. data/test-unit/lib/test/unit/runner/tap.rb +8 -0
  148. data/test-unit/lib/test/unit/testcase.rb +483 -0
  149. data/test-unit/lib/test/unit/testresult.rb +121 -0
  150. data/test-unit/lib/test/unit/testsuite.rb +110 -0
  151. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +14 -0
  152. data/test-unit/lib/test/unit/ui/console/testrunner.rb +430 -0
  153. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +63 -0
  154. data/test-unit/lib/test/unit/ui/tap/testrunner.rb +82 -0
  155. data/test-unit/lib/test/unit/ui/testrunner.rb +53 -0
  156. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +77 -0
  157. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  158. data/test-unit/lib/test/unit/util/backtracefilter.rb +42 -0
  159. data/test-unit/lib/test/unit/util/method-owner-finder.rb +28 -0
  160. data/test-unit/lib/test/unit/util/observable.rb +90 -0
  161. data/test-unit/lib/test/unit/util/output.rb +31 -0
  162. data/test-unit/lib/test/unit/util/procwrapper.rb +48 -0
  163. data/test-unit/lib/test/unit/version.rb +7 -0
  164. data/test-unit/lib/test/unit.rb +328 -0
  165. data/test-unit/sample/adder.rb +13 -0
  166. data/test-unit/sample/subtracter.rb +12 -0
  167. data/test-unit/sample/test_adder.rb +20 -0
  168. data/test-unit/sample/test_subtracter.rb +20 -0
  169. data/test-unit/sample/test_user.rb +23 -0
  170. data/test-unit/test/collector/test-descendant.rb +133 -0
  171. data/test-unit/test/collector/test-load.rb +442 -0
  172. data/test-unit/test/collector/test_dir.rb +406 -0
  173. data/test-unit/test/collector/test_objectspace.rb +100 -0
  174. data/test-unit/test/run-test.rb +15 -0
  175. data/test-unit/test/test-attribute.rb +86 -0
  176. data/test-unit/test/test-color-scheme.rb +69 -0
  177. data/test-unit/test/test-color.rb +47 -0
  178. data/test-unit/test/test-diff.rb +518 -0
  179. data/test-unit/test/test-emacs-runner.rb +60 -0
  180. data/test-unit/test/test-fixture.rb +287 -0
  181. data/test-unit/test/test-notification.rb +33 -0
  182. data/test-unit/test/test-omission.rb +81 -0
  183. data/test-unit/test/test-pending.rb +70 -0
  184. data/test-unit/test/test-priority.rb +119 -0
  185. data/test-unit/test/test-testcase.rb +544 -0
  186. data/test-unit/test/test_assertions.rb +1197 -0
  187. data/test-unit/test/test_error.rb +26 -0
  188. data/test-unit/test/test_failure.rb +33 -0
  189. data/test-unit/test/test_testresult.rb +113 -0
  190. data/test-unit/test/test_testsuite.rb +129 -0
  191. data/test-unit/test/testunit-test-util.rb +14 -0
  192. data/test-unit/test/ui/test_tap.rb +33 -0
  193. data/test-unit/test/ui/test_testrunmediator.rb +20 -0
  194. data/test-unit/test/util/test-method-owner-finder.rb +38 -0
  195. data/test-unit/test/util/test-output.rb +11 -0
  196. data/test-unit/test/util/test_backtracefilter.rb +41 -0
  197. data/test-unit/test/util/test_observable.rb +102 -0
  198. data/test-unit/test/util/test_procwrapper.rb +36 -0
  199. data/vendor/local/bin/envsubst.exe +0 -0
  200. data/vendor/local/bin/gettext.exe +0 -0
  201. data/vendor/local/bin/gettext.sh +123 -0
  202. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  203. data/vendor/local/bin/glib-gettextize +188 -0
  204. data/vendor/local/bin/glib-mkenums +511 -0
  205. data/vendor/local/bin/gobject-query.exe +0 -0
  206. data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
  207. data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
  208. data/vendor/local/bin/intl.dll +0 -0
  209. data/vendor/local/bin/libasprintf-0.dll +0 -0
  210. data/vendor/local/bin/libgcc_s_dw2-1.dll +0 -0
  211. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  212. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  213. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  214. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  215. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  216. data/vendor/local/bin/ngettext.exe +0 -0
  217. data/vendor/local/include/autosprintf.h +66 -0
  218. data/vendor/local/include/glib-2.0/gio/gappinfo.h +237 -0
  219. data/vendor/local/include/glib-2.0/gio/gasyncinitable.h +119 -0
  220. data/vendor/local/include/glib-2.0/gio/gasyncresult.h +73 -0
  221. data/vendor/local/include/glib-2.0/gio/gbufferedinputstream.h +123 -0
  222. data/vendor/local/include/glib-2.0/gio/gbufferedoutputstream.h +82 -0
  223. data/vendor/local/include/glib-2.0/gio/gcancellable.h +103 -0
  224. data/vendor/local/include/glib-2.0/gio/gcharsetconverter.h +60 -0
  225. data/vendor/local/include/glib-2.0/gio/gcontenttype.h +57 -0
  226. data/vendor/local/include/glib-2.0/gio/gconverter.h +95 -0
  227. data/vendor/local/include/glib-2.0/gio/gconverterinputstream.h +80 -0
  228. data/vendor/local/include/glib-2.0/gio/gconverteroutputstream.h +80 -0
  229. data/vendor/local/include/glib-2.0/gio/gdatainputstream.h +133 -0
  230. data/vendor/local/include/glib-2.0/gio/gdataoutputstream.h +116 -0
  231. data/vendor/local/include/glib-2.0/gio/gdrive.h +225 -0
  232. data/vendor/local/include/glib-2.0/gio/gemblem.h +58 -0
  233. data/vendor/local/include/glib-2.0/gio/gemblemedicon.h +62 -0
  234. data/vendor/local/include/glib-2.0/gio/gfile.h +1017 -0
  235. data/vendor/local/include/glib-2.0/gio/gfileattribute.h +77 -0
  236. data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +133 -0
  237. data/vendor/local/include/glib-2.0/gio/gfileicon.h +56 -0
  238. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +951 -0
  239. data/vendor/local/include/glib-2.0/gio/gfileinputstream.h +112 -0
  240. data/vendor/local/include/glib-2.0/gio/gfileiostream.h +118 -0
  241. data/vendor/local/include/glib-2.0/gio/gfilemonitor.h +95 -0
  242. data/vendor/local/include/glib-2.0/gio/gfilenamecompleter.h +76 -0
  243. data/vendor/local/include/glib-2.0/gio/gfileoutputstream.h +119 -0
  244. data/vendor/local/include/glib-2.0/gio/gfilterinputstream.h +76 -0
  245. data/vendor/local/include/glib-2.0/gio/gfilteroutputstream.h +76 -0
  246. data/vendor/local/include/glib-2.0/gio/gicon.h +91 -0
  247. data/vendor/local/include/glib-2.0/gio/ginetaddress.h +103 -0
  248. data/vendor/local/include/glib-2.0/gio/ginetsocketaddress.h +69 -0
  249. data/vendor/local/include/glib-2.0/gio/ginitable.h +96 -0
  250. data/vendor/local/include/glib-2.0/gio/ginputstream.h +172 -0
  251. data/vendor/local/include/glib-2.0/gio/gio.h +101 -0
  252. data/vendor/local/include/glib-2.0/gio/gioenums.h +703 -0
  253. data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +79 -0
  254. data/vendor/local/include/glib-2.0/gio/gioerror.h +48 -0
  255. data/vendor/local/include/glib-2.0/gio/giomodule.h +132 -0
  256. data/vendor/local/include/glib-2.0/gio/gioscheduler.h +52 -0
  257. data/vendor/local/include/glib-2.0/gio/giostream.h +112 -0
  258. data/vendor/local/include/glib-2.0/gio/giotypes.h +339 -0
  259. data/vendor/local/include/glib-2.0/gio/gloadableicon.h +97 -0
  260. data/vendor/local/include/glib-2.0/gio/gmemoryinputstream.h +82 -0
  261. data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +97 -0
  262. data/vendor/local/include/glib-2.0/gio/gmount.h +242 -0
  263. data/vendor/local/include/glib-2.0/gio/gmountoperation.h +123 -0
  264. data/vendor/local/include/glib-2.0/gio/gnativevolumemonitor.h +62 -0
  265. data/vendor/local/include/glib-2.0/gio/gnetworkaddress.h +69 -0
  266. data/vendor/local/include/glib-2.0/gio/gnetworkservice.h +69 -0
  267. data/vendor/local/include/glib-2.0/gio/goutputstream.h +207 -0
  268. data/vendor/local/include/glib-2.0/gio/gresolver.h +167 -0
  269. data/vendor/local/include/glib-2.0/gio/gseekable.h +99 -0
  270. data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +125 -0
  271. data/vendor/local/include/glib-2.0/gio/gsocket.h +176 -0
  272. data/vendor/local/include/glib-2.0/gio/gsocketaddress.h +79 -0
  273. data/vendor/local/include/glib-2.0/gio/gsocketaddressenumerator.h +89 -0
  274. data/vendor/local/include/glib-2.0/gio/gsocketclient.h +130 -0
  275. data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +68 -0
  276. data/vendor/local/include/glib-2.0/gio/gsocketconnection.h +91 -0
  277. data/vendor/local/include/glib-2.0/gio/gsocketcontrolmessage.h +105 -0
  278. data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +138 -0
  279. data/vendor/local/include/glib-2.0/gio/gsocketservice.h +88 -0
  280. data/vendor/local/include/glib-2.0/gio/gsrvtarget.h +52 -0
  281. data/vendor/local/include/glib-2.0/gio/gtcpconnection.h +68 -0
  282. data/vendor/local/include/glib-2.0/gio/gthemedicon.h +63 -0
  283. data/vendor/local/include/glib-2.0/gio/gthreadedsocketservice.h +81 -0
  284. data/vendor/local/include/glib-2.0/gio/gvfs.h +125 -0
  285. data/vendor/local/include/glib-2.0/gio/gvolume.h +211 -0
  286. data/vendor/local/include/glib-2.0/gio/gvolumemonitor.h +151 -0
  287. data/vendor/local/include/glib-2.0/gio/gzlibcompressor.h +55 -0
  288. data/vendor/local/include/glib-2.0/gio/gzlibdecompressor.h +54 -0
  289. data/vendor/local/include/glib-2.0/glib/galloca.h +63 -0
  290. data/vendor/local/include/glib-2.0/glib/garray.h +179 -0
  291. data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +120 -0
  292. data/vendor/local/include/glib-2.0/glib/gatomic.h +85 -0
  293. data/vendor/local/include/glib-2.0/glib/gbacktrace.h +68 -0
  294. data/vendor/local/include/glib-2.0/glib/gbase64.h +57 -0
  295. data/vendor/local/include/glib-2.0/glib/gbitlock.h +43 -0
  296. data/vendor/local/include/glib-2.0/glib/gbookmarkfile.h +191 -0
  297. data/vendor/local/include/glib-2.0/glib/gcache.h +69 -0
  298. data/vendor/local/include/glib-2.0/glib/gchecksum.h +86 -0
  299. data/vendor/local/include/glib-2.0/glib/gcompletion.h +77 -0
  300. data/vendor/local/include/glib-2.0/glib/gconvert.h +138 -0
  301. data/vendor/local/include/glib-2.0/glib/gdataset.h +122 -0
  302. data/vendor/local/include/glib-2.0/glib/gdate.h +263 -0
  303. data/vendor/local/include/glib-2.0/glib/gdir.h +52 -0
  304. data/vendor/local/include/glib-2.0/glib/gerror.h +98 -0
  305. data/vendor/local/include/glib-2.0/glib/gfileutils.h +128 -0
  306. data/vendor/local/include/glib-2.0/glib/ghash.h +166 -0
  307. data/vendor/local/include/glib-2.0/glib/ghook.h +181 -0
  308. data/vendor/local/include/glib-2.0/glib/ghostutils.h +40 -0
  309. data/vendor/local/include/glib-2.0/glib/gi18n-lib.h +38 -0
  310. data/vendor/local/include/glib-2.0/glib/gi18n.h +34 -0
  311. data/vendor/local/include/glib-2.0/glib/giochannel.h +366 -0
  312. data/vendor/local/include/glib-2.0/glib/gkeyfile.h +250 -0
  313. data/vendor/local/include/glib-2.0/glib/glist.h +120 -0
  314. data/vendor/local/include/glib-2.0/glib/gmacros.h +277 -0
  315. data/vendor/local/include/glib-2.0/glib/gmain.h +304 -0
  316. data/vendor/local/include/glib-2.0/glib/gmappedfile.h +49 -0
  317. data/vendor/local/include/glib-2.0/glib/gmarkup.h +163 -0
  318. data/vendor/local/include/glib-2.0/glib/gmem.h +203 -0
  319. data/vendor/local/include/glib-2.0/glib/gmessages.h +343 -0
  320. data/vendor/local/include/glib-2.0/glib/gnode.h +288 -0
  321. data/vendor/local/include/glib-2.0/glib/goption.h +370 -0
  322. data/vendor/local/include/glib-2.0/glib/gpattern.h +49 -0
  323. data/vendor/local/include/glib-2.0/glib/gpoll.h +93 -0
  324. data/vendor/local/include/glib-2.0/glib/gprimes.h +51 -0
  325. data/vendor/local/include/glib-2.0/glib/gprintf.h +52 -0
  326. data/vendor/local/include/glib-2.0/glib/gqsort.h +46 -0
  327. data/vendor/local/include/glib-2.0/glib/gquark.h +52 -0
  328. data/vendor/local/include/glib-2.0/glib/gqueue.h +127 -0
  329. data/vendor/local/include/glib-2.0/glib/grand.h +85 -0
  330. data/vendor/local/include/glib-2.0/glib/gregex.h +243 -0
  331. data/vendor/local/include/glib-2.0/glib/grel.h +97 -0
  332. data/vendor/local/include/glib-2.0/glib/gscanner.h +278 -0
  333. data/vendor/local/include/glib-2.0/glib/gsequence.h +128 -0
  334. data/vendor/local/include/glib-2.0/glib/gshell.h +55 -0
  335. data/vendor/local/include/glib-2.0/glib/gslice.h +86 -0
  336. data/vendor/local/include/glib-2.0/glib/gslist.h +114 -0
  337. data/vendor/local/include/glib-2.0/glib/gspawn.h +139 -0
  338. data/vendor/local/include/glib-2.0/glib/gstdio.h +159 -0
  339. data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +267 -0
  340. data/vendor/local/include/glib-2.0/glib/gstring.h +178 -0
  341. data/vendor/local/include/glib-2.0/glib/gtestutils.h +292 -0
  342. data/vendor/local/include/glib-2.0/glib/gthread.h +408 -0
  343. data/vendor/local/include/glib-2.0/glib/gthreadpool.h +114 -0
  344. data/vendor/local/include/glib-2.0/glib/gtimer.h +65 -0
  345. data/vendor/local/include/glib-2.0/glib/gtree.h +91 -0
  346. data/vendor/local/include/glib-2.0/glib/gtypes.h +451 -0
  347. data/vendor/local/include/glib-2.0/glib/gunicode.h +404 -0
  348. data/vendor/local/include/glib-2.0/glib/gurifuncs.h +81 -0
  349. data/vendor/local/include/glib-2.0/glib/gutils.h +490 -0
  350. data/vendor/local/include/glib-2.0/glib/gvariant.h +224 -0
  351. data/vendor/local/include/glib-2.0/glib/gvarianttype.h +305 -0
  352. data/vendor/local/include/glib-2.0/glib/gwin32.h +114 -0
  353. data/vendor/local/include/glib-2.0/glib-object.h +41 -0
  354. data/vendor/local/include/glib-2.0/glib.h +97 -0
  355. data/vendor/local/include/glib-2.0/gmodule.h +101 -0
  356. data/vendor/local/include/glib-2.0/gobject/gboxed.h +236 -0
  357. data/vendor/local/include/glib-2.0/gobject/gclosure.h +251 -0
  358. data/vendor/local/include/glib-2.0/gobject/genums.h +261 -0
  359. data/vendor/local/include/glib-2.0/gobject/gmarshal.h +169 -0
  360. data/vendor/local/include/glib-2.0/gobject/gobject.h +562 -0
  361. data/vendor/local/include/glib-2.0/gobject/gobjectnotifyqueue.c +166 -0
  362. data/vendor/local/include/glib-2.0/gobject/gparam.h +410 -0
  363. data/vendor/local/include/glib-2.0/gobject/gparamspecs.h +1083 -0
  364. data/vendor/local/include/glib-2.0/gobject/gsignal.h +509 -0
  365. data/vendor/local/include/glib-2.0/gobject/gsourceclosure.h +51 -0
  366. data/vendor/local/include/glib-2.0/gobject/gtype.h +1608 -0
  367. data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +263 -0
  368. data/vendor/local/include/glib-2.0/gobject/gtypeplugin.h +134 -0
  369. data/vendor/local/include/glib-2.0/gobject/gvalue.h +159 -0
  370. data/vendor/local/include/glib-2.0/gobject/gvaluearray.h +77 -0
  371. data/vendor/local/include/glib-2.0/gobject/gvaluecollector.h +222 -0
  372. data/vendor/local/include/glib-2.0/gobject/gvaluetypes.h +243 -0
  373. data/vendor/local/include/libintl.h +464 -0
  374. data/vendor/local/lib/GNU.Gettext.dll +0 -0
  375. data/vendor/local/lib/gio-2.0.def +800 -0
  376. data/vendor/local/lib/gio-2.0.lib +0 -0
  377. data/vendor/local/lib/glib-2.0/include/glibconfig.h +284 -0
  378. data/vendor/local/lib/glib-2.0.def +1381 -0
  379. data/vendor/local/lib/glib-2.0.lib +0 -0
  380. data/vendor/local/lib/gmodule-2.0.def +11 -0
  381. data/vendor/local/lib/gmodule-2.0.lib +0 -0
  382. data/vendor/local/lib/gobject-2.0.def +349 -0
  383. data/vendor/local/lib/gobject-2.0.lib +0 -0
  384. data/vendor/local/lib/gthread-2.0.def +3 -0
  385. data/vendor/local/lib/gthread-2.0.lib +0 -0
  386. data/vendor/local/lib/intl.lib +0 -0
  387. data/vendor/local/lib/libasprintf.dll.a +0 -0
  388. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  389. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  390. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  391. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  392. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  393. data/vendor/local/lib/libintl.def +31 -0
  394. data/vendor/local/lib/libintl.dll.a +0 -0
  395. data/vendor/local/lib/pkgconfig/gio-2.0.pc +14 -0
  396. data/vendor/local/lib/pkgconfig/glib-2.0.pc +15 -0
  397. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +14 -0
  398. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +14 -0
  399. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +11 -0
  400. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +11 -0
  401. data/vendor/local/manifest/gettext-runtime-dev_0.18.1.1-2_win32.mft +81 -0
  402. data/vendor/local/manifest/gettext-runtime_0.18.1.1-2_win32.mft +3 -0
  403. data/vendor/local/manifest/glib-dev_2.24.2-2_win32.mft +491 -0
  404. data/vendor/local/manifest/glib_2.24.2-2_win32.mft +101 -0
  405. data/vendor/local/share/aclocal/glib-2.0.m4 +211 -0
  406. data/vendor/local/share/aclocal/glib-gettext.m4 +432 -0
  407. data/vendor/local/share/doc/gettext/bind_textdomain_codeset.3.html +165 -0
  408. data/vendor/local/share/doc/gettext/bindtextdomain.3.html +160 -0
  409. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext.html +8 -0
  410. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceManager.html +305 -0
  411. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceSet.html +356 -0
  412. data/vendor/local/share/doc/gettext/csharpdoc/begin.html +11 -0
  413. data/vendor/local/share/doc/gettext/csharpdoc/index.html +10 -0
  414. data/vendor/local/share/doc/gettext/csharpdoc/namespaces.html +6 -0
  415. data/vendor/local/share/doc/gettext/envsubst.1.html +213 -0
  416. data/vendor/local/share/doc/gettext/gettext.1.html +266 -0
  417. data/vendor/local/share/doc/gettext/gettext.3.html +186 -0
  418. data/vendor/local/share/doc/gettext/ngettext.1.html +280 -0
  419. data/vendor/local/share/doc/gettext/ngettext.3.html +143 -0
  420. data/vendor/local/share/doc/gettext/textdomain.3.html +150 -0
  421. data/vendor/local/share/doc/glib-2.24.2/COPYING +482 -0
  422. data/vendor/local/share/doc/glib-dev-2.24.2/COPYING +482 -0
  423. data/vendor/local/share/doc/libasprintf/autosprintf_all.html +174 -0
  424. data/vendor/local/share/glib-2.0/gdb/glib.py +252 -0
  425. data/vendor/local/share/glib-2.0/gdb/gobject.py +305 -0
  426. data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +111 -0
  427. data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +277 -0
  428. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +1390 -0
  429. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +531 -0
  430. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +343 -0
  431. data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +568 -0
  432. data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +295 -0
  433. data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +620 -0
  434. data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +245 -0
  435. data/vendor/local/share/gtk-doc/html/gio/GConverter.html +388 -0
  436. data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +993 -0
  437. data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +544 -0
  438. data/vendor/local/share/gtk-doc/html/gio/GDrive.html +1416 -0
  439. data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +272 -0
  440. data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +206 -0
  441. data/vendor/local/share/gtk-doc/html/gio/GFile.html +7450 -0
  442. data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +115 -0
  443. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +520 -0
  444. data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +312 -0
  445. data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +155 -0
  446. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +3116 -0
  447. data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +262 -0
  448. data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +353 -0
  449. data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +301 -0
  450. data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +217 -0
  451. data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +182 -0
  452. data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +183 -0
  453. data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +261 -0
  454. data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +479 -0
  455. data/vendor/local/share/gtk-doc/html/gio/GIcon.html +331 -0
  456. data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +717 -0
  457. data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +195 -0
  458. data/vendor/local/share/gtk-doc/html/gio/GInitable.html +388 -0
  459. data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +808 -0
  460. data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +301 -0
  461. data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +185 -0
  462. data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +362 -0
  463. data/vendor/local/share/gtk-doc/html/gio/GMount.html +1465 -0
  464. data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +848 -0
  465. data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +263 -0
  466. data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +248 -0
  467. data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +1006 -0
  468. data/vendor/local/share/gtk-doc/html/gio/GResolver.html +787 -0
  469. data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +350 -0
  470. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +979 -0
  471. data/vendor/local/share/gtk-doc/html/gio/GSocket.html +2152 -0
  472. data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +297 -0
  473. data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +930 -0
  474. data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +428 -0
  475. data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +548 -0
  476. data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +274 -0
  477. data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +741 -0
  478. data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +258 -0
  479. data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +377 -0
  480. data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +197 -0
  481. data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +381 -0
  482. data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +280 -0
  483. data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +237 -0
  484. data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +237 -0
  485. data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +306 -0
  486. data/vendor/local/share/gtk-doc/html/gio/GVfs.html +274 -0
  487. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1028 -0
  488. data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +709 -0
  489. data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +180 -0
  490. data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +128 -0
  491. data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +153 -0
  492. data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +155 -0
  493. data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +1088 -0
  494. data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +206 -0
  495. data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +97 -0
  496. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +4499 -0
  497. data/vendor/local/share/gtk-doc/html/gio/async.html +44 -0
  498. data/vendor/local/share/gtk-doc/html/gio/ch01.html +171 -0
  499. data/vendor/local/share/gtk-doc/html/gio/ch02.html +45 -0
  500. data/vendor/local/share/gtk-doc/html/gio/ch03.html +80 -0
  501. data/vendor/local/share/gtk-doc/html/gio/ch19.html +75 -0
  502. data/vendor/local/share/gtk-doc/html/gio/ch20.html +217 -0
  503. data/vendor/local/share/gtk-doc/html/gio/ch20s02.html +41 -0
  504. data/vendor/local/share/gtk-doc/html/gio/ch20s03.html +39 -0
  505. data/vendor/local/share/gtk-doc/html/gio/conversion.html +44 -0
  506. data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +96 -0
  507. data/vendor/local/share/gtk-doc/html/gio/extending.html +41 -0
  508. data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +38 -0
  509. data/vendor/local/share/gtk-doc/html/gio/file_mon.html +33 -0
  510. data/vendor/local/share/gtk-doc/html/gio/file_ops.html +50 -0
  511. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +339 -0
  512. data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +465 -0
  513. data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +381 -0
  514. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +163 -0
  515. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +163 -0
  516. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +927 -0
  517. data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +328 -0
  518. data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +297 -0
  519. data/vendor/local/share/gtk-doc/html/gio/gio-GSrvTarget.html +313 -0
  520. data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +918 -0
  521. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +107 -0
  522. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +1235 -0
  523. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +1384 -0
  524. data/vendor/local/share/gtk-doc/html/gio/gvfs-overview.png +0 -0
  525. data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +47 -0
  526. data/vendor/local/share/gtk-doc/html/gio/home.png +0 -0
  527. data/vendor/local/share/gtk-doc/html/gio/icons.html +50 -0
  528. data/vendor/local/share/gtk-doc/html/gio/index.html +318 -0
  529. data/vendor/local/share/gtk-doc/html/gio/index.sgml +1795 -0
  530. data/vendor/local/share/gtk-doc/html/gio/left.png +0 -0
  531. data/vendor/local/share/gtk-doc/html/gio/migrating.html +42 -0
  532. data/vendor/local/share/gtk-doc/html/gio/networking.html +57 -0
  533. data/vendor/local/share/gtk-doc/html/gio/pt01.html +39 -0
  534. data/vendor/local/share/gtk-doc/html/gio/pt02.html +293 -0
  535. data/vendor/local/share/gtk-doc/html/gio/resolver.html +47 -0
  536. data/vendor/local/share/gtk-doc/html/gio/right.png +0 -0
  537. data/vendor/local/share/gtk-doc/html/gio/streaming.html +92 -0
  538. data/vendor/local/share/gtk-doc/html/gio/style.css +257 -0
  539. data/vendor/local/share/gtk-doc/html/gio/types.html +41 -0
  540. data/vendor/local/share/gtk-doc/html/gio/up.png +0 -0
  541. data/vendor/local/share/gtk-doc/html/gio/utils.html +33 -0
  542. data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +47 -0
  543. data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +180 -0
  544. data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +312 -0
  545. data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +563 -0
  546. data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +362 -0
  547. data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +102 -0
  548. data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +124 -0
  549. data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +83 -0
  550. data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +194 -0
  551. data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +419 -0
  552. data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +389 -0
  553. data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +413 -0
  554. data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +158 -0
  555. data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +340 -0
  556. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +7835 -0
  557. data/vendor/local/share/gtk-doc/html/glib/file-name-encodings.png +0 -0
  558. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +893 -0
  559. data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +818 -0
  560. data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +413 -0
  561. data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +430 -0
  562. data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +802 -0
  563. data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +372 -0
  564. data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +500 -0
  565. data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +2054 -0
  566. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +560 -0
  567. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +1686 -0
  568. data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +398 -0
  569. data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +1187 -0
  570. data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +1665 -0
  571. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +460 -0
  572. data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +528 -0
  573. data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +2042 -0
  574. data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +1278 -0
  575. data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +1406 -0
  576. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +548 -0
  577. data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +1023 -0
  578. data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +1810 -0
  579. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +3798 -0
  580. data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +1815 -0
  581. data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +295 -0
  582. data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +1512 -0
  583. data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +1367 -0
  584. data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +229 -0
  585. data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +629 -0
  586. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +2196 -0
  587. data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +2556 -0
  588. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +612 -0
  589. data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +1451 -0
  590. data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +389 -0
  591. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +1029 -0
  592. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +141 -0
  593. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +706 -0
  594. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +510 -0
  595. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +703 -0
  596. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +1045 -0
  597. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +1523 -0
  598. data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +1466 -0
  599. data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +204 -0
  600. data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +2648 -0
  601. data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +752 -0
  602. data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +269 -0
  603. data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +578 -0
  604. data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +483 -0
  605. data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +1353 -0
  606. data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +238 -0
  607. data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +1283 -0
  608. data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +1212 -0
  609. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +924 -0
  610. data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +466 -0
  611. data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +301 -0
  612. data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +2947 -0
  613. data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +1290 -0
  614. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +1719 -0
  615. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +3379 -0
  616. data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +606 -0
  617. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +3411 -0
  618. data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +245 -0
  619. data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +188 -0
  620. data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +263 -0
  621. data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +314 -0
  622. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +3356 -0
  623. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +150 -0
  624. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +438 -0
  625. data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +476 -0
  626. data/vendor/local/share/gtk-doc/html/glib/glib-building.html +438 -0
  627. data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +159 -0
  628. data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +118 -0
  629. data/vendor/local/share/gtk-doc/html/glib/glib-core.html +64 -0
  630. data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +160 -0
  631. data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +120 -0
  632. data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +59 -0
  633. data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +93 -0
  634. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +2395 -0
  635. data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +121 -0
  636. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +302 -0
  637. data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +112 -0
  638. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +2084 -0
  639. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +2556 -0
  640. data/vendor/local/share/gtk-doc/html/glib/glib.html +80 -0
  641. data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +72 -0
  642. data/vendor/local/share/gtk-doc/html/glib/gtester.html +131 -0
  643. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +1171 -0
  644. data/vendor/local/share/gtk-doc/html/glib/home.png +0 -0
  645. data/vendor/local/share/gtk-doc/html/glib/index.html +336 -0
  646. data/vendor/local/share/gtk-doc/html/glib/index.sgml +2717 -0
  647. data/vendor/local/share/gtk-doc/html/glib/left.png +0 -0
  648. data/vendor/local/share/gtk-doc/html/glib/mainloop-states.gif +0 -0
  649. data/vendor/local/share/gtk-doc/html/glib/right.png +0 -0
  650. data/vendor/local/share/gtk-doc/html/glib/style.css +257 -0
  651. data/vendor/local/share/gtk-doc/html/glib/tools.html +41 -0
  652. data/vendor/local/share/gtk-doc/html/glib/up.png +0 -0
  653. data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +710 -0
  654. data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +453 -0
  655. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +85 -0
  656. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +55 -0
  657. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +51 -0
  658. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +46 -0
  659. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +38 -0
  660. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +46 -0
  661. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +72 -0
  662. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +178 -0
  663. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +42 -0
  664. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +42 -0
  665. data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +50 -0
  666. data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +2577 -0
  667. data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +136 -0
  668. data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +113 -0
  669. data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +293 -0
  670. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +263 -0
  671. data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +92 -0
  672. data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +214 -0
  673. data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +355 -0
  674. data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +295 -0
  675. data/vendor/local/share/gtk-doc/html/gobject/glue.png +0 -0
  676. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +406 -0
  677. data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +2355 -0
  678. data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +847 -0
  679. data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +1423 -0
  680. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +776 -0
  681. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +2741 -0
  682. data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +5242 -0
  683. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +2609 -0
  684. data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +4227 -0
  685. data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +413 -0
  686. data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +230 -0
  687. data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +234 -0
  688. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +270 -0
  689. data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +117 -0
  690. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +723 -0
  691. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +757 -0
  692. data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +143 -0
  693. data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +287 -0
  694. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +316 -0
  695. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +76 -0
  696. data/vendor/local/share/gtk-doc/html/gobject/home.png +0 -0
  697. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +100 -0
  698. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +86 -0
  699. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +113 -0
  700. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +122 -0
  701. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +257 -0
  702. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +283 -0
  703. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +125 -0
  704. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +167 -0
  705. data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +160 -0
  706. data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +121 -0
  707. data/vendor/local/share/gtk-doc/html/gobject/index.html +187 -0
  708. data/vendor/local/share/gtk-doc/html/gobject/index.sgml +734 -0
  709. data/vendor/local/share/gtk-doc/html/gobject/left.png +0 -0
  710. data/vendor/local/share/gtk-doc/html/gobject/pr01.html +72 -0
  711. data/vendor/local/share/gtk-doc/html/gobject/pt01.html +80 -0
  712. data/vendor/local/share/gtk-doc/html/gobject/pt02.html +66 -0
  713. data/vendor/local/share/gtk-doc/html/gobject/pt03.html +55 -0
  714. data/vendor/local/share/gtk-doc/html/gobject/right.png +0 -0
  715. data/vendor/local/share/gtk-doc/html/gobject/rn01.html +82 -0
  716. data/vendor/local/share/gtk-doc/html/gobject/rn02.html +47 -0
  717. data/vendor/local/share/gtk-doc/html/gobject/signal.html +377 -0
  718. data/vendor/local/share/gtk-doc/html/gobject/style.css +257 -0
  719. data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +35 -0
  720. data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +40 -0
  721. data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +63 -0
  722. data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +55 -0
  723. data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +43 -0
  724. data/vendor/local/share/gtk-doc/html/gobject/up.png +0 -0
  725. data/vendor/local/share/locale/af/LC_MESSAGES/glib20.mo +0 -0
  726. data/vendor/local/share/locale/am/LC_MESSAGES/glib20.mo +0 -0
  727. data/vendor/local/share/locale/ar/LC_MESSAGES/glib20.mo +0 -0
  728. data/vendor/local/share/locale/as/LC_MESSAGES/glib20.mo +0 -0
  729. data/vendor/local/share/locale/ast/LC_MESSAGES/glib20.mo +0 -0
  730. data/vendor/local/share/locale/az/LC_MESSAGES/glib20.mo +0 -0
  731. data/vendor/local/share/locale/be/LC_MESSAGES/gettext-runtime.mo +0 -0
  732. data/vendor/local/share/locale/be/LC_MESSAGES/glib20.mo +0 -0
  733. data/vendor/local/share/locale/be@latin/LC_MESSAGES/glib20.mo +0 -0
  734. data/vendor/local/share/locale/bg/LC_MESSAGES/gettext-runtime.mo +0 -0
  735. data/vendor/local/share/locale/bg/LC_MESSAGES/glib20.mo +0 -0
  736. data/vendor/local/share/locale/bn/LC_MESSAGES/glib20.mo +0 -0
  737. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/glib20.mo +0 -0
  738. data/vendor/local/share/locale/bs/LC_MESSAGES/glib20.mo +0 -0
  739. data/vendor/local/share/locale/ca/LC_MESSAGES/gettext-runtime.mo +0 -0
  740. data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
  741. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib20.mo +0 -0
  742. data/vendor/local/share/locale/cs/LC_MESSAGES/gettext-runtime.mo +0 -0
  743. data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
  744. data/vendor/local/share/locale/cy/LC_MESSAGES/glib20.mo +0 -0
  745. data/vendor/local/share/locale/da/LC_MESSAGES/gettext-runtime.mo +0 -0
  746. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  747. data/vendor/local/share/locale/de/LC_MESSAGES/gettext-runtime.mo +0 -0
  748. data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
  749. data/vendor/local/share/locale/dz/LC_MESSAGES/glib20.mo +0 -0
  750. data/vendor/local/share/locale/el/LC_MESSAGES/gettext-runtime.mo +0 -0
  751. data/vendor/local/share/locale/el/LC_MESSAGES/glib20.mo +0 -0
  752. data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gettext-runtime.mo +0 -0
  753. data/vendor/local/share/locale/en@quot/LC_MESSAGES/gettext-runtime.mo +0 -0
  754. data/vendor/local/share/locale/en@shaw/LC_MESSAGES/glib20.mo +0 -0
  755. data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib20.mo +0 -0
  756. data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib20.mo +0 -0
  757. data/vendor/local/share/locale/eo/LC_MESSAGES/gettext-runtime.mo +0 -0
  758. data/vendor/local/share/locale/eo/LC_MESSAGES/glib20.mo +0 -0
  759. data/vendor/local/share/locale/es/LC_MESSAGES/gettext-runtime.mo +0 -0
  760. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  761. data/vendor/local/share/locale/et/LC_MESSAGES/gettext-runtime.mo +0 -0
  762. data/vendor/local/share/locale/et/LC_MESSAGES/glib20.mo +0 -0
  763. data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
  764. data/vendor/local/share/locale/fa/LC_MESSAGES/glib20.mo +0 -0
  765. data/vendor/local/share/locale/fi/LC_MESSAGES/gettext-runtime.mo +0 -0
  766. data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
  767. data/vendor/local/share/locale/fr/LC_MESSAGES/gettext-runtime.mo +0 -0
  768. data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
  769. data/vendor/local/share/locale/ga/LC_MESSAGES/gettext-runtime.mo +0 -0
  770. data/vendor/local/share/locale/ga/LC_MESSAGES/glib20.mo +0 -0
  771. data/vendor/local/share/locale/gl/LC_MESSAGES/gettext-runtime.mo +0 -0
  772. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  773. data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
  774. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  775. data/vendor/local/share/locale/hi/LC_MESSAGES/glib20.mo +0 -0
  776. data/vendor/local/share/locale/hr/LC_MESSAGES/glib20.mo +0 -0
  777. data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
  778. data/vendor/local/share/locale/hy/LC_MESSAGES/glib20.mo +0 -0
  779. data/vendor/local/share/locale/id/LC_MESSAGES/gettext-runtime.mo +0 -0
  780. data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
  781. data/vendor/local/share/locale/is/LC_MESSAGES/glib20.mo +0 -0
  782. data/vendor/local/share/locale/it/LC_MESSAGES/gettext-runtime.mo +0 -0
  783. data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
  784. data/vendor/local/share/locale/ja/LC_MESSAGES/gettext-runtime.mo +0 -0
  785. data/vendor/local/share/locale/ja/LC_MESSAGES/glib20.mo +0 -0
  786. data/vendor/local/share/locale/ka/LC_MESSAGES/glib20.mo +0 -0
  787. data/vendor/local/share/locale/kn/LC_MESSAGES/glib20.mo +0 -0
  788. data/vendor/local/share/locale/ko/LC_MESSAGES/gettext-runtime.mo +0 -0
  789. data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
  790. data/vendor/local/share/locale/ku/LC_MESSAGES/glib20.mo +0 -0
  791. data/vendor/local/share/locale/locale.alias +77 -0
  792. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  793. data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
  794. data/vendor/local/share/locale/mai/LC_MESSAGES/glib20.mo +0 -0
  795. data/vendor/local/share/locale/mg/LC_MESSAGES/glib20.mo +0 -0
  796. data/vendor/local/share/locale/mk/LC_MESSAGES/glib20.mo +0 -0
  797. data/vendor/local/share/locale/ml/LC_MESSAGES/glib20.mo +0 -0
  798. data/vendor/local/share/locale/mn/LC_MESSAGES/glib20.mo +0 -0
  799. data/vendor/local/share/locale/mr/LC_MESSAGES/glib20.mo +0 -0
  800. data/vendor/local/share/locale/ms/LC_MESSAGES/glib20.mo +0 -0
  801. data/vendor/local/share/locale/nb/LC_MESSAGES/gettext-runtime.mo +0 -0
  802. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  803. data/vendor/local/share/locale/nds/LC_MESSAGES/glib20.mo +0 -0
  804. data/vendor/local/share/locale/ne/LC_MESSAGES/glib20.mo +0 -0
  805. data/vendor/local/share/locale/nl/LC_MESSAGES/gettext-runtime.mo +0 -0
  806. data/vendor/local/share/locale/nl/LC_MESSAGES/glib20.mo +0 -0
  807. data/vendor/local/share/locale/nn/LC_MESSAGES/gettext-runtime.mo +0 -0
  808. data/vendor/local/share/locale/nn/LC_MESSAGES/glib20.mo +0 -0
  809. data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
  810. data/vendor/local/share/locale/or/LC_MESSAGES/glib20.mo +0 -0
  811. data/vendor/local/share/locale/pa/LC_MESSAGES/glib20.mo +0 -0
  812. data/vendor/local/share/locale/pl/LC_MESSAGES/gettext-runtime.mo +0 -0
  813. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  814. data/vendor/local/share/locale/ps/LC_MESSAGES/glib20.mo +0 -0
  815. data/vendor/local/share/locale/pt/LC_MESSAGES/gettext-runtime.mo +0 -0
  816. data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
  817. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gettext-runtime.mo +0 -0
  818. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
  819. data/vendor/local/share/locale/ro/LC_MESSAGES/gettext-runtime.mo +0 -0
  820. data/vendor/local/share/locale/ro/LC_MESSAGES/glib20.mo +0 -0
  821. data/vendor/local/share/locale/ru/LC_MESSAGES/gettext-runtime.mo +0 -0
  822. data/vendor/local/share/locale/ru/LC_MESSAGES/glib20.mo +0 -0
  823. data/vendor/local/share/locale/rw/LC_MESSAGES/glib20.mo +0 -0
  824. data/vendor/local/share/locale/si/LC_MESSAGES/glib20.mo +0 -0
  825. data/vendor/local/share/locale/sk/LC_MESSAGES/gettext-runtime.mo +0 -0
  826. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  827. data/vendor/local/share/locale/sl/LC_MESSAGES/gettext-runtime.mo +0 -0
  828. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  829. data/vendor/local/share/locale/sq/LC_MESSAGES/glib20.mo +0 -0
  830. data/vendor/local/share/locale/sr/LC_MESSAGES/gettext-runtime.mo +0 -0
  831. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  832. data/vendor/local/share/locale/sr@ije/LC_MESSAGES/glib20.mo +0 -0
  833. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  834. data/vendor/local/share/locale/sv/LC_MESSAGES/gettext-runtime.mo +0 -0
  835. data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
  836. data/vendor/local/share/locale/ta/LC_MESSAGES/glib20.mo +0 -0
  837. data/vendor/local/share/locale/te/LC_MESSAGES/glib20.mo +0 -0
  838. data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
  839. data/vendor/local/share/locale/tl/LC_MESSAGES/glib20.mo +0 -0
  840. data/vendor/local/share/locale/tr/LC_MESSAGES/gettext-runtime.mo +0 -0
  841. data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
  842. data/vendor/local/share/locale/tt/LC_MESSAGES/glib20.mo +0 -0
  843. data/vendor/local/share/locale/uk/LC_MESSAGES/gettext-runtime.mo +0 -0
  844. data/vendor/local/share/locale/uk/LC_MESSAGES/glib20.mo +0 -0
  845. data/vendor/local/share/locale/vi/LC_MESSAGES/gettext-runtime.mo +0 -0
  846. data/vendor/local/share/locale/vi/LC_MESSAGES/glib20.mo +0 -0
  847. data/vendor/local/share/locale/wa/LC_MESSAGES/glib20.mo +0 -0
  848. data/vendor/local/share/locale/xh/LC_MESSAGES/glib20.mo +0 -0
  849. data/vendor/local/share/locale/yi/LC_MESSAGES/glib20.mo +0 -0
  850. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gettext-runtime.mo +0 -0
  851. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib20.mo +0 -0
  852. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gettext-runtime.mo +0 -0
  853. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib20.mo +0 -0
  854. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gettext-runtime.mo +0 -0
  855. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
  856. data/vendor/local/share/man/man1/envsubst.1 +54 -0
  857. data/vendor/local/share/man/man1/gettext.1 +69 -0
  858. data/vendor/local/share/man/man1/glib-genmarshal.1 +307 -0
  859. data/vendor/local/share/man/man1/glib-mkenums.1 +234 -0
  860. data/vendor/local/share/man/man1/gobject-query.1 +83 -0
  861. data/vendor/local/share/man/man1/ngettext.1 +68 -0
  862. data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +72 -0
  863. data/vendor/local/share/man/man3/bindtextdomain.3 +69 -0
  864. data/vendor/local/share/man/man3/dcgettext.3 +1 -0
  865. data/vendor/local/share/man/man3/dcngettext.3 +1 -0
  866. data/vendor/local/share/man/man3/dgettext.3 +1 -0
  867. data/vendor/local/share/man/man3/dngettext.3 +1 -0
  868. data/vendor/local/share/man/man3/gettext.3 +99 -0
  869. data/vendor/local/share/man/man3/ngettext.3 +60 -0
  870. data/vendor/local/share/man/man3/textdomain.3 +57 -0
  871. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.log +10423 -0
  872. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.sh +457 -0
  873. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.log +2602 -0
  874. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.sh +290 -0
  875. metadata +940 -0
@@ -0,0 +1,2152 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
+ <title>GSocket</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
+ <link rel="home" href="index.html" title="GIO Reference Manual">
8
+ <link rel="up" href="networking.html" title="Lowlevel platform-independent network support">
9
+ <link rel="prev" href="networking.html" title="Lowlevel platform-independent network support">
10
+ <link rel="next" href="GInetAddress.html" title="GInetAddress">
11
+ <meta name="generator" content="GTK-Doc V1.14 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ </head>
14
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16
+ <tr valign="middle">
17
+ <td><a accesskey="p" href="networking.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
+ <td><a accesskey="u" href="networking.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20
+ <th width="100%" align="center">GIO Reference Manual</th>
21
+ <td><a accesskey="n" href="GInetAddress.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22
+ </tr>
23
+ <tr><td colspan="5" class="shortcuts">
24
+ <a href="#GSocket.synopsis" class="shortcut">Top</a>
25
+  | 
26
+ <a href="#GSocket.description" class="shortcut">Description</a>
27
+  | 
28
+ <a href="#GSocket.object-hierarchy" class="shortcut">Object Hierarchy</a>
29
+  | 
30
+ <a href="#GSocket.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
31
+  | 
32
+ <a href="#GSocket.properties" class="shortcut">Properties</a>
33
+ </td></tr>
34
+ </table>
35
+ <div class="refentry" title="GSocket">
36
+ <a name="GSocket"></a><div class="titlepage"></div>
37
+ <div class="refnamediv"><table width="100%"><tr>
38
+ <td valign="top">
39
+ <h2><span class="refentrytitle"><a name="GSocket.top_of_page"></a>GSocket</span></h2>
40
+ <p>GSocket — Low-level socket object</p>
41
+ </td>
42
+ <td valign="top" align="right"></td>
43
+ </tr></table></div>
44
+ <div class="refsynopsisdiv" title="Synopsis">
45
+ <a name="GSocket.synopsis"></a><h2>Synopsis</h2>
46
+ <pre class="synopsis">
47
+ #include &lt;gio/gio.h&gt;
48
+
49
+ <a class="link" href="GSocket.html#GSocket-struct" title="GSocket">GSocket</a>;
50
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> (<a class="link" href="GSocket.html#GSocketSourceFunc" title="GSocketSourceFunc ()">*GSocketSourceFunc</a>) (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
51
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> condition</code></em>,
52
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
53
+ enum <a class="link" href="GSocket.html#GSocketType" title="enum GSocketType">GSocketType</a>;
54
+ enum <a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol">GSocketProtocol</a>;
55
+ enum <a class="link" href="GSocket.html#GSocketMsgFlags" title="enum GSocketMsgFlags">GSocketMsgFlags</a>;
56
+ <a class="link" href="GSocket.html#GInputVector" title="GInputVector">GInputVector</a>;
57
+ <a class="link" href="GSocket.html#GOutputVector" title="GOutputVector">GOutputVector</a>;
58
+ <a class="link" href="GSocket.html" title="GSocket"><span class="returnvalue">GSocket</span></a> * <a class="link" href="GSocket.html#g-socket-new" title="g_socket_new ()">g_socket_new</a> (<em class="parameter"><code><a class="link" href="GSocketAddress.html#GSocketFamily" title="enum GSocketFamily"><span class="type">GSocketFamily</span></a> family</code></em>,
59
+ <em class="parameter"><code><a class="link" href="GSocket.html#GSocketType" title="enum GSocketType"><span class="type">GSocketType</span></a> type</code></em>,
60
+ <em class="parameter"><code><a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol"><span class="type">GSocketProtocol</span></a> protocol</code></em>,
61
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
62
+ <a class="link" href="GSocket.html" title="GSocket"><span class="returnvalue">GSocket</span></a> * <a class="link" href="GSocket.html#g-socket-new-from-fd" title="g_socket_new_from_fd ()">g_socket_new_from_fd</a> (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> fd</code></em>,
63
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
64
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-bind" title="g_socket_bind ()">g_socket_bind</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
65
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> *address</code></em>,
66
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> allow_reuse</code></em>,
67
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
68
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-listen" title="g_socket_listen ()">g_socket_listen</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
69
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
70
+ <a class="link" href="GSocket.html" title="GSocket"><span class="returnvalue">GSocket</span></a> * <a class="link" href="GSocket.html#g-socket-accept" title="g_socket_accept ()">g_socket_accept</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
71
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
72
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
73
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-connect" title="g_socket_connect ()">g_socket_connect</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
74
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> *address</code></em>,
75
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
76
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
77
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-check-connect-result" title="g_socket_check_connect_result ()">g_socket_check_connect_result</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
78
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
79
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> <a class="link" href="GSocket.html#g-socket-receive" title="g_socket_receive ()">g_socket_receive</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
80
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *buffer</code></em>,
81
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
82
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
83
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
84
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> <a class="link" href="GSocket.html#g-socket-receive-from" title="g_socket_receive_from ()">g_socket_receive_from</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
85
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> **address</code></em>,
86
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *buffer</code></em>,
87
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
88
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
89
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
90
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> <a class="link" href="GSocket.html#g-socket-receive-message" title="g_socket_receive_message ()">g_socket_receive_message</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
91
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> **address</code></em>,
92
+ <em class="parameter"><code><a class="link" href="GSocket.html#GInputVector" title="GInputVector"><span class="type">GInputVector</span></a> *vectors</code></em>,
93
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num_vectors</code></em>,
94
+ <em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> ***messages</code></em>,
95
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *num_messages</code></em>,
96
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *flags</code></em>,
97
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
98
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
99
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> <a class="link" href="GSocket.html#g-socket-send" title="g_socket_send ()">g_socket_send</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
100
+ <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *buffer</code></em>,
101
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
102
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
103
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
104
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> <a class="link" href="GSocket.html#g-socket-send-to" title="g_socket_send_to ()">g_socket_send_to</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
105
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> *address</code></em>,
106
+ <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *buffer</code></em>,
107
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
108
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
109
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
110
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> <a class="link" href="GSocket.html#g-socket-send-message" title="g_socket_send_message ()">g_socket_send_message</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
111
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> *address</code></em>,
112
+ <em class="parameter"><code><a class="link" href="GSocket.html#GOutputVector" title="GOutputVector"><span class="type">GOutputVector</span></a> *vectors</code></em>,
113
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num_vectors</code></em>,
114
+ <em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> **messages</code></em>,
115
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num_messages</code></em>,
116
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> flags</code></em>,
117
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
118
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
119
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-close" title="g_socket_close ()">g_socket_close</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
120
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
121
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-is-closed" title="g_socket_is_closed ()">g_socket_is_closed</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
122
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-shutdown" title="g_socket_shutdown ()">g_socket_shutdown</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
123
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> shutdown_read</code></em>,
124
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> shutdown_write</code></em>,
125
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
126
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-is-connected" title="g_socket_is_connected ()">g_socket_is_connected</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
127
+ <a href="/usr/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html#GSource"><span class="returnvalue">GSource</span></a> * <a class="link" href="GSocket.html#g-socket-create-source" title="g_socket_create_source ()">g_socket_create_source</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
128
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> condition</code></em>,
129
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>);
130
+ <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="returnvalue">GIOCondition</span></a> <a class="link" href="GSocket.html#g-socket-condition-check" title="g_socket_condition_check ()">g_socket_condition_check</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
131
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> condition</code></em>);
132
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-condition-wait" title="g_socket_condition_wait ()">g_socket_condition_wait</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
133
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> condition</code></em>,
134
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
135
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
136
+ <span class="returnvalue">void</span> <a class="link" href="GSocket.html#g-socket-set-listen-backlog" title="g_socket_set_listen_backlog ()">g_socket_set_listen_backlog</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
137
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> backlog</code></em>);
138
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> <a class="link" href="GSocket.html#g-socket-get-listen-backlog" title="g_socket_get_listen_backlog ()">g_socket_get_listen_backlog</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
139
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-get-blocking" title="g_socket_get_blocking ()">g_socket_get_blocking</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
140
+ <span class="returnvalue">void</span> <a class="link" href="GSocket.html#g-socket-set-blocking" title="g_socket_set_blocking ()">g_socket_set_blocking</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
141
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> blocking</code></em>);
142
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-get-keepalive" title="g_socket_get_keepalive ()">g_socket_get_keepalive</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
143
+ <span class="returnvalue">void</span> <a class="link" href="GSocket.html#g-socket-set-keepalive" title="g_socket_set_keepalive ()">g_socket_set_keepalive</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
144
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> keepalive</code></em>);
145
+ <a class="link" href="GSocketAddress.html#GSocketFamily" title="enum GSocketFamily"><span class="returnvalue">GSocketFamily</span></a> <a class="link" href="GSocket.html#g-socket-get-family" title="g_socket_get_family ()">g_socket_get_family</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
146
+ <span class="returnvalue">int</span> <a class="link" href="GSocket.html#g-socket-get-fd" title="g_socket_get_fd ()">g_socket_get_fd</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
147
+ <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="returnvalue">GSocketAddress</span></a> * <a class="link" href="GSocket.html#g-socket-get-local-address" title="g_socket_get_local_address ()">g_socket_get_local_address</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
148
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
149
+ <a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol"><span class="returnvalue">GSocketProtocol</span></a> <a class="link" href="GSocket.html#g-socket-get-protocol" title="g_socket_get_protocol ()">g_socket_get_protocol</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
150
+ <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="returnvalue">GSocketAddress</span></a> * <a class="link" href="GSocket.html#g-socket-get-remote-address" title="g_socket_get_remote_address ()">g_socket_get_remote_address</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
151
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
152
+ <a class="link" href="GSocket.html#GSocketType" title="enum GSocketType"><span class="returnvalue">GSocketType</span></a> <a class="link" href="GSocket.html#g-socket-get-socket-type" title="g_socket_get_socket_type ()">g_socket_get_socket_type</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
153
+ <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GSocket.html#g-socket-speaks-ipv4" title="g_socket_speaks_ipv4 ()">g_socket_speaks_ipv4</a> (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);
154
+ </pre>
155
+ </div>
156
+ <div class="refsect1" title="Object Hierarchy">
157
+ <a name="GSocket.object-hierarchy"></a><h2>Object Hierarchy</h2>
158
+ <pre class="synopsis">
159
+ <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a>
160
+ +----GSocket
161
+ </pre>
162
+ </div>
163
+ <div class="refsect1" title="Implemented Interfaces">
164
+ <a name="GSocket.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
165
+ <p>
166
+ GSocket implements
167
+ <a class="link" href="GInitable.html" title="GInitable">GInitable</a>.</p>
168
+ </div>
169
+ <div class="refsect1" title="Properties">
170
+ <a name="GSocket.properties"></a><h2>Properties</h2>
171
+ <pre class="synopsis">
172
+ "<a class="link" href="GSocket.html#GSocket--blocking" title='The "blocking" property'>blocking</a>" <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write
173
+ "<a class="link" href="GSocket.html#GSocket--family" title='The "family" property'>family</a>" <a class="link" href="GSocketAddress.html#GSocketFamily" title="enum GSocketFamily"><span class="type">GSocketFamily</span></a> : Read / Write / Construct Only
174
+ "<a class="link" href="GSocket.html#GSocket--fd" title='The "fd" property'>fd</a>" <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> : Read / Write / Construct Only
175
+ "<a class="link" href="GSocket.html#GSocket--keepalive" title='The "keepalive" property'>keepalive</a>" <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write
176
+ "<a class="link" href="GSocket.html#GSocket--listen-backlog" title='The "listen-backlog" property'>listen-backlog</a>" <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> : Read / Write
177
+ "<a class="link" href="GSocket.html#GSocket--local-address" title='The "local-address" property'>local-address</a>" <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a>* : Read
178
+ "<a class="link" href="GSocket.html#GSocket--protocol" title='The "protocol" property'>protocol</a>" <a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol"><span class="type">GSocketProtocol</span></a> : Read / Write / Construct Only
179
+ "<a class="link" href="GSocket.html#GSocket--remote-address" title='The "remote-address" property'>remote-address</a>" <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a>* : Read
180
+ "<a class="link" href="GSocket.html#GSocket--type" title='The "type" property'>type</a>" <a class="link" href="GSocket.html#GSocketType" title="enum GSocketType"><span class="type">GSocketType</span></a> : Read / Write / Construct Only
181
+ </pre>
182
+ </div>
183
+ <div class="refsect1" title="Description">
184
+ <a name="GSocket.description"></a><h2>Description</h2>
185
+ <p>
186
+ A <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> is a low-level networking primitive. It is a more or less
187
+ direct mapping of the BSD socket API in a portable GObject based API.
188
+ It supports both the UNIX socket implementations and winsock2 on Windows.
189
+ </p>
190
+ <p>
191
+ <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> is the platform independent base upon which the higher level
192
+ network primitives are based. Applications are not typically meant to
193
+ use it directly, but rather through classes like <a class="link" href="GSocketClient.html" title="GSocketClient"><span class="type">GSocketClient</span></a>,
194
+ <a class="link" href="GSocketService.html" title="GSocketService"><span class="type">GSocketService</span></a> and <a class="link" href="GSocketConnection.html" title="GSocketConnection"><span class="type">GSocketConnection</span></a>. However there may be cases where
195
+ direct use of <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> is useful.
196
+ </p>
197
+ <p>
198
+ <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> implements the <a class="link" href="GInitable.html" title="GInitable"><span class="type">GInitable</span></a> interface, so if it is manually constructed
199
+ by e.g. <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-new"><code class="function">g_object_new()</code></a> you must call <a class="link" href="GInitable.html#g-initable-init" title="g_initable_init ()"><code class="function">g_initable_init()</code></a> and check the
200
+ results before using the object. This is done automatically in
201
+ <a class="link" href="GSocket.html#g-socket-new" title="g_socket_new ()"><code class="function">g_socket_new()</code></a> and <a class="link" href="GSocket.html#g-socket-new-from-fd" title="g_socket_new_from_fd ()"><code class="function">g_socket_new_from_fd()</code></a>, so these functions can return
202
+ <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
203
+ </p>
204
+ <p>
205
+ Sockets operate in two general modes, blocking or non-blocking. When
206
+ in blocking mode all operations block until the requested operation
207
+ is finished or there is an error. In non-blocking mode all calls that
208
+ would block return immediately with a <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> error.
209
+ To know when a call would successfully run you can call <a class="link" href="GSocket.html#g-socket-condition-check" title="g_socket_condition_check ()"><code class="function">g_socket_condition_check()</code></a>,
210
+ or <a class="link" href="GSocket.html#g-socket-condition-wait" title="g_socket_condition_wait ()"><code class="function">g_socket_condition_wait()</code></a>. You can also use <a class="link" href="GSocket.html#g-socket-create-source" title="g_socket_create_source ()"><code class="function">g_socket_create_source()</code></a> and
211
+ attach it to a <a href="/usr/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html#GMainContext"><span class="type">GMainContext</span></a> to get callbacks when I/O is possible.
212
+ Note that all sockets are always set to non blocking mode in the system, and
213
+ blocking mode is emulated in GSocket.
214
+ </p>
215
+ <p>
216
+ When working in non-blocking mode applications should always be able to
217
+ handle getting a <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> error even when some other
218
+ function said that I/O was possible. This can easily happen in case
219
+ of a race condition in the application, but it can also happen for other
220
+ reasons. For instance, on Windows a socket is always seen as writable
221
+ until a write returns <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a>.
222
+ </p>
223
+ <p>
224
+ <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>s can be either connection oriented or datagram based.
225
+ For connection oriented types you must first establish a connection by
226
+ either connecting to an address or accepting a connection from another
227
+ address. For connectionless socket types the target/source address is
228
+ specified or received in each I/O operation.
229
+ </p>
230
+ <p>
231
+ All socket file descriptors are set to be close-on-exec.
232
+ </p>
233
+ <p>
234
+ Note that creating a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> causes the signal <code class="literal">SIGPIPE</code> to be
235
+ ignored for the remainder of the program. If you are writing a
236
+ command-line utility that uses <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>, you may need to take into
237
+ account the fact that your program will not automatically be killed
238
+ if it tries to write to <code class="literal">stdout</code> after it has been closed.
239
+ </p>
240
+ </div>
241
+ <div class="refsect1" title="Details">
242
+ <a name="GSocket.details"></a><h2>Details</h2>
243
+ <div class="refsect2" title="GSocket">
244
+ <a name="GSocket-struct"></a><h3>GSocket</h3>
245
+ <pre class="programlisting">typedef struct _GSocket GSocket;</pre>
246
+ <p>
247
+ A lowlevel network socket object.
248
+ </p>
249
+ <p class="since">Since 2.22</p>
250
+ </div>
251
+ <hr>
252
+ <div class="refsect2" title="GSocketSourceFunc ()">
253
+ <a name="GSocketSourceFunc"></a><h3>GSocketSourceFunc ()</h3>
254
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> (*GSocketSourceFunc) (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
255
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> condition</code></em>,
256
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
257
+ <p>
258
+ This is the function type of the callback used for the <a href="/usr/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html#GSource"><span class="type">GSource</span></a>
259
+ returned by <a class="link" href="GSocket.html#g-socket-create-source" title="g_socket_create_source ()"><code class="function">g_socket_create_source()</code></a>.
260
+ </p>
261
+ <div class="variablelist"><table border="0">
262
+ <col align="left" valign="top">
263
+ <tbody>
264
+ <tr>
265
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
266
+ <td>the <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
267
+ </td>
268
+ </tr>
269
+ <tr>
270
+ <td><p><span class="term"><em class="parameter"><code>condition</code></em> :</span></p></td>
271
+ <td>the current condition at the source fired.
272
+ </td>
273
+ </tr>
274
+ <tr>
275
+ <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
276
+ <td>data passed in by the user.
277
+ </td>
278
+ </tr>
279
+ <tr>
280
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
281
+ <td> it should return <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the source should be removed.
282
+
283
+ </td>
284
+ </tr>
285
+ </tbody>
286
+ </table></div>
287
+ <p class="since">Since 2.22</p>
288
+ </div>
289
+ <hr>
290
+ <div class="refsect2" title="enum GSocketType">
291
+ <a name="GSocketType"></a><h3>enum GSocketType</h3>
292
+ <pre class="programlisting">typedef enum
293
+ {
294
+ G_SOCKET_TYPE_INVALID,
295
+ G_SOCKET_TYPE_STREAM,
296
+ G_SOCKET_TYPE_DATAGRAM,
297
+ G_SOCKET_TYPE_SEQPACKET
298
+ } GSocketType;
299
+ </pre>
300
+ <p>
301
+ Flags used when creating a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>. Some protocols may not implement
302
+ all the socket types.
303
+ </p>
304
+ <div class="variablelist"><table border="0">
305
+ <col align="left" valign="top">
306
+ <tbody>
307
+ <tr>
308
+ <td><p><a name="G-SOCKET-TYPE-INVALID:CAPS"></a><span class="term"><code class="literal">G_SOCKET_TYPE_INVALID</code></span></p></td>
309
+ <td>Type unknown or wrong
310
+ </td>
311
+ </tr>
312
+ <tr>
313
+ <td><p><a name="G-SOCKET-TYPE-STREAM:CAPS"></a><span class="term"><code class="literal">G_SOCKET_TYPE_STREAM</code></span></p></td>
314
+ <td>Reliable connection-based byte streams (e.g. TCP).
315
+ </td>
316
+ </tr>
317
+ <tr>
318
+ <td><p><a name="G-SOCKET-TYPE-DATAGRAM:CAPS"></a><span class="term"><code class="literal">G_SOCKET_TYPE_DATAGRAM</code></span></p></td>
319
+ <td>Connectionless, unreliable datagram passing.
320
+ (e.g. UDP)
321
+ </td>
322
+ </tr>
323
+ <tr>
324
+ <td><p><a name="G-SOCKET-TYPE-SEQPACKET:CAPS"></a><span class="term"><code class="literal">G_SOCKET_TYPE_SEQPACKET</code></span></p></td>
325
+ <td>Reliable connection-based passing of datagrams
326
+ of fixed maximum length (e.g. SCTP).
327
+ </td>
328
+ </tr>
329
+ </tbody>
330
+ </table></div>
331
+ <p class="since">Since 2.22</p>
332
+ </div>
333
+ <hr>
334
+ <div class="refsect2" title="enum GSocketProtocol">
335
+ <a name="GSocketProtocol"></a><h3>enum GSocketProtocol</h3>
336
+ <pre class="programlisting">typedef enum {
337
+ G_SOCKET_PROTOCOL_UNKNOWN = -1,
338
+ G_SOCKET_PROTOCOL_DEFAULT = 0,
339
+ G_SOCKET_PROTOCOL_TCP = 6,
340
+ G_SOCKET_PROTOCOL_UDP = 17,
341
+ G_SOCKET_PROTOCOL_SCTP = 132
342
+ } GSocketProtocol;
343
+ </pre>
344
+ <p>
345
+ A protocol identifier is specified when creating a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>, which is a
346
+ family/type specific identifier, where 0 means the default protocol for
347
+ the particular family/type.
348
+ </p>
349
+ <p>
350
+ This enum contains a set of commonly available and used protocols. You
351
+ can also pass any other identifiers handled by the platform in order to
352
+ use protocols not listed here.
353
+ </p>
354
+ <div class="variablelist"><table border="0">
355
+ <col align="left" valign="top">
356
+ <tbody>
357
+ <tr>
358
+ <td><p><a name="G-SOCKET-PROTOCOL-UNKNOWN:CAPS"></a><span class="term"><code class="literal">G_SOCKET_PROTOCOL_UNKNOWN</code></span></p></td>
359
+ <td>The protocol type is unknown
360
+ </td>
361
+ </tr>
362
+ <tr>
363
+ <td><p><a name="G-SOCKET-PROTOCOL-DEFAULT:CAPS"></a><span class="term"><code class="literal">G_SOCKET_PROTOCOL_DEFAULT</code></span></p></td>
364
+ <td>The default protocol for the family/type
365
+ </td>
366
+ </tr>
367
+ <tr>
368
+ <td><p><a name="G-SOCKET-PROTOCOL-TCP:CAPS"></a><span class="term"><code class="literal">G_SOCKET_PROTOCOL_TCP</code></span></p></td>
369
+ <td>TCP over IP
370
+ </td>
371
+ </tr>
372
+ <tr>
373
+ <td><p><a name="G-SOCKET-PROTOCOL-UDP:CAPS"></a><span class="term"><code class="literal">G_SOCKET_PROTOCOL_UDP</code></span></p></td>
374
+ <td>UDP over IP
375
+ </td>
376
+ </tr>
377
+ <tr>
378
+ <td><p><a name="G-SOCKET-PROTOCOL-SCTP:CAPS"></a><span class="term"><code class="literal">G_SOCKET_PROTOCOL_SCTP</code></span></p></td>
379
+ <td>SCTP over IP
380
+ </td>
381
+ </tr>
382
+ </tbody>
383
+ </table></div>
384
+ <p class="since">Since 2.22</p>
385
+ </div>
386
+ <hr>
387
+ <div class="refsect2" title="enum GSocketMsgFlags">
388
+ <a name="GSocketMsgFlags"></a><h3>enum GSocketMsgFlags</h3>
389
+ <pre class="programlisting">typedef enum
390
+ {
391
+ G_SOCKET_MSG_NONE,
392
+ G_SOCKET_MSG_OOB = GLIB_SYSDEF_MSG_OOB,
393
+ G_SOCKET_MSG_PEEK = GLIB_SYSDEF_MSG_PEEK,
394
+ G_SOCKET_MSG_DONTROUTE = GLIB_SYSDEF_MSG_DONTROUTE
395
+ } GSocketMsgFlags;
396
+ </pre>
397
+ <p>
398
+ Flags used in <a class="link" href="GSocket.html#g-socket-receive-message" title="g_socket_receive_message ()"><code class="function">g_socket_receive_message()</code></a> and <a class="link" href="GSocket.html#g-socket-send-message" title="g_socket_send_message ()"><code class="function">g_socket_send_message()</code></a>.
399
+ The flags listed in the enum are some commonly available flags, but the
400
+ values used for them are the same as on the platform, and any other flags
401
+ are passed in/out as is. So to use a platform specific flag, just include
402
+ the right system header and pass in the flag.
403
+ </p>
404
+ <div class="variablelist"><table border="0">
405
+ <col align="left" valign="top">
406
+ <tbody>
407
+ <tr>
408
+ <td><p><a name="G-SOCKET-MSG-NONE:CAPS"></a><span class="term"><code class="literal">G_SOCKET_MSG_NONE</code></span></p></td>
409
+ <td>No flags.
410
+ </td>
411
+ </tr>
412
+ <tr>
413
+ <td><p><a name="G-SOCKET-MSG-OOB:CAPS"></a><span class="term"><code class="literal">G_SOCKET_MSG_OOB</code></span></p></td>
414
+ <td>Request to send/receive out of band data.
415
+ </td>
416
+ </tr>
417
+ <tr>
418
+ <td><p><a name="G-SOCKET-MSG-PEEK:CAPS"></a><span class="term"><code class="literal">G_SOCKET_MSG_PEEK</code></span></p></td>
419
+ <td>Read data from the socket without removing it from
420
+ the queue.
421
+ </td>
422
+ </tr>
423
+ <tr>
424
+ <td><p><a name="G-SOCKET-MSG-DONTROUTE:CAPS"></a><span class="term"><code class="literal">G_SOCKET_MSG_DONTROUTE</code></span></p></td>
425
+ <td>Don't use a gateway to send out the packet,
426
+ only send to hosts on directly connected networks.
427
+ </td>
428
+ </tr>
429
+ </tbody>
430
+ </table></div>
431
+ <p class="since">Since 2.22</p>
432
+ </div>
433
+ <hr>
434
+ <div class="refsect2" title="GInputVector">
435
+ <a name="GInputVector"></a><h3>GInputVector</h3>
436
+ <pre class="programlisting">typedef struct {
437
+ gpointer buffer;
438
+ gsize size;
439
+ } GInputVector;
440
+ </pre>
441
+ <p>
442
+ Structure used for scatter/gather data input.
443
+ You generally pass in an array of <a class="link" href="GSocket.html#GInputVector" title="GInputVector"><span class="type">GInputVector</span></a>s
444
+ and the operation will store the read data starting in the
445
+ first buffer, switching to the next as needed.
446
+ </p>
447
+ <div class="variablelist"><table border="0">
448
+ <col align="left" valign="top">
449
+ <tbody>
450
+ <tr>
451
+ <td><p><span class="term"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GInputVector.buffer"></a>buffer</code></em>;</span></p></td>
452
+ <td>Pointer to a buffer where data will be written.
453
+ </td>
454
+ </tr>
455
+ <tr>
456
+ <td><p><span class="term"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> <em class="structfield"><code><a name="GInputVector.size"></a>size</code></em>;</span></p></td>
457
+ <td>the available size in <em class="parameter"><code>buffer</code></em>.
458
+ </td>
459
+ </tr>
460
+ </tbody>
461
+ </table></div>
462
+ <p class="since">Since 2.22</p>
463
+ </div>
464
+ <hr>
465
+ <div class="refsect2" title="GOutputVector">
466
+ <a name="GOutputVector"></a><h3>GOutputVector</h3>
467
+ <pre class="programlisting">typedef struct {
468
+ gconstpointer buffer;
469
+ gsize size;
470
+ } GOutputVector;
471
+ </pre>
472
+ <p>
473
+ Structure used for scatter/gather data output.
474
+ You generally pass in an array of <a class="link" href="GSocket.html#GOutputVector" title="GOutputVector"><span class="type">GOutputVector</span></a>s
475
+ and the operation will use all the buffers as if they were
476
+ one buffer.
477
+ </p>
478
+ <div class="variablelist"><table border="0">
479
+ <col align="left" valign="top">
480
+ <tbody>
481
+ <tr>
482
+ <td><p><span class="term"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> <em class="structfield"><code><a name="GOutputVector.buffer"></a>buffer</code></em>;</span></p></td>
483
+ <td>Pointer to a buffer of data to read.
484
+ </td>
485
+ </tr>
486
+ <tr>
487
+ <td><p><span class="term"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> <em class="structfield"><code><a name="GOutputVector.size"></a>size</code></em>;</span></p></td>
488
+ <td>the size of <em class="parameter"><code>buffer</code></em>.
489
+ </td>
490
+ </tr>
491
+ </tbody>
492
+ </table></div>
493
+ <p class="since">Since 2.22</p>
494
+ </div>
495
+ <hr>
496
+ <div class="refsect2" title="g_socket_new ()">
497
+ <a name="g-socket-new"></a><h3>g_socket_new ()</h3>
498
+ <pre class="programlisting"><a class="link" href="GSocket.html" title="GSocket"><span class="returnvalue">GSocket</span></a> * g_socket_new (<em class="parameter"><code><a class="link" href="GSocketAddress.html#GSocketFamily" title="enum GSocketFamily"><span class="type">GSocketFamily</span></a> family</code></em>,
499
+ <em class="parameter"><code><a class="link" href="GSocket.html#GSocketType" title="enum GSocketType"><span class="type">GSocketType</span></a> type</code></em>,
500
+ <em class="parameter"><code><a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol"><span class="type">GSocketProtocol</span></a> protocol</code></em>,
501
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
502
+ <p>
503
+ Creates a new <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> with the defined family, type and protocol.
504
+ If <em class="parameter"><code>protocol</code></em> is 0 (<a class="link" href="GSocket.html#G-SOCKET-PROTOCOL-DEFAULT:CAPS"><code class="literal">G_SOCKET_PROTOCOL_DEFAULT</code></a>) the default protocol type
505
+ for the family and type is used.
506
+ </p>
507
+ <p>
508
+ The <em class="parameter"><code>protocol</code></em> is a family and type specific int that specifies what
509
+ kind of protocol to use. <a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol"><span class="type">GSocketProtocol</span></a> lists several common ones.
510
+ Many families only support one protocol, and use 0 for this, others
511
+ support several and using 0 means to use the default protocol for
512
+ the family and type.
513
+ </p>
514
+ <p>
515
+ The protocol id is passed directly to the operating
516
+ system, so you can use protocols not listed in <a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol"><span class="type">GSocketProtocol</span></a> if you
517
+ know the protocol number used for it.
518
+ </p>
519
+ <div class="variablelist"><table border="0">
520
+ <col align="left" valign="top">
521
+ <tbody>
522
+ <tr>
523
+ <td><p><span class="term"><em class="parameter"><code>family</code></em> :</span></p></td>
524
+ <td>the socket family to use, e.g. <a class="link" href="GSocketAddress.html#G-SOCKET-FAMILY-IPV4:CAPS"><code class="literal">G_SOCKET_FAMILY_IPV4</code></a>.
525
+ </td>
526
+ </tr>
527
+ <tr>
528
+ <td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
529
+ <td>the socket type to use.
530
+ </td>
531
+ </tr>
532
+ <tr>
533
+ <td><p><span class="term"><em class="parameter"><code>protocol</code></em> :</span></p></td>
534
+ <td>the id of the protocol to use, or 0 for default.
535
+ </td>
536
+ </tr>
537
+ <tr>
538
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
539
+ <td>
540
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
541
+ </td>
542
+ </tr>
543
+ <tr>
544
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
545
+ <td> a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
546
+ Free the returned object with <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
547
+
548
+ </td>
549
+ </tr>
550
+ </tbody>
551
+ </table></div>
552
+ <p class="since">Since 2.22</p>
553
+ </div>
554
+ <hr>
555
+ <div class="refsect2" title="g_socket_new_from_fd ()">
556
+ <a name="g-socket-new-from-fd"></a><h3>g_socket_new_from_fd ()</h3>
557
+ <pre class="programlisting"><a class="link" href="GSocket.html" title="GSocket"><span class="returnvalue">GSocket</span></a> * g_socket_new_from_fd (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> fd</code></em>,
558
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
559
+ <p>
560
+ Creates a new <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> from a native file descriptor
561
+ or winsock SOCKET handle.
562
+ </p>
563
+ <p>
564
+ This reads all the settings from the file descriptor so that
565
+ all properties should work. Note that the file descriptor
566
+ will be set to non-blocking mode, independent on the blocking
567
+ mode of the <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
568
+ </p>
569
+ <div class="variablelist"><table border="0">
570
+ <col align="left" valign="top">
571
+ <tbody>
572
+ <tr>
573
+ <td><p><span class="term"><em class="parameter"><code>fd</code></em> :</span></p></td>
574
+ <td>a native socket file descriptor.
575
+ </td>
576
+ </tr>
577
+ <tr>
578
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
579
+ <td>
580
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
581
+ </td>
582
+ </tr>
583
+ <tr>
584
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
585
+ <td> a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
586
+ Free the returned object with <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
587
+
588
+ </td>
589
+ </tr>
590
+ </tbody>
591
+ </table></div>
592
+ <p class="since">Since 2.22</p>
593
+ </div>
594
+ <hr>
595
+ <div class="refsect2" title="g_socket_bind ()">
596
+ <a name="g-socket-bind"></a><h3>g_socket_bind ()</h3>
597
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_bind (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
598
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> *address</code></em>,
599
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> allow_reuse</code></em>,
600
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
601
+ <p>
602
+ When a socket is created it is attached to an address family, but it
603
+ doesn't have an address in this family. <a class="link" href="GSocket.html#g-socket-bind" title="g_socket_bind ()"><code class="function">g_socket_bind()</code></a> assigns the
604
+ address (sometimes called name) of the socket.
605
+ </p>
606
+ <p>
607
+ It is generally required to bind to a local address before you can
608
+ receive connections. (See <a class="link" href="GSocket.html#g-socket-listen" title="g_socket_listen ()"><code class="function">g_socket_listen()</code></a> and <a class="link" href="GSocket.html#g-socket-accept" title="g_socket_accept ()"><code class="function">g_socket_accept()</code></a> ).
609
+ In certain situations, you may also want to bind a socket that will be
610
+ used to initiate connections, though this is not normally required.
611
+ </p>
612
+ <p>
613
+ <em class="parameter"><code>allow_reuse</code></em> should be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> for server sockets (sockets that you will
614
+ eventually call <a class="link" href="GSocket.html#g-socket-accept" title="g_socket_accept ()"><code class="function">g_socket_accept()</code></a> on), and <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> for client sockets.
615
+ (Specifically, if it is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, then <a class="link" href="GSocket.html#g-socket-bind" title="g_socket_bind ()"><code class="function">g_socket_bind()</code></a> will set the
616
+ <code class="literal">SO_REUSEADDR</code> flag on the socket, allowing it to bind <em class="parameter"><code>address</code></em> even if
617
+ that address was previously used by another socket that has not yet been
618
+ fully cleaned-up by the kernel. Failing to set this flag on a server
619
+ socket may cause the bind call to return <a class="link" href="gio-GIOError.html#G-IO-ERROR-ADDRESS-IN-USE:CAPS"><code class="literal">G_IO_ERROR_ADDRESS_IN_USE</code></a> if
620
+ the server program is stopped and then immediately restarted.)
621
+ </p>
622
+ <div class="variablelist"><table border="0">
623
+ <col align="left" valign="top">
624
+ <tbody>
625
+ <tr>
626
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
627
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
628
+ </td>
629
+ </tr>
630
+ <tr>
631
+ <td><p><span class="term"><em class="parameter"><code>address</code></em> :</span></p></td>
632
+ <td>a <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> specifying the local address.
633
+ </td>
634
+ </tr>
635
+ <tr>
636
+ <td><p><span class="term"><em class="parameter"><code>allow_reuse</code></em> :</span></p></td>
637
+ <td>whether to allow reusing this address
638
+ </td>
639
+ </tr>
640
+ <tr>
641
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
642
+ <td>
643
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
644
+ </td>
645
+ </tr>
646
+ <tr>
647
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
648
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error.
649
+
650
+ </td>
651
+ </tr>
652
+ </tbody>
653
+ </table></div>
654
+ <p class="since">Since 2.22</p>
655
+ </div>
656
+ <hr>
657
+ <div class="refsect2" title="g_socket_listen ()">
658
+ <a name="g-socket-listen"></a><h3>g_socket_listen ()</h3>
659
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_listen (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
660
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
661
+ <p>
662
+ Marks the socket as a server socket, i.e. a socket that is used
663
+ to accept incoming requests using <a class="link" href="GSocket.html#g-socket-accept" title="g_socket_accept ()"><code class="function">g_socket_accept()</code></a>.
664
+ </p>
665
+ <p>
666
+ Before calling this the socket must be bound to a local address using
667
+ <a class="link" href="GSocket.html#g-socket-bind" title="g_socket_bind ()"><code class="function">g_socket_bind()</code></a>.
668
+ </p>
669
+ <p>
670
+ To set the maximum amount of outstanding clients, use
671
+ <a class="link" href="GSocket.html#g-socket-set-listen-backlog" title="g_socket_set_listen_backlog ()"><code class="function">g_socket_set_listen_backlog()</code></a>.
672
+ </p>
673
+ <div class="variablelist"><table border="0">
674
+ <col align="left" valign="top">
675
+ <tbody>
676
+ <tr>
677
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
678
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
679
+ </td>
680
+ </tr>
681
+ <tr>
682
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
683
+ <td>
684
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
685
+ </td>
686
+ </tr>
687
+ <tr>
688
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
689
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error.
690
+
691
+ </td>
692
+ </tr>
693
+ </tbody>
694
+ </table></div>
695
+ <p class="since">Since 2.22</p>
696
+ </div>
697
+ <hr>
698
+ <div class="refsect2" title="g_socket_accept ()">
699
+ <a name="g-socket-accept"></a><h3>g_socket_accept ()</h3>
700
+ <pre class="programlisting"><a class="link" href="GSocket.html" title="GSocket"><span class="returnvalue">GSocket</span></a> * g_socket_accept (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
701
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
702
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
703
+ <p>
704
+ Accept incoming connections on a connection-based socket. This removes
705
+ the first outstanding connection request from the listening socket and
706
+ creates a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> object for it.
707
+ </p>
708
+ <p>
709
+ The <em class="parameter"><code>socket</code></em> must be bound to a local address with <a class="link" href="GSocket.html#g-socket-bind" title="g_socket_bind ()"><code class="function">g_socket_bind()</code></a> and
710
+ must be listening for incoming connections (<a class="link" href="GSocket.html#g-socket-listen" title="g_socket_listen ()"><code class="function">g_socket_listen()</code></a>).
711
+ </p>
712
+ <p>
713
+ If there are no outstanding connections then the operation will block
714
+ or return <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> if non-blocking I/O is enabled.
715
+ To be notified of an incoming connection, wait for the <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-IN:CAPS"><code class="literal">G_IO_IN</code></a> condition.
716
+ </p>
717
+ <div class="variablelist"><table border="0">
718
+ <col align="left" valign="top">
719
+ <tbody>
720
+ <tr>
721
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
722
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
723
+ </td>
724
+ </tr>
725
+ <tr>
726
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
727
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
728
+ </td>
729
+ </tr>
730
+ <tr>
731
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
732
+ <td>
733
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
734
+ </td>
735
+ </tr>
736
+ <tr>
737
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
738
+ <td> a new <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
739
+ Free the returned object with <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
740
+
741
+ </td>
742
+ </tr>
743
+ </tbody>
744
+ </table></div>
745
+ <p class="since">Since 2.22</p>
746
+ </div>
747
+ <hr>
748
+ <div class="refsect2" title="g_socket_connect ()">
749
+ <a name="g-socket-connect"></a><h3>g_socket_connect ()</h3>
750
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_connect (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
751
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> *address</code></em>,
752
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
753
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
754
+ <p>
755
+ Connect the socket to the specified remote address.
756
+ </p>
757
+ <p>
758
+ For connection oriented socket this generally means we attempt to make
759
+ a connection to the <em class="parameter"><code>address</code></em>. For a connection-less socket it sets
760
+ the default address for <a class="link" href="GSocket.html#g-socket-send" title="g_socket_send ()"><code class="function">g_socket_send()</code></a> and discards all incoming datagrams
761
+ from other sources.
762
+ </p>
763
+ <p>
764
+ Generally connection oriented sockets can only connect once, but
765
+ connection-less sockets can connect multiple times to change the
766
+ default address.
767
+ </p>
768
+ <p>
769
+ If the connect call needs to do network I/O it will block, unless
770
+ non-blocking I/O is enabled. Then <a class="link" href="gio-GIOError.html#G-IO-ERROR-PENDING:CAPS"><code class="literal">G_IO_ERROR_PENDING</code></a> is returned
771
+ and the user can be notified of the connection finishing by waiting
772
+ for the G_IO_OUT condition. The result of the connection can then be
773
+ checked with <a class="link" href="GSocket.html#g-socket-check-connect-result" title="g_socket_check_connect_result ()"><code class="function">g_socket_check_connect_result()</code></a>.
774
+ </p>
775
+ <div class="variablelist"><table border="0">
776
+ <col align="left" valign="top">
777
+ <tbody>
778
+ <tr>
779
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
780
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
781
+ </td>
782
+ </tr>
783
+ <tr>
784
+ <td><p><span class="term"><em class="parameter"><code>address</code></em> :</span></p></td>
785
+ <td>a <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> specifying the remote address.
786
+ </td>
787
+ </tr>
788
+ <tr>
789
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
790
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
791
+ </td>
792
+ </tr>
793
+ <tr>
794
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
795
+ <td>
796
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
797
+ </td>
798
+ </tr>
799
+ <tr>
800
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
801
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if connected, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error.
802
+
803
+ </td>
804
+ </tr>
805
+ </tbody>
806
+ </table></div>
807
+ <p class="since">Since 2.22</p>
808
+ </div>
809
+ <hr>
810
+ <div class="refsect2" title="g_socket_check_connect_result ()">
811
+ <a name="g-socket-check-connect-result"></a><h3>g_socket_check_connect_result ()</h3>
812
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_check_connect_result (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
813
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
814
+ <p>
815
+ Checks and resets the pending connect error for the socket.
816
+ This is used to check for errors when <a class="link" href="GSocket.html#g-socket-connect" title="g_socket_connect ()"><code class="function">g_socket_connect()</code></a> is
817
+ used in non-blocking mode.
818
+ </p>
819
+ <div class="variablelist"><table border="0">
820
+ <col align="left" valign="top">
821
+ <tbody>
822
+ <tr>
823
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
824
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
825
+ </td>
826
+ </tr>
827
+ <tr>
828
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
829
+ <td>
830
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
831
+ </td>
832
+ </tr>
833
+ <tr>
834
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
835
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if no error, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise, setting <em class="parameter"><code>error</code></em> to the error
836
+
837
+ </td>
838
+ </tr>
839
+ </tbody>
840
+ </table></div>
841
+ <p class="since">Since 2.22</p>
842
+ </div>
843
+ <hr>
844
+ <div class="refsect2" title="g_socket_receive ()">
845
+ <a name="g-socket-receive"></a><h3>g_socket_receive ()</h3>
846
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> g_socket_receive (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
847
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *buffer</code></em>,
848
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
849
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
850
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
851
+ <p>
852
+ Receive data (up to <em class="parameter"><code>size</code></em> bytes) from a socket. This is mainly used by
853
+ connection-oriented sockets; it is identical to <a class="link" href="GSocket.html#g-socket-receive-from" title="g_socket_receive_from ()"><code class="function">g_socket_receive_from()</code></a>
854
+ with <em class="parameter"><code>address</code></em> set to <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
855
+ </p>
856
+ <p>
857
+ For <a class="link" href="GSocket.html#G-SOCKET-TYPE-DATAGRAM:CAPS"><code class="literal">G_SOCKET_TYPE_DATAGRAM</code></a> and <a class="link" href="GSocket.html#G-SOCKET-TYPE-SEQPACKET:CAPS"><code class="literal">G_SOCKET_TYPE_SEQPACKET</code></a> sockets,
858
+ <a class="link" href="GSocket.html#g-socket-receive" title="g_socket_receive ()"><code class="function">g_socket_receive()</code></a> will always read either 0 or 1 complete messages from
859
+ the socket. If the received message is too large to fit in <em class="parameter"><code>buffer</code></em>, then
860
+ the data beyond <em class="parameter"><code>size</code></em> bytes will be discarded, without any explicit
861
+ indication that this has occurred.
862
+ </p>
863
+ <p>
864
+ For <a class="link" href="GSocket.html#G-SOCKET-TYPE-STREAM:CAPS"><code class="literal">G_SOCKET_TYPE_STREAM</code></a> sockets, <a class="link" href="GSocket.html#g-socket-receive" title="g_socket_receive ()"><code class="function">g_socket_receive()</code></a> can return any
865
+ number of bytes, up to <em class="parameter"><code>size</code></em>. If more than <em class="parameter"><code>size</code></em> bytes have been
866
+ received, the additional data will be returned in future calls to
867
+ <a class="link" href="GSocket.html#g-socket-receive" title="g_socket_receive ()"><code class="function">g_socket_receive()</code></a>.
868
+ </p>
869
+ <p>
870
+ If the socket is in blocking mode the call will block until there is
871
+ some data to receive or there is an error. If there is no data available
872
+ and the socket is in non-blocking mode, a <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> error
873
+ will be returned. To be notified when data is available, wait for the
874
+ <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-IN:CAPS"><code class="literal">G_IO_IN</code></a> condition.
875
+ </p>
876
+ <p>
877
+ On error -1 is returned and <em class="parameter"><code>error</code></em> is set accordingly.
878
+ </p>
879
+ <div class="variablelist"><table border="0">
880
+ <col align="left" valign="top">
881
+ <tbody>
882
+ <tr>
883
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
884
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
885
+ </td>
886
+ </tr>
887
+ <tr>
888
+ <td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
889
+ <td>a buffer to read data into (which should be at least <em class="parameter"><code>size</code></em>
890
+ bytes long).
891
+ </td>
892
+ </tr>
893
+ <tr>
894
+ <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
895
+ <td>the number of bytes you want to read from the socket
896
+ </td>
897
+ </tr>
898
+ <tr>
899
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
900
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
901
+ </td>
902
+ </tr>
903
+ <tr>
904
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
905
+ <td>
906
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
907
+ </td>
908
+ </tr>
909
+ <tr>
910
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
911
+ <td> Number of bytes read, or -1 on error
912
+
913
+ </td>
914
+ </tr>
915
+ </tbody>
916
+ </table></div>
917
+ <p class="since">Since 2.22</p>
918
+ </div>
919
+ <hr>
920
+ <div class="refsect2" title="g_socket_receive_from ()">
921
+ <a name="g-socket-receive-from"></a><h3>g_socket_receive_from ()</h3>
922
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> g_socket_receive_from (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
923
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> **address</code></em>,
924
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *buffer</code></em>,
925
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
926
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
927
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
928
+ <p>
929
+ Receive data (up to <em class="parameter"><code>size</code></em> bytes) from a socket.
930
+ </p>
931
+ <p>
932
+ If <em class="parameter"><code>address</code></em> is non-<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then <em class="parameter"><code>address</code></em> will be set equal to the
933
+ source address of the received packet.
934
+ <em class="parameter"><code>address</code></em> is owned by the caller.
935
+ </p>
936
+ <p>
937
+ See <a class="link" href="GSocket.html#g-socket-receive" title="g_socket_receive ()"><code class="function">g_socket_receive()</code></a> for additional information.
938
+ </p>
939
+ <div class="variablelist"><table border="0">
940
+ <col align="left" valign="top">
941
+ <tbody>
942
+ <tr>
943
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
944
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
945
+ </td>
946
+ </tr>
947
+ <tr>
948
+ <td><p><span class="term"><em class="parameter"><code>address</code></em> :</span></p></td>
949
+ <td>a pointer to a <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> pointer, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
950
+ </td>
951
+ </tr>
952
+ <tr>
953
+ <td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
954
+ <td>a buffer to read data into (which should be at least <em class="parameter"><code>size</code></em>
955
+ bytes long).
956
+ </td>
957
+ </tr>
958
+ <tr>
959
+ <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
960
+ <td>the number of bytes you want to read from the socket
961
+ </td>
962
+ </tr>
963
+ <tr>
964
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
965
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
966
+ </td>
967
+ </tr>
968
+ <tr>
969
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
970
+ <td>
971
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
972
+ </td>
973
+ </tr>
974
+ <tr>
975
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
976
+ <td> Number of bytes read, or -1 on error
977
+
978
+ </td>
979
+ </tr>
980
+ </tbody>
981
+ </table></div>
982
+ <p class="since">Since 2.22</p>
983
+ </div>
984
+ <hr>
985
+ <div class="refsect2" title="g_socket_receive_message ()">
986
+ <a name="g-socket-receive-message"></a><h3>g_socket_receive_message ()</h3>
987
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> g_socket_receive_message (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
988
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> **address</code></em>,
989
+ <em class="parameter"><code><a class="link" href="GSocket.html#GInputVector" title="GInputVector"><span class="type">GInputVector</span></a> *vectors</code></em>,
990
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num_vectors</code></em>,
991
+ <em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> ***messages</code></em>,
992
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *num_messages</code></em>,
993
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *flags</code></em>,
994
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
995
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
996
+ <p>
997
+ Receive data from a socket. This is the most complicated and
998
+ fully-featured version of this call. For easier use, see
999
+ <a class="link" href="GSocket.html#g-socket-receive" title="g_socket_receive ()"><code class="function">g_socket_receive()</code></a> and <a class="link" href="GSocket.html#g-socket-receive-from" title="g_socket_receive_from ()"><code class="function">g_socket_receive_from()</code></a>.
1000
+ </p>
1001
+ <p>
1002
+ If <em class="parameter"><code>address</code></em> is non-<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then <em class="parameter"><code>address</code></em> will be set equal to the
1003
+ source address of the received packet.
1004
+ <em class="parameter"><code>address</code></em> is owned by the caller.
1005
+ </p>
1006
+ <p>
1007
+ <em class="parameter"><code>vector</code></em> must point to an array of <a class="link" href="GSocket.html#GInputVector" title="GInputVector"><span class="type">GInputVector</span></a> structs and
1008
+ <em class="parameter"><code>num_vectors</code></em> must be the length of this array. These structs
1009
+ describe the buffers that received data will be scattered into.
1010
+ If <em class="parameter"><code>num_vectors</code></em> is -1, then <em class="parameter"><code>vectors</code></em> is assumed to be terminated
1011
+ by a <a class="link" href="GSocket.html#GInputVector" title="GInputVector"><span class="type">GInputVector</span></a> with a <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> buffer pointer.
1012
+ </p>
1013
+ <p>
1014
+ As a special case, if <em class="parameter"><code>num_vectors</code></em> is 0 (in which case, <em class="parameter"><code>vectors</code></em>
1015
+ may of course be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>), then a single byte is received and
1016
+ discarded. This is to facilitate the common practice of sending a
1017
+ single '\0' byte for the purposes of transferring ancillary data.
1018
+ </p>
1019
+ <p>
1020
+ <em class="parameter"><code>messages</code></em>, if non-<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, will be set to point to a newly-allocated
1021
+ array of <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> instances. These correspond to the
1022
+ control messages received from the kernel, one
1023
+ <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> per message from the kernel. This array is
1024
+ <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated and must be freed by the caller using <a href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>. If
1025
+ <em class="parameter"><code>messages</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, any control messages received will be
1026
+ discarded.
1027
+ </p>
1028
+ <p>
1029
+ <em class="parameter"><code>num_messages</code></em>, if non-<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, will be set to the number of control
1030
+ messages received.
1031
+ </p>
1032
+ <p>
1033
+ If both <em class="parameter"><code>messages</code></em> and <em class="parameter"><code>num_messages</code></em> are non-<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then
1034
+ <em class="parameter"><code>num_messages</code></em> gives the number of <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> instances
1035
+ in <em class="parameter"><code>messages</code></em> (ie: not including the <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> terminator).
1036
+ </p>
1037
+ <p>
1038
+ <em class="parameter"><code>flags</code></em> is an in/out parameter. The commonly available arguments
1039
+ for this are available in the <a class="link" href="GSocket.html#GSocketMsgFlags" title="enum GSocketMsgFlags"><span class="type">GSocketMsgFlags</span></a> enum, but the
1040
+ values there are the same as the system values, and the flags
1041
+ are passed in as-is, so you can pass in system-specific flags too
1042
+ (and <a class="link" href="GSocket.html#g-socket-receive-message" title="g_socket_receive_message ()"><code class="function">g_socket_receive_message()</code></a> may pass system-specific flags out).
1043
+ </p>
1044
+ <p>
1045
+ As with <a class="link" href="GSocket.html#g-socket-receive" title="g_socket_receive ()"><code class="function">g_socket_receive()</code></a>, data may be discarded if <em class="parameter"><code>socket</code></em> is
1046
+ <a class="link" href="GSocket.html#G-SOCKET-TYPE-DATAGRAM:CAPS"><code class="literal">G_SOCKET_TYPE_DATAGRAM</code></a> or <a class="link" href="GSocket.html#G-SOCKET-TYPE-SEQPACKET:CAPS"><code class="literal">G_SOCKET_TYPE_SEQPACKET</code></a> and you do not
1047
+ provide enough buffer space to read a complete message. You can pass
1048
+ <a class="link" href="GSocket.html#G-SOCKET-MSG-PEEK:CAPS"><code class="literal">G_SOCKET_MSG_PEEK</code></a> in <em class="parameter"><code>flags</code></em> to peek at the current message without
1049
+ removing it from the receive queue, but there is no portable way to find
1050
+ out the length of the message other than by reading it into a
1051
+ sufficiently-large buffer.
1052
+ </p>
1053
+ <p>
1054
+ If the socket is in blocking mode the call will block until there
1055
+ is some data to receive or there is an error. If there is no data
1056
+ available and the socket is in non-blocking mode, a
1057
+ <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> error will be returned. To be notified when
1058
+ data is available, wait for the <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-IN:CAPS"><code class="literal">G_IO_IN</code></a> condition.
1059
+ </p>
1060
+ <p>
1061
+ On error -1 is returned and <em class="parameter"><code>error</code></em> is set accordingly.
1062
+ </p>
1063
+ <div class="variablelist"><table border="0">
1064
+ <col align="left" valign="top">
1065
+ <tbody>
1066
+ <tr>
1067
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1068
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1069
+ </td>
1070
+ </tr>
1071
+ <tr>
1072
+ <td><p><span class="term"><em class="parameter"><code>address</code></em> :</span></p></td>
1073
+ <td>a pointer to a <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> pointer, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1074
+ </td>
1075
+ </tr>
1076
+ <tr>
1077
+ <td><p><span class="term"><em class="parameter"><code>vectors</code></em> :</span></p></td>
1078
+ <td>an array of <a class="link" href="GSocket.html#GInputVector" title="GInputVector"><span class="type">GInputVector</span></a> structs
1079
+ </td>
1080
+ </tr>
1081
+ <tr>
1082
+ <td><p><span class="term"><em class="parameter"><code>num_vectors</code></em> :</span></p></td>
1083
+ <td>the number of elements in <em class="parameter"><code>vectors</code></em>, or -1
1084
+ </td>
1085
+ </tr>
1086
+ <tr>
1087
+ <td><p><span class="term"><em class="parameter"><code>messages</code></em> :</span></p></td>
1088
+ <td>a pointer which will be filled with an array of
1089
+ <a href="GSocketControlMessage.html"><span class="type">GSocketControlMessages</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1090
+ </td>
1091
+ </tr>
1092
+ <tr>
1093
+ <td><p><span class="term"><em class="parameter"><code>num_messages</code></em> :</span></p></td>
1094
+ <td>a pointer which will be filled with the number of
1095
+ elements in <em class="parameter"><code>messages</code></em>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1096
+ </td>
1097
+ </tr>
1098
+ <tr>
1099
+ <td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
1100
+ <td>a pointer to an int containing <a class="link" href="GSocket.html#GSocketMsgFlags" title="enum GSocketMsgFlags"><span class="type">GSocketMsgFlags</span></a> flags
1101
+ </td>
1102
+ </tr>
1103
+ <tr>
1104
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
1105
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1106
+ </td>
1107
+ </tr>
1108
+ <tr>
1109
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1110
+ <td>a <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> pointer, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1111
+ </td>
1112
+ </tr>
1113
+ <tr>
1114
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1115
+ <td> Number of bytes read, or -1 on error
1116
+
1117
+ </td>
1118
+ </tr>
1119
+ </tbody>
1120
+ </table></div>
1121
+ <p class="since">Since 2.22</p>
1122
+ </div>
1123
+ <hr>
1124
+ <div class="refsect2" title="g_socket_send ()">
1125
+ <a name="g-socket-send"></a><h3>g_socket_send ()</h3>
1126
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> g_socket_send (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1127
+ <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *buffer</code></em>,
1128
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
1129
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
1130
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1131
+ <p>
1132
+ Tries to send <em class="parameter"><code>size</code></em> bytes from <em class="parameter"><code>buffer</code></em> on the socket. This is
1133
+ mainly used by connection-oriented sockets; it is identical to
1134
+ <a class="link" href="GSocket.html#g-socket-send-to" title="g_socket_send_to ()"><code class="function">g_socket_send_to()</code></a> with <em class="parameter"><code>address</code></em> set to <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
1135
+ </p>
1136
+ <p>
1137
+ If the socket is in blocking mode the call will block until there is
1138
+ space for the data in the socket queue. If there is no space available
1139
+ and the socket is in non-blocking mode a <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> error
1140
+ will be returned. To be notified when space is available, wait for the
1141
+ <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-OUT:CAPS"><code class="literal">G_IO_OUT</code></a> condition. Note though that you may still receive
1142
+ <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> from <a class="link" href="GSocket.html#g-socket-send" title="g_socket_send ()"><code class="function">g_socket_send()</code></a> even if you were previously
1143
+ notified of a <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-OUT:CAPS"><code class="literal">G_IO_OUT</code></a> condition. (On Windows in particular, this is
1144
+ very common due to the way the underlying APIs work.)
1145
+ </p>
1146
+ <p>
1147
+ On error -1 is returned and <em class="parameter"><code>error</code></em> is set accordingly.
1148
+ </p>
1149
+ <div class="variablelist"><table border="0">
1150
+ <col align="left" valign="top">
1151
+ <tbody>
1152
+ <tr>
1153
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1154
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1155
+ </td>
1156
+ </tr>
1157
+ <tr>
1158
+ <td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
1159
+ <td>the buffer containing the data to send.
1160
+ </td>
1161
+ </tr>
1162
+ <tr>
1163
+ <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
1164
+ <td>the number of bytes to send
1165
+ </td>
1166
+ </tr>
1167
+ <tr>
1168
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
1169
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1170
+ </td>
1171
+ </tr>
1172
+ <tr>
1173
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1174
+ <td>
1175
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
1176
+ </td>
1177
+ </tr>
1178
+ <tr>
1179
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1180
+ <td> Number of bytes written (which may be less than <em class="parameter"><code>size</code></em>), or -1
1181
+ on error
1182
+
1183
+ </td>
1184
+ </tr>
1185
+ </tbody>
1186
+ </table></div>
1187
+ <p class="since">Since 2.22</p>
1188
+ </div>
1189
+ <hr>
1190
+ <div class="refsect2" title="g_socket_send_to ()">
1191
+ <a name="g-socket-send-to"></a><h3>g_socket_send_to ()</h3>
1192
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> g_socket_send_to (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1193
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> *address</code></em>,
1194
+ <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *buffer</code></em>,
1195
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> size</code></em>,
1196
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
1197
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1198
+ <p>
1199
+ Tries to send <em class="parameter"><code>size</code></em> bytes from <em class="parameter"><code>buffer</code></em> to <em class="parameter"><code>address</code></em>. If <em class="parameter"><code>address</code></em> is
1200
+ <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then the message is sent to the default receiver (set by
1201
+ <a class="link" href="GSocket.html#g-socket-connect" title="g_socket_connect ()"><code class="function">g_socket_connect()</code></a>).
1202
+ </p>
1203
+ <p>
1204
+ See <a class="link" href="GSocket.html#g-socket-send" title="g_socket_send ()"><code class="function">g_socket_send()</code></a> for additional information.
1205
+ </p>
1206
+ <div class="variablelist"><table border="0">
1207
+ <col align="left" valign="top">
1208
+ <tbody>
1209
+ <tr>
1210
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1211
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1212
+ </td>
1213
+ </tr>
1214
+ <tr>
1215
+ <td><p><span class="term"><em class="parameter"><code>address</code></em> :</span></p></td>
1216
+ <td>a <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1217
+ </td>
1218
+ </tr>
1219
+ <tr>
1220
+ <td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
1221
+ <td>the buffer containing the data to send.
1222
+ </td>
1223
+ </tr>
1224
+ <tr>
1225
+ <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
1226
+ <td>the number of bytes to send
1227
+ </td>
1228
+ </tr>
1229
+ <tr>
1230
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
1231
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1232
+ </td>
1233
+ </tr>
1234
+ <tr>
1235
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1236
+ <td>
1237
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
1238
+ </td>
1239
+ </tr>
1240
+ <tr>
1241
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1242
+ <td> Number of bytes written (which may be less than <em class="parameter"><code>size</code></em>), or -1
1243
+ on error
1244
+
1245
+ </td>
1246
+ </tr>
1247
+ </tbody>
1248
+ </table></div>
1249
+ <p class="since">Since 2.22</p>
1250
+ </div>
1251
+ <hr>
1252
+ <div class="refsect2" title="g_socket_send_message ()">
1253
+ <a name="g-socket-send-message"></a><h3>g_socket_send_message ()</h3>
1254
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gssize"><span class="returnvalue">gssize</span></a> g_socket_send_message (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1255
+ <em class="parameter"><code><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> *address</code></em>,
1256
+ <em class="parameter"><code><a class="link" href="GSocket.html#GOutputVector" title="GOutputVector"><span class="type">GOutputVector</span></a> *vectors</code></em>,
1257
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num_vectors</code></em>,
1258
+ <em class="parameter"><code><a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> **messages</code></em>,
1259
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> num_messages</code></em>,
1260
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> flags</code></em>,
1261
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
1262
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1263
+ <p>
1264
+ Send data to <em class="parameter"><code>address</code></em> on <em class="parameter"><code>socket</code></em>. This is the most complicated and
1265
+ fully-featured version of this call. For easier use, see
1266
+ <a class="link" href="GSocket.html#g-socket-send" title="g_socket_send ()"><code class="function">g_socket_send()</code></a> and <a class="link" href="GSocket.html#g-socket-send-to" title="g_socket_send_to ()"><code class="function">g_socket_send_to()</code></a>.
1267
+ </p>
1268
+ <p>
1269
+ If <em class="parameter"><code>address</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then the message is sent to the default receiver
1270
+ (set by <a class="link" href="GSocket.html#g-socket-connect" title="g_socket_connect ()"><code class="function">g_socket_connect()</code></a>).
1271
+ </p>
1272
+ <p>
1273
+ <em class="parameter"><code>vectors</code></em> must point to an array of <a class="link" href="GSocket.html#GOutputVector" title="GOutputVector"><span class="type">GOutputVector</span></a> structs and
1274
+ <em class="parameter"><code>num_vectors</code></em> must be the length of this array. (If <em class="parameter"><code>num_vectors</code></em> is -1,
1275
+ then <em class="parameter"><code>vectors</code></em> is assumed to be terminated by a <a class="link" href="GSocket.html#GOutputVector" title="GOutputVector"><span class="type">GOutputVector</span></a> with a
1276
+ <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> buffer pointer.) The <a class="link" href="GSocket.html#GOutputVector" title="GOutputVector"><span class="type">GOutputVector</span></a> structs describe the buffers
1277
+ that the sent data will be gathered from. Using multiple
1278
+ <a class="link" href="GSocket.html#GOutputVector" title="GOutputVector"><span class="type">GOutputVector</span></a>s is more memory-efficient than manually copying
1279
+ data from multiple sources into a single buffer, and more
1280
+ network-efficient than making multiple calls to <a class="link" href="GSocket.html#g-socket-send" title="g_socket_send ()"><code class="function">g_socket_send()</code></a>.
1281
+ </p>
1282
+ <p>
1283
+ <em class="parameter"><code>messages</code></em>, if non-<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, is taken to point to an array of <em class="parameter"><code>num_messages</code></em>
1284
+ <a class="link" href="GSocketControlMessage.html" title="GSocketControlMessage"><span class="type">GSocketControlMessage</span></a> instances. These correspond to the control
1285
+ messages to be sent on the socket.
1286
+ If <em class="parameter"><code>num_messages</code></em> is -1 then <em class="parameter"><code>messages</code></em> is treated as a <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>-terminated
1287
+ array.
1288
+ </p>
1289
+ <p>
1290
+ <em class="parameter"><code>flags</code></em> modify how the message is sent. The commonly available arguments
1291
+ for this are available in the <a class="link" href="GSocket.html#GSocketMsgFlags" title="enum GSocketMsgFlags"><span class="type">GSocketMsgFlags</span></a> enum, but the
1292
+ values there are the same as the system values, and the flags
1293
+ are passed in as-is, so you can pass in system-specific flags too.
1294
+ </p>
1295
+ <p>
1296
+ If the socket is in blocking mode the call will block until there is
1297
+ space for the data in the socket queue. If there is no space available
1298
+ and the socket is in non-blocking mode a <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> error
1299
+ will be returned. To be notified when space is available, wait for the
1300
+ <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-OUT:CAPS"><code class="literal">G_IO_OUT</code></a> condition. Note though that you may still receive
1301
+ <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> from <a class="link" href="GSocket.html#g-socket-send" title="g_socket_send ()"><code class="function">g_socket_send()</code></a> even if you were previously
1302
+ notified of a <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-OUT:CAPS"><code class="literal">G_IO_OUT</code></a> condition. (On Windows in particular, this is
1303
+ very common due to the way the underlying APIs work.)
1304
+ </p>
1305
+ <p>
1306
+ On error -1 is returned and <em class="parameter"><code>error</code></em> is set accordingly.
1307
+ </p>
1308
+ <div class="variablelist"><table border="0">
1309
+ <col align="left" valign="top">
1310
+ <tbody>
1311
+ <tr>
1312
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1313
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1314
+ </td>
1315
+ </tr>
1316
+ <tr>
1317
+ <td><p><span class="term"><em class="parameter"><code>address</code></em> :</span></p></td>
1318
+ <td>a <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1319
+ </td>
1320
+ </tr>
1321
+ <tr>
1322
+ <td><p><span class="term"><em class="parameter"><code>vectors</code></em> :</span></p></td>
1323
+ <td>an array of <a class="link" href="GSocket.html#GOutputVector" title="GOutputVector"><span class="type">GOutputVector</span></a> structs
1324
+ </td>
1325
+ </tr>
1326
+ <tr>
1327
+ <td><p><span class="term"><em class="parameter"><code>num_vectors</code></em> :</span></p></td>
1328
+ <td>the number of elements in <em class="parameter"><code>vectors</code></em>, or -1
1329
+ </td>
1330
+ </tr>
1331
+ <tr>
1332
+ <td><p><span class="term"><em class="parameter"><code>messages</code></em> :</span></p></td>
1333
+ <td>a pointer to an array of <a href="GSocketControlMessage.html"><span class="type">GSocketControlMessages</span></a>, or
1334
+ <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
1335
+ </td>
1336
+ </tr>
1337
+ <tr>
1338
+ <td><p><span class="term"><em class="parameter"><code>num_messages</code></em> :</span></p></td>
1339
+ <td>number of elements in <em class="parameter"><code>messages</code></em>, or -1.
1340
+ </td>
1341
+ </tr>
1342
+ <tr>
1343
+ <td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
1344
+ <td>an int containing <a class="link" href="GSocket.html#GSocketMsgFlags" title="enum GSocketMsgFlags"><span class="type">GSocketMsgFlags</span></a> flags
1345
+ </td>
1346
+ </tr>
1347
+ <tr>
1348
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
1349
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1350
+ </td>
1351
+ </tr>
1352
+ <tr>
1353
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1354
+ <td>
1355
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
1356
+ </td>
1357
+ </tr>
1358
+ <tr>
1359
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1360
+ <td> Number of bytes written (which may be less than <em class="parameter"><code>size</code></em>), or -1
1361
+ on error
1362
+
1363
+ </td>
1364
+ </tr>
1365
+ </tbody>
1366
+ </table></div>
1367
+ <p class="since">Since 2.22</p>
1368
+ </div>
1369
+ <hr>
1370
+ <div class="refsect2" title="g_socket_close ()">
1371
+ <a name="g-socket-close"></a><h3>g_socket_close ()</h3>
1372
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_close (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1373
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1374
+ <p>
1375
+ Closes the socket, shutting down any active connection.
1376
+ </p>
1377
+ <p>
1378
+ Closing a socket does not wait for all outstanding I/O operations
1379
+ to finish, so the caller should not rely on them to be guaranteed
1380
+ to complete even if the close returns with no error.
1381
+ </p>
1382
+ <p>
1383
+ Once the socket is closed, all other operations will return
1384
+ <a class="link" href="gio-GIOError.html#G-IO-ERROR-CLOSED:CAPS"><code class="literal">G_IO_ERROR_CLOSED</code></a>. Closing a socket multiple times will not
1385
+ return an error.
1386
+ </p>
1387
+ <p>
1388
+ Sockets will be automatically closed when the last reference
1389
+ is dropped, but you might want to call this function to make sure
1390
+ resources are released as early as possible.
1391
+ </p>
1392
+ <p>
1393
+ Beware that due to the way that TCP works, it is possible for
1394
+ recently-sent data to be lost if either you close a socket while the
1395
+ <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-IN:CAPS"><code class="literal">G_IO_IN</code></a> condition is set, or else if the remote connection tries to
1396
+ send something to you after you close the socket but before it has
1397
+ finished reading all of the data you sent. There is no easy generic
1398
+ way to avoid this problem; the easiest fix is to design the network
1399
+ protocol such that the client will never send data "out of turn".
1400
+ Another solution is for the server to half-close the connection by
1401
+ calling <a class="link" href="GSocket.html#g-socket-shutdown" title="g_socket_shutdown ()"><code class="function">g_socket_shutdown()</code></a> with only the <em class="parameter"><code>shutdown_write</code></em> flag set,
1402
+ and then wait for the client to notice this and close its side of the
1403
+ connection, after which the server can safely call <a class="link" href="GSocket.html#g-socket-close" title="g_socket_close ()"><code class="function">g_socket_close()</code></a>.
1404
+ (This is what <a class="link" href="GSocketConnection.html#GTcpConnection"><span class="type">GTcpConnection</span></a> does if you call
1405
+ <a class="link" href="GSocketConnection.html#g-tcp-connection-set-graceful-disconnect" title="g_tcp_connection_set_graceful_disconnect ()"><code class="function">g_tcp_connection_set_graceful_disconnect()</code></a>. But of course, this
1406
+ only works if the client will close its connection after the server
1407
+ does.)
1408
+ </p>
1409
+ <div class="variablelist"><table border="0">
1410
+ <col align="left" valign="top">
1411
+ <tbody>
1412
+ <tr>
1413
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1414
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1415
+ </td>
1416
+ </tr>
1417
+ <tr>
1418
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1419
+ <td>
1420
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
1421
+ </td>
1422
+ </tr>
1423
+ <tr>
1424
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1425
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error
1426
+
1427
+ </td>
1428
+ </tr>
1429
+ </tbody>
1430
+ </table></div>
1431
+ <p class="since">Since 2.22</p>
1432
+ </div>
1433
+ <hr>
1434
+ <div class="refsect2" title="g_socket_is_closed ()">
1435
+ <a name="g-socket-is-closed"></a><h3>g_socket_is_closed ()</h3>
1436
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_is_closed (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
1437
+ <p>
1438
+ Checks whether a socket is closed.
1439
+ </p>
1440
+ <div class="variablelist"><table border="0">
1441
+ <col align="left" valign="top">
1442
+ <tbody>
1443
+ <tr>
1444
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1445
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1446
+ </td>
1447
+ </tr>
1448
+ <tr>
1449
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1450
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if socket is closed, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise
1451
+
1452
+ </td>
1453
+ </tr>
1454
+ </tbody>
1455
+ </table></div>
1456
+ <p class="since">Since 2.22</p>
1457
+ </div>
1458
+ <hr>
1459
+ <div class="refsect2" title="g_socket_shutdown ()">
1460
+ <a name="g-socket-shutdown"></a><h3>g_socket_shutdown ()</h3>
1461
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_shutdown (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1462
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> shutdown_read</code></em>,
1463
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> shutdown_write</code></em>,
1464
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1465
+ <p>
1466
+ Shut down part of a full-duplex connection.
1467
+ </p>
1468
+ <p>
1469
+ If <em class="parameter"><code>shutdown_read</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> then the recieving side of the connection
1470
+ is shut down, and further reading is disallowed.
1471
+ </p>
1472
+ <p>
1473
+ If <em class="parameter"><code>shutdown_write</code></em> is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> then the sending side of the connection
1474
+ is shut down, and further writing is disallowed.
1475
+ </p>
1476
+ <p>
1477
+ It is allowed for both <em class="parameter"><code>shutdown_read</code></em> and <em class="parameter"><code>shutdown_write</code></em> to be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>.
1478
+ </p>
1479
+ <p>
1480
+ One example where this is used is graceful disconnect for TCP connections
1481
+ where you close the sending side, then wait for the other side to close
1482
+ the connection, thus ensuring that the other side saw all sent data.
1483
+ </p>
1484
+ <div class="variablelist"><table border="0">
1485
+ <col align="left" valign="top">
1486
+ <tbody>
1487
+ <tr>
1488
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1489
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1490
+ </td>
1491
+ </tr>
1492
+ <tr>
1493
+ <td><p><span class="term"><em class="parameter"><code>shutdown_read</code></em> :</span></p></td>
1494
+ <td>whether to shut down the read side
1495
+ </td>
1496
+ </tr>
1497
+ <tr>
1498
+ <td><p><span class="term"><em class="parameter"><code>shutdown_write</code></em> :</span></p></td>
1499
+ <td>whether to shut down the write side
1500
+ </td>
1501
+ </tr>
1502
+ <tr>
1503
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1504
+ <td>
1505
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
1506
+ </td>
1507
+ </tr>
1508
+ <tr>
1509
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1510
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error
1511
+
1512
+ </td>
1513
+ </tr>
1514
+ </tbody>
1515
+ </table></div>
1516
+ <p class="since">Since 2.22</p>
1517
+ </div>
1518
+ <hr>
1519
+ <div class="refsect2" title="g_socket_is_connected ()">
1520
+ <a name="g-socket-is-connected"></a><h3>g_socket_is_connected ()</h3>
1521
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_is_connected (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
1522
+ <p>
1523
+ Check whether the socket is connected. This is only useful for
1524
+ connection-oriented sockets.
1525
+ </p>
1526
+ <div class="variablelist"><table border="0">
1527
+ <col align="left" valign="top">
1528
+ <tbody>
1529
+ <tr>
1530
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1531
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1532
+ </td>
1533
+ </tr>
1534
+ <tr>
1535
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1536
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if socket is connected, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.
1537
+
1538
+ </td>
1539
+ </tr>
1540
+ </tbody>
1541
+ </table></div>
1542
+ <p class="since">Since 2.22</p>
1543
+ </div>
1544
+ <hr>
1545
+ <div class="refsect2" title="g_socket_create_source ()">
1546
+ <a name="g-socket-create-source"></a><h3>g_socket_create_source ()</h3>
1547
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html#GSource"><span class="returnvalue">GSource</span></a> * g_socket_create_source (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1548
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> condition</code></em>,
1549
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>);</pre>
1550
+ <p>
1551
+ Creates a <a href="/usr/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html#GSource"><code class="literal">GSource</code></a> that can be attached to a <a href="/usr/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html#GMainContext"><code class="literal">GMainContext</code></a> to monitor
1552
+ for the availibility of the specified <em class="parameter"><code>condition</code></em> on the socket.
1553
+ </p>
1554
+ <p>
1555
+ The callback on the source is of the <a class="link" href="GSocket.html#GSocketSourceFunc" title="GSocketSourceFunc ()"><span class="type">GSocketSourceFunc</span></a> type.
1556
+ </p>
1557
+ <p>
1558
+ It is meaningless to specify <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-ERR:CAPS"><code class="literal">G_IO_ERR</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-HUP:CAPS"><code class="literal">G_IO_HUP</code></a> in condition;
1559
+ these conditions will always be reported output if they are true.
1560
+ </p>
1561
+ <p>
1562
+ <em class="parameter"><code>cancellable</code></em> if not <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> can be used to cancel the source, which will
1563
+ cause the source to trigger, reporting the current condition (which
1564
+ is likely 0 unless cancellation happened at the same time as a
1565
+ condition change). You can check for this in the callback using
1566
+ <a class="link" href="GCancellable.html#g-cancellable-is-cancelled" title="g_cancellable_is_cancelled ()"><code class="function">g_cancellable_is_cancelled()</code></a>.
1567
+ </p>
1568
+ <div class="variablelist"><table border="0">
1569
+ <col align="left" valign="top">
1570
+ <tbody>
1571
+ <tr>
1572
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1573
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1574
+ </td>
1575
+ </tr>
1576
+ <tr>
1577
+ <td><p><span class="term"><em class="parameter"><code>condition</code></em> :</span></p></td>
1578
+ <td>a <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> mask to monitor
1579
+ </td>
1580
+ </tr>
1581
+ <tr>
1582
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
1583
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><code class="literal">GCancellable</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1584
+ </td>
1585
+ </tr>
1586
+ <tr>
1587
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1588
+ <td> a newly allocated <a href="/usr/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html#GSource"><code class="literal">GSource</code></a>, free with <a href="/usr/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html#g-source-unref"><code class="function">g_source_unref()</code></a>.
1589
+
1590
+ </td>
1591
+ </tr>
1592
+ </tbody>
1593
+ </table></div>
1594
+ <p class="since">Since 2.22</p>
1595
+ </div>
1596
+ <hr>
1597
+ <div class="refsect2" title="g_socket_condition_check ()">
1598
+ <a name="g-socket-condition-check"></a><h3>g_socket_condition_check ()</h3>
1599
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="returnvalue">GIOCondition</span></a> g_socket_condition_check (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1600
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> condition</code></em>);</pre>
1601
+ <p>
1602
+ Checks on the readiness of <em class="parameter"><code>socket</code></em> to perform operations.
1603
+ The operations specified in <em class="parameter"><code>condition</code></em> are checked for and masked
1604
+ against the currently-satisfied conditions on <em class="parameter"><code>socket</code></em>. The result
1605
+ is returned.
1606
+ </p>
1607
+ <p>
1608
+ It is meaningless to specify <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-ERR:CAPS"><code class="literal">G_IO_ERR</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#G-IO-HUP:CAPS"><code class="literal">G_IO_HUP</code></a> in condition;
1609
+ these conditions will always be set in the output if they are true.
1610
+ </p>
1611
+ <p>
1612
+ This call never blocks.
1613
+ </p>
1614
+ <div class="variablelist"><table border="0">
1615
+ <col align="left" valign="top">
1616
+ <tbody>
1617
+ <tr>
1618
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1619
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1620
+ </td>
1621
+ </tr>
1622
+ <tr>
1623
+ <td><p><span class="term"><em class="parameter"><code>condition</code></em> :</span></p></td>
1624
+ <td>a <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> mask to check
1625
+ </td>
1626
+ </tr>
1627
+ <tr>
1628
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1629
+ <td> the <em class="parameter"><code>GIOCondition</code></em> mask of the current state
1630
+
1631
+ </td>
1632
+ </tr>
1633
+ </tbody>
1634
+ </table></div>
1635
+ <p class="since">Since 2.22</p>
1636
+ </div>
1637
+ <hr>
1638
+ <div class="refsect2" title="g_socket_condition_wait ()">
1639
+ <a name="g-socket-condition-wait"></a><h3>g_socket_condition_wait ()</h3>
1640
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_condition_wait (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1641
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> condition</code></em>,
1642
+ <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
1643
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1644
+ <p>
1645
+ Waits for <em class="parameter"><code>condition</code></em> to become true on <em class="parameter"><code>socket</code></em>. When the condition
1646
+ is met, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is returned.
1647
+ </p>
1648
+ <p>
1649
+ If <em class="parameter"><code>cancellable</code></em> is cancelled before the condition is met then <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
1650
+ is returned and <em class="parameter"><code>error</code></em>, if non-<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, is set to <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a>.
1651
+ </p>
1652
+ <div class="variablelist"><table border="0">
1653
+ <col align="left" valign="top">
1654
+ <tbody>
1655
+ <tr>
1656
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1657
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
1658
+ </td>
1659
+ </tr>
1660
+ <tr>
1661
+ <td><p><span class="term"><em class="parameter"><code>condition</code></em> :</span></p></td>
1662
+ <td>a <a href="/usr/share/gtk-doc/html/glib/glib-IO-Channels.html#GIOCondition"><span class="type">GIOCondition</span></a> mask to wait for
1663
+ </td>
1664
+ </tr>
1665
+ <tr>
1666
+ <td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
1667
+ <td>a <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a>, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1668
+ </td>
1669
+ </tr>
1670
+ <tr>
1671
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1672
+ <td>a <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> pointer, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1673
+ </td>
1674
+ </tr>
1675
+ <tr>
1676
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1677
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the condition was met, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise
1678
+
1679
+ </td>
1680
+ </tr>
1681
+ </tbody>
1682
+ </table></div>
1683
+ <p class="since">Since 2.22</p>
1684
+ </div>
1685
+ <hr>
1686
+ <div class="refsect2" title="g_socket_set_listen_backlog ()">
1687
+ <a name="g-socket-set-listen-backlog"></a><h3>g_socket_set_listen_backlog ()</h3>
1688
+ <pre class="programlisting"><span class="returnvalue">void</span> g_socket_set_listen_backlog (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1689
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> backlog</code></em>);</pre>
1690
+ <p>
1691
+ Sets the maximum number of outstanding connections allowed
1692
+ when listening on this socket. If more clients than this are
1693
+ connecting to the socket and the application is not handling them
1694
+ on time then the new connections will be refused.
1695
+ </p>
1696
+ <p>
1697
+ Note that this must be called before <a class="link" href="GSocket.html#g-socket-listen" title="g_socket_listen ()"><code class="function">g_socket_listen()</code></a> and has no
1698
+ effect if called after that.
1699
+ </p>
1700
+ <div class="variablelist"><table border="0">
1701
+ <col align="left" valign="top">
1702
+ <tbody>
1703
+ <tr>
1704
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1705
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1706
+ </td>
1707
+ </tr>
1708
+ <tr>
1709
+ <td><p><span class="term"><em class="parameter"><code>backlog</code></em> :</span></p></td>
1710
+ <td>the maximum number of pending connections.
1711
+ </td>
1712
+ </tr>
1713
+ </tbody>
1714
+ </table></div>
1715
+ <p class="since">Since 2.22</p>
1716
+ </div>
1717
+ <hr>
1718
+ <div class="refsect2" title="g_socket_get_listen_backlog ()">
1719
+ <a name="g-socket-get-listen-backlog"></a><h3>g_socket_get_listen_backlog ()</h3>
1720
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> g_socket_get_listen_backlog (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
1721
+ <p>
1722
+ Gets the listen backlog setting of the socket. For details on this,
1723
+ see <a class="link" href="GSocket.html#g-socket-set-listen-backlog" title="g_socket_set_listen_backlog ()"><code class="function">g_socket_set_listen_backlog()</code></a>.
1724
+ </p>
1725
+ <div class="variablelist"><table border="0">
1726
+ <col align="left" valign="top">
1727
+ <tbody>
1728
+ <tr>
1729
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1730
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1731
+ </td>
1732
+ </tr>
1733
+ <tr>
1734
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1735
+ <td> the maximum number of pending connections.
1736
+
1737
+ </td>
1738
+ </tr>
1739
+ </tbody>
1740
+ </table></div>
1741
+ <p class="since">Since 2.22</p>
1742
+ </div>
1743
+ <hr>
1744
+ <div class="refsect2" title="g_socket_get_blocking ()">
1745
+ <a name="g-socket-get-blocking"></a><h3>g_socket_get_blocking ()</h3>
1746
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_get_blocking (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
1747
+ <p>
1748
+ Gets the blocking mode of the socket. For details on blocking I/O,
1749
+ see <a class="link" href="GSocket.html#g-socket-set-blocking" title="g_socket_set_blocking ()"><code class="function">g_socket_set_blocking()</code></a>.
1750
+ </p>
1751
+ <div class="variablelist"><table border="0">
1752
+ <col align="left" valign="top">
1753
+ <tbody>
1754
+ <tr>
1755
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1756
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1757
+ </td>
1758
+ </tr>
1759
+ <tr>
1760
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1761
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if blocking I/O is used, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.
1762
+
1763
+ </td>
1764
+ </tr>
1765
+ </tbody>
1766
+ </table></div>
1767
+ <p class="since">Since 2.22</p>
1768
+ </div>
1769
+ <hr>
1770
+ <div class="refsect2" title="g_socket_set_blocking ()">
1771
+ <a name="g-socket-set-blocking"></a><h3>g_socket_set_blocking ()</h3>
1772
+ <pre class="programlisting"><span class="returnvalue">void</span> g_socket_set_blocking (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1773
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> blocking</code></em>);</pre>
1774
+ <p>
1775
+ Sets the blocking mode of the socket. In blocking mode
1776
+ all operations block until they succeed or there is an error. In
1777
+ non-blocking mode all functions return results immediately or
1778
+ with a <a class="link" href="gio-GIOError.html#G-IO-ERROR-WOULD-BLOCK:CAPS"><code class="literal">G_IO_ERROR_WOULD_BLOCK</code></a> error.
1779
+ </p>
1780
+ <p>
1781
+ All sockets are created in blocking mode. However, note that the
1782
+ platform level socket is always non-blocking, and blocking mode
1783
+ is a GSocket level feature.
1784
+ </p>
1785
+ <div class="variablelist"><table border="0">
1786
+ <col align="left" valign="top">
1787
+ <tbody>
1788
+ <tr>
1789
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1790
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1791
+ </td>
1792
+ </tr>
1793
+ <tr>
1794
+ <td><p><span class="term"><em class="parameter"><code>blocking</code></em> :</span></p></td>
1795
+ <td>Whether to use blocking I/O or not.
1796
+ </td>
1797
+ </tr>
1798
+ </tbody>
1799
+ </table></div>
1800
+ <p class="since">Since 2.22</p>
1801
+ </div>
1802
+ <hr>
1803
+ <div class="refsect2" title="g_socket_get_keepalive ()">
1804
+ <a name="g-socket-get-keepalive"></a><h3>g_socket_get_keepalive ()</h3>
1805
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_get_keepalive (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
1806
+ <p>
1807
+ Gets the keepalive mode of the socket. For details on this,
1808
+ see <a class="link" href="GSocket.html#g-socket-set-keepalive" title="g_socket_set_keepalive ()"><code class="function">g_socket_set_keepalive()</code></a>.
1809
+ </p>
1810
+ <div class="variablelist"><table border="0">
1811
+ <col align="left" valign="top">
1812
+ <tbody>
1813
+ <tr>
1814
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1815
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1816
+ </td>
1817
+ </tr>
1818
+ <tr>
1819
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1820
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if keepalive is active, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.
1821
+
1822
+ </td>
1823
+ </tr>
1824
+ </tbody>
1825
+ </table></div>
1826
+ <p class="since">Since 2.22</p>
1827
+ </div>
1828
+ <hr>
1829
+ <div class="refsect2" title="g_socket_set_keepalive ()">
1830
+ <a name="g-socket-set-keepalive"></a><h3>g_socket_set_keepalive ()</h3>
1831
+ <pre class="programlisting"><span class="returnvalue">void</span> g_socket_set_keepalive (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1832
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> keepalive</code></em>);</pre>
1833
+ <p>
1834
+ Sets or unsets the <code class="literal">SO_KEEPALIVE</code> flag on the underlying socket. When
1835
+ this flag is set on a socket, the system will attempt to verify that the
1836
+ remote socket endpoint is still present if a sufficiently long period of
1837
+ time passes with no data being exchanged. If the system is unable to
1838
+ verify the presence of the remote endpoint, it will automatically close
1839
+ the connection.
1840
+ </p>
1841
+ <p>
1842
+ This option is only functional on certain kinds of sockets. (Notably,
1843
+ <a class="link" href="GSocket.html#G-SOCKET-PROTOCOL-TCP:CAPS"><code class="literal">G_SOCKET_PROTOCOL_TCP</code></a> sockets.)
1844
+ </p>
1845
+ <p>
1846
+ The exact time between pings is system- and protocol-dependent, but will
1847
+ normally be at least two hours. Most commonly, you would set this flag
1848
+ on a server socket if you want to allow clients to remain idle for long
1849
+ periods of time, but also want to ensure that connections are eventually
1850
+ garbage-collected if clients crash or become unreachable.
1851
+ </p>
1852
+ <div class="variablelist"><table border="0">
1853
+ <col align="left" valign="top">
1854
+ <tbody>
1855
+ <tr>
1856
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1857
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1858
+ </td>
1859
+ </tr>
1860
+ <tr>
1861
+ <td><p><span class="term"><em class="parameter"><code>keepalive</code></em> :</span></p></td>
1862
+ <td>Value for the keepalive flag
1863
+ </td>
1864
+ </tr>
1865
+ </tbody>
1866
+ </table></div>
1867
+ <p class="since">Since 2.22</p>
1868
+ </div>
1869
+ <hr>
1870
+ <div class="refsect2" title="g_socket_get_family ()">
1871
+ <a name="g-socket-get-family"></a><h3>g_socket_get_family ()</h3>
1872
+ <pre class="programlisting"><a class="link" href="GSocketAddress.html#GSocketFamily" title="enum GSocketFamily"><span class="returnvalue">GSocketFamily</span></a> g_socket_get_family (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
1873
+ <p>
1874
+ Gets the socket family of the socket.
1875
+ </p>
1876
+ <div class="variablelist"><table border="0">
1877
+ <col align="left" valign="top">
1878
+ <tbody>
1879
+ <tr>
1880
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1881
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1882
+ </td>
1883
+ </tr>
1884
+ <tr>
1885
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1886
+ <td> a <a class="link" href="GSocketAddress.html#GSocketFamily" title="enum GSocketFamily"><span class="type">GSocketFamily</span></a>
1887
+
1888
+ </td>
1889
+ </tr>
1890
+ </tbody>
1891
+ </table></div>
1892
+ <p class="since">Since 2.22</p>
1893
+ </div>
1894
+ <hr>
1895
+ <div class="refsect2" title="g_socket_get_fd ()">
1896
+ <a name="g-socket-get-fd"></a><h3>g_socket_get_fd ()</h3>
1897
+ <pre class="programlisting"><span class="returnvalue">int</span> g_socket_get_fd (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
1898
+ <p>
1899
+ Returns the underlying OS socket object. On unix this
1900
+ is a socket file descriptor, and on windows this is
1901
+ a Winsock2 SOCKET handle. This may be useful for
1902
+ doing platform specific or otherwise unusual operations
1903
+ on the socket.
1904
+ </p>
1905
+ <div class="variablelist"><table border="0">
1906
+ <col align="left" valign="top">
1907
+ <tbody>
1908
+ <tr>
1909
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1910
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1911
+ </td>
1912
+ </tr>
1913
+ <tr>
1914
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1915
+ <td> the file descriptor of the socket.
1916
+
1917
+ </td>
1918
+ </tr>
1919
+ </tbody>
1920
+ </table></div>
1921
+ <p class="since">Since 2.22</p>
1922
+ </div>
1923
+ <hr>
1924
+ <div class="refsect2" title="g_socket_get_local_address ()">
1925
+ <a name="g-socket-get-local-address"></a><h3>g_socket_get_local_address ()</h3>
1926
+ <pre class="programlisting"><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="returnvalue">GSocketAddress</span></a> * g_socket_get_local_address (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1927
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1928
+ <p>
1929
+ Try to get the local address of a bound socket. This is only
1930
+ useful if the socket has been bound to a local address,
1931
+ either explicitly or implicitly when connecting.
1932
+ </p>
1933
+ <div class="variablelist"><table border="0">
1934
+ <col align="left" valign="top">
1935
+ <tbody>
1936
+ <tr>
1937
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1938
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1939
+ </td>
1940
+ </tr>
1941
+ <tr>
1942
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1943
+ <td>
1944
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
1945
+ </td>
1946
+ </tr>
1947
+ <tr>
1948
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1949
+ <td> a <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
1950
+ Free the returned object with <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
1951
+
1952
+ </td>
1953
+ </tr>
1954
+ </tbody>
1955
+ </table></div>
1956
+ <p class="since">Since 2.22</p>
1957
+ </div>
1958
+ <hr>
1959
+ <div class="refsect2" title="g_socket_get_protocol ()">
1960
+ <a name="g-socket-get-protocol"></a><h3>g_socket_get_protocol ()</h3>
1961
+ <pre class="programlisting"><a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol"><span class="returnvalue">GSocketProtocol</span></a> g_socket_get_protocol (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
1962
+ <p>
1963
+ Gets the socket protocol id the socket was created with.
1964
+ In case the protocol is unknown, -1 is returned.
1965
+ </p>
1966
+ <div class="variablelist"><table border="0">
1967
+ <col align="left" valign="top">
1968
+ <tbody>
1969
+ <tr>
1970
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1971
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1972
+ </td>
1973
+ </tr>
1974
+ <tr>
1975
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1976
+ <td> a protocol id, or -1 if unknown
1977
+
1978
+ </td>
1979
+ </tr>
1980
+ </tbody>
1981
+ </table></div>
1982
+ <p class="since">Since 2.22</p>
1983
+ </div>
1984
+ <hr>
1985
+ <div class="refsect2" title="g_socket_get_remote_address ()">
1986
+ <a name="g-socket-get-remote-address"></a><h3>g_socket_get_remote_address ()</h3>
1987
+ <pre class="programlisting"><a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="returnvalue">GSocketAddress</span></a> * g_socket_get_remote_address (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>,
1988
+ <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
1989
+ <p>
1990
+ Try to get the remove address of a connected socket. This is only
1991
+ useful for connection oriented sockets that have been connected.
1992
+ </p>
1993
+ <div class="variablelist"><table border="0">
1994
+ <col align="left" valign="top">
1995
+ <tbody>
1996
+ <tr>
1997
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
1998
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
1999
+ </td>
2000
+ </tr>
2001
+ <tr>
2002
+ <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
2003
+ <td>
2004
+ <a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.
2005
+ </td>
2006
+ </tr>
2007
+ <tr>
2008
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2009
+ <td> a <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
2010
+ Free the returned object with <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
2011
+
2012
+ </td>
2013
+ </tr>
2014
+ </tbody>
2015
+ </table></div>
2016
+ <p class="since">Since 2.22</p>
2017
+ </div>
2018
+ <hr>
2019
+ <div class="refsect2" title="g_socket_get_socket_type ()">
2020
+ <a name="g-socket-get-socket-type"></a><h3>g_socket_get_socket_type ()</h3>
2021
+ <pre class="programlisting"><a class="link" href="GSocket.html#GSocketType" title="enum GSocketType"><span class="returnvalue">GSocketType</span></a> g_socket_get_socket_type (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
2022
+ <p>
2023
+ Gets the socket type of the socket.
2024
+ </p>
2025
+ <div class="variablelist"><table border="0">
2026
+ <col align="left" valign="top">
2027
+ <tbody>
2028
+ <tr>
2029
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
2030
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>.
2031
+ </td>
2032
+ </tr>
2033
+ <tr>
2034
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2035
+ <td> a <a class="link" href="GSocket.html#GSocketType" title="enum GSocketType"><span class="type">GSocketType</span></a>
2036
+
2037
+ </td>
2038
+ </tr>
2039
+ </tbody>
2040
+ </table></div>
2041
+ <p class="since">Since 2.22</p>
2042
+ </div>
2043
+ <hr>
2044
+ <div class="refsect2" title="g_socket_speaks_ipv4 ()">
2045
+ <a name="g-socket-speaks-ipv4"></a><h3>g_socket_speaks_ipv4 ()</h3>
2046
+ <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_socket_speaks_ipv4 (<em class="parameter"><code><a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a> *socket</code></em>);</pre>
2047
+ <p>
2048
+ Checks if a socket is capable of speaking IPv4.
2049
+ </p>
2050
+ <p>
2051
+ IPv4 sockets are capable of speaking IPv4. On some operating systems
2052
+ and under some combinations of circumstances IPv6 sockets are also
2053
+ capable of speaking IPv4. See RFC 3493 section 3.7 for more
2054
+ information.
2055
+ </p>
2056
+ <p>
2057
+ No other types of sockets are currently considered as being capable
2058
+ of speaking IPv4.
2059
+ </p>
2060
+ <div class="variablelist"><table border="0">
2061
+ <col align="left" valign="top">
2062
+ <tbody>
2063
+ <tr>
2064
+ <td><p><span class="term"><em class="parameter"><code>socket</code></em> :</span></p></td>
2065
+ <td>a <a class="link" href="GSocket.html" title="GSocket"><span class="type">GSocket</span></a>
2066
+ </td>
2067
+ </tr>
2068
+ <tr>
2069
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2070
+ <td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if this socket can be used with IPv4.
2071
+
2072
+ </td>
2073
+ </tr>
2074
+ </tbody>
2075
+ </table></div>
2076
+ <p class="since">Since 2.22</p>
2077
+ </div>
2078
+ </div>
2079
+ <div class="refsect1" title="Property Details">
2080
+ <a name="GSocket.property-details"></a><h2>Property Details</h2>
2081
+ <div class="refsect2" title='The "blocking" property'>
2082
+ <a name="GSocket--blocking"></a><h3>The <code class="literal">"blocking"</code> property</h3>
2083
+ <pre class="programlisting"> "blocking" <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write</pre>
2084
+ <p>Whether or not I/O on this socket is blocking.</p>
2085
+ <p>Default value: TRUE</p>
2086
+ </div>
2087
+ <hr>
2088
+ <div class="refsect2" title='The "family" property'>
2089
+ <a name="GSocket--family"></a><h3>The <code class="literal">"family"</code> property</h3>
2090
+ <pre class="programlisting"> "family" <a class="link" href="GSocketAddress.html#GSocketFamily" title="enum GSocketFamily"><span class="type">GSocketFamily</span></a> : Read / Write / Construct Only</pre>
2091
+ <p>The sockets address family.</p>
2092
+ <p>Default value: G_SOCKET_FAMILY_INVALID</p>
2093
+ </div>
2094
+ <hr>
2095
+ <div class="refsect2" title='The "fd" property'>
2096
+ <a name="GSocket--fd"></a><h3>The <code class="literal">"fd"</code> property</h3>
2097
+ <pre class="programlisting"> "fd" <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> : Read / Write / Construct Only</pre>
2098
+ <p>The sockets file descriptor.</p>
2099
+ <p>Default value: -1</p>
2100
+ </div>
2101
+ <hr>
2102
+ <div class="refsect2" title='The "keepalive" property'>
2103
+ <a name="GSocket--keepalive"></a><h3>The <code class="literal">"keepalive"</code> property</h3>
2104
+ <pre class="programlisting"> "keepalive" <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write</pre>
2105
+ <p>Keep connection alive by sending periodic pings.</p>
2106
+ <p>Default value: FALSE</p>
2107
+ </div>
2108
+ <hr>
2109
+ <div class="refsect2" title='The "listen-backlog" property'>
2110
+ <a name="GSocket--listen-backlog"></a><h3>The <code class="literal">"listen-backlog"</code> property</h3>
2111
+ <pre class="programlisting"> "listen-backlog" <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> : Read / Write</pre>
2112
+ <p>Outstanding connections in the listen queue.</p>
2113
+ <p>Allowed values: [0,128]</p>
2114
+ <p>Default value: 10</p>
2115
+ </div>
2116
+ <hr>
2117
+ <div class="refsect2" title='The "local-address" property'>
2118
+ <a name="GSocket--local-address"></a><h3>The <code class="literal">"local-address"</code> property</h3>
2119
+ <pre class="programlisting"> "local-address" <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a>* : Read</pre>
2120
+ <p>The local address the socket is bound to.</p>
2121
+ </div>
2122
+ <hr>
2123
+ <div class="refsect2" title='The "protocol" property'>
2124
+ <a name="GSocket--protocol"></a><h3>The <code class="literal">"protocol"</code> property</h3>
2125
+ <pre class="programlisting"> "protocol" <a class="link" href="GSocket.html#GSocketProtocol" title="enum GSocketProtocol"><span class="type">GSocketProtocol</span></a> : Read / Write / Construct Only</pre>
2126
+ <p>The id of the protocol to use, or -1 for unknown.</p>
2127
+ <p>Default value: G_SOCKET_PROTOCOL_UNKNOWN</p>
2128
+ </div>
2129
+ <hr>
2130
+ <div class="refsect2" title='The "remote-address" property'>
2131
+ <a name="GSocket--remote-address"></a><h3>The <code class="literal">"remote-address"</code> property</h3>
2132
+ <pre class="programlisting"> "remote-address" <a class="link" href="GSocketAddress.html" title="GSocketAddress"><span class="type">GSocketAddress</span></a>* : Read</pre>
2133
+ <p>The remote address the socket is connected to.</p>
2134
+ </div>
2135
+ <hr>
2136
+ <div class="refsect2" title='The "type" property'>
2137
+ <a name="GSocket--type"></a><h3>The <code class="literal">"type"</code> property</h3>
2138
+ <pre class="programlisting"> "type" <a class="link" href="GSocket.html#GSocketType" title="enum GSocketType"><span class="type">GSocketType</span></a> : Read / Write / Construct Only</pre>
2139
+ <p>The sockets type.</p>
2140
+ <p>Default value: G_SOCKET_TYPE_STREAM</p>
2141
+ </div>
2142
+ </div>
2143
+ <div class="refsect1" title="See Also">
2144
+ <a name="GSocket.see-also"></a><h2>See Also</h2>
2145
+ <a class="link" href="GInitable.html" title="GInitable"><span class="type">GInitable</span></a>
2146
+ </div>
2147
+ </div>
2148
+ <div class="footer">
2149
+ <hr>
2150
+ Generated by GTK-Doc V1.14</div>
2151
+ </body>
2152
+ </html>