glib2 1.1.9-x86-mingw32 → 1.2.0-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (517) hide show
  1. data/Rakefile +26 -4
  2. data/ext/glib2/glib2.def +3 -1
  3. data/ext/glib2/rbgcompat.h +0 -15
  4. data/ext/glib2/rbglib.h +11 -3
  5. data/ext/glib2/rbglib_source.c +6 -1
  6. data/ext/glib2/rbgobj_boxed.c +65 -48
  7. data/ext/glib2/rbgobj_convert.c +29 -14
  8. data/ext/glib2/rbgobj_value.c +42 -0
  9. data/ext/glib2/rbgobject.c +7 -4
  10. data/ext/glib2/rbgobject.h +15 -9
  11. data/lib/1.8/glib2.so +0 -0
  12. data/lib/1.9/glib2.so +0 -0
  13. data/lib/gnome2-raketask.rb +6 -1
  14. data/lib/gnome2-win32-binary-build-task.rb +40 -10
  15. data/vendor/local/bin/certtool.exe +0 -0
  16. data/vendor/local/bin/danetool.exe +0 -0
  17. data/vendor/local/bin/gdbus-codegen +1 -1
  18. data/vendor/local/bin/gdbus.exe +0 -0
  19. data/vendor/local/bin/gio-querymodules.exe +0 -0
  20. data/vendor/local/bin/glib-compile-resources.exe +0 -0
  21. data/vendor/local/bin/glib-compile-schemas.exe +0 -0
  22. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  23. data/vendor/local/bin/glib-gettextize +1 -1
  24. data/vendor/local/bin/glib-mkenums +1 -1
  25. data/vendor/local/bin/gnutls-cli-debug.exe +0 -0
  26. data/vendor/local/bin/gnutls-cli.exe +0 -0
  27. data/vendor/local/bin/gnutls-serv.exe +0 -0
  28. data/vendor/local/bin/gobject-query.exe +0 -0
  29. data/vendor/local/bin/gresource.exe +0 -0
  30. data/vendor/local/bin/gsettings.exe +0 -0
  31. data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
  32. data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
  33. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  34. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  35. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  36. data/vendor/local/bin/libgmp-10.dll +0 -0
  37. data/vendor/local/bin/libgnutls-28.dll +0 -0
  38. data/vendor/local/bin/libgnutls-openssl-27.dll +0 -0
  39. data/vendor/local/bin/libgnutls-openssl-28.def +87 -93
  40. data/vendor/local/bin/libgnutlsxx-28.dll +0 -0
  41. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  42. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  43. data/vendor/local/bin/libhogweed-2-2.dll +0 -0
  44. data/vendor/local/bin/libnettle-4-4.dll +0 -0
  45. data/vendor/local/bin/nettle-hash.exe +0 -0
  46. data/vendor/local/bin/nettle-lfib-stream.exe +0 -0
  47. data/vendor/local/bin/ocsptool.exe +0 -0
  48. data/vendor/local/bin/pkcs1-conv.exe +0 -0
  49. data/vendor/local/bin/psktool.exe +0 -0
  50. data/vendor/local/bin/sexp-conv.exe +0 -0
  51. data/vendor/local/bin/srptool.exe +0 -0
  52. data/vendor/local/{lib/libffi-3.0.6/include → include}/ffi.h +0 -0
  53. data/vendor/local/{lib/libffi-3.0.6/include → include}/ffitarget.h +0 -0
  54. data/vendor/local/include/glib-2.0/gio/gactionmap.h +0 -4
  55. data/vendor/local/include/glib-2.0/gio/gappinfo.h +1 -3
  56. data/vendor/local/include/glib-2.0/gio/gapplication.h +0 -1
  57. data/vendor/local/include/glib-2.0/gio/gapplicationcommandline.h +0 -4
  58. data/vendor/local/include/glib-2.0/gio/gcontenttype.h +0 -1
  59. data/vendor/local/include/glib-2.0/gio/gdbusnamewatching.h +1 -6
  60. data/vendor/local/include/glib-2.0/gio/gfile.h +0 -3
  61. data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +0 -3
  62. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +0 -2
  63. data/vendor/local/include/glib-2.0/gio/ginetaddressmask.h +0 -6
  64. data/vendor/local/include/glib-2.0/gio/gio.h +0 -1
  65. data/vendor/local/include/glib-2.0/gio/gioenums.h +1 -3
  66. data/vendor/local/include/glib-2.0/gio/giomodule.h +0 -5
  67. data/vendor/local/include/glib-2.0/gio/gioscheduler.h +0 -4
  68. data/vendor/local/include/glib-2.0/gio/giotypes.h +0 -1
  69. data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +0 -2
  70. data/vendor/local/include/glib-2.0/gio/gmenu.h +0 -27
  71. data/vendor/local/include/glib-2.0/gio/gmenumodel.h +0 -19
  72. data/vendor/local/include/glib-2.0/gio/gresource.h +0 -2
  73. data/vendor/local/include/glib-2.0/gio/gsettingsschema.h +0 -4
  74. data/vendor/local/include/glib-2.0/gio/gsimpleaction.h +0 -1
  75. data/vendor/local/include/glib-2.0/gio/gsimpleactiongroup.h +0 -1
  76. data/vendor/local/include/glib-2.0/gio/gsocket.h +0 -13
  77. data/vendor/local/include/glib-2.0/glib/deprecated/gthread.h +0 -1
  78. data/vendor/local/include/glib-2.0/glib/gchecksum.h +1 -3
  79. data/vendor/local/include/glib-2.0/glib/gconvert.h +9 -24
  80. data/vendor/local/include/glib-2.0/glib/gdir.h +8 -10
  81. data/vendor/local/include/glib-2.0/glib/genviron.h +8 -12
  82. data/vendor/local/include/glib-2.0/glib/gfileutils.h +15 -20
  83. data/vendor/local/include/glib-2.0/glib/giochannel.h +4 -14
  84. data/vendor/local/include/glib-2.0/glib/gslice.h +0 -4
  85. data/vendor/local/include/glib-2.0/glib/gspawn.h +10 -46
  86. data/vendor/local/include/glib-2.0/glib/gtestutils.h +0 -1
  87. data/vendor/local/include/glib-2.0/glib/gunicode.h +5 -5
  88. data/vendor/local/include/glib-2.0/glib/gutils.h +14 -14
  89. data/vendor/local/include/glib-2.0/glib/gvariant.h +0 -8
  90. data/vendor/local/include/glib-2.0/glib/gversionmacros.h +0 -24
  91. data/vendor/local/include/glib-2.0/glib/gwin32.h +7 -14
  92. data/vendor/local/include/glib-2.0/gmodule.h +7 -11
  93. data/vendor/local/include/glib-2.0/gobject/glib-types.h +0 -33
  94. data/vendor/local/include/glib-2.0/gobject/gobject.h +7 -7
  95. data/vendor/local/include/glib-2.0/gobject/gtype.h +7 -13
  96. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/__init__.py +0 -0
  97. data/vendor/local/lib/gdbus-2.0/codegen/__init__.pyc +0 -0
  98. data/vendor/local/lib/gdbus-2.0/codegen/__init__.pyo +0 -0
  99. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen.py +0 -0
  100. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen.pyc +0 -0
  101. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen.pyo +0 -0
  102. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen_docbook.py +0 -0
  103. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen_docbook.pyc +0 -0
  104. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen_docbook.pyo +0 -0
  105. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen_main.py +0 -2
  106. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen_main.pyc +0 -0
  107. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/codegen_main.pyo +0 -0
  108. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/config.py +1 -1
  109. data/vendor/local/lib/gdbus-2.0/codegen/config.pyc +0 -0
  110. data/vendor/local/lib/gdbus-2.0/codegen/config.pyo +0 -0
  111. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/dbustypes.py +0 -0
  112. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/dbustypes.pyc +0 -0
  113. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/dbustypes.pyo +0 -0
  114. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/parser.py +0 -0
  115. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/parser.pyc +0 -0
  116. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/parser.pyo +0 -0
  117. data/vendor/local/{share/glib-2.0 → lib/gdbus-2.0}/codegen/utils.py +0 -0
  118. data/vendor/local/lib/gdbus-2.0/codegen/utils.pyc +0 -0
  119. data/vendor/local/lib/gdbus-2.0/codegen/utils.pyo +0 -0
  120. data/vendor/local/lib/gio-2.0.def +2 -41
  121. data/vendor/local/lib/gio/modules/libgiognutls.a +0 -0
  122. data/vendor/local/lib/gio/modules/libgiognutls.dll +0 -0
  123. data/vendor/local/lib/gio/modules/libgiognutls.dll.a +0 -0
  124. data/vendor/local/lib/gio/modules/libgiognutls.la +1 -1
  125. data/vendor/local/lib/glib-2.0.def +0 -2
  126. data/vendor/local/lib/glib-2.0/include/glibconfig.h +1 -1
  127. data/vendor/local/lib/gobject-2.0.def +0 -4
  128. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  129. data/vendor/local/lib/libgio-2.0.la +4 -4
  130. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  131. data/vendor/local/lib/libglib-2.0.la +3 -3
  132. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  133. data/vendor/local/lib/libgmodule-2.0.la +3 -3
  134. data/vendor/local/lib/libgmp.dll.a +0 -0
  135. data/vendor/local/lib/libgnutls-openssl.a +0 -0
  136. data/vendor/local/lib/libgnutls-openssl.dll.a +0 -0
  137. data/vendor/local/lib/libgnutls.a +0 -0
  138. data/vendor/local/lib/libgnutls.dll.a +0 -0
  139. data/vendor/local/lib/libgnutlsxx.a +0 -0
  140. data/vendor/local/lib/libgnutlsxx.dll.a +0 -0
  141. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  142. data/vendor/local/lib/libgobject-2.0.la +4 -4
  143. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  144. data/vendor/local/lib/libgthread-2.0.la +3 -3
  145. data/vendor/local/lib/libhogweed.a +0 -0
  146. data/vendor/local/lib/libhogweed.dll.a +0 -0
  147. data/vendor/local/lib/libnettle.a +0 -0
  148. data/vendor/local/lib/libnettle.dll.a +0 -0
  149. data/vendor/local/lib/pkgconfig/gio-2.0.pc +1 -1
  150. data/vendor/local/lib/pkgconfig/gio-windows-2.0.pc +1 -1
  151. data/vendor/local/lib/pkgconfig/glib-2.0.pc +1 -1
  152. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +1 -1
  153. data/vendor/local/lib/pkgconfig/gmodule-export-2.0.pc +1 -1
  154. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +1 -1
  155. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +1 -1
  156. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +1 -1
  157. data/vendor/local/share/gdb/auto-load/{libglib-2.0.so.0.3503.0-gdb.py → libglib-2.0.so.0.3400.3-gdb.py} +0 -0
  158. data/vendor/local/share/gdb/auto-load/{libgobject-2.0.so.0.3503.0-gdb.py → libgobject-2.0.so.0.3400.3-gdb.py} +0 -0
  159. data/vendor/local/share/glib-2.0/gdb/glib.py +4 -0
  160. data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +2 -2
  161. data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +17 -5
  162. data/vendor/local/share/gtk-doc/html/gio/GActionMap.html +1 -1
  163. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +1 -27
  164. data/vendor/local/share/gtk-doc/html/gio/GApplication.html +15 -8
  165. data/vendor/local/share/gtk-doc/html/gio/GApplicationCommandLine.html +6 -47
  166. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +37 -21
  167. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +4 -16
  168. data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +1 -1
  169. data/vendor/local/share/gtk-doc/html/gio/GDBusAuthObserver.html +1 -1
  170. data/vendor/local/share/gtk-doc/html/gio/GDBusConnection.html +32 -16
  171. data/vendor/local/share/gtk-doc/html/gio/GDBusInterfaceSkeleton.html +1 -1
  172. data/vendor/local/share/gtk-doc/html/gio/GDBusMethodInvocation.html +1 -1
  173. data/vendor/local/share/gtk-doc/html/gio/GDBusObjectManagerClient.html +2 -4
  174. data/vendor/local/share/gtk-doc/html/gio/GDBusProxy.html +10 -6
  175. data/vendor/local/share/gtk-doc/html/gio/GDBusServer.html +7 -3
  176. data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +3 -3
  177. data/vendor/local/share/gtk-doc/html/gio/GFile.html +17 -65
  178. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +2 -59
  179. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +1 -29
  180. data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +1 -1
  181. data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +4 -4
  182. data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +0 -13
  183. data/vendor/local/share/gtk-doc/html/gio/GMount.html +1 -1
  184. data/vendor/local/share/gtk-doc/html/gio/GProxyAddress.html +2 -2
  185. data/vendor/local/share/gtk-doc/html/gio/GSettings.html +5 -5
  186. data/vendor/local/share/gtk-doc/html/gio/GSimpleAction.html +1 -1
  187. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +4 -12
  188. data/vendor/local/share/gtk-doc/html/gio/GSocket.html +1 -137
  189. data/vendor/local/share/gtk-doc/html/gio/GTestDBus.html +2 -3
  190. data/vendor/local/share/gtk-doc/html/gio/GTlsConnection.html +1 -1
  191. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1 -1
  192. data/vendor/local/share/gtk-doc/html/gio/api-index-2-26.html +0 -4
  193. data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +0 -19
  194. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +0 -180
  195. data/vendor/local/share/gtk-doc/html/gio/async.html +0 -3
  196. data/vendor/local/share/gtk-doc/html/gio/ch01.html +1 -1
  197. data/vendor/local/share/gtk-doc/html/gio/ch02.html +3 -3
  198. data/vendor/local/share/gtk-doc/html/gio/ch03.html +1 -1
  199. data/vendor/local/share/gtk-doc/html/gio/ch29.html +1 -1
  200. data/vendor/local/share/gtk-doc/html/gio/ch30.html +4 -4
  201. data/vendor/local/share/gtk-doc/html/gio/ch30s02.html +2 -2
  202. data/vendor/local/share/gtk-doc/html/gio/ch30s03.html +3 -3
  203. data/vendor/local/share/gtk-doc/html/gio/ch31.html +3 -3
  204. data/vendor/local/share/gtk-doc/html/gio/ch31s02.html +1 -1
  205. data/vendor/local/share/gtk-doc/html/gio/ch31s03.html +1 -1
  206. data/vendor/local/share/gtk-doc/html/gio/ch31s04.html +1 -1
  207. data/vendor/local/share/gtk-doc/html/gio/ch31s05.html +1 -1
  208. data/vendor/local/share/gtk-doc/html/gio/ch31s06.html +2 -2
  209. data/vendor/local/share/gtk-doc/html/gio/ch31s07.html +1 -1
  210. data/vendor/local/share/gtk-doc/html/gio/ch32.html +3 -3
  211. data/vendor/local/share/gtk-doc/html/gio/ch32s02.html +1 -1
  212. data/vendor/local/share/gtk-doc/html/gio/ch32s03.html +1 -1
  213. data/vendor/local/share/gtk-doc/html/gio/ch32s04.html +1 -1
  214. data/vendor/local/share/gtk-doc/html/gio/ch32s05.html +17 -9
  215. data/vendor/local/share/gtk-doc/html/gio/gdbus-codegen.html +11 -11
  216. data/vendor/local/share/gtk-doc/html/gio/gdbus-org.gtk.GDBus.Example.ObjectManager.Animal.html +2 -2
  217. data/vendor/local/share/gtk-doc/html/gio/gdbus.html +6 -6
  218. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Introspection-Data.html +5 -5
  219. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Utilities.html +1 -1
  220. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +0 -109
  221. data/vendor/local/share/gtk-doc/html/gio/gio-GDBusError.html +1 -1
  222. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +2 -2
  223. data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +1 -7
  224. data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +12 -29
  225. data/vendor/local/share/gtk-doc/html/gio/gio-GResource.html +1 -1
  226. data/vendor/local/share/gtk-doc/html/gio/gio-Owning-Bus-Names.html +7 -3
  227. data/vendor/local/share/gtk-doc/html/gio/gio-Watching-Bus-Names.html +8 -10
  228. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +0 -1
  229. data/vendor/local/share/gtk-doc/html/gio/gio-querymodules.html +1 -1
  230. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +11 -64
  231. data/vendor/local/share/gtk-doc/html/gio/glib-compile-resources.html +3 -15
  232. data/vendor/local/share/gtk-doc/html/gio/glib-compile-schemas.html +2 -2
  233. data/vendor/local/share/gtk-doc/html/gio/gresource-tool.html +2 -2
  234. data/vendor/local/share/gtk-doc/html/gio/gsettings-tool.html +2 -2
  235. data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +2 -2
  236. data/vendor/local/share/gtk-doc/html/gio/index.html +4 -10
  237. data/vendor/local/share/gtk-doc/html/gio/index.sgml +0 -59
  238. data/vendor/local/share/gtk-doc/html/gio/migrating.html +3 -3
  239. data/vendor/local/share/gtk-doc/html/gio/networking.html +0 -3
  240. data/vendor/local/share/gtk-doc/html/gio/pt01.html +1 -1
  241. data/vendor/local/share/gtk-doc/html/gio/pt02.html +1 -7
  242. data/vendor/local/share/gtk-doc/html/glib/api-index-2-34.html +0 -4
  243. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +1 -21
  244. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +2 -2
  245. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +1 -1
  246. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +4 -13
  247. data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +2 -2
  248. data/vendor/local/share/gtk-doc/html/glib/glib-Deprecated-Thread-APIs.html +11 -7
  249. data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +2 -2
  250. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +1 -1
  251. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +10 -86
  252. data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +46 -5
  253. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +7 -11
  254. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +3 -3
  255. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +4 -4
  256. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +3 -3
  257. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +34 -27
  258. data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +1 -1
  259. data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +2 -2
  260. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +2 -2
  261. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +2 -23
  262. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +14 -14
  263. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +6 -6
  264. data/vendor/local/share/gtk-doc/html/glib/glib-UNIX-specific-utilities-and-integration.html +7 -13
  265. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +5 -9
  266. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +4 -28
  267. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +2 -2
  268. data/vendor/local/share/gtk-doc/html/glib/glib-building.html +1 -1
  269. data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +2 -2
  270. data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +1 -1
  271. data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +3 -3
  272. data/vendor/local/share/gtk-doc/html/glib/glib-programming.html +3 -3
  273. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +45 -45
  274. data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +3 -3
  275. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +6 -6
  276. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +25 -32
  277. data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +3 -3
  278. data/vendor/local/share/gtk-doc/html/glib/gtester.html +3 -3
  279. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +12 -12
  280. data/vendor/local/share/gtk-doc/html/glib/gvariant-text.html +2 -2
  281. data/vendor/local/share/gtk-doc/html/glib/index.html +1 -1
  282. data/vendor/local/share/gtk-doc/html/glib/index.sgml +0 -7
  283. data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +0 -12
  284. data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +0 -12
  285. data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +4 -4
  286. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +4 -4
  287. data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +2 -2
  288. data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +8 -8
  289. data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +6 -6
  290. data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +5 -5
  291. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +0 -22
  292. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +5 -1
  293. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +32 -6
  294. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +6 -6
  295. data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +24 -51
  296. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +4 -4
  297. data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +3 -3
  298. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +8 -11
  299. data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +2 -2
  300. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +2 -2
  301. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +3 -3
  302. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +3 -3
  303. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +2 -2
  304. data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +2 -2
  305. data/vendor/local/share/gtk-doc/html/gobject/index.html +7 -7
  306. data/vendor/local/share/gtk-doc/html/gobject/index.sgml +0 -3
  307. data/vendor/local/share/gtk-doc/html/gobject/pr01.html +1 -1
  308. data/vendor/local/share/gtk-doc/html/gobject/pt01.html +4 -4
  309. data/vendor/local/share/gtk-doc/html/gobject/pt02.html +4 -4
  310. data/vendor/local/share/gtk-doc/html/gobject/pt03.html +1 -1
  311. data/vendor/local/share/gtk-doc/html/gobject/rn01.html +1 -1
  312. data/vendor/local/share/gtk-doc/html/gobject/rn02.html +1 -1
  313. data/vendor/local/share/gtk-doc/html/gobject/signal.html +4 -4
  314. data/vendor/local/share/locale/as/LC_MESSAGES/glib20.mo +0 -0
  315. data/vendor/local/share/locale/cs/LC_MESSAGES/glib-networking.mo +0 -0
  316. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  317. data/vendor/local/share/locale/es/LC_MESSAGES/glib-networking.mo +0 -0
  318. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  319. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  320. data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
  321. data/vendor/local/share/locale/he/LC_MESSAGES/glib-networking.mo +0 -0
  322. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  323. data/vendor/local/share/locale/kn/LC_MESSAGES/glib20.mo +0 -0
  324. data/vendor/local/share/locale/lt/LC_MESSAGES/glib-networking.mo +0 -0
  325. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  326. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  327. data/vendor/local/share/locale/or/LC_MESSAGES/glib20.mo +0 -0
  328. data/vendor/local/share/locale/pl/LC_MESSAGES/glib-networking.mo +0 -0
  329. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  330. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  331. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  332. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  333. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  334. data/vendor/local/share/man/man1/gdbus-codegen.1 +1 -1
  335. data/vendor/local/share/man/man1/gdbus.1 +1 -1
  336. data/vendor/local/share/man/man1/gio-querymodules.1 +1 -1
  337. data/vendor/local/share/man/man1/glib-compile-resources.1 +1 -13
  338. data/vendor/local/share/man/man1/glib-compile-schemas.1 +1 -1
  339. data/vendor/local/share/man/man1/glib-genmarshal.1 +1 -1
  340. data/vendor/local/share/man/man1/glib-gettextize.1 +1 -1
  341. data/vendor/local/share/man/man1/glib-mkenums.1 +1 -1
  342. data/vendor/local/share/man/man1/gobject-query.1 +1 -1
  343. data/vendor/local/share/man/man1/gresource.1 +1 -1
  344. data/vendor/local/share/man/man1/gsettings.1 +1 -1
  345. data/vendor/local/share/man/man1/gtester-report.1 +1 -1
  346. data/vendor/local/share/man/man1/gtester.1 +1 -1
  347. metadata +33 -197
  348. data/ext/glib2/rbgobj_fundamental.c +0 -43
  349. data/vendor/local/bin/asn1Coding.exe +0 -0
  350. data/vendor/local/bin/asn1Decoding.exe +0 -0
  351. data/vendor/local/bin/asn1Parser.exe +0 -0
  352. data/vendor/local/bin/dumpsexp.exe +0 -0
  353. data/vendor/local/bin/gpg-error.exe +0 -0
  354. data/vendor/local/bin/hmac256.exe +0 -0
  355. data/vendor/local/bin/libgcrypt-11.dll +0 -0
  356. data/vendor/local/bin/libgcrypt-config +0 -177
  357. data/vendor/local/bin/libgnutls-26.dll +0 -0
  358. data/vendor/local/bin/libgnutls-extra-26.dll +0 -0
  359. data/vendor/local/bin/libgnutls-openssl-26.dll +0 -0
  360. data/vendor/local/bin/libgpg-error-0.dll +0 -0
  361. data/vendor/local/bin/libtasn1-3.dll +0 -0
  362. data/vendor/local/etc/bash_completion.d/gdbus-bash-completion.sh +0 -33
  363. data/vendor/local/etc/bash_completion.d/gsettings-bash-completion.sh +0 -67
  364. data/vendor/local/gnutls.README.txt +0 -6
  365. data/vendor/local/include/gcrypt-module.h +0 -226
  366. data/vendor/local/include/gcrypt.h +0 -1826
  367. data/vendor/local/include/glib-2.0/gio/gnetworking.h +0 -83
  368. data/vendor/local/include/glib-2.0/gio/gtask.h +0 -160
  369. data/vendor/local/include/glib-2.0/glib/gcache.h +0 -69
  370. data/vendor/local/include/glib-2.0/glib/gcompletion.h +0 -81
  371. data/vendor/local/include/glib-2.0/glib/grel.h +0 -101
  372. data/vendor/local/include/gnutls/extra.h +0 -137
  373. data/vendor/local/include/gpg-error.h +0 -651
  374. data/vendor/local/include/libtasn1.h +0 -246
  375. data/vendor/local/lib/gio-2.0.lib +0 -0
  376. data/vendor/local/lib/glib-2.0.lib +0 -0
  377. data/vendor/local/lib/gmodule-2.0.lib +0 -0
  378. data/vendor/local/lib/gobject-2.0.lib +0 -0
  379. data/vendor/local/lib/gthread-2.0.lib +0 -0
  380. data/vendor/local/lib/libgcrypt.def +0 -237
  381. data/vendor/local/lib/libgcrypt.dll.a +0 -0
  382. data/vendor/local/lib/libgnutls-extra.dll.a +0 -0
  383. data/vendor/local/lib/libgpg-error.dll.a +0 -0
  384. data/vendor/local/lib/libtasn1.dll.a +0 -0
  385. data/vendor/local/manifest/glib-dev_2.28.8-1_win32.mft +0 -619
  386. data/vendor/local/manifest/glib_2.28.8-1_win32.mft +0 -103
  387. data/vendor/local/manifest/gnutls-dev_2.4.2-1_win32.mft +0 -593
  388. data/vendor/local/manifest/gnutls_2.4.2-1_win32.mft +0 -8
  389. data/vendor/local/share/aclocal/gpg-error.m4 +0 -65
  390. data/vendor/local/share/aclocal/libgcrypt.m4 +0 -108
  391. data/vendor/local/share/aclocal/libgnutls-extra.m4 +0 -161
  392. data/vendor/local/share/aclocal/libgnutls.m4 +0 -160
  393. data/vendor/local/share/aclocal/libtasn1.m4 +0 -160
  394. data/vendor/local/share/common-lisp/source/gpg-error/gpg-error-codes.lisp +0 -417
  395. data/vendor/local/share/common-lisp/source/gpg-error/gpg-error-package.lisp +0 -64
  396. data/vendor/local/share/common-lisp/source/gpg-error/gpg-error.asd +0 -36
  397. data/vendor/local/share/common-lisp/source/gpg-error/gpg-error.lisp +0 -236
  398. data/vendor/local/share/doc/glib-2.28.8/COPYING +0 -482
  399. data/vendor/local/share/doc/glib-dev-2.28.8/COPYING +0 -482
  400. data/vendor/local/share/glib-2.0/codegen/__init__.pyc +0 -0
  401. data/vendor/local/share/glib-2.0/codegen/__init__.pyo +0 -0
  402. data/vendor/local/share/glib-2.0/codegen/config.pyc +0 -0
  403. data/vendor/local/share/glib-2.0/codegen/config.pyo +0 -0
  404. data/vendor/local/share/glib-2.0/codegen/utils.pyc +0 -0
  405. data/vendor/local/share/glib-2.0/codegen/utils.pyo +0 -0
  406. data/vendor/local/share/gtk-doc/html/gio/GDBusError.html +0 -879
  407. data/vendor/local/share/gtk-doc/html/gio/GTask.html +0 -2296
  408. data/vendor/local/share/gtk-doc/html/gio/ch26.html +0 -75
  409. data/vendor/local/share/gtk-doc/html/gio/ch27.html +0 -217
  410. data/vendor/local/share/gtk-doc/html/gio/ch27s02.html +0 -41
  411. data/vendor/local/share/gtk-doc/html/gio/ch27s03.html +0 -39
  412. data/vendor/local/share/gtk-doc/html/gio/ch28.html +0 -57
  413. data/vendor/local/share/gtk-doc/html/gio/ch28s02.html +0 -59
  414. data/vendor/local/share/gtk-doc/html/gio/ch28s03.html +0 -159
  415. data/vendor/local/share/gtk-doc/html/gio/ch28s04.html +0 -46
  416. data/vendor/local/share/gtk-doc/html/gio/ch28s05.html +0 -48
  417. data/vendor/local/share/gtk-doc/html/gio/ch28s06.html +0 -279
  418. data/vendor/local/share/gtk-doc/html/gio/ch28s07.html +0 -160
  419. data/vendor/local/share/gtk-doc/html/gio/ch29s02.html +0 -130
  420. data/vendor/local/share/gtk-doc/html/gio/ch29s03.html +0 -202
  421. data/vendor/local/share/gtk-doc/html/gio/ch29s04.html +0 -96
  422. data/vendor/local/share/gtk-doc/html/gio/ch29s05.html +0 -823
  423. data/vendor/local/share/gtk-doc/html/gio/ch29s06.html +0 -828
  424. data/vendor/local/share/gtk-doc/html/gio/gio-gnetworking.h.html +0 -91
  425. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +0 -1956
  426. data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +0 -389
  427. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +0 -137
  428. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +0 -679
  429. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +0 -2218
  430. data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +0 -113
  431. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +0 -766
  432. data/vendor/local/share/info/gcrypt.info +0 -6243
  433. data/vendor/local/share/info/gnutls-certificate-user-use-case.png +0 -0
  434. data/vendor/local/share/info/gnutls-extensions_st.png +0 -0
  435. data/vendor/local/share/info/gnutls-mod_auth_st.png +0 -0
  436. data/vendor/local/share/info/gnutls-objects.png +0 -0
  437. data/vendor/local/share/info/libtasn1.info +0 -2993
  438. data/vendor/local/share/man/man1/asn1Coding.1 +0 -46
  439. data/vendor/local/share/man/man1/asn1Decoding.1 +0 -41
  440. data/vendor/local/share/man/man1/asn1Parser.1 +0 -49
  441. data/vendor/local/share/man/man3/asn1_array2tree.3 +0 -47
  442. data/vendor/local/share/man/man3/asn1_bit_der.3 +0 -39
  443. data/vendor/local/share/man/man3/asn1_check_version.3 +0 -39
  444. data/vendor/local/share/man/man3/asn1_copy_node.3 +0 -39
  445. data/vendor/local/share/man/man3/asn1_create_element.3 +0 -45
  446. data/vendor/local/share/man/man3/asn1_delete_element.3 +0 -39
  447. data/vendor/local/share/man/man3/asn1_delete_structure.3 +0 -37
  448. data/vendor/local/share/man/man3/asn1_der_coding.3 +0 -52
  449. data/vendor/local/share/man/man3/asn1_der_decoding.3 +0 -50
  450. data/vendor/local/share/man/man3/asn1_der_decoding_element.3 +0 -54
  451. data/vendor/local/share/man/man3/asn1_der_decoding_startEnd.3 +0 -58
  452. data/vendor/local/share/man/man3/asn1_expand_any_defined_by.3 +0 -45
  453. data/vendor/local/share/man/man3/asn1_expand_octet_string.3 +0 -51
  454. data/vendor/local/share/man/man3/asn1_find_node.3 +0 -38
  455. data/vendor/local/share/man/man3/asn1_find_structure_from_oid.3 +0 -37
  456. data/vendor/local/share/man/man3/asn1_get_bit_der.3 +0 -43
  457. data/vendor/local/share/man/man3/asn1_get_length_der.3 +0 -38
  458. data/vendor/local/share/man/man3/asn1_get_octet_der.3 +0 -43
  459. data/vendor/local/share/man/man3/asn1_get_tag_der.3 +0 -41
  460. data/vendor/local/share/man/man3/asn1_length_der.3 +0 -36
  461. data/vendor/local/share/man/man3/asn1_number_of_elements.3 +0 -43
  462. data/vendor/local/share/man/man3/asn1_octet_der.3 +0 -37
  463. data/vendor/local/share/man/man3/asn1_parser2array.3 +0 -58
  464. data/vendor/local/share/man/man3/asn1_parser2tree.3 +0 -55
  465. data/vendor/local/share/man/man3/asn1_print_structure.3 +0 -40
  466. data/vendor/local/share/man/man3/asn1_read_tag.3 +0 -46
  467. data/vendor/local/share/man/man3/asn1_read_value.3 +0 -92
  468. data/vendor/local/share/man/man3/asn1_write_value.3 +0 -136
  469. data/vendor/local/share/man/man3/gnutls_certificate_client_set_retrieve_function.3 +0 -58
  470. data/vendor/local/share/man/man3/gnutls_certificate_get_openpgp_keyring.3 +0 -37
  471. data/vendor/local/share/man/man3/gnutls_certificate_get_x509_cas.3 +0 -40
  472. data/vendor/local/share/man/man3/gnutls_certificate_get_x509_crls.3 +0 -40
  473. data/vendor/local/share/man/man3/gnutls_certificate_server_set_retrieve_function.3 +0 -47
  474. data/vendor/local/share/man/man3/gnutls_certificate_verify_peers.3 +0 -44
  475. data/vendor/local/share/man/man3/gnutls_crypto_cipher_register.3 +0 -45
  476. data/vendor/local/share/man/man3/gnutls_crypto_digest_register.3 +0 -45
  477. data/vendor/local/share/man/man3/gnutls_crypto_mac_register.3 +0 -45
  478. data/vendor/local/share/man/man3/gnutls_crypto_rnd_register.3 +0 -43
  479. data/vendor/local/share/man/man3/gnutls_extra_check_version.3 +0 -36
  480. data/vendor/local/share/man/man3/gnutls_free.3 +0 -34
  481. data/vendor/local/share/man/man3/gnutls_global_init_extra.3 +0 -38
  482. data/vendor/local/share/man/man3/gnutls_ia_allocate_client_credentials.3 +0 -42
  483. data/vendor/local/share/man/man3/gnutls_ia_allocate_server_credentials.3 +0 -42
  484. data/vendor/local/share/man/man3/gnutls_ia_enable.3 +0 -53
  485. data/vendor/local/share/man/man3/gnutls_ia_endphase_send.3 +0 -43
  486. data/vendor/local/share/man/man3/gnutls_ia_extract_inner_secret.3 +0 -44
  487. data/vendor/local/share/man/man3/gnutls_ia_free_client_credentials.3 +0 -34
  488. data/vendor/local/share/man/man3/gnutls_ia_free_server_credentials.3 +0 -34
  489. data/vendor/local/share/man/man3/gnutls_ia_generate_challenge.3 +0 -40
  490. data/vendor/local/share/man/man3/gnutls_ia_get_client_avp_ptr.3 +0 -36
  491. data/vendor/local/share/man/man3/gnutls_ia_get_server_avp_ptr.3 +0 -36
  492. data/vendor/local/share/man/man3/gnutls_ia_handshake.3 +0 -36
  493. data/vendor/local/share/man/man3/gnutls_ia_handshake_p.3 +0 -37
  494. data/vendor/local/share/man/man3/gnutls_ia_permute_inner_secret.3 +0 -43
  495. data/vendor/local/share/man/man3/gnutls_ia_recv.3 +0 -57
  496. data/vendor/local/share/man/man3/gnutls_ia_send.3 +0 -56
  497. data/vendor/local/share/man/man3/gnutls_ia_set_client_avp_function.3 +0 -61
  498. data/vendor/local/share/man/man3/gnutls_ia_set_client_avp_ptr.3 +0 -36
  499. data/vendor/local/share/man/man3/gnutls_ia_set_server_avp_function.3 +0 -68
  500. data/vendor/local/share/man/man3/gnutls_ia_set_server_avp_ptr.3 +0 -36
  501. data/vendor/local/share/man/man3/gnutls_ia_verify_endphase.3 +0 -45
  502. data/vendor/local/share/man/man3/gnutls_malloc.3 +0 -37
  503. data/vendor/local/share/man/man3/gnutls_openpgp_privkey_get_subkey_expiration_time.3 +0 -40
  504. data/vendor/local/share/man/man3/gnutls_oprfi_enable_client.3 +0 -42
  505. data/vendor/local/share/man/man3/gnutls_oprfi_enable_server.3 +0 -49
  506. data/vendor/local/share/man/man3/gnutls_psk_netconf_derive_key.3 +0 -44
  507. data/vendor/local/share/man/man3/gnutls_session_get_client_random.3 +0 -40
  508. data/vendor/local/share/man/man3/gnutls_session_get_master_secret.3 +0 -43
  509. data/vendor/local/share/man/man3/gnutls_session_get_server_random.3 +0 -40
  510. data/vendor/local/share/man/man3/gnutls_sign_algorithm_get_name.3 +0 -35
  511. data/vendor/local/share/man/man3/gnutls_transport_set_global_errno.3 +0 -47
  512. data/vendor/local/share/man/man3/gnutls_transport_set_lowat.3 +0 -40
  513. data/vendor/local/share/man/man3/gnutls_x509_privkey_verify_data.3 +0 -43
  514. data/vendor/local/share/man/man3/libtasn1_perror.3 +0 -32
  515. data/vendor/local/share/man/man3/libtasn1_strerror.3 +0 -35
  516. data/vendor/local/src/dieterv/packaging/glib_2.28.8-1_win32.log +0 -2919
  517. data/vendor/local/src/dieterv/packaging/glib_2.28.8-1_win32.sh +0 -157
@@ -1,2993 +0,0 @@
1
- This is libtasn1.info, produced by makeinfo version 4.11 from
2
- libtasn1.texi.
3
-
4
- This manual is for Libtasn1 (version 1.5, 26 August 2008), which is a
5
- library for Abstract Syntax Notation One (ASN.1) and Distinguish
6
- Encoding Rules (DER) manipulation.
7
-
8
- Copyright (C) 2004, 2006, 2007, 2008 Free Software Foundation
9
- Copyright (C) 2001, 2002, 2003 Fabio Fiorina
10
-
11
- Permission is granted to copy, distribute and/or modify this
12
- document under the terms of the GNU Free Documentation License,
13
- Version 1.2 or any later version published by the Free Software
14
- Foundation; with no Invariant Sections, no Front-Cover Texts, and
15
- no Back-Cover Texts. A copy of the license is included in the
16
- section entitled "GNU Free Documentation License".
17
-
18
- INFO-DIR-SECTION GNU Libraries
19
- START-INFO-DIR-ENTRY
20
- * libtasn1: (libtasn1). Library for Abstract Syntax Notation One (ASN.1).
21
- END-INFO-DIR-ENTRY
22
-
23
- 
24
- File: libtasn1.info, Node: Top, Next: Introduction, Up: (dir)
25
-
26
- Libtasn1
27
- ********
28
-
29
- This manual is for Libtasn1 (version 1.5, 26 August 2008), which is a
30
- library for Abstract Syntax Notation One (ASN.1) and Distinguish
31
- Encoding Rules (DER) manipulation.
32
-
33
- Copyright (C) 2004, 2006, 2007, 2008 Free Software Foundation
34
- Copyright (C) 2001, 2002, 2003 Fabio Fiorina
35
-
36
- Permission is granted to copy, distribute and/or modify this
37
- document under the terms of the GNU Free Documentation License,
38
- Version 1.2 or any later version published by the Free Software
39
- Foundation; with no Invariant Sections, no Front-Cover Texts, and
40
- no Back-Cover Texts. A copy of the license is included in the
41
- section entitled "GNU Free Documentation License".
42
-
43
- * Menu:
44
-
45
- * Introduction::
46
- * ASN.1 structure handling::
47
- * Utilities::
48
- * Function reference::
49
- * Copying Information::
50
-
51
- Indices
52
-
53
- * Concept Index:: Index of concepts and programs.
54
- * Function and Data Index:: Index of functions, variables and data types.
55
-
56
- 
57
- File: libtasn1.info, Node: Introduction, Next: ASN.1 structure handling, Prev: Top, Up: Top
58
-
59
- 1 Introduction
60
- **************
61
-
62
- This document describes the Libtasn1 library developed for ASN.1
63
- (Abstract Syntax Notation One) structures management and DER
64
- (Distinguished Encoding Rules) encoding functions.
65
-
66
- The main features of this library are:
67
-
68
- * On line ASN1 structure management that doesn't require any C code
69
- file generation.
70
-
71
- * Off line ASN1 structure management with C code file generation
72
- containing an array.
73
-
74
- * DER (Distinguish Encoding Rules) encoding.
75
-
76
- * No limits for INTEGER and ENUMERATED values.
77
-
78
- * It's Free Software. Anybody can use, modify, and redistribute the
79
- library under the terms of the GNU Lesser General Public License
80
- version 2.1 (*note GNU LGPL::). The command line tools,
81
- self-tests and build infrastructure are licensed under the GNU
82
- General Public License version 3.0 (*note GNU GPL::).
83
-
84
- * It's thread-safe. No global variables are used and multiple
85
- library handles and session handles may be used in parallel.
86
-
87
- * It's portable. It should work on all Unix like operating systems,
88
- including Windows. The library itself should be portable to any
89
- C89 system, not even POSIX is required.
90
-
91
- 
92
- File: libtasn1.info, Node: ASN.1 structure handling, Next: Utilities, Prev: Introduction, Up: Top
93
-
94
- 2 ASN.1 structure handling
95
- **************************
96
-
97
- * Menu:
98
-
99
- * ASN.1 syntax::
100
- * Naming::
101
- * Library Notes::
102
- * Future developments::
103
-
104
- 
105
- File: libtasn1.info, Node: ASN.1 syntax, Next: Naming, Up: ASN.1 structure handling
106
-
107
- 2.1 ASN.1 syntax
108
- ================
109
-
110
- The parser is case sensitive. The comments begin with "- " and end at
111
- the end of lines. An example is in "pkix.asn" file. ASN.1 definitions
112
- must have this syntax:
113
-
114
-
115
- definitions_name {<object definition>}
116
-
117
- DEFINITIONS <EXPLICIT or IMPLICIT> TAGS ::=
118
-
119
- BEGIN
120
-
121
- <type and constants definitions>
122
-
123
- END
124
-
125
- The token "::=" must be separate from others elements, so this is a
126
- wrong declaration:
127
-
128
- ;; INCORRECT
129
- Version ::=INTEGER
130
-
131
- the correct form is:
132
-
133
- Version ::= INTEGER
134
-
135
- Here is the list of types that the parser can manage:
136
-
137
- * INTEGER
138
-
139
- * ENUMERATED
140
-
141
- * BOOLEAN
142
-
143
- * OBJECT IDENTIFIER
144
-
145
- * NULL
146
-
147
- * BIT STRING
148
-
149
- * OCTET STRING
150
-
151
- * UTCTime
152
-
153
- * GeneralizedTime
154
-
155
- * GeneralString
156
-
157
- * SEQUENCE
158
-
159
- * SEQUENCE OF
160
-
161
- * SET
162
-
163
- * SET OF
164
-
165
- * CHOICE
166
-
167
- * ANY
168
-
169
- * ANY DEFINED BY
170
-
171
-
172
- This version doesn't manage REAL type. It doesn't allow the "EXPORT"
173
- and "IMPORT" sections too.
174
-
175
- The SIZE constraints are allowed, but no check is done on them.
176
-
177
- 
178
- File: libtasn1.info, Node: Naming, Next: Library Notes, Prev: ASN.1 syntax, Up: ASN.1 structure handling
179
-
180
- 2.2 Naming
181
- ==========
182
-
183
- Consider this definition:
184
-
185
-
186
- Example { 1 2 3 4 }
187
-
188
- DEFINITIONS EXPLICIT TAGS ::=
189
-
190
- BEGIN
191
-
192
- Group ::= SEQUENCE {
193
- id OBJECT IDENTIFIER,
194
- value Value
195
- }
196
-
197
- Value ::= SEQUENCE {
198
- value1 INTEGER,
199
- value2 BOOLEAN
200
- }
201
-
202
- END
203
-
204
- To identify the type 'Group' you have to use the null terminated
205
- string "Example.Group". These strings are used in functions that are
206
- described below.
207
-
208
- Others examples:
209
-
210
- Field 'id' in 'Group' type : "Example.Group.id".
211
-
212
- Field 'value1' in field 'value' in type 'Group':
213
- "Example.Group.value.value1".
214
-
215
- Elements of structured types that don't have a name, receive the name
216
- "?1","?2", and so on.
217
-
218
- The name "?LAST" indicates the last element of a `SET_OF' or
219
- `SEQUENCE_OF'.
220
-
221
- 
222
- File: libtasn1.info, Node: Library Notes, Next: Future developments, Prev: Naming, Up: ASN.1 structure handling
223
-
224
- 2.3 Library Notes
225
- =================
226
-
227
- The header file of this library is `libtasn1.h'.
228
-
229
- The main type used in it is `ASN1_TYPE', and it's used to store the
230
- ASN.1 definitions and structures (instances).
231
-
232
- The constant ASN1_TYPE_EMPTY can be used for the variable
233
- initialization. For example:
234
-
235
- ASN1_TYPE definitions=ASN1_TYPE_EMPTY;
236
-
237
- Some functions require a parameter named errorDescription of char*
238
- type. The array must be already allocated and must have at least
239
- `MAX_ERROR_DESCRIPTION_SIZE' bytes (E.g, as in `char
240
- Description[MAX_ERROR_DESCRIPTION_SIZE];').
241
-
242
- `MAX_NAME_SIZE' indicates the maximum number of characters of a name
243
- inside a file with ASN1 definitions.
244
-
245
- 
246
- File: libtasn1.info, Node: Future developments, Prev: Library Notes, Up: ASN.1 structure handling
247
-
248
- 2.4 Future developments
249
- =======================
250
-
251
- * Add functions for a C code file generation containing equivalent
252
- data structures (not a single array like now).
253
-
254
- * Type REAL.
255
-
256
-
257
- 
258
- File: libtasn1.info, Node: Utilities, Next: Function reference, Prev: ASN.1 structure handling, Up: Top
259
-
260
- 3 Utilities
261
- ***********
262
-
263
- * Menu:
264
-
265
- * Invoking asn1Parser::
266
- * Invoking asn1Coding::
267
- * Invoking asn1Decoding::
268
-
269
- 
270
- File: libtasn1.info, Node: Invoking asn1Parser, Next: Invoking asn1Coding, Up: Utilities
271
-
272
- 3.1 Invoking asn1Parser
273
- =======================
274
-
275
- `asn1Parser' reads one file with ASN1 definitions and generates a file
276
- with an array to use with libtasn1 functions.
277
-
278
-
279
- Usage: asn1Parser [options] file
280
-
281
- Options:
282
- -h : shows the help message.
283
- -v : shows version information and exit.
284
- -c : checks the syntax only.
285
- -o file : output file.
286
- -n name : array name.
287
-
288
- 
289
- File: libtasn1.info, Node: Invoking asn1Coding, Next: Invoking asn1Decoding, Prev: Invoking asn1Parser, Up: Utilities
290
-
291
- 3.2 Invoking asn1Coding
292
- =======================
293
-
294
- `asn1Coding' generates a DER encoding from a file with ASN1 definitions
295
- and another one with assignments.
296
-
297
- The file with assignments must have this syntax:
298
-
299
-
300
- InstanceName Asn1Definition
301
-
302
- nameString value
303
-
304
- nameString value
305
- ...
306
-
307
- The output file is a binary file with the DER encoding.
308
-
309
-
310
- Usage: asn1Coding [options] file1 file2
311
- file1 : file with ASN1 definitions.
312
- file2 : file with assignments.
313
- Options:
314
- -h : shows the help message.
315
- -v : shows version information and exit.
316
- -c : checks the syntax only.
317
- -o file : output file.
318
-
319
- 
320
- File: libtasn1.info, Node: Invoking asn1Decoding, Prev: Invoking asn1Coding, Up: Utilities
321
-
322
- 3.3 Invoking asn1Decoding
323
- =========================
324
-
325
- `asn1Decoding' generates an ASN1 structure from a file with ASN1
326
- definitions and a binary file with a DER encoding.
327
-
328
-
329
- Usage: asn1Decoding [options] file1 file2 type
330
- file1 : file with ASN1 definitions.
331
- file2 : binary file with a DER encoding.
332
- type : ASN1 definition name.
333
- Options:
334
- -h : shows the help message.
335
- -v : shows version information and exit.
336
- -c : checks the syntax only.
337
- -o file : output file.
338
-
339
- 
340
- File: libtasn1.info, Node: Function reference, Next: Copying Information, Prev: Utilities, Up: Top
341
-
342
- 4 Function reference
343
- ********************
344
-
345
- * Menu:
346
-
347
- * ASN.1 schema functions::
348
- * ASN.1 field functions::
349
- * DER functions::
350
- * Error handling functions::
351
- * Auxilliary functions::
352
-
353
- 
354
- File: libtasn1.info, Node: ASN.1 schema functions, Next: ASN.1 field functions, Up: Function reference
355
-
356
- 4.1 ASN.1 schema functions
357
- ==========================
358
-
359
- asn1_parser2tree
360
- ----------------
361
-
362
- -- Function: asn1_retCode asn1_parser2tree (const char * FILE_NAME,
363
- ASN1_TYPE * DEFINITIONS, char * ERRORDESCRIPTION)
364
- FILE_NAME: specify the path and the name of file that contains
365
- ASN.1 declarations.
366
-
367
- DEFINITIONS: return the pointer to the structure created from
368
- "file_name" ASN.1 declarations.
369
-
370
- ERRORDESCRIPTION: return the error description or an empty string
371
- if success.
372
-
373
- Creates the structures needed to manage the definitions included
374
- in *FILE_NAME file.
375
-
376
- *Returns:* *ASN1_SUCCESS:* The file has a correct syntax and every
377
- identifier is known.
378
-
379
- *ASN1_ELEMENT_NOT_EMPTY:* *POINTER not ASN1_TYPE_EMPTY.
380
-
381
- *ASN1_FILE_NOT_FOUND:* An error occured while opening FILE_NAME.
382
-
383
- *ASN1_SYNTAX_ERROR:* The syntax is not correct.
384
-
385
- *ASN1_IDENTIFIER_NOT_FOUND:* In the file there is an identifier
386
- that is not defined.
387
-
388
- *ASN1_NAME_TOO_LONG:* In the file there is an identifier whith more
389
- than MAX_NAME_SIZE characters.
390
-
391
- asn1_parser2array
392
- -----------------
393
-
394
- -- Function: int asn1_parser2array (const char * INPUTFILENAME, const
395
- char * OUTPUTFILENAME, const char * VECTORNAME, char *
396
- ERRORDESCRIPTION)
397
- INPUTFILENAME: specify the path and the name of file that contains
398
- ASN.1 declarations.
399
-
400
- OUTPUTFILENAME: specify the path and the name of file that will
401
- contain the C vector definition.
402
-
403
- VECTORNAME: specify the name of the C vector.
404
-
405
- ERRORDESCRIPTION: return the error description or an empty string
406
- if success.
407
-
408
- Creates a file containing a C vector to use to manage the
409
- definitions included in *INPUTFILENAME file. If *INPUTFILENAME is
410
- "/aa/bb/xx.yy" and OUTPUTFILENAME is NULL, the file created is
411
- "/aa/bb/xx_asn1_tab.c". If VECTORNAME is NULL the vector name
412
- will be "xx_asn1_tab".
413
-
414
- *Returns:* *ASN1_SUCCESS:* The file has a correct syntax and every
415
- identifier is known.
416
-
417
- *ASN1_FILE_NOT_FOUND:* An error occured while opening FILE_NAME.
418
-
419
- *ASN1_SYNTAX_ERROR:* The syntax is not correct.
420
-
421
- *ASN1_IDENTIFIER_NOT_FOUND:* In the file there is an identifier
422
- that is not defined.
423
-
424
- *ASN1_NAME_TOO_LONG:* In the file there is an identifier whith more
425
- than MAX_NAME_SIZE characters.
426
-
427
- 
428
- File: libtasn1.info, Node: ASN.1 field functions, Next: DER functions, Prev: ASN.1 schema functions, Up: Function reference
429
-
430
- 4.2 ASN.1 field functions
431
- =========================
432
-
433
- asn1_array2tree
434
- ---------------
435
-
436
- -- Function: asn1_retCode asn1_array2tree (const ASN1_ARRAY_TYPE *
437
- ARRAY, ASN1_TYPE * DEFINITIONS, char * ERRORDESCRIPTION)
438
- ARRAY: specify the array that contains ASN.1 declarations
439
-
440
- DEFINITIONS: return the pointer to the structure created by *ARRAY
441
- ASN.1 declarations
442
-
443
- ERRORDESCRIPTION: return the error description.
444
-
445
- Creates the structures needed to manage the ASN.1 definitions.
446
- `array' is a vector created by `asn1_parser2array()'.
447
-
448
- *Returns:* *ASN1_SUCCESS:* Structure created correctly.
449
-
450
- *ASN1_ELEMENT_NOT_EMPTY:* *`definitions' not ASN1_TYPE_EMPTY.
451
-
452
- *ASN1_IDENTIFIER_NOT_FOUND:* In the file there is an identifier
453
- that is not defined (see `errorDescription' for more information).
454
-
455
- *ASN1_ARRAY_ERROR:* The array pointed by `array' is wrong.
456
-
457
- asn1_delete_structure
458
- ---------------------
459
-
460
- -- Function: asn1_retCode asn1_delete_structure (ASN1_TYPE * STRUCTURE)
461
- STRUCTURE: pointer to the structure that you want to delete.
462
-
463
- Deletes the structure *`structure'. At the end, *`structure' is
464
- set to ASN1_TYPE_EMPTY.
465
-
466
- *Returns:* *ASN1_SUCCESS:* Everything OK.
467
-
468
- *ASN1_ELEMENT_NOT_FOUND:* *`structure' was ASN1_TYPE_EMPTY.
469
-
470
- asn1_delete_element
471
- -------------------
472
-
473
- -- Function: asn1_retCode asn1_delete_element (ASN1_TYPE STRUCTURE,
474
- const char * ELEMENT_NAME)
475
- STRUCTURE: pointer to the structure that contains the element you
476
- want to delete.
477
-
478
- ELEMENT_NAME: element's name you want to delete.
479
-
480
- Deletes the element named *`element_name' inside *`structure'.
481
-
482
- *Returns:* *ASN1_SUCCESS:* Everything OK.
483
-
484
- *ASN1_ELEMENT_NOT_FOUND:* The name element was not found.
485
-
486
- asn1_create_element
487
- -------------------
488
-
489
- -- Function: asn1_retCode asn1_create_element (ASN1_TYPE DEFINITIONS,
490
- const char * SOURCE_NAME, ASN1_TYPE * ELEMENT)
491
- DEFINITIONS: pointer to the structure returned by "parser_asn1"
492
- function
493
-
494
- SOURCE_NAME: the name of the type of the new structure (must be
495
- inside p_structure).
496
-
497
- ELEMENT: pointer to the structure created.
498
-
499
- Creates a structure of type `source_name'. Example using
500
- "pkix.asn":
501
-
502
- rc = asn1_create_structure(cert_def, "PKIX1.Certificate", certptr);
503
-
504
- *Returns:* *ASN1_SUCCESS:* Creation OK.
505
-
506
- *ASN1_ELEMENT_NOT_FOUND:* SOURCE_NAME isn't known
507
-
508
- asn1_print_structure
509
- --------------------
510
-
511
- -- Function: void asn1_print_structure (FILE * OUT, ASN1_TYPE
512
- STRUCTURE, const char * NAME, int MODE)
513
- OUT: pointer to the output file (e.g. stdout).
514
-
515
- STRUCTURE: pointer to the structure that you want to visit.
516
-
517
- NAME: an element of the structure
518
-
519
- MODE: specify how much of the structure to print, can be
520
- `ASN1_PRINT_NAME', `ASN1_PRINT_NAME_TYPE',
521
- `ASN1_PRINT_NAME_TYPE_VALUE', or `ASN1_PRINT_ALL'.
522
-
523
- Prints on the `out' file descriptor the structure's tree starting
524
- from the `name' element inside the structure `structure'.
525
-
526
- asn1_number_of_elements
527
- -----------------------
528
-
529
- -- Function: asn1_retCode asn1_number_of_elements (ASN1_TYPE ELEMENT,
530
- const char * NAME, int * NUM)
531
- ELEMENT: pointer to the root of an ASN1 structure.
532
-
533
- NAME: the name of a sub-structure of ROOT.
534
-
535
- NUM: pointer to an integer where the result will be stored
536
-
537
- Counts the number of elements of a sub-structure called NAME with
538
- names equal to "?1","?2", ...
539
-
540
- *Returns:* *ASN1_SUCCESS:* Creation OK.
541
-
542
- *ASN1_ELEMENT_NOT_FOUND:* NAME isn't known.
543
-
544
- *ASN1_GENERIC_ERROR:* Pointer num equal to NULL.
545
-
546
- asn1_find_structure_from_oid
547
- ----------------------------
548
-
549
- -- Function: const char * asn1_find_structure_from_oid (ASN1_TYPE
550
- DEFINITIONS, const char * OIDVALUE)
551
- DEFINITIONS: ASN1 definitions
552
-
553
- OIDVALUE: value of the OID to search (e.g. "1.2.3.4").
554
-
555
- Search the structure that is defined just after an OID definition.
556
-
557
- *Returns:* NULL when OIDVALUE not found, otherwise the pointer to a
558
- constant string that contains the element name defined just after
559
- the OID.
560
-
561
- asn1_copy_node
562
- --------------
563
-
564
- -- Function: asn1_retCode asn1_copy_node (ASN1_TYPE DST, const char *
565
- DST_NAME, ASN1_TYPE SRC, const char * SRC_NAME)
566
- DST: Destination ASN1_TYPE node.
567
-
568
- DST_NAME: Field name in destination node.
569
-
570
- SRC: Source ASN1_TYPE node.
571
-
572
- SRC_NAME: Field name in source node.
573
-
574
- Create a deep copy of a ASN1_TYPE variable.
575
-
576
- *Return value:* Return ASN1_SUCCESS on success.
577
-
578
- asn1_write_value
579
- ----------------
580
-
581
- -- Function: asn1_retCode asn1_write_value (ASN1_TYPE NODE_ROOT, const
582
- char * NAME, const void * IVALUE, int LEN)
583
- NODE_ROOT: pointer to a structure
584
-
585
- NAME: the name of the element inside the structure that you want
586
- to set.
587
-
588
- IVALUE: vector used to specify the value to set. If len is >0,
589
- VALUE must be a two's complement form integer. if len=0 *VALUE
590
- must be a null terminated string with an integer value.
591
-
592
- LEN: number of bytes of *value to use to set the value:
593
- value[0]..value[len-1] or 0 if value is a null terminated string
594
-
595
- Set the value of one element inside a structure.
596
-
597
- If an element is OPTIONAL and you want to delete it, you must use
598
- the value=NULL and len=0. Using "pkix.asn":
599
-
600
- result=asn1_write_value(cert, "tbsCertificate.issuerUniqueID",
601
- NULL, 0);
602
-
603
- *Description for each type:* *INTEGER:* VALUE must contain a two's
604
- complement form integer.
605
-
606
- value[0]=0xFF , len=1 -> integer=-1. value[0]=0xFF
607
- value[1]=0xFF , len=2 -> integer=-1. value[0]=0x01 ,
608
- len=1 -> integer= 1. value[0]=0x00 value[1]=0x01 , len=2 ->
609
- integer= 1. value="123" , len=0 -> integer= 123.
610
-
611
- *ENUMERATED:* As INTEGER (but only with not negative numbers).
612
-
613
- *BOOLEAN:* VALUE must be the null terminated string "TRUE" or
614
- "FALSE" and LEN != 0.
615
-
616
- value="TRUE" , len=1 -> boolean=TRUE. value="FALSE" , len=1 ->
617
- boolean=FALSE.
618
-
619
- *OBJECT IDENTIFIER:* VALUE must be a null terminated string with
620
- each number separated by a dot (e.g. "1.2.3.543.1"). LEN != 0.
621
-
622
- value="1 2 840 10040 4 3" , len=1 -> OID=dsa-with-sha.
623
-
624
- *UTCTime:* VALUE must be a null terminated string in one of these
625
- formats: "YYMMDDhhmmssZ", "YYMMDDhhmmssZ", "YYMMDDhhmmss+hh'mm'",
626
- "YYMMDDhhmmss-hh'mm'", "YYMMDDhhmm+hh'mm'", or
627
- "YYMMDDhhmm-hh'mm'". LEN != 0.
628
-
629
- value="9801011200Z" , len=1 -> time=Jannuary 1st, 1998 at 12h 00m
630
- Greenwich Mean Time
631
-
632
- *GeneralizedTime:* VALUE must be in one of this format:
633
- "YYYYMMDDhhmmss.sZ", "YYYYMMDDhhmmss.sZ",
634
- "YYYYMMDDhhmmss.s+hh'mm'", "YYYYMMDDhhmmss.s-hh'mm'",
635
- "YYYYMMDDhhmm+hh'mm'", or "YYYYMMDDhhmm-hh'mm'" where ss.s
636
- indicates the seconds with any precision like "10.1" or "01.02".
637
- LEN != 0
638
-
639
- value="2001010112001.12-0700" , len=1 -> time=Jannuary 1st, 2001
640
- at 12h 00m 01.12s Pacific Daylight Time
641
-
642
- *OCTET STRING:* VALUE contains the octet string and LEN is the
643
- number of octets.
644
-
645
- value="$\backslash$x01$\backslash$x02$\backslash$x03" , len=3 ->
646
- three bytes octet string
647
-
648
- *GeneralString:* VALUE contains the generalstring and LEN is the
649
- number of octets.
650
-
651
- value="$\backslash$x01$\backslash$x02$\backslash$x03" , len=3 ->
652
- three bytes generalstring
653
-
654
- *BIT STRING:* VALUE contains the bit string organized by bytes and
655
- LEN is the number of bits.
656
-
657
- value="$\backslash$xCF" , len=6 -> bit string="110011" (six bits)
658
-
659
- *CHOICE:* if NAME indicates a choice type, VALUE must specify one
660
- of the alternatives with a null terminated string. LEN != 0. Using
661
- "pkix.asn"\:
662
-
663
- result=asn1_write_value(cert,
664
- "certificate1.tbsCertificate.subject", "rdnSequence", 1);
665
-
666
- *ANY:* VALUE indicates the der encoding of a structure. LEN != 0.
667
-
668
- *SEQUENCE OF:* VALUE must be the null terminated string "NEW" and
669
- LEN != 0. With this instruction another element is appended in the
670
- sequence. The name of this element will be "?1" if it's the first
671
- one, "?2" for the second and so on.
672
-
673
- Using "pkix.asn"\:
674
-
675
- result=asn1_write_value(cert,
676
- "certificate1.tbsCertificate.subject.rdnSequence", "NEW", 1);
677
-
678
- *SET OF:* the same as SEQUENCE OF. Using "pkix.asn":
679
-
680
- result=asn1_write_value(cert,
681
- "tbsCertificate.subject.rdnSequence.?LAST", "NEW", 1);
682
-
683
- *Returns:* *ASN1_SUCCESS:* Set value OK.
684
-
685
- *ASN1_ELEMENT_NOT_FOUND:* NAME is not a valid element.
686
-
687
- *ASN1_VALUE_NOT_VALID:* VALUE has a wrong format.
688
-
689
- asn1_read_value
690
- ---------------
691
-
692
- -- Function: asn1_retCode asn1_read_value (ASN1_TYPE ROOT, const char
693
- * NAME, void * IVALUE, int * LEN)
694
- ROOT: pointer to a structure.
695
-
696
- NAME: the name of the element inside a structure that you want to
697
- read.
698
-
699
- IVALUE: vector that will contain the element's content, must be a
700
- pointer to memory cells already allocated.
701
-
702
- LEN: number of bytes of *value: value[0]..value[len-1]. Initialy
703
- holds the sizeof value.
704
-
705
- Returns the value of one element inside a structure.
706
-
707
- If an element is OPTIONAL and the function "read_value" returns
708
- `ASN1_ELEMENT_NOT_FOUND', it means that this element wasn't present
709
- in the der encoding that created the structure. The first element
710
- of a SEQUENCE_OF or SET_OF is named "?1". The second one "?2" and
711
- so on.
712
-
713
- *INTEGER:* VALUE will contain a two's complement form integer.
714
-
715
- integer=-1 -> value[0]=0xFF , len=1. integer=1 ->
716
- value[0]=0x01 , len=1.
717
-
718
- *ENUMERATED:* As INTEGER (but only with not negative numbers).
719
-
720
- *BOOLEAN:* VALUE will be the null terminated string "TRUE" or
721
- "FALSE" and LEN=5 or LEN=6.
722
-
723
- *OBJECT IDENTIFIER:* VALUE will be a null terminated string with
724
- each number separated by a dot (i.e. "1.2.3.543.1").
725
-
726
- LEN = strlen(VALUE)+1
727
-
728
- *UTCTime:* VALUE will be a null terminated string in one of these
729
- formats: "YYMMDDhhmmss+hh'mm'" or "YYMMDDhhmmss-hh'mm'".
730
- LEN=strlen(VALUE)+1.
731
-
732
- *GeneralizedTime:* VALUE will be a null terminated string in the
733
- same format used to set the value.
734
-
735
- *OCTET STRING:* VALUE will contain the octet string and LEN will be
736
- the number of octets.
737
-
738
- *GeneralString:* VALUE will contain the generalstring and LEN will
739
- be the number of octets.
740
-
741
- *BIT STRING:* VALUE will contain the bit string organized by bytes
742
- and LEN will be the number of bits.
743
-
744
- *CHOICE:* If NAME indicates a choice type, VALUE will specify the
745
- alternative selected.
746
-
747
- *ANY:* If NAME indicates an any type, VALUE will indicate the DER
748
- encoding of the structure actually used.
749
-
750
- *Returns:* *ASN1_SUCCESS:* Set value OK.
751
-
752
- *ASN1_ELEMENT_NOT_FOUND:* NAME is not a valid element.
753
-
754
- *ASN1_VALUE_NOT_FOUND:* There isn't any value for the element
755
- selected.
756
-
757
- *ASN1_MEM_ERROR:* The value vector isn't big enough to store the
758
- result. In this case LEN will contain the number of bytes needed.
759
-
760
- asn1_read_tag
761
- -------------
762
-
763
- -- Function: asn1_retCode asn1_read_tag (node_asn * ROOT, const char *
764
- NAME, int * TAGVALUE, int * CLASSVALUE)
765
- ROOT: pointer to a structure
766
-
767
- NAME: the name of the element inside a structure.
768
-
769
- TAGVALUE: variable that will contain the TAG value.
770
-
771
- CLASSVALUE: variable that will specify the TAG type.
772
-
773
- Returns the TAG and the CLASS of one element inside a structure.
774
-
775
- *CLASS can have one of these constants:* `ASN1_CLASS_APPLICATION',
776
- `ASN1_CLASS_UNIVERSAL', `ASN1_CLASS_PRIVATE' or
777
- `ASN1_CLASS_CONTEXT_SPECIFIC'.
778
-
779
- *Returns:* *ASN1_SUCCESS:* Set value OK.
780
-
781
- *ASN1_ELEMENT_NOT_FOUND:* NAME is not a valid element.
782
-
783
- 
784
- File: libtasn1.info, Node: DER functions, Next: Error handling functions, Prev: ASN.1 field functions, Up: Function reference
785
-
786
- 4.3 DER functions
787
- =================
788
-
789
- asn1_length_der
790
- ---------------
791
-
792
- -- Function: void asn1_length_der (unsigned long int LEN, unsigned
793
- char * ANS, int * ANS_LEN)
794
- LEN: value to convert.
795
-
796
- ANS: string returned.
797
-
798
- ANS_LEN: number of meaningful bytes of ANS
799
- (ans[0]..ans[ans_len-1]).
800
-
801
- Creates the DER coding for the LEN parameter (only the length).
802
- The `ans' buffer is pre-allocated and must have room for the
803
- output.
804
-
805
- asn1_octet_der
806
- --------------
807
-
808
- -- Function: void asn1_octet_der (const unsigned char * STR, int
809
- STR_LEN, unsigned char * DER, int * DER_LEN)
810
- STR: OCTET string.
811
-
812
- STR_LEN: STR length (str[0]..str[str_len-1]).
813
-
814
- DER: string returned.
815
-
816
- DER_LEN: number of meaningful bytes of DER
817
- (der[0]..der[ans_len-1]).
818
-
819
- Creates the DER coding for an OCTET type (length included).
820
-
821
- asn1_bit_der
822
- ------------
823
-
824
- -- Function: void asn1_bit_der (const unsigned char * STR, int
825
- BIT_LEN, unsigned char * DER, int * DER_LEN)
826
- STR: BIT string.
827
-
828
- BIT_LEN: number of meaningful bits in STR.
829
-
830
- DER: string returned.
831
-
832
- DER_LEN: number of meaningful bytes of DER
833
- (der[0]..der[ans_len-1]).
834
-
835
- Creates the DER coding for a BIT STRING type (length and pad
836
- included).
837
-
838
- asn1_der_coding
839
- ---------------
840
-
841
- -- Function: asn1_retCode asn1_der_coding (ASN1_TYPE ELEMENT, const
842
- char * NAME, void * IDER, int * LEN, char * ERRORDESCRIPTION)
843
- ELEMENT: pointer to an ASN1 element
844
-
845
- NAME: the name of the structure you want to encode (it must be
846
- inside *POINTER).
847
-
848
- IDER: vector that will contain the DER encoding. DER must be a
849
- pointer to memory cells already allocated.
850
-
851
- LEN: number of bytes of *`ider': `ider'[0]..`ider'[len-1], Initialy
852
- holds the sizeof of der vector.
853
-
854
- Creates the DER encoding for the NAME structure (inside *POINTER
855
- structure).
856
-
857
- *Returns:* *ASN1_SUCCESS:* DER encoding OK.
858
-
859
- *ASN1_ELEMENT_NOT_FOUND:* NAME is not a valid element.
860
-
861
- *ASN1_VALUE_NOT_FOUND:* There is an element without a value.
862
-
863
- *ASN1_MEM_ERROR:* `ider' vector isn't big enough. Also in this case
864
- LEN will contain the length needed.
865
-
866
- asn1_get_length_der
867
- -------------------
868
-
869
- -- Function: signed long asn1_get_length_der (const unsigned char *
870
- DER, int DER_LEN, int * LEN)
871
- DER: DER data to decode.
872
-
873
- DER_LEN: Length of DER data to decode.
874
-
875
- LEN: Output variable containing the length of the DER length field.
876
-
877
- Extract a length field from DER data.
878
-
879
- *Return value:* Return the decoded length value, or -1 on
880
- indefinite length, or -2 when the value was too big.
881
-
882
- asn1_get_tag_der
883
- ----------------
884
-
885
- -- Function: int asn1_get_tag_der (const unsigned char * DER, int
886
- DER_LEN, unsigned char * CLS, int * LEN, unsigned long * TAG)
887
- DER: DER data to decode.
888
-
889
- DER_LEN: Length of DER data to decode.
890
-
891
- CLS: Output variable containing decoded class.
892
-
893
- LEN: Output variable containing the length of the DER TAG data.
894
-
895
- TAG: Output variable containing the decoded tag.
896
-
897
- Decode the class and TAG from DER code.
898
-
899
- *Return value:* Returns ASN1_SUCCESS on success, or an error.
900
-
901
- asn1_get_octet_der
902
- ------------------
903
-
904
- -- Function: int asn1_get_octet_der (const unsigned char * DER, int
905
- DER_LEN, int * RET_LEN, unsigned char * STR, int STR_SIZE,
906
- int * STR_LEN)
907
- DER: DER data to decode containing the OCTET SEQUENCE.
908
-
909
- DER_LEN: Length of DER data to decode.
910
-
911
- RET_LEN: Output variable containing the length of the DER data.
912
-
913
- STR: Pre-allocated output buffer to put decoded OCTET SEQUENCE in.
914
-
915
- STR_SIZE: Length of pre-allocated output buffer.
916
-
917
- STR_LEN: Output variable containing the length of the OCTET
918
- SEQUENCE.
919
-
920
- Extract an OCTET SEQUENCE from DER data.
921
-
922
- *Return value:* Returns ASN1_SUCCESS on success, or an error.
923
-
924
- asn1_get_bit_der
925
- ----------------
926
-
927
- -- Function: int asn1_get_bit_der (const unsigned char * DER, int
928
- DER_LEN, int * RET_LEN, unsigned char * STR, int STR_SIZE,
929
- int * BIT_LEN)
930
- DER: DER data to decode containing the BIT SEQUENCE.
931
-
932
- DER_LEN: Length of DER data to decode.
933
-
934
- RET_LEN: Output variable containing the length of the DER data.
935
-
936
- STR: Pre-allocated output buffer to put decoded BIT SEQUENCE in.
937
-
938
- STR_SIZE: Length of pre-allocated output buffer.
939
-
940
- BIT_LEN: Output variable containing the size of the BIT SEQUENCE.
941
-
942
- Extract a BIT SEQUENCE from DER data.
943
-
944
- *Return value:* Return ASN1_SUCCESS on success, or an error.
945
-
946
- asn1_der_decoding
947
- -----------------
948
-
949
- -- Function: asn1_retCode asn1_der_decoding (ASN1_TYPE * ELEMENT,
950
- const void * IDER, int LEN, char * ERRORDESCRIPTION)
951
- ELEMENT: pointer to an ASN1 structure.
952
-
953
- IDER: vector that contains the DER encoding.
954
-
955
- LEN: number of bytes of *`ider': `ider'[0]..`ider'[len-1].
956
-
957
- ERRORDESCRIPTION: null-terminated string contains details when an
958
- error occurred.
959
-
960
- Fill the structure *ELEMENT with values of a DER encoding string.
961
- The sructure must just be created with function 'create_stucture'.
962
- If an error occurs during the decoding procedure, the *ELEMENT is
963
- deleted and set equal to `ASN1_TYPE_EMPTY'.
964
-
965
- *Returns:* *ASN1_SUCCESS:* DER encoding OK.
966
-
967
- *ASN1_ELEMENT_NOT_FOUND:* ELEMENT is ASN1_TYPE_EMPTY.
968
-
969
- ASN1_TAG_ERROR,ASN1_DER_ERROR: The der encoding doesn't match the
970
- structure NAME. *ELEMENT deleted.
971
-
972
- asn1_der_decoding_element
973
- -------------------------
974
-
975
- -- Function: asn1_retCode asn1_der_decoding_element (ASN1_TYPE *
976
- STRUCTURE, const char * ELEMENTNAME, const void * IDER, int
977
- LEN, char * ERRORDESCRIPTION)
978
- STRUCTURE: pointer to an ASN1 structure
979
-
980
- ELEMENTNAME: name of the element to fill
981
-
982
- IDER: vector that contains the DER encoding of the whole structure.
983
-
984
- LEN: number of bytes of *der: der[0]..der[len-1]
985
-
986
- ERRORDESCRIPTION: null-terminated string contains details when an
987
- error occurred.
988
-
989
- Fill the element named ELEMENTNAME with values of a DER encoding
990
- string. The sructure must just be created with function
991
- 'create_stucture'. The DER vector must contain the encoding
992
- string of the whole STRUCTURE. If an error occurs during the
993
- decoding procedure, the *STRUCTURE is deleted and set equal to
994
- `ASN1_TYPE_EMPTY'.
995
-
996
- *Returns:* *ASN1_SUCCESS:* DER encoding OK.
997
-
998
- *ASN1_ELEMENT_NOT_FOUND:* ELEMENT is ASN1_TYPE_EMPTY or
999
- elementName == NULL.
1000
-
1001
- ASN1_TAG_ERROR,ASN1_DER_ERROR: The der encoding doesn't match the
1002
- structure STRUCTURE. *ELEMENT deleted.
1003
-
1004
- asn1_der_decoding_startEnd
1005
- --------------------------
1006
-
1007
- -- Function: asn1_retCode asn1_der_decoding_startEnd (ASN1_TYPE
1008
- ELEMENT, const void * IDER, int LEN, const char *
1009
- NAME_ELEMENT, int * START, int * END)
1010
- ELEMENT: pointer to an ASN1 element
1011
-
1012
- IDER: vector that contains the DER encoding.
1013
-
1014
- LEN: number of bytes of *`ider': `ider'[0]..`ider'[len-1]
1015
-
1016
- NAME_ELEMENT: an element of NAME structure.
1017
-
1018
- START: the position of the first byte of NAME_ELEMENT decoding
1019
- (`ider'[*start])
1020
-
1021
- END: the position of the last byte of NAME_ELEMENT decoding
1022
- (`ider'[*end])
1023
-
1024
- Find the start and end point of an element in a DER encoding
1025
- string. I mean that if you have a der encoding and you have
1026
- already used the function "asn1_der_decoding" to fill a structure,
1027
- it may happen that you want to find the piece of string concerning
1028
- an element of the structure.
1029
-
1030
- *Example:* the sequence "tbsCertificate" inside an X509
1031
- certificate.
1032
-
1033
- *Returns:* *ASN1_SUCCESS:* DER encoding OK.
1034
-
1035
- *ASN1_ELEMENT_NOT_FOUND:* ELEMENT is ASN1_TYPE EMPTY or
1036
- NAME_ELEMENT is not a valid element.
1037
-
1038
- ASN1_TAG_ERROR,ASN1_DER_ERROR: the der encoding doesn't match the
1039
- structure ELEMENT.
1040
-
1041
- asn1_expand_any_defined_by
1042
- --------------------------
1043
-
1044
- -- Function: asn1_retCode asn1_expand_any_defined_by (ASN1_TYPE
1045
- DEFINITIONS, ASN1_TYPE * ELEMENT)
1046
- DEFINITIONS: ASN1 definitions
1047
-
1048
- ELEMENT: pointer to an ASN1 structure
1049
-
1050
- Expands every "ANY DEFINED BY" element of a structure created from
1051
- a DER decoding process (asn1_der_decoding function). The element
1052
- ANY must be defined by an OBJECT IDENTIFIER. The type used to
1053
- expand the element ANY is the first one following the definition of
1054
- the actual value of the OBJECT IDENTIFIER.
1055
-
1056
- *Returns:* *ASN1_SUCCESS:* Substitution OK.
1057
-
1058
- *ASN1_ERROR_TYPE_ANY:* Some "ANY DEFINED BY" element couldn't be
1059
- expanded due to a problem in OBJECT_ID -> TYPE association.
1060
-
1061
- other errors: Result of der decoding process.
1062
-
1063
- asn1_expand_octet_string
1064
- ------------------------
1065
-
1066
- -- Function: asn1_retCode asn1_expand_octet_string (ASN1_TYPE
1067
- DEFINITIONS, ASN1_TYPE * ELEMENT, const char * OCTETNAME,
1068
- const char * OBJECTNAME)
1069
- DEFINITIONS: ASN1 definitions
1070
-
1071
- ELEMENT: pointer to an ASN1 structure
1072
-
1073
- OCTETNAME: name of the OCTECT STRING field to expand.
1074
-
1075
- OBJECTNAME: name of the OBJECT IDENTIFIER field to use to define
1076
- the type for expansion.
1077
-
1078
- Expands an "OCTET STRING" element of a structure created from a
1079
- DER decoding process (asn1_der_decoding function). The type used
1080
- for expansion is the first one following the definition of the
1081
- actual value of the OBJECT IDENTIFIER indicated by OBJECTNAME.
1082
-
1083
- *Returns:* *ASN1_SUCCESS:* Substitution OK.
1084
-
1085
- *ASN1_ELEMENT_NOT_FOUND:* OBJECTNAME or OCTETNAME are not correct.
1086
-
1087
- *ASN1_VALUE_NOT_VALID:* Wasn't possible to find the type to use
1088
- for expansion.
1089
-
1090
- other errors: result of der decoding process.
1091
-
1092
- 
1093
- File: libtasn1.info, Node: Error handling functions, Next: Auxilliary functions, Prev: DER functions, Up: Function reference
1094
-
1095
- 4.4 Error handling functions
1096
- ============================
1097
-
1098
- libtasn1_perror
1099
- ---------------
1100
-
1101
- -- Function: void libtasn1_perror (asn1_retCode ERROR)
1102
- ERROR: is an error returned by a libtasn1 function.
1103
-
1104
- This function is like `perror()'. The only difference is that it
1105
- accepts an error returned by a libtasn1 function.
1106
-
1107
- libtasn1_strerror
1108
- -----------------
1109
-
1110
- -- Function: const char * libtasn1_strerror (asn1_retCode ERROR)
1111
- ERROR: is an error returned by a libtasn1 function.
1112
-
1113
- This function is similar to `strerror()'. The only difference is
1114
- that it accepts an error (number) returned by a libtasn1 function.
1115
-
1116
- *Returns:* Pointer to static zero-terminated string describing
1117
- error code.
1118
-
1119
- 
1120
- File: libtasn1.info, Node: Auxilliary functions, Prev: Error handling functions, Up: Function reference
1121
-
1122
- 4.5 Auxilliary functions
1123
- ========================
1124
-
1125
- asn1_find_node
1126
- --------------
1127
-
1128
- -- Function: ASN1_TYPE asn1_find_node (ASN1_TYPE POINTER, const char *
1129
- NAME)
1130
- POINTER: NODE_ASN element pointer.
1131
-
1132
- NAME: null terminated string with the element's name to find.
1133
-
1134
- Searches for an element called NAME starting from POINTER. The
1135
- name is composed by differents identifiers separated by dots. When
1136
- *POINTER has a name, the first identifier must be the name of
1137
- *POINTER, otherwise it must be the name of one child of *POINTER.
1138
-
1139
- *Return value:* the searching result. NULL if not found.
1140
-
1141
- asn1_check_version
1142
- ------------------
1143
-
1144
- -- Function: const char * asn1_check_version (const char * REQ_VERSION)
1145
- REQ_VERSION: Required version number, or NULL.
1146
-
1147
- Check that the the version of the library is at minimum the
1148
- requested one and return the version string; return `NULL' if the
1149
- condition is not satisfied. If a `NULL' is passed to this
1150
- function, no check is done, but the version string is simply
1151
- returned.
1152
-
1153
- See `LIBTASN1_VERSION' for a suitable `req_version' string.
1154
-
1155
- *Return value:* Version string of run-time library, or `NULL' if
1156
- the run-time library does not meet the required version number.
1157
-
1158
- 
1159
- File: libtasn1.info, Node: Copying Information, Next: Concept Index, Prev: Function reference, Up: Top
1160
-
1161
- Appendix A Copying Information
1162
- ******************************
1163
-
1164
- * Menu:
1165
-
1166
- * GNU Free Documentation License:: License for copying this manual.
1167
- * GNU LGPL:: License for copying the library.
1168
- * GNU GPL:: License for copying tools.
1169
-
1170
- 
1171
- File: libtasn1.info, Node: GNU Free Documentation License, Next: GNU LGPL, Up: Copying Information
1172
-
1173
- A.1 GNU Free Documentation License
1174
- ==================================
1175
-
1176
- Version 1.2, November 2002
1177
-
1178
- Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
1179
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
1180
-
1181
- Everyone is permitted to copy and distribute verbatim copies
1182
- of this license document, but changing it is not allowed.
1183
-
1184
- 0. PREAMBLE
1185
-
1186
- The purpose of this License is to make a manual, textbook, or other
1187
- functional and useful document "free" in the sense of freedom: to
1188
- assure everyone the effective freedom to copy and redistribute it,
1189
- with or without modifying it, either commercially or
1190
- noncommercially. Secondarily, this License preserves for the
1191
- author and publisher a way to get credit for their work, while not
1192
- being considered responsible for modifications made by others.
1193
-
1194
- This License is a kind of "copyleft", which means that derivative
1195
- works of the document must themselves be free in the same sense.
1196
- It complements the GNU General Public License, which is a copyleft
1197
- license designed for free software.
1198
-
1199
- We have designed this License in order to use it for manuals for
1200
- free software, because free software needs free documentation: a
1201
- free program should come with manuals providing the same freedoms
1202
- that the software does. But this License is not limited to
1203
- software manuals; it can be used for any textual work, regardless
1204
- of subject matter or whether it is published as a printed book.
1205
- We recommend this License principally for works whose purpose is
1206
- instruction or reference.
1207
-
1208
- 1. APPLICABILITY AND DEFINITIONS
1209
-
1210
- This License applies to any manual or other work, in any medium,
1211
- that contains a notice placed by the copyright holder saying it
1212
- can be distributed under the terms of this License. Such a notice
1213
- grants a world-wide, royalty-free license, unlimited in duration,
1214
- to use that work under the conditions stated herein. The
1215
- "Document", below, refers to any such manual or work. Any member
1216
- of the public is a licensee, and is addressed as "you". You
1217
- accept the license if you copy, modify or distribute the work in a
1218
- way requiring permission under copyright law.
1219
-
1220
- A "Modified Version" of the Document means any work containing the
1221
- Document or a portion of it, either copied verbatim, or with
1222
- modifications and/or translated into another language.
1223
-
1224
- A "Secondary Section" is a named appendix or a front-matter section
1225
- of the Document that deals exclusively with the relationship of the
1226
- publishers or authors of the Document to the Document's overall
1227
- subject (or to related matters) and contains nothing that could
1228
- fall directly within that overall subject. (Thus, if the Document
1229
- is in part a textbook of mathematics, a Secondary Section may not
1230
- explain any mathematics.) The relationship could be a matter of
1231
- historical connection with the subject or with related matters, or
1232
- of legal, commercial, philosophical, ethical or political position
1233
- regarding them.
1234
-
1235
- The "Invariant Sections" are certain Secondary Sections whose
1236
- titles are designated, as being those of Invariant Sections, in
1237
- the notice that says that the Document is released under this
1238
- License. If a section does not fit the above definition of
1239
- Secondary then it is not allowed to be designated as Invariant.
1240
- The Document may contain zero Invariant Sections. If the Document
1241
- does not identify any Invariant Sections then there are none.
1242
-
1243
- The "Cover Texts" are certain short passages of text that are
1244
- listed, as Front-Cover Texts or Back-Cover Texts, in the notice
1245
- that says that the Document is released under this License. A
1246
- Front-Cover Text may be at most 5 words, and a Back-Cover Text may
1247
- be at most 25 words.
1248
-
1249
- A "Transparent" copy of the Document means a machine-readable copy,
1250
- represented in a format whose specification is available to the
1251
- general public, that is suitable for revising the document
1252
- straightforwardly with generic text editors or (for images
1253
- composed of pixels) generic paint programs or (for drawings) some
1254
- widely available drawing editor, and that is suitable for input to
1255
- text formatters or for automatic translation to a variety of
1256
- formats suitable for input to text formatters. A copy made in an
1257
- otherwise Transparent file format whose markup, or absence of
1258
- markup, has been arranged to thwart or discourage subsequent
1259
- modification by readers is not Transparent. An image format is
1260
- not Transparent if used for any substantial amount of text. A
1261
- copy that is not "Transparent" is called "Opaque".
1262
-
1263
- Examples of suitable formats for Transparent copies include plain
1264
- ASCII without markup, Texinfo input format, LaTeX input format,
1265
- SGML or XML using a publicly available DTD, and
1266
- standard-conforming simple HTML, PostScript or PDF designed for
1267
- human modification. Examples of transparent image formats include
1268
- PNG, XCF and JPG. Opaque formats include proprietary formats that
1269
- can be read and edited only by proprietary word processors, SGML or
1270
- XML for which the DTD and/or processing tools are not generally
1271
- available, and the machine-generated HTML, PostScript or PDF
1272
- produced by some word processors for output purposes only.
1273
-
1274
- The "Title Page" means, for a printed book, the title page itself,
1275
- plus such following pages as are needed to hold, legibly, the
1276
- material this License requires to appear in the title page. For
1277
- works in formats which do not have any title page as such, "Title
1278
- Page" means the text near the most prominent appearance of the
1279
- work's title, preceding the beginning of the body of the text.
1280
-
1281
- A section "Entitled XYZ" means a named subunit of the Document
1282
- whose title either is precisely XYZ or contains XYZ in parentheses
1283
- following text that translates XYZ in another language. (Here XYZ
1284
- stands for a specific section name mentioned below, such as
1285
- "Acknowledgements", "Dedications", "Endorsements", or "History".)
1286
- To "Preserve the Title" of such a section when you modify the
1287
- Document means that it remains a section "Entitled XYZ" according
1288
- to this definition.
1289
-
1290
- The Document may include Warranty Disclaimers next to the notice
1291
- which states that this License applies to the Document. These
1292
- Warranty Disclaimers are considered to be included by reference in
1293
- this License, but only as regards disclaiming warranties: any other
1294
- implication that these Warranty Disclaimers may have is void and
1295
- has no effect on the meaning of this License.
1296
-
1297
- 2. VERBATIM COPYING
1298
-
1299
- You may copy and distribute the Document in any medium, either
1300
- commercially or noncommercially, provided that this License, the
1301
- copyright notices, and the license notice saying this License
1302
- applies to the Document are reproduced in all copies, and that you
1303
- add no other conditions whatsoever to those of this License. You
1304
- may not use technical measures to obstruct or control the reading
1305
- or further copying of the copies you make or distribute. However,
1306
- you may accept compensation in exchange for copies. If you
1307
- distribute a large enough number of copies you must also follow
1308
- the conditions in section 3.
1309
-
1310
- You may also lend copies, under the same conditions stated above,
1311
- and you may publicly display copies.
1312
-
1313
- 3. COPYING IN QUANTITY
1314
-
1315
- If you publish printed copies (or copies in media that commonly
1316
- have printed covers) of the Document, numbering more than 100, and
1317
- the Document's license notice requires Cover Texts, you must
1318
- enclose the copies in covers that carry, clearly and legibly, all
1319
- these Cover Texts: Front-Cover Texts on the front cover, and
1320
- Back-Cover Texts on the back cover. Both covers must also clearly
1321
- and legibly identify you as the publisher of these copies. The
1322
- front cover must present the full title with all words of the
1323
- title equally prominent and visible. You may add other material
1324
- on the covers in addition. Copying with changes limited to the
1325
- covers, as long as they preserve the title of the Document and
1326
- satisfy these conditions, can be treated as verbatim copying in
1327
- other respects.
1328
-
1329
- If the required texts for either cover are too voluminous to fit
1330
- legibly, you should put the first ones listed (as many as fit
1331
- reasonably) on the actual cover, and continue the rest onto
1332
- adjacent pages.
1333
-
1334
- If you publish or distribute Opaque copies of the Document
1335
- numbering more than 100, you must either include a
1336
- machine-readable Transparent copy along with each Opaque copy, or
1337
- state in or with each Opaque copy a computer-network location from
1338
- which the general network-using public has access to download
1339
- using public-standard network protocols a complete Transparent
1340
- copy of the Document, free of added material. If you use the
1341
- latter option, you must take reasonably prudent steps, when you
1342
- begin distribution of Opaque copies in quantity, to ensure that
1343
- this Transparent copy will remain thus accessible at the stated
1344
- location until at least one year after the last time you
1345
- distribute an Opaque copy (directly or through your agents or
1346
- retailers) of that edition to the public.
1347
-
1348
- It is requested, but not required, that you contact the authors of
1349
- the Document well before redistributing any large number of
1350
- copies, to give them a chance to provide you with an updated
1351
- version of the Document.
1352
-
1353
- 4. MODIFICATIONS
1354
-
1355
- You may copy and distribute a Modified Version of the Document
1356
- under the conditions of sections 2 and 3 above, provided that you
1357
- release the Modified Version under precisely this License, with
1358
- the Modified Version filling the role of the Document, thus
1359
- licensing distribution and modification of the Modified Version to
1360
- whoever possesses a copy of it. In addition, you must do these
1361
- things in the Modified Version:
1362
-
1363
- A. Use in the Title Page (and on the covers, if any) a title
1364
- distinct from that of the Document, and from those of
1365
- previous versions (which should, if there were any, be listed
1366
- in the History section of the Document). You may use the
1367
- same title as a previous version if the original publisher of
1368
- that version gives permission.
1369
-
1370
- B. List on the Title Page, as authors, one or more persons or
1371
- entities responsible for authorship of the modifications in
1372
- the Modified Version, together with at least five of the
1373
- principal authors of the Document (all of its principal
1374
- authors, if it has fewer than five), unless they release you
1375
- from this requirement.
1376
-
1377
- C. State on the Title page the name of the publisher of the
1378
- Modified Version, as the publisher.
1379
-
1380
- D. Preserve all the copyright notices of the Document.
1381
-
1382
- E. Add an appropriate copyright notice for your modifications
1383
- adjacent to the other copyright notices.
1384
-
1385
- F. Include, immediately after the copyright notices, a license
1386
- notice giving the public permission to use the Modified
1387
- Version under the terms of this License, in the form shown in
1388
- the Addendum below.
1389
-
1390
- G. Preserve in that license notice the full lists of Invariant
1391
- Sections and required Cover Texts given in the Document's
1392
- license notice.
1393
-
1394
- H. Include an unaltered copy of this License.
1395
-
1396
- I. Preserve the section Entitled "History", Preserve its Title,
1397
- and add to it an item stating at least the title, year, new
1398
- authors, and publisher of the Modified Version as given on
1399
- the Title Page. If there is no section Entitled "History" in
1400
- the Document, create one stating the title, year, authors,
1401
- and publisher of the Document as given on its Title Page,
1402
- then add an item describing the Modified Version as stated in
1403
- the previous sentence.
1404
-
1405
- J. Preserve the network location, if any, given in the Document
1406
- for public access to a Transparent copy of the Document, and
1407
- likewise the network locations given in the Document for
1408
- previous versions it was based on. These may be placed in
1409
- the "History" section. You may omit a network location for a
1410
- work that was published at least four years before the
1411
- Document itself, or if the original publisher of the version
1412
- it refers to gives permission.
1413
-
1414
- K. For any section Entitled "Acknowledgements" or "Dedications",
1415
- Preserve the Title of the section, and preserve in the
1416
- section all the substance and tone of each of the contributor
1417
- acknowledgements and/or dedications given therein.
1418
-
1419
- L. Preserve all the Invariant Sections of the Document,
1420
- unaltered in their text and in their titles. Section numbers
1421
- or the equivalent are not considered part of the section
1422
- titles.
1423
-
1424
- M. Delete any section Entitled "Endorsements". Such a section
1425
- may not be included in the Modified Version.
1426
-
1427
- N. Do not retitle any existing section to be Entitled
1428
- "Endorsements" or to conflict in title with any Invariant
1429
- Section.
1430
-
1431
- O. Preserve any Warranty Disclaimers.
1432
-
1433
- If the Modified Version includes new front-matter sections or
1434
- appendices that qualify as Secondary Sections and contain no
1435
- material copied from the Document, you may at your option
1436
- designate some or all of these sections as invariant. To do this,
1437
- add their titles to the list of Invariant Sections in the Modified
1438
- Version's license notice. These titles must be distinct from any
1439
- other section titles.
1440
-
1441
- You may add a section Entitled "Endorsements", provided it contains
1442
- nothing but endorsements of your Modified Version by various
1443
- parties--for example, statements of peer review or that the text
1444
- has been approved by an organization as the authoritative
1445
- definition of a standard.
1446
-
1447
- You may add a passage of up to five words as a Front-Cover Text,
1448
- and a passage of up to 25 words as a Back-Cover Text, to the end
1449
- of the list of Cover Texts in the Modified Version. Only one
1450
- passage of Front-Cover Text and one of Back-Cover Text may be
1451
- added by (or through arrangements made by) any one entity. If the
1452
- Document already includes a cover text for the same cover,
1453
- previously added by you or by arrangement made by the same entity
1454
- you are acting on behalf of, you may not add another; but you may
1455
- replace the old one, on explicit permission from the previous
1456
- publisher that added the old one.
1457
-
1458
- The author(s) and publisher(s) of the Document do not by this
1459
- License give permission to use their names for publicity for or to
1460
- assert or imply endorsement of any Modified Version.
1461
-
1462
- 5. COMBINING DOCUMENTS
1463
-
1464
- You may combine the Document with other documents released under
1465
- this License, under the terms defined in section 4 above for
1466
- modified versions, provided that you include in the combination
1467
- all of the Invariant Sections of all of the original documents,
1468
- unmodified, and list them all as Invariant Sections of your
1469
- combined work in its license notice, and that you preserve all
1470
- their Warranty Disclaimers.
1471
-
1472
- The combined work need only contain one copy of this License, and
1473
- multiple identical Invariant Sections may be replaced with a single
1474
- copy. If there are multiple Invariant Sections with the same name
1475
- but different contents, make the title of each such section unique
1476
- by adding at the end of it, in parentheses, the name of the
1477
- original author or publisher of that section if known, or else a
1478
- unique number. Make the same adjustment to the section titles in
1479
- the list of Invariant Sections in the license notice of the
1480
- combined work.
1481
-
1482
- In the combination, you must combine any sections Entitled
1483
- "History" in the various original documents, forming one section
1484
- Entitled "History"; likewise combine any sections Entitled
1485
- "Acknowledgements", and any sections Entitled "Dedications". You
1486
- must delete all sections Entitled "Endorsements."
1487
-
1488
- 6. COLLECTIONS OF DOCUMENTS
1489
-
1490
- You may make a collection consisting of the Document and other
1491
- documents released under this License, and replace the individual
1492
- copies of this License in the various documents with a single copy
1493
- that is included in the collection, provided that you follow the
1494
- rules of this License for verbatim copying of each of the
1495
- documents in all other respects.
1496
-
1497
- You may extract a single document from such a collection, and
1498
- distribute it individually under this License, provided you insert
1499
- a copy of this License into the extracted document, and follow
1500
- this License in all other respects regarding verbatim copying of
1501
- that document.
1502
-
1503
- 7. AGGREGATION WITH INDEPENDENT WORKS
1504
-
1505
- A compilation of the Document or its derivatives with other
1506
- separate and independent documents or works, in or on a volume of
1507
- a storage or distribution medium, is called an "aggregate" if the
1508
- copyright resulting from the compilation is not used to limit the
1509
- legal rights of the compilation's users beyond what the individual
1510
- works permit. When the Document is included in an aggregate, this
1511
- License does not apply to the other works in the aggregate which
1512
- are not themselves derivative works of the Document.
1513
-
1514
- If the Cover Text requirement of section 3 is applicable to these
1515
- copies of the Document, then if the Document is less than one half
1516
- of the entire aggregate, the Document's Cover Texts may be placed
1517
- on covers that bracket the Document within the aggregate, or the
1518
- electronic equivalent of covers if the Document is in electronic
1519
- form. Otherwise they must appear on printed covers that bracket
1520
- the whole aggregate.
1521
-
1522
- 8. TRANSLATION
1523
-
1524
- Translation is considered a kind of modification, so you may
1525
- distribute translations of the Document under the terms of section
1526
- 4. Replacing Invariant Sections with translations requires special
1527
- permission from their copyright holders, but you may include
1528
- translations of some or all Invariant Sections in addition to the
1529
- original versions of these Invariant Sections. You may include a
1530
- translation of this License, and all the license notices in the
1531
- Document, and any Warranty Disclaimers, provided that you also
1532
- include the original English version of this License and the
1533
- original versions of those notices and disclaimers. In case of a
1534
- disagreement between the translation and the original version of
1535
- this License or a notice or disclaimer, the original version will
1536
- prevail.
1537
-
1538
- If a section in the Document is Entitled "Acknowledgements",
1539
- "Dedications", or "History", the requirement (section 4) to
1540
- Preserve its Title (section 1) will typically require changing the
1541
- actual title.
1542
-
1543
- 9. TERMINATION
1544
-
1545
- You may not copy, modify, sublicense, or distribute the Document
1546
- except as expressly provided for under this License. Any other
1547
- attempt to copy, modify, sublicense or distribute the Document is
1548
- void, and will automatically terminate your rights under this
1549
- License. However, parties who have received copies, or rights,
1550
- from you under this License will not have their licenses
1551
- terminated so long as such parties remain in full compliance.
1552
-
1553
- 10. FUTURE REVISIONS OF THIS LICENSE
1554
-
1555
- The Free Software Foundation may publish new, revised versions of
1556
- the GNU Free Documentation License from time to time. Such new
1557
- versions will be similar in spirit to the present version, but may
1558
- differ in detail to address new problems or concerns. See
1559
- `http://www.gnu.org/copyleft/'.
1560
-
1561
- Each version of the License is given a distinguishing version
1562
- number. If the Document specifies that a particular numbered
1563
- version of this License "or any later version" applies to it, you
1564
- have the option of following the terms and conditions either of
1565
- that specified version or of any later version that has been
1566
- published (not as a draft) by the Free Software Foundation. If
1567
- the Document does not specify a version number of this License,
1568
- you may choose any version ever published (not as a draft) by the
1569
- Free Software Foundation.
1570
-
1571
- ADDENDUM: How to use this License for your documents
1572
- ====================================================
1573
-
1574
- To use this License in a document you have written, include a copy of
1575
- the License in the document and put the following copyright and license
1576
- notices just after the title page:
1577
-
1578
- Copyright (C) YEAR YOUR NAME.
1579
- Permission is granted to copy, distribute and/or modify this document
1580
- under the terms of the GNU Free Documentation License, Version 1.2
1581
- or any later version published by the Free Software Foundation;
1582
- with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
1583
- Texts. A copy of the license is included in the section entitled ``GNU
1584
- Free Documentation License''.
1585
-
1586
- If you have Invariant Sections, Front-Cover Texts and Back-Cover
1587
- Texts, replace the "with...Texts." line with this:
1588
-
1589
- with the Invariant Sections being LIST THEIR TITLES, with
1590
- the Front-Cover Texts being LIST, and with the Back-Cover Texts
1591
- being LIST.
1592
-
1593
- If you have Invariant Sections without Cover Texts, or some other
1594
- combination of the three, merge those two alternatives to suit the
1595
- situation.
1596
-
1597
- If your document contains nontrivial examples of program code, we
1598
- recommend releasing these examples in parallel under your choice of
1599
- free software license, such as the GNU General Public License, to
1600
- permit their use in free software.
1601
-
1602
- 
1603
- File: libtasn1.info, Node: GNU LGPL, Next: GNU GPL, Prev: GNU Free Documentation License, Up: Copying Information
1604
-
1605
- A.2 GNU Lesser General Public License
1606
- =====================================
1607
-
1608
- Version 2.1, February 1999
1609
-
1610
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
1611
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
1612
-
1613
- Everyone is permitted to copy and distribute verbatim copies
1614
- of this license document, but changing it is not allowed.
1615
-
1616
- [This is the first released version of the Lesser GPL. It also counts
1617
- as the successor of the GNU Library Public License, version 2, hence the
1618
- version number 2.1.]
1619
-
1620
- Preamble
1621
- --------
1622
-
1623
- The licenses for most software are designed to take away your freedom
1624
- to share and change it. By contrast, the GNU General Public Licenses
1625
- are intended to guarantee your freedom to share and change free
1626
- software--to make sure the software is free for all its users.
1627
-
1628
- This license, the Lesser General Public License, applies to some
1629
- specially designated software--typically libraries--of the Free
1630
- Software Foundation and other authors who decide to use it. You can use
1631
- it too, but we suggest you first think carefully about whether this
1632
- license or the ordinary General Public License is the better strategy to
1633
- use in any particular case, based on the explanations below.
1634
-
1635
- When we speak of free software, we are referring to freedom of use,
1636
- not price. Our General Public Licenses are designed to make sure that
1637
- you have the freedom to distribute copies of free software (and charge
1638
- for this service if you wish); that you receive source code or can get
1639
- it if you want it; that you can change the software and use pieces of it
1640
- in new free programs; and that you are informed that you can do these
1641
- things.
1642
-
1643
- To protect your rights, we need to make restrictions that forbid
1644
- distributors to deny you these rights or to ask you to surrender these
1645
- rights. These restrictions translate to certain responsibilities for
1646
- you if you distribute copies of the library or if you modify it.
1647
-
1648
- For example, if you distribute copies of the library, whether gratis
1649
- or for a fee, you must give the recipients all the rights that we gave
1650
- you. You must make sure that they, too, receive or can get the source
1651
- code. If you link other code with the library, you must provide
1652
- complete object files to the recipients, so that they can relink them
1653
- with the library after making changes to the library and recompiling
1654
- it. And you must show them these terms so they know their rights.
1655
-
1656
- We protect your rights with a two-step method: (1) we copyright the
1657
- library, and (2) we offer you this license, which gives you legal
1658
- permission to copy, distribute and/or modify the library.
1659
-
1660
- To protect each distributor, we want to make it very clear that
1661
- there is no warranty for the free library. Also, if the library is
1662
- modified by someone else and passed on, the recipients should know that
1663
- what they have is not the original version, so that the original
1664
- author's reputation will not be affected by problems that might be
1665
- introduced by others.
1666
-
1667
- Finally, software patents pose a constant threat to the existence of
1668
- any free program. We wish to make sure that a company cannot
1669
- effectively restrict the users of a free program by obtaining a
1670
- restrictive license from a patent holder. Therefore, we insist that
1671
- any patent license obtained for a version of the library must be
1672
- consistent with the full freedom of use specified in this license.
1673
-
1674
- Most GNU software, including some libraries, is covered by the
1675
- ordinary GNU General Public License. This license, the GNU Lesser
1676
- General Public License, applies to certain designated libraries, and is
1677
- quite different from the ordinary General Public License. We use this
1678
- license for certain libraries in order to permit linking those
1679
- libraries into non-free programs.
1680
-
1681
- When a program is linked with a library, whether statically or using
1682
- a shared library, the combination of the two is legally speaking a
1683
- combined work, a derivative of the original library. The ordinary
1684
- General Public License therefore permits such linking only if the
1685
- entire combination fits its criteria of freedom. The Lesser General
1686
- Public License permits more lax criteria for linking other code with
1687
- the library.
1688
-
1689
- We call this license the "Lesser" General Public License because it
1690
- does _Less_ to protect the user's freedom than the ordinary General
1691
- Public License. It also provides other free software developers Less
1692
- of an advantage over competing non-free programs. These disadvantages
1693
- are the reason we use the ordinary General Public License for many
1694
- libraries. However, the Lesser license provides advantages in certain
1695
- special circumstances.
1696
-
1697
- For example, on rare occasions, there may be a special need to
1698
- encourage the widest possible use of a certain library, so that it
1699
- becomes a de-facto standard. To achieve this, non-free programs must be
1700
- allowed to use the library. A more frequent case is that a free
1701
- library does the same job as widely used non-free libraries. In this
1702
- case, there is little to gain by limiting the free library to free
1703
- software only, so we use the Lesser General Public License.
1704
-
1705
- In other cases, permission to use a particular library in non-free
1706
- programs enables a greater number of people to use a large body of free
1707
- software. For example, permission to use the GNU C Library in non-free
1708
- programs enables many more people to use the whole GNU operating
1709
- system, as well as its variant, the GNU/Linux operating system.
1710
-
1711
- Although the Lesser General Public License is Less protective of the
1712
- users' freedom, it does ensure that the user of a program that is
1713
- linked with the Library has the freedom and the wherewithal to run that
1714
- program using a modified version of the Library.
1715
-
1716
- The precise terms and conditions for copying, distribution and
1717
- modification follow. Pay close attention to the difference between a
1718
- "work based on the library" and a "work that uses the library". The
1719
- former contains code derived from the library, whereas the latter must
1720
- be combined with the library in order to run.
1721
-
1722
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
1723
- ---------------------------------------------------------------
1724
-
1725
- 0. This License Agreement applies to any software library or other
1726
- program which contains a notice placed by the copyright holder or
1727
- other authorized party saying it may be distributed under the
1728
- terms of this Lesser General Public License (also called "this
1729
- License"). Each licensee is addressed as "you".
1730
-
1731
- A "library" means a collection of software functions and/or data
1732
- prepared so as to be conveniently linked with application programs
1733
- (which use some of those functions and data) to form executables.
1734
-
1735
- The "Library", below, refers to any such software library or work
1736
- which has been distributed under these terms. A "work based on the
1737
- Library" means either the Library or any derivative work under
1738
- copyright law: that is to say, a work containing the Library or a
1739
- portion of it, either verbatim or with modifications and/or
1740
- translated straightforwardly into another language. (Hereinafter,
1741
- translation is included without limitation in the term
1742
- "modification".)
1743
-
1744
- "Source code" for a work means the preferred form of the work for
1745
- making modifications to it. For a library, complete source code
1746
- means all the source code for all modules it contains, plus any
1747
- associated interface definition files, plus the scripts used to
1748
- control compilation and installation of the library.
1749
-
1750
- Activities other than copying, distribution and modification are
1751
- not covered by this License; they are outside its scope. The act
1752
- of running a program using the Library is not restricted, and
1753
- output from such a program is covered only if its contents
1754
- constitute a work based on the Library (independent of the use of
1755
- the Library in a tool for writing it). Whether that is true
1756
- depends on what the Library does and what the program that uses
1757
- the Library does.
1758
-
1759
- 1. You may copy and distribute verbatim copies of the Library's
1760
- complete source code as you receive it, in any medium, provided
1761
- that you conspicuously and appropriately publish on each copy an
1762
- appropriate copyright notice and disclaimer of warranty; keep
1763
- intact all the notices that refer to this License and to the
1764
- absence of any warranty; and distribute a copy of this License
1765
- along with the Library.
1766
-
1767
- You may charge a fee for the physical act of transferring a copy,
1768
- and you may at your option offer warranty protection in exchange
1769
- for a fee.
1770
-
1771
- 2. You may modify your copy or copies of the Library or any portion
1772
- of it, thus forming a work based on the Library, and copy and
1773
- distribute such modifications or work under the terms of Section 1
1774
- above, provided that you also meet all of these conditions:
1775
-
1776
- a. The modified work must itself be a software library.
1777
-
1778
- b. You must cause the files modified to carry prominent notices
1779
- stating that you changed the files and the date of any change.
1780
-
1781
- c. You must cause the whole of the work to be licensed at no
1782
- charge to all third parties under the terms of this License.
1783
-
1784
- d. If a facility in the modified Library refers to a function or
1785
- a table of data to be supplied by an application program that
1786
- uses the facility, other than as an argument passed when the
1787
- facility is invoked, then you must make a good faith effort
1788
- to ensure that, in the event an application does not supply
1789
- such function or table, the facility still operates, and
1790
- performs whatever part of its purpose remains meaningful.
1791
-
1792
- (For example, a function in a library to compute square roots
1793
- has a purpose that is entirely well-defined independent of the
1794
- application. Therefore, Subsection 2d requires that any
1795
- application-supplied function or table used by this function
1796
- must be optional: if the application does not supply it, the
1797
- square root function must still compute square roots.)
1798
-
1799
- These requirements apply to the modified work as a whole. If
1800
- identifiable sections of that work are not derived from the
1801
- Library, and can be reasonably considered independent and separate
1802
- works in themselves, then this License, and its terms, do not
1803
- apply to those sections when you distribute them as separate
1804
- works. But when you distribute the same sections as part of a
1805
- whole which is a work based on the Library, the distribution of
1806
- the whole must be on the terms of this License, whose permissions
1807
- for other licensees extend to the entire whole, and thus to each
1808
- and every part regardless of who wrote it.
1809
-
1810
- Thus, it is not the intent of this section to claim rights or
1811
- contest your rights to work written entirely by you; rather, the
1812
- intent is to exercise the right to control the distribution of
1813
- derivative or collective works based on the Library.
1814
-
1815
- In addition, mere aggregation of another work not based on the
1816
- Library with the Library (or with a work based on the Library) on
1817
- a volume of a storage or distribution medium does not bring the
1818
- other work under the scope of this License.
1819
-
1820
- 3. You may opt to apply the terms of the ordinary GNU General Public
1821
- License instead of this License to a given copy of the Library.
1822
- To do this, you must alter all the notices that refer to this
1823
- License, so that they refer to the ordinary GNU General Public
1824
- License, version 2, instead of to this License. (If a newer
1825
- version than version 2 of the ordinary GNU General Public License
1826
- has appeared, then you can specify that version instead if you
1827
- wish.) Do not make any other change in these notices.
1828
-
1829
- Once this change is made in a given copy, it is irreversible for
1830
- that copy, so the ordinary GNU General Public License applies to
1831
- all subsequent copies and derivative works made from that copy.
1832
-
1833
- This option is useful when you wish to copy part of the code of
1834
- the Library into a program that is not a library.
1835
-
1836
- 4. You may copy and distribute the Library (or a portion or
1837
- derivative of it, under Section 2) in object code or executable
1838
- form under the terms of Sections 1 and 2 above provided that you
1839
- accompany it with the complete corresponding machine-readable
1840
- source code, which must be distributed under the terms of Sections
1841
- 1 and 2 above on a medium customarily used for software
1842
- interchange.
1843
-
1844
- If distribution of object code is made by offering access to copy
1845
- from a designated place, then offering equivalent access to copy
1846
- the source code from the same place satisfies the requirement to
1847
- distribute the source code, even though third parties are not
1848
- compelled to copy the source along with the object code.
1849
-
1850
- 5. A program that contains no derivative of any portion of the
1851
- Library, but is designed to work with the Library by being
1852
- compiled or linked with it, is called a "work that uses the
1853
- Library". Such a work, in isolation, is not a derivative work of
1854
- the Library, and therefore falls outside the scope of this License.
1855
-
1856
- However, linking a "work that uses the Library" with the Library
1857
- creates an executable that is a derivative of the Library (because
1858
- it contains portions of the Library), rather than a "work that
1859
- uses the library". The executable is therefore covered by this
1860
- License. Section 6 states terms for distribution of such
1861
- executables.
1862
-
1863
- When a "work that uses the Library" uses material from a header
1864
- file that is part of the Library, the object code for the work may
1865
- be a derivative work of the Library even though the source code is
1866
- not. Whether this is true is especially significant if the work
1867
- can be linked without the Library, or if the work is itself a
1868
- library. The threshold for this to be true is not precisely
1869
- defined by law.
1870
-
1871
- If such an object file uses only numerical parameters, data
1872
- structure layouts and accessors, and small macros and small inline
1873
- functions (ten lines or less in length), then the use of the object
1874
- file is unrestricted, regardless of whether it is legally a
1875
- derivative work. (Executables containing this object code plus
1876
- portions of the Library will still fall under Section 6.)
1877
-
1878
- Otherwise, if the work is a derivative of the Library, you may
1879
- distribute the object code for the work under the terms of Section
1880
- 6. Any executables containing that work also fall under Section 6,
1881
- whether or not they are linked directly with the Library itself.
1882
-
1883
- 6. As an exception to the Sections above, you may also combine or
1884
- link a "work that uses the Library" with the Library to produce a
1885
- work containing portions of the Library, and distribute that work
1886
- under terms of your choice, provided that the terms permit
1887
- modification of the work for the customer's own use and reverse
1888
- engineering for debugging such modifications.
1889
-
1890
- You must give prominent notice with each copy of the work that the
1891
- Library is used in it and that the Library and its use are covered
1892
- by this License. You must supply a copy of this License. If the
1893
- work during execution displays copyright notices, you must include
1894
- the copyright notice for the Library among them, as well as a
1895
- reference directing the user to the copy of this License. Also,
1896
- you must do one of these things:
1897
-
1898
- a. Accompany the work with the complete corresponding
1899
- machine-readable source code for the Library including
1900
- whatever changes were used in the work (which must be
1901
- distributed under Sections 1 and 2 above); and, if the work
1902
- is an executable linked with the Library, with the complete
1903
- machine-readable "work that uses the Library", as object code
1904
- and/or source code, so that the user can modify the Library
1905
- and then relink to produce a modified executable containing
1906
- the modified Library. (It is understood that the user who
1907
- changes the contents of definitions files in the Library will
1908
- not necessarily be able to recompile the application to use
1909
- the modified definitions.)
1910
-
1911
- b. Use a suitable shared library mechanism for linking with the
1912
- Library. A suitable mechanism is one that (1) uses at run
1913
- time a copy of the library already present on the user's
1914
- computer system, rather than copying library functions into
1915
- the executable, and (2) will operate properly with a modified
1916
- version of the library, if the user installs one, as long as
1917
- the modified version is interface-compatible with the version
1918
- that the work was made with.
1919
-
1920
- c. Accompany the work with a written offer, valid for at least
1921
- three years, to give the same user the materials specified in
1922
- Subsection 6a, above, for a charge no more than the cost of
1923
- performing this distribution.
1924
-
1925
- d. If distribution of the work is made by offering access to copy
1926
- from a designated place, offer equivalent access to copy the
1927
- above specified materials from the same place.
1928
-
1929
- e. Verify that the user has already received a copy of these
1930
- materials or that you have already sent this user a copy.
1931
-
1932
- For an executable, the required form of the "work that uses the
1933
- Library" must include any data and utility programs needed for
1934
- reproducing the executable from it. However, as a special
1935
- exception, the materials to be distributed need not include
1936
- anything that is normally distributed (in either source or binary
1937
- form) with the major components (compiler, kernel, and so on) of
1938
- the operating system on which the executable runs, unless that
1939
- component itself accompanies the executable.
1940
-
1941
- It may happen that this requirement contradicts the license
1942
- restrictions of other proprietary libraries that do not normally
1943
- accompany the operating system. Such a contradiction means you
1944
- cannot use both them and the Library together in an executable
1945
- that you distribute.
1946
-
1947
- 7. You may place library facilities that are a work based on the
1948
- Library side-by-side in a single library together with other
1949
- library facilities not covered by this License, and distribute
1950
- such a combined library, provided that the separate distribution
1951
- of the work based on the Library and of the other library
1952
- facilities is otherwise permitted, and provided that you do these
1953
- two things:
1954
-
1955
- a. Accompany the combined library with a copy of the same work
1956
- based on the Library, uncombined with any other library
1957
- facilities. This must be distributed under the terms of the
1958
- Sections above.
1959
-
1960
- b. Give prominent notice with the combined library of the fact
1961
- that part of it is a work based on the Library, and explaining
1962
- where to find the accompanying uncombined form of the same
1963
- work.
1964
-
1965
- 8. You may not copy, modify, sublicense, link with, or distribute the
1966
- Library except as expressly provided under this License. Any
1967
- attempt otherwise to copy, modify, sublicense, link with, or
1968
- distribute the Library is void, and will automatically terminate
1969
- your rights under this License. However, parties who have
1970
- received copies, or rights, from you under this License will not
1971
- have their licenses terminated so long as such parties remain in
1972
- full compliance.
1973
-
1974
- 9. You are not required to accept this License, since you have not
1975
- signed it. However, nothing else grants you permission to modify
1976
- or distribute the Library or its derivative works. These actions
1977
- are prohibited by law if you do not accept this License.
1978
- Therefore, by modifying or distributing the Library (or any work
1979
- based on the Library), you indicate your acceptance of this
1980
- License to do so, and all its terms and conditions for copying,
1981
- distributing or modifying the Library or works based on it.
1982
-
1983
- 10. Each time you redistribute the Library (or any work based on the
1984
- Library), the recipient automatically receives a license from the
1985
- original licensor to copy, distribute, link with or modify the
1986
- Library subject to these terms and conditions. You may not impose
1987
- any further restrictions on the recipients' exercise of the rights
1988
- granted herein. You are not responsible for enforcing compliance
1989
- by third parties with this License.
1990
-
1991
- 11. If, as a consequence of a court judgment or allegation of patent
1992
- infringement or for any other reason (not limited to patent
1993
- issues), conditions are imposed on you (whether by court order,
1994
- agreement or otherwise) that contradict the conditions of this
1995
- License, they do not excuse you from the conditions of this
1996
- License. If you cannot distribute so as to satisfy simultaneously
1997
- your obligations under this License and any other pertinent
1998
- obligations, then as a consequence you may not distribute the
1999
- Library at all. For example, if a patent license would not permit
2000
- royalty-free redistribution of the Library by all those who
2001
- receive copies directly or indirectly through you, then the only
2002
- way you could satisfy both it and this License would be to refrain
2003
- entirely from distribution of the Library.
2004
-
2005
- If any portion of this section is held invalid or unenforceable
2006
- under any particular circumstance, the balance of the section is
2007
- intended to apply, and the section as a whole is intended to apply
2008
- in other circumstances.
2009
-
2010
- It is not the purpose of this section to induce you to infringe any
2011
- patents or other property right claims or to contest validity of
2012
- any such claims; this section has the sole purpose of protecting
2013
- the integrity of the free software distribution system which is
2014
- implemented by public license practices. Many people have made
2015
- generous contributions to the wide range of software distributed
2016
- through that system in reliance on consistent application of that
2017
- system; it is up to the author/donor to decide if he or she is
2018
- willing to distribute software through any other system and a
2019
- licensee cannot impose that choice.
2020
-
2021
- This section is intended to make thoroughly clear what is believed
2022
- to be a consequence of the rest of this License.
2023
-
2024
- 12. If the distribution and/or use of the Library is restricted in
2025
- certain countries either by patents or by copyrighted interfaces,
2026
- the original copyright holder who places the Library under this
2027
- License may add an explicit geographical distribution limitation
2028
- excluding those countries, so that distribution is permitted only
2029
- in or among countries not thus excluded. In such case, this
2030
- License incorporates the limitation as if written in the body of
2031
- this License.
2032
-
2033
- 13. The Free Software Foundation may publish revised and/or new
2034
- versions of the Lesser General Public License from time to time.
2035
- Such new versions will be similar in spirit to the present version,
2036
- but may differ in detail to address new problems or concerns.
2037
-
2038
- Each version is given a distinguishing version number. If the
2039
- Library specifies a version number of this License which applies
2040
- to it and "any later version", you have the option of following
2041
- the terms and conditions either of that version or of any later
2042
- version published by the Free Software Foundation. If the Library
2043
- does not specify a license version number, you may choose any
2044
- version ever published by the Free Software Foundation.
2045
-
2046
- 14. If you wish to incorporate parts of the Library into other free
2047
- programs whose distribution conditions are incompatible with these,
2048
- write to the author to ask for permission. For software which is
2049
- copyrighted by the Free Software Foundation, write to the Free
2050
- Software Foundation; we sometimes make exceptions for this. Our
2051
- decision will be guided by the two goals of preserving the free
2052
- status of all derivatives of our free software and of promoting
2053
- the sharing and reuse of software generally.
2054
-
2055
- NO WARRANTY
2056
-
2057
- 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
2058
- WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE
2059
- LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
2060
- HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT
2061
- WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT
2062
- NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
2063
- FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE
2064
- QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE
2065
- LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY
2066
- SERVICING, REPAIR OR CORRECTION.
2067
-
2068
- 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
2069
- WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
2070
- MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE
2071
- LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
2072
- INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
2073
- INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF
2074
- DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU
2075
- OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY
2076
- OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN
2077
- ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
2078
-
2079
- END OF TERMS AND CONDITIONS
2080
-
2081
- How to Apply These Terms to Your New Libraries
2082
- ----------------------------------------------
2083
-
2084
- If you develop a new library, and you want it to be of the greatest
2085
- possible use to the public, we recommend making it free software that
2086
- everyone can redistribute and change. You can do so by permitting
2087
- redistribution under these terms (or, alternatively, under the terms of
2088
- the ordinary General Public License).
2089
-
2090
- To apply these terms, attach the following notices to the library.
2091
- It is safest to attach them to the start of each source file to most
2092
- effectively convey the exclusion of warranty; and each file should have
2093
- at least the "copyright" line and a pointer to where the full notice is
2094
- found.
2095
-
2096
- ONE LINE TO GIVE THE LIBRARY'S NAME AND AN IDEA OF WHAT IT DOES.
2097
- Copyright (C) YEAR NAME OF AUTHOR
2098
-
2099
- This library is free software; you can redistribute it and/or modify it
2100
- under the terms of the GNU Lesser General Public License as published by
2101
- the Free Software Foundation; either version 2.1 of the License, or (at
2102
- your option) any later version.
2103
-
2104
- This library is distributed in the hope that it will be useful, but
2105
- WITHOUT ANY WARRANTY; without even the implied warranty of
2106
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
2107
- Lesser General Public License for more details.
2108
-
2109
- You should have received a copy of the GNU Lesser General Public
2110
- License along with this library; if not, write to the Free Software
2111
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
2112
- USA.
2113
-
2114
- Also add information on how to contact you by electronic and paper
2115
- mail.
2116
-
2117
- You should also get your employer (if you work as a programmer) or
2118
- your school, if any, to sign a "copyright disclaimer" for the library,
2119
- if necessary. Here is a sample; alter the names:
2120
-
2121
- Yoyodyne, Inc., hereby disclaims all copyright interest in the library
2122
- `Frob' (a library for tweaking knobs) written by James Random Hacker.
2123
-
2124
- SIGNATURE OF TY COON, 1 April 1990
2125
- Ty Coon, President of Vice
2126
-
2127
- That's all there is to it!
2128
-
2129
- 
2130
- File: libtasn1.info, Node: GNU GPL, Prev: GNU LGPL, Up: Copying Information
2131
-
2132
- A.3 GNU General Public License
2133
- ==============================
2134
-
2135
- Version 3, 29 June 2007
2136
-
2137
- Copyright (C) 2007 Free Software Foundation, Inc. `http://fsf.org/'
2138
-
2139
- Everyone is permitted to copy and distribute verbatim copies of this
2140
- license document, but changing it is not allowed.
2141
-
2142
- Preamble
2143
- ========
2144
-
2145
- The GNU General Public License is a free, copyleft license for software
2146
- and other kinds of works.
2147
-
2148
- The licenses for most software and other practical works are designed
2149
- to take away your freedom to share and change the works. By contrast,
2150
- the GNU General Public License is intended to guarantee your freedom to
2151
- share and change all versions of a program--to make sure it remains
2152
- free software for all its users. We, the Free Software Foundation, use
2153
- the GNU General Public License for most of our software; it applies
2154
- also to any other work released this way by its authors. You can apply
2155
- it to your programs, too.
2156
-
2157
- When we speak of free software, we are referring to freedom, not
2158
- price. Our General Public Licenses are designed to make sure that you
2159
- have the freedom to distribute copies of free software (and charge for
2160
- them if you wish), that you receive source code or can get it if you
2161
- want it, that you can change the software or use pieces of it in new
2162
- free programs, and that you know you can do these things.
2163
-
2164
- To protect your rights, we need to prevent others from denying you
2165
- these rights or asking you to surrender the rights. Therefore, you
2166
- have certain responsibilities if you distribute copies of the software,
2167
- or if you modify it: responsibilities to respect the freedom of others.
2168
-
2169
- For example, if you distribute copies of such a program, whether
2170
- gratis or for a fee, you must pass on to the recipients the same
2171
- freedoms that you received. You must make sure that they, too, receive
2172
- or can get the source code. And you must show them these terms so they
2173
- know their rights.
2174
-
2175
- Developers that use the GNU GPL protect your rights with two steps:
2176
- (1) assert copyright on the software, and (2) offer you this License
2177
- giving you legal permission to copy, distribute and/or modify it.
2178
-
2179
- For the developers' and authors' protection, the GPL clearly explains
2180
- that there is no warranty for this free software. For both users' and
2181
- authors' sake, the GPL requires that modified versions be marked as
2182
- changed, so that their problems will not be attributed erroneously to
2183
- authors of previous versions.
2184
-
2185
- Some devices are designed to deny users access to install or run
2186
- modified versions of the software inside them, although the
2187
- manufacturer can do so. This is fundamentally incompatible with the
2188
- aim of protecting users' freedom to change the software. The
2189
- systematic pattern of such abuse occurs in the area of products for
2190
- individuals to use, which is precisely where it is most unacceptable.
2191
- Therefore, we have designed this version of the GPL to prohibit the
2192
- practice for those products. If such problems arise substantially in
2193
- other domains, we stand ready to extend this provision to those domains
2194
- in future versions of the GPL, as needed to protect the freedom of
2195
- users.
2196
-
2197
- Finally, every program is threatened constantly by software patents.
2198
- States should not allow patents to restrict development and use of
2199
- software on general-purpose computers, but in those that do, we wish to
2200
- avoid the special danger that patents applied to a free program could
2201
- make it effectively proprietary. To prevent this, the GPL assures that
2202
- patents cannot be used to render the program non-free.
2203
-
2204
- The precise terms and conditions for copying, distribution and
2205
- modification follow.
2206
-
2207
- TERMS AND CONDITIONS
2208
- ====================
2209
-
2210
- 0. Definitions.
2211
-
2212
- "This License" refers to version 3 of the GNU General Public
2213
- License.
2214
-
2215
- "Copyright" also means copyright-like laws that apply to other
2216
- kinds of works, such as semiconductor masks.
2217
-
2218
- "The Program" refers to any copyrightable work licensed under this
2219
- License. Each licensee is addressed as "you". "Licensees" and
2220
- "recipients" may be individuals or organizations.
2221
-
2222
- To "modify" a work means to copy from or adapt all or part of the
2223
- work in a fashion requiring copyright permission, other than the
2224
- making of an exact copy. The resulting work is called a "modified
2225
- version" of the earlier work or a work "based on" the earlier work.
2226
-
2227
- A "covered work" means either the unmodified Program or a work
2228
- based on the Program.
2229
-
2230
- To "propagate" a work means to do anything with it that, without
2231
- permission, would make you directly or secondarily liable for
2232
- infringement under applicable copyright law, except executing it
2233
- on a computer or modifying a private copy. Propagation includes
2234
- copying, distribution (with or without modification), making
2235
- available to the public, and in some countries other activities as
2236
- well.
2237
-
2238
- To "convey" a work means any kind of propagation that enables other
2239
- parties to make or receive copies. Mere interaction with a user
2240
- through a computer network, with no transfer of a copy, is not
2241
- conveying.
2242
-
2243
- An interactive user interface displays "Appropriate Legal Notices"
2244
- to the extent that it includes a convenient and prominently visible
2245
- feature that (1) displays an appropriate copyright notice, and (2)
2246
- tells the user that there is no warranty for the work (except to
2247
- the extent that warranties are provided), that licensees may
2248
- convey the work under this License, and how to view a copy of this
2249
- License. If the interface presents a list of user commands or
2250
- options, such as a menu, a prominent item in the list meets this
2251
- criterion.
2252
-
2253
- 1. Source Code.
2254
-
2255
- The "source code" for a work means the preferred form of the work
2256
- for making modifications to it. "Object code" means any
2257
- non-source form of a work.
2258
-
2259
- A "Standard Interface" means an interface that either is an
2260
- official standard defined by a recognized standards body, or, in
2261
- the case of interfaces specified for a particular programming
2262
- language, one that is widely used among developers working in that
2263
- language.
2264
-
2265
- The "System Libraries" of an executable work include anything,
2266
- other than the work as a whole, that (a) is included in the normal
2267
- form of packaging a Major Component, but which is not part of that
2268
- Major Component, and (b) serves only to enable use of the work
2269
- with that Major Component, or to implement a Standard Interface
2270
- for which an implementation is available to the public in source
2271
- code form. A "Major Component", in this context, means a major
2272
- essential component (kernel, window system, and so on) of the
2273
- specific operating system (if any) on which the executable work
2274
- runs, or a compiler used to produce the work, or an object code
2275
- interpreter used to run it.
2276
-
2277
- The "Corresponding Source" for a work in object code form means all
2278
- the source code needed to generate, install, and (for an executable
2279
- work) run the object code and to modify the work, including
2280
- scripts to control those activities. However, it does not include
2281
- the work's System Libraries, or general-purpose tools or generally
2282
- available free programs which are used unmodified in performing
2283
- those activities but which are not part of the work. For example,
2284
- Corresponding Source includes interface definition files
2285
- associated with source files for the work, and the source code for
2286
- shared libraries and dynamically linked subprograms that the work
2287
- is specifically designed to require, such as by intimate data
2288
- communication or control flow between those subprograms and other
2289
- parts of the work.
2290
-
2291
- The Corresponding Source need not include anything that users can
2292
- regenerate automatically from other parts of the Corresponding
2293
- Source.
2294
-
2295
- The Corresponding Source for a work in source code form is that
2296
- same work.
2297
-
2298
- 2. Basic Permissions.
2299
-
2300
- All rights granted under this License are granted for the term of
2301
- copyright on the Program, and are irrevocable provided the stated
2302
- conditions are met. This License explicitly affirms your unlimited
2303
- permission to run the unmodified Program. The output from running
2304
- a covered work is covered by this License only if the output,
2305
- given its content, constitutes a covered work. This License
2306
- acknowledges your rights of fair use or other equivalent, as
2307
- provided by copyright law.
2308
-
2309
- You may make, run and propagate covered works that you do not
2310
- convey, without conditions so long as your license otherwise
2311
- remains in force. You may convey covered works to others for the
2312
- sole purpose of having them make modifications exclusively for
2313
- you, or provide you with facilities for running those works,
2314
- provided that you comply with the terms of this License in
2315
- conveying all material for which you do not control copyright.
2316
- Those thus making or running the covered works for you must do so
2317
- exclusively on your behalf, under your direction and control, on
2318
- terms that prohibit them from making any copies of your
2319
- copyrighted material outside their relationship with you.
2320
-
2321
- Conveying under any other circumstances is permitted solely under
2322
- the conditions stated below. Sublicensing is not allowed; section
2323
- 10 makes it unnecessary.
2324
-
2325
- 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
2326
-
2327
- No covered work shall be deemed part of an effective technological
2328
- measure under any applicable law fulfilling obligations under
2329
- article 11 of the WIPO copyright treaty adopted on 20 December
2330
- 1996, or similar laws prohibiting or restricting circumvention of
2331
- such measures.
2332
-
2333
- When you convey a covered work, you waive any legal power to forbid
2334
- circumvention of technological measures to the extent such
2335
- circumvention is effected by exercising rights under this License
2336
- with respect to the covered work, and you disclaim any intention
2337
- to limit operation or modification of the work as a means of
2338
- enforcing, against the work's users, your or third parties' legal
2339
- rights to forbid circumvention of technological measures.
2340
-
2341
- 4. Conveying Verbatim Copies.
2342
-
2343
- You may convey verbatim copies of the Program's source code as you
2344
- receive it, in any medium, provided that you conspicuously and
2345
- appropriately publish on each copy an appropriate copyright notice;
2346
- keep intact all notices stating that this License and any
2347
- non-permissive terms added in accord with section 7 apply to the
2348
- code; keep intact all notices of the absence of any warranty; and
2349
- give all recipients a copy of this License along with the Program.
2350
-
2351
- You may charge any price or no price for each copy that you convey,
2352
- and you may offer support or warranty protection for a fee.
2353
-
2354
- 5. Conveying Modified Source Versions.
2355
-
2356
- You may convey a work based on the Program, or the modifications to
2357
- produce it from the Program, in the form of source code under the
2358
- terms of section 4, provided that you also meet all of these
2359
- conditions:
2360
-
2361
- a. The work must carry prominent notices stating that you
2362
- modified it, and giving a relevant date.
2363
-
2364
- b. The work must carry prominent notices stating that it is
2365
- released under this License and any conditions added under
2366
- section 7. This requirement modifies the requirement in
2367
- section 4 to "keep intact all notices".
2368
-
2369
- c. You must license the entire work, as a whole, under this
2370
- License to anyone who comes into possession of a copy. This
2371
- License will therefore apply, along with any applicable
2372
- section 7 additional terms, to the whole of the work, and all
2373
- its parts, regardless of how they are packaged. This License
2374
- gives no permission to license the work in any other way, but
2375
- it does not invalidate such permission if you have separately
2376
- received it.
2377
-
2378
- d. If the work has interactive user interfaces, each must display
2379
- Appropriate Legal Notices; however, if the Program has
2380
- interactive interfaces that do not display Appropriate Legal
2381
- Notices, your work need not make them do so.
2382
-
2383
- A compilation of a covered work with other separate and independent
2384
- works, which are not by their nature extensions of the covered
2385
- work, and which are not combined with it such as to form a larger
2386
- program, in or on a volume of a storage or distribution medium, is
2387
- called an "aggregate" if the compilation and its resulting
2388
- copyright are not used to limit the access or legal rights of the
2389
- compilation's users beyond what the individual works permit.
2390
- Inclusion of a covered work in an aggregate does not cause this
2391
- License to apply to the other parts of the aggregate.
2392
-
2393
- 6. Conveying Non-Source Forms.
2394
-
2395
- You may convey a covered work in object code form under the terms
2396
- of sections 4 and 5, provided that you also convey the
2397
- machine-readable Corresponding Source under the terms of this
2398
- License, in one of these ways:
2399
-
2400
- a. Convey the object code in, or embodied in, a physical product
2401
- (including a physical distribution medium), accompanied by the
2402
- Corresponding Source fixed on a durable physical medium
2403
- customarily used for software interchange.
2404
-
2405
- b. Convey the object code in, or embodied in, a physical product
2406
- (including a physical distribution medium), accompanied by a
2407
- written offer, valid for at least three years and valid for
2408
- as long as you offer spare parts or customer support for that
2409
- product model, to give anyone who possesses the object code
2410
- either (1) a copy of the Corresponding Source for all the
2411
- software in the product that is covered by this License, on a
2412
- durable physical medium customarily used for software
2413
- interchange, for a price no more than your reasonable cost of
2414
- physically performing this conveying of source, or (2) access
2415
- to copy the Corresponding Source from a network server at no
2416
- charge.
2417
-
2418
- c. Convey individual copies of the object code with a copy of
2419
- the written offer to provide the Corresponding Source. This
2420
- alternative is allowed only occasionally and noncommercially,
2421
- and only if you received the object code with such an offer,
2422
- in accord with subsection 6b.
2423
-
2424
- d. Convey the object code by offering access from a designated
2425
- place (gratis or for a charge), and offer equivalent access
2426
- to the Corresponding Source in the same way through the same
2427
- place at no further charge. You need not require recipients
2428
- to copy the Corresponding Source along with the object code.
2429
- If the place to copy the object code is a network server, the
2430
- Corresponding Source may be on a different server (operated
2431
- by you or a third party) that supports equivalent copying
2432
- facilities, provided you maintain clear directions next to
2433
- the object code saying where to find the Corresponding Source.
2434
- Regardless of what server hosts the Corresponding Source, you
2435
- remain obligated to ensure that it is available for as long
2436
- as needed to satisfy these requirements.
2437
-
2438
- e. Convey the object code using peer-to-peer transmission,
2439
- provided you inform other peers where the object code and
2440
- Corresponding Source of the work are being offered to the
2441
- general public at no charge under subsection 6d.
2442
-
2443
-
2444
- A separable portion of the object code, whose source code is
2445
- excluded from the Corresponding Source as a System Library, need
2446
- not be included in conveying the object code work.
2447
-
2448
- A "User Product" is either (1) a "consumer product", which means
2449
- any tangible personal property which is normally used for personal,
2450
- family, or household purposes, or (2) anything designed or sold for
2451
- incorporation into a dwelling. In determining whether a product
2452
- is a consumer product, doubtful cases shall be resolved in favor of
2453
- coverage. For a particular product received by a particular user,
2454
- "normally used" refers to a typical or common use of that class of
2455
- product, regardless of the status of the particular user or of the
2456
- way in which the particular user actually uses, or expects or is
2457
- expected to use, the product. A product is a consumer product
2458
- regardless of whether the product has substantial commercial,
2459
- industrial or non-consumer uses, unless such uses represent the
2460
- only significant mode of use of the product.
2461
-
2462
- "Installation Information" for a User Product means any methods,
2463
- procedures, authorization keys, or other information required to
2464
- install and execute modified versions of a covered work in that
2465
- User Product from a modified version of its Corresponding Source.
2466
- The information must suffice to ensure that the continued
2467
- functioning of the modified object code is in no case prevented or
2468
- interfered with solely because modification has been made.
2469
-
2470
- If you convey an object code work under this section in, or with,
2471
- or specifically for use in, a User Product, and the conveying
2472
- occurs as part of a transaction in which the right of possession
2473
- and use of the User Product is transferred to the recipient in
2474
- perpetuity or for a fixed term (regardless of how the transaction
2475
- is characterized), the Corresponding Source conveyed under this
2476
- section must be accompanied by the Installation Information. But
2477
- this requirement does not apply if neither you nor any third party
2478
- retains the ability to install modified object code on the User
2479
- Product (for example, the work has been installed in ROM).
2480
-
2481
- The requirement to provide Installation Information does not
2482
- include a requirement to continue to provide support service,
2483
- warranty, or updates for a work that has been modified or
2484
- installed by the recipient, or for the User Product in which it
2485
- has been modified or installed. Access to a network may be denied
2486
- when the modification itself materially and adversely affects the
2487
- operation of the network or violates the rules and protocols for
2488
- communication across the network.
2489
-
2490
- Corresponding Source conveyed, and Installation Information
2491
- provided, in accord with this section must be in a format that is
2492
- publicly documented (and with an implementation available to the
2493
- public in source code form), and must require no special password
2494
- or key for unpacking, reading or copying.
2495
-
2496
- 7. Additional Terms.
2497
-
2498
- "Additional permissions" are terms that supplement the terms of
2499
- this License by making exceptions from one or more of its
2500
- conditions. Additional permissions that are applicable to the
2501
- entire Program shall be treated as though they were included in
2502
- this License, to the extent that they are valid under applicable
2503
- law. If additional permissions apply only to part of the Program,
2504
- that part may be used separately under those permissions, but the
2505
- entire Program remains governed by this License without regard to
2506
- the additional permissions.
2507
-
2508
- When you convey a copy of a covered work, you may at your option
2509
- remove any additional permissions from that copy, or from any part
2510
- of it. (Additional permissions may be written to require their own
2511
- removal in certain cases when you modify the work.) You may place
2512
- additional permissions on material, added by you to a covered work,
2513
- for which you have or can give appropriate copyright permission.
2514
-
2515
- Notwithstanding any other provision of this License, for material
2516
- you add to a covered work, you may (if authorized by the copyright
2517
- holders of that material) supplement the terms of this License
2518
- with terms:
2519
-
2520
- a. Disclaiming warranty or limiting liability differently from
2521
- the terms of sections 15 and 16 of this License; or
2522
-
2523
- b. Requiring preservation of specified reasonable legal notices
2524
- or author attributions in that material or in the Appropriate
2525
- Legal Notices displayed by works containing it; or
2526
-
2527
- c. Prohibiting misrepresentation of the origin of that material,
2528
- or requiring that modified versions of such material be
2529
- marked in reasonable ways as different from the original
2530
- version; or
2531
-
2532
- d. Limiting the use for publicity purposes of names of licensors
2533
- or authors of the material; or
2534
-
2535
- e. Declining to grant rights under trademark law for use of some
2536
- trade names, trademarks, or service marks; or
2537
-
2538
- f. Requiring indemnification of licensors and authors of that
2539
- material by anyone who conveys the material (or modified
2540
- versions of it) with contractual assumptions of liability to
2541
- the recipient, for any liability that these contractual
2542
- assumptions directly impose on those licensors and authors.
2543
-
2544
- All other non-permissive additional terms are considered "further
2545
- restrictions" within the meaning of section 10. If the Program as
2546
- you received it, or any part of it, contains a notice stating that
2547
- it is governed by this License along with a term that is a further
2548
- restriction, you may remove that term. If a license document
2549
- contains a further restriction but permits relicensing or
2550
- conveying under this License, you may add to a covered work
2551
- material governed by the terms of that license document, provided
2552
- that the further restriction does not survive such relicensing or
2553
- conveying.
2554
-
2555
- If you add terms to a covered work in accord with this section, you
2556
- must place, in the relevant source files, a statement of the
2557
- additional terms that apply to those files, or a notice indicating
2558
- where to find the applicable terms.
2559
-
2560
- Additional terms, permissive or non-permissive, may be stated in
2561
- the form of a separately written license, or stated as exceptions;
2562
- the above requirements apply either way.
2563
-
2564
- 8. Termination.
2565
-
2566
- You may not propagate or modify a covered work except as expressly
2567
- provided under this License. Any attempt otherwise to propagate or
2568
- modify it is void, and will automatically terminate your rights
2569
- under this License (including any patent licenses granted under
2570
- the third paragraph of section 11).
2571
-
2572
- However, if you cease all violation of this License, then your
2573
- license from a particular copyright holder is reinstated (a)
2574
- provisionally, unless and until the copyright holder explicitly
2575
- and finally terminates your license, and (b) permanently, if the
2576
- copyright holder fails to notify you of the violation by some
2577
- reasonable means prior to 60 days after the cessation.
2578
-
2579
- Moreover, your license from a particular copyright holder is
2580
- reinstated permanently if the copyright holder notifies you of the
2581
- violation by some reasonable means, this is the first time you have
2582
- received notice of violation of this License (for any work) from
2583
- that copyright holder, and you cure the violation prior to 30 days
2584
- after your receipt of the notice.
2585
-
2586
- Termination of your rights under this section does not terminate
2587
- the licenses of parties who have received copies or rights from
2588
- you under this License. If your rights have been terminated and
2589
- not permanently reinstated, you do not qualify to receive new
2590
- licenses for the same material under section 10.
2591
-
2592
- 9. Acceptance Not Required for Having Copies.
2593
-
2594
- You are not required to accept this License in order to receive or
2595
- run a copy of the Program. Ancillary propagation of a covered work
2596
- occurring solely as a consequence of using peer-to-peer
2597
- transmission to receive a copy likewise does not require
2598
- acceptance. However, nothing other than this License grants you
2599
- permission to propagate or modify any covered work. These actions
2600
- infringe copyright if you do not accept this License. Therefore,
2601
- by modifying or propagating a covered work, you indicate your
2602
- acceptance of this License to do so.
2603
-
2604
- 10. Automatic Licensing of Downstream Recipients.
2605
-
2606
- Each time you convey a covered work, the recipient automatically
2607
- receives a license from the original licensors, to run, modify and
2608
- propagate that work, subject to this License. You are not
2609
- responsible for enforcing compliance by third parties with this
2610
- License.
2611
-
2612
- An "entity transaction" is a transaction transferring control of an
2613
- organization, or substantially all assets of one, or subdividing an
2614
- organization, or merging organizations. If propagation of a
2615
- covered work results from an entity transaction, each party to that
2616
- transaction who receives a copy of the work also receives whatever
2617
- licenses to the work the party's predecessor in interest had or
2618
- could give under the previous paragraph, plus a right to
2619
- possession of the Corresponding Source of the work from the
2620
- predecessor in interest, if the predecessor has it or can get it
2621
- with reasonable efforts.
2622
-
2623
- You may not impose any further restrictions on the exercise of the
2624
- rights granted or affirmed under this License. For example, you
2625
- may not impose a license fee, royalty, or other charge for
2626
- exercise of rights granted under this License, and you may not
2627
- initiate litigation (including a cross-claim or counterclaim in a
2628
- lawsuit) alleging that any patent claim is infringed by making,
2629
- using, selling, offering for sale, or importing the Program or any
2630
- portion of it.
2631
-
2632
- 11. Patents.
2633
-
2634
- A "contributor" is a copyright holder who authorizes use under this
2635
- License of the Program or a work on which the Program is based.
2636
- The work thus licensed is called the contributor's "contributor
2637
- version".
2638
-
2639
- A contributor's "essential patent claims" are all patent claims
2640
- owned or controlled by the contributor, whether already acquired or
2641
- hereafter acquired, that would be infringed by some manner,
2642
- permitted by this License, of making, using, or selling its
2643
- contributor version, but do not include claims that would be
2644
- infringed only as a consequence of further modification of the
2645
- contributor version. For purposes of this definition, "control"
2646
- includes the right to grant patent sublicenses in a manner
2647
- consistent with the requirements of this License.
2648
-
2649
- Each contributor grants you a non-exclusive, worldwide,
2650
- royalty-free patent license under the contributor's essential
2651
- patent claims, to make, use, sell, offer for sale, import and
2652
- otherwise run, modify and propagate the contents of its
2653
- contributor version.
2654
-
2655
- In the following three paragraphs, a "patent license" is any
2656
- express agreement or commitment, however denominated, not to
2657
- enforce a patent (such as an express permission to practice a
2658
- patent or covenant not to sue for patent infringement). To
2659
- "grant" such a patent license to a party means to make such an
2660
- agreement or commitment not to enforce a patent against the party.
2661
-
2662
- If you convey a covered work, knowingly relying on a patent
2663
- license, and the Corresponding Source of the work is not available
2664
- for anyone to copy, free of charge and under the terms of this
2665
- License, through a publicly available network server or other
2666
- readily accessible means, then you must either (1) cause the
2667
- Corresponding Source to be so available, or (2) arrange to deprive
2668
- yourself of the benefit of the patent license for this particular
2669
- work, or (3) arrange, in a manner consistent with the requirements
2670
- of this License, to extend the patent license to downstream
2671
- recipients. "Knowingly relying" means you have actual knowledge
2672
- that, but for the patent license, your conveying the covered work
2673
- in a country, or your recipient's use of the covered work in a
2674
- country, would infringe one or more identifiable patents in that
2675
- country that you have reason to believe are valid.
2676
-
2677
- If, pursuant to or in connection with a single transaction or
2678
- arrangement, you convey, or propagate by procuring conveyance of, a
2679
- covered work, and grant a patent license to some of the parties
2680
- receiving the covered work authorizing them to use, propagate,
2681
- modify or convey a specific copy of the covered work, then the
2682
- patent license you grant is automatically extended to all
2683
- recipients of the covered work and works based on it.
2684
-
2685
- A patent license is "discriminatory" if it does not include within
2686
- the scope of its coverage, prohibits the exercise of, or is
2687
- conditioned on the non-exercise of one or more of the rights that
2688
- are specifically granted under this License. You may not convey a
2689
- covered work if you are a party to an arrangement with a third
2690
- party that is in the business of distributing software, under
2691
- which you make payment to the third party based on the extent of
2692
- your activity of conveying the work, and under which the third
2693
- party grants, to any of the parties who would receive the covered
2694
- work from you, a discriminatory patent license (a) in connection
2695
- with copies of the covered work conveyed by you (or copies made
2696
- from those copies), or (b) primarily for and in connection with
2697
- specific products or compilations that contain the covered work,
2698
- unless you entered into that arrangement, or that patent license
2699
- was granted, prior to 28 March 2007.
2700
-
2701
- Nothing in this License shall be construed as excluding or limiting
2702
- any implied license or other defenses to infringement that may
2703
- otherwise be available to you under applicable patent law.
2704
-
2705
- 12. No Surrender of Others' Freedom.
2706
-
2707
- If conditions are imposed on you (whether by court order,
2708
- agreement or otherwise) that contradict the conditions of this
2709
- License, they do not excuse you from the conditions of this
2710
- License. If you cannot convey a covered work so as to satisfy
2711
- simultaneously your obligations under this License and any other
2712
- pertinent obligations, then as a consequence you may not convey it
2713
- at all. For example, if you agree to terms that obligate you to
2714
- collect a royalty for further conveying from those to whom you
2715
- convey the Program, the only way you could satisfy both those
2716
- terms and this License would be to refrain entirely from conveying
2717
- the Program.
2718
-
2719
- 13. Use with the GNU Affero General Public License.
2720
-
2721
- Notwithstanding any other provision of this License, you have
2722
- permission to link or combine any covered work with a work licensed
2723
- under version 3 of the GNU Affero General Public License into a
2724
- single combined work, and to convey the resulting work. The terms
2725
- of this License will continue to apply to the part which is the
2726
- covered work, but the special requirements of the GNU Affero
2727
- General Public License, section 13, concerning interaction through
2728
- a network will apply to the combination as such.
2729
-
2730
- 14. Revised Versions of this License.
2731
-
2732
- The Free Software Foundation may publish revised and/or new
2733
- versions of the GNU General Public License from time to time.
2734
- Such new versions will be similar in spirit to the present
2735
- version, but may differ in detail to address new problems or
2736
- concerns.
2737
-
2738
- Each version is given a distinguishing version number. If the
2739
- Program specifies that a certain numbered version of the GNU
2740
- General Public License "or any later version" applies to it, you
2741
- have the option of following the terms and conditions either of
2742
- that numbered version or of any later version published by the
2743
- Free Software Foundation. If the Program does not specify a
2744
- version number of the GNU General Public License, you may choose
2745
- any version ever published by the Free Software Foundation.
2746
-
2747
- If the Program specifies that a proxy can decide which future
2748
- versions of the GNU General Public License can be used, that
2749
- proxy's public statement of acceptance of a version permanently
2750
- authorizes you to choose that version for the Program.
2751
-
2752
- Later license versions may give you additional or different
2753
- permissions. However, no additional obligations are imposed on any
2754
- author or copyright holder as a result of your choosing to follow a
2755
- later version.
2756
-
2757
- 15. Disclaimer of Warranty.
2758
-
2759
- THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
2760
- APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE
2761
- COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS"
2762
- WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
2763
- INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
2764
- MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE
2765
- RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.
2766
- SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
2767
- NECESSARY SERVICING, REPAIR OR CORRECTION.
2768
-
2769
- 16. Limitation of Liability.
2770
-
2771
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
2772
- WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES
2773
- AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU
2774
- FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
2775
- CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE
2776
- THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
2777
- BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
2778
- PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
2779
- PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF
2780
- THE POSSIBILITY OF SUCH DAMAGES.
2781
-
2782
- 17. Interpretation of Sections 15 and 16.
2783
-
2784
- If the disclaimer of warranty and limitation of liability provided
2785
- above cannot be given local legal effect according to their terms,
2786
- reviewing courts shall apply local law that most closely
2787
- approximates an absolute waiver of all civil liability in
2788
- connection with the Program, unless a warranty or assumption of
2789
- liability accompanies a copy of the Program in return for a fee.
2790
-
2791
-
2792
- END OF TERMS AND CONDITIONS
2793
- ===========================
2794
-
2795
- How to Apply These Terms to Your New Programs
2796
- =============================================
2797
-
2798
- If you develop a new program, and you want it to be of the greatest
2799
- possible use to the public, the best way to achieve this is to make it
2800
- free software which everyone can redistribute and change under these
2801
- terms.
2802
-
2803
- To do so, attach the following notices to the program. It is safest
2804
- to attach them to the start of each source file to most effectively
2805
- state the exclusion of warranty; and each file should have at least the
2806
- "copyright" line and a pointer to where the full notice is found.
2807
-
2808
- ONE LINE TO GIVE THE PROGRAM'S NAME AND A BRIEF IDEA OF WHAT IT DOES.
2809
- Copyright (C) YEAR NAME OF AUTHOR
2810
-
2811
- This program is free software: you can redistribute it and/or modify
2812
- it under the terms of the GNU General Public License as published by
2813
- the Free Software Foundation, either version 3 of the License, or (at
2814
- your option) any later version.
2815
-
2816
- This program is distributed in the hope that it will be useful, but
2817
- WITHOUT ANY WARRANTY; without even the implied warranty of
2818
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
2819
- General Public License for more details.
2820
-
2821
- You should have received a copy of the GNU General Public License
2822
- along with this program. If not, see `http://www.gnu.org/licenses/'.
2823
-
2824
- Also add information on how to contact you by electronic and paper
2825
- mail.
2826
-
2827
- If the program does terminal interaction, make it output a short
2828
- notice like this when it starts in an interactive mode:
2829
-
2830
- PROGRAM Copyright (C) YEAR NAME OF AUTHOR
2831
- This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
2832
- This is free software, and you are welcome to redistribute it
2833
- under certain conditions; type `show c' for details.
2834
-
2835
- The hypothetical commands `show w' and `show c' should show the
2836
- appropriate parts of the General Public License. Of course, your
2837
- program's commands might be different; for a GUI interface, you would
2838
- use an "about box".
2839
-
2840
- You should also get your employer (if you work as a programmer) or
2841
- school, if any, to sign a "copyright disclaimer" for the program, if
2842
- necessary. For more information on this, and how to apply and follow
2843
- the GNU GPL, see `http://www.gnu.org/licenses/'.
2844
-
2845
- The GNU General Public License does not permit incorporating your
2846
- program into proprietary programs. If your program is a subroutine
2847
- library, you may consider it more useful to permit linking proprietary
2848
- applications with the library. If this is what you want to do, use the
2849
- GNU Lesser General Public License instead of this License. But first,
2850
- please read `http://www.gnu.org/philosophy/why-not-lgpl.html'.
2851
-
2852
- 
2853
- File: libtasn1.info, Node: Concept Index, Next: Function and Data Index, Prev: Copying Information, Up: Top
2854
-
2855
- Concept Index
2856
- *************
2857
-
2858
- [index]
2859
- * Menu:
2860
-
2861
- * ASN.1 schema: ASN.1 syntax. (line 6)
2862
- * asn1Coding program: Invoking asn1Coding. (line 6)
2863
- * asn1Decoding program: Invoking asn1Decoding.
2864
- (line 6)
2865
- * asn1Parser program: Invoking asn1Parser. (line 6)
2866
- * FDL, GNU Free Documentation License: GNU Free Documentation License.
2867
- (line 6)
2868
- * Future developments: Future developments. (line 6)
2869
- * GPL, GNU General Public License: GNU GPL. (line 6)
2870
- * Header file libtasn1.h: Library Notes. (line 6)
2871
- * LGPL, GNU Lesser General Public License: GNU LGPL. (line 6)
2872
- * License, GNU GPL: GNU GPL. (line 6)
2873
- * License, GNU LGPL: GNU LGPL. (line 6)
2874
- * Main type ASN1_TYPE: Library Notes. (line 8)
2875
- * Porting: Introduction. (line 31)
2876
- * Supported ASN.1 types, list of: ASN.1 syntax. (line 33)
2877
- * threads: Introduction. (line 28)
2878
-
2879
- 
2880
- File: libtasn1.info, Node: Function and Data Index, Prev: Concept Index, Up: Top
2881
-
2882
- Function and Data Index
2883
- ***********************
2884
-
2885
- [index]
2886
- * Menu:
2887
-
2888
- * asn1_array2tree: ASN.1 field functions.
2889
- (line 11)
2890
- * asn1_bit_der: DER functions. (line 43)
2891
- * asn1_check_version: Auxilliary functions.
2892
- (line 26)
2893
- * asn1_copy_node: ASN.1 field functions.
2894
- (line 139)
2895
- * asn1_create_element: ASN.1 field functions.
2896
- (line 64)
2897
- * asn1_delete_element: ASN.1 field functions.
2898
- (line 48)
2899
- * asn1_delete_structure: ASN.1 field functions.
2900
- (line 34)
2901
- * asn1_der_coding: DER functions. (line 60)
2902
- * asn1_der_decoding: DER functions. (line 168)
2903
- * asn1_der_decoding_element: DER functions. (line 195)
2904
- * asn1_der_decoding_startEnd: DER functions. (line 227)
2905
- * asn1_expand_any_defined_by: DER functions. (line 263)
2906
- * asn1_expand_octet_string: DER functions. (line 286)
2907
- * asn1_find_node: Auxilliary functions.
2908
- (line 11)
2909
- * asn1_find_structure_from_oid: ASN.1 field functions.
2910
- (line 124)
2911
- * asn1_get_bit_der: DER functions. (line 147)
2912
- * asn1_get_length_der: DER functions. (line 88)
2913
- * asn1_get_octet_der: DER functions. (line 124)
2914
- * asn1_get_tag_der: DER functions. (line 104)
2915
- * asn1_length_der: DER functions. (line 11)
2916
- * asn1_number_of_elements: ASN.1 field functions.
2917
- (line 104)
2918
- * asn1_octet_der: DER functions. (line 27)
2919
- * asn1_parser2array: ASN.1 schema functions.
2920
- (line 44)
2921
- * asn1_parser2tree: ASN.1 schema functions.
2922
- (line 11)
2923
- * asn1_print_structure: ASN.1 field functions.
2924
- (line 86)
2925
- * asn1_read_tag: ASN.1 field functions.
2926
- (line 338)
2927
- * asn1_read_value: ASN.1 field functions.
2928
- (line 267)
2929
- * asn1_write_value: ASN.1 field functions.
2930
- (line 156)
2931
- * libtasn1_perror: Error handling functions.
2932
- (line 10)
2933
- * libtasn1_strerror: Error handling functions.
2934
- (line 19)
2935
-
2936
-
2937
- 
2938
- Tag Table:
2939
- Node: Top908
2940
- Node: Introduction1948
2941
- Node: ASN.1 structure handling3241
2942
- Node: ASN.1 syntax3481
2943
- Node: Naming4633
2944
- Node: Library Notes5551
2945
- Node: Future developments6357
2946
- Node: Utilities6651
2947
- Node: Invoking asn1Parser6871
2948
- Node: Invoking asn1Coding7328
2949
- Node: Invoking asn1Decoding8042
2950
- Node: Function reference8603
2951
- Node: ASN.1 schema functions8887
2952
- Ref: asn1_parser2tree9086
2953
- Ref: asn1_parser2array10128
2954
- Node: ASN.1 field functions11368
2955
- Ref: asn1_array2tree11585
2956
- Ref: asn1_delete_structure12445
2957
- Ref: asn1_delete_element12840
2958
- Ref: asn1_create_element13316
2959
- Ref: asn1_print_structure13973
2960
- Ref: asn1_number_of_elements14596
2961
- Ref: asn1_find_structure_from_oid15195
2962
- Ref: asn1_copy_node15668
2963
- Ref: asn1_write_value16100
2964
- Ref: asn1_read_value20165
2965
- Ref: asn1_read_tag22629
2966
- Node: DER functions23300
2967
- Ref: asn1_length_der23503
2968
- Ref: asn1_octet_der23925
2969
- Ref: asn1_bit_der24324
2970
- Ref: asn1_der_coding24739
2971
- Ref: asn1_get_length_der25664
2972
- Ref: asn1_get_tag_der26123
2973
- Ref: asn1_get_octet_der26669
2974
- Ref: asn1_get_bit_der27367
2975
- Ref: asn1_der_decoding28048
2976
- Ref: asn1_der_decoding_element28970
2977
- Ref: asn1_der_decoding_startEnd30128
2978
- Ref: asn1_expand_any_defined_by31380
2979
- Ref: asn1_expand_octet_string32189
2980
- Node: Error handling functions33136
2981
- Ref: libtasn1_perror33360
2982
- Ref: libtasn1_strerror33637
2983
- Node: Auxilliary functions33990
2984
- Ref: asn1_find_node34182
2985
- Ref: asn1_check_version34762
2986
- Node: Copying Information35376
2987
- Node: GNU Free Documentation License35755
2988
- Node: GNU LGPL58172
2989
- Node: GNU GPL86349
2990
- Node: Concept Index123895
2991
- Node: Function and Data Index125293
2992
- 
2993
- End Tag Table