aboutsummaryrefslogtreecommitdiff
path: root/doc/doxyout/hx509
diff options
context:
space:
mode:
Diffstat (limited to 'doc/doxyout/hx509')
-rw-r--r--doc/doxyout/hx509/html/bc_s.pngbin0 -> 676 bytes
-rw-r--r--doc/doxyout/hx509/html/bdwn.pngbin0 -> 147 bytes
-rw-r--r--doc/doxyout/hx509/html/closed.pngbin0 -> 132 bytes
-rw-r--r--doc/doxyout/hx509/html/doc.pngbin0 -> 746 bytes
-rw-r--r--doc/doxyout/hx509/html/doxygen.css1849
-rw-r--r--doc/doxyout/hx509/html/doxygen.pngbin1281 -> 3779 bytes
-rw-r--r--doc/doxyout/hx509/html/dynsections.js97
-rw-r--r--doc/doxyout/hx509/html/folderclosed.pngbin0 -> 616 bytes
-rw-r--r--doc/doxyout/hx509/html/folderopen.pngbin0 -> 597 bytes
-rw-r--r--doc/doxyout/hx509/html/graph_legend.dot22
-rw-r--r--doc/doxyout/hx509/html/graph_legend.html85
-rw-r--r--doc/doxyout/hx509/html/graph_legend.md51
-rw-r--r--doc/doxyout/hx509/html/graph_legend.pngbin4256 -> 25694 bytes
-rw-r--r--doc/doxyout/hx509/html/group__hx509.html104
-rw-r--r--doc/doxyout/hx509/html/group__hx509__ca.html1243
-rw-r--r--doc/doxyout/hx509/html/group__hx509__cert.html1461
-rw-r--r--doc/doxyout/hx509/html/group__hx509__cms.html498
-rw-r--r--doc/doxyout/hx509/html/group__hx509__crypto.html98
-rw-r--r--doc/doxyout/hx509/html/group__hx509__env.html319
-rw-r--r--doc/doxyout/hx509/html/group__hx509__error.html317
-rw-r--r--doc/doxyout/hx509/html/group__hx509__keyset.html789
-rw-r--r--doc/doxyout/hx509/html/group__hx509__lock.html34
-rw-r--r--doc/doxyout/hx509/html/group__hx509__misc.html102
-rw-r--r--doc/doxyout/hx509/html/group__hx509__name.html492
-rw-r--r--doc/doxyout/hx509/html/group__hx509__peer.html249
-rw-r--r--doc/doxyout/hx509/html/group__hx509__print.html467
-rw-r--r--doc/doxyout/hx509/html/group__hx509__query.html33
-rw-r--r--doc/doxyout/hx509/html/group__hx509__revoke.html384
-rw-r--r--doc/doxyout/hx509/html/group__hx509__verify.html721
-rw-r--r--doc/doxyout/hx509/html/index.html56
-rw-r--r--doc/doxyout/hx509/html/jquery.js87
-rw-r--r--doc/doxyout/hx509/html/menu.js26
-rw-r--r--doc/doxyout/hx509/html/menudata.js4
-rw-r--r--doc/doxyout/hx509/html/modules.html68
-rw-r--r--doc/doxyout/hx509/html/nav_f.pngbin0 -> 153 bytes
-rw-r--r--doc/doxyout/hx509/html/nav_g.pngbin0 -> 95 bytes
-rw-r--r--doc/doxyout/hx509/html/nav_h.pngbin0 -> 98 bytes
-rw-r--r--doc/doxyout/hx509/html/open.pngbin0 -> 123 bytes
-rw-r--r--doc/doxyout/hx509/html/page_ca.html31
-rw-r--r--doc/doxyout/hx509/html/page_cert.html35
-rw-r--r--doc/doxyout/hx509/html/page_cms.html40
-rw-r--r--doc/doxyout/hx509/html/page_env.html31
-rw-r--r--doc/doxyout/hx509/html/page_error.html31
-rw-r--r--doc/doxyout/hx509/html/page_keyset.html44
-rw-r--r--doc/doxyout/hx509/html/page_lock.html31
-rw-r--r--doc/doxyout/hx509/html/page_name.html43
-rw-r--r--doc/doxyout/hx509/html/page_peer.html33
-rw-r--r--doc/doxyout/hx509/html/page_print.html31
-rw-r--r--doc/doxyout/hx509/html/page_revoke.html35
-rw-r--r--doc/doxyout/hx509/html/pages.html69
-rw-r--r--doc/doxyout/hx509/html/splitbar.pngbin0 -> 314 bytes
-rw-r--r--doc/doxyout/hx509/html/sync_off.pngbin0 -> 853 bytes
-rw-r--r--doc/doxyout/hx509/html/sync_on.pngbin0 -> 845 bytes
-rw-r--r--doc/doxyout/hx509/html/tab_a.pngbin0 -> 142 bytes
-rw-r--r--doc/doxyout/hx509/html/tab_b.gifbin35 -> 0 bytes
-rw-r--r--doc/doxyout/hx509/html/tab_b.pngbin0 -> 169 bytes
-rw-r--r--doc/doxyout/hx509/html/tab_h.pngbin0 -> 177 bytes
-rw-r--r--doc/doxyout/hx509/html/tab_l.gifbin706 -> 0 bytes
-rw-r--r--doc/doxyout/hx509/html/tab_r.gifbin2585 -> 0 bytes
-rw-r--r--doc/doxyout/hx509/html/tab_s.pngbin0 -> 184 bytes
-rw-r--r--doc/doxyout/hx509/html/tabs.css103
-rw-r--r--doc/doxyout/hx509/man/man3/hx509.322
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_ca.3308
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_ca_tbs_set_signature_algorithm.31
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_cert.3289
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_cms.3150
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_crypto.325
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_env.368
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_error.366
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_keyset.3208
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_lock.313
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_misc.320
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_name.393
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_peer.347
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_print.398
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_query.313
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_revoke.357
-rw-r--r--doc/doxyout/hx509/man/man3/hx509_verify.3126
-rw-r--r--doc/doxyout/hx509/man/man3/page_ca.36
-rw-r--r--doc/doxyout/hx509/man/man3/page_cert.38
-rw-r--r--doc/doxyout/hx509/man/man3/page_cms.310
-rw-r--r--doc/doxyout/hx509/man/man3/page_env.36
-rw-r--r--doc/doxyout/hx509/man/man3/page_error.36
-rw-r--r--doc/doxyout/hx509/man/man3/page_keyset.316
-rw-r--r--doc/doxyout/hx509/man/man3/page_lock.36
-rw-r--r--doc/doxyout/hx509/man/man3/page_name.316
-rw-r--r--doc/doxyout/hx509/man/man3/page_peer.36
-rw-r--r--doc/doxyout/hx509/man/man3/page_print.36
-rw-r--r--doc/doxyout/hx509/man/man3/page_revoke.310
-rw-r--r--doc/doxyout/hx509/manpages305
90 files changed, 6770 insertions, 5398 deletions
diff --git a/doc/doxyout/hx509/html/bc_s.png b/doc/doxyout/hx509/html/bc_s.png
new file mode 100644
index 000000000000..224b29aa9847
--- /dev/null
+++ b/doc/doxyout/hx509/html/bc_s.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/bdwn.png b/doc/doxyout/hx509/html/bdwn.png
new file mode 100644
index 000000000000..940a0b950443
--- /dev/null
+++ b/doc/doxyout/hx509/html/bdwn.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/closed.png b/doc/doxyout/hx509/html/closed.png
new file mode 100644
index 000000000000..98cc2c909da3
--- /dev/null
+++ b/doc/doxyout/hx509/html/closed.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/doc.png b/doc/doxyout/hx509/html/doc.png
new file mode 100644
index 000000000000..17edabff95f7
--- /dev/null
+++ b/doc/doxyout/hx509/html/doc.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/doxygen.css b/doc/doxyout/hx509/html/doxygen.css
index 22c484301dd1..4f1ab9195b44 100644
--- a/doc/doxyout/hx509/html/doxygen.css
+++ b/doc/doxyout/hx509/html/doxygen.css
@@ -1,473 +1,1596 @@
-BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV {
- font-family: Geneva, Arial, Helvetica, sans-serif;
+/* The standard CSS for doxygen 1.8.13 */
+
+body, table, div, p, dl {
+ font: 400 14px/22px Roboto,sans-serif;
}
-BODY,TD {
- font-size: 90%;
+
+p.reference, p.definition {
+ font: 400 14px/22px Roboto,sans-serif;
}
-H1 {
- text-align: center;
- font-size: 160%;
+
+/* @group Heading Levels */
+
+h1.groupheader {
+ font-size: 150%;
}
-H2 {
- font-size: 120%;
+
+.title {
+ font: 400 14px/28px Roboto,sans-serif;
+ font-size: 150%;
+ font-weight: bold;
+ margin: 10px 2px;
}
-H3 {
+
+h2.groupheader {
+ border-bottom: 1px solid #879ECB;
+ color: #354C7B;
+ font-size: 150%;
+ font-weight: normal;
+ margin-top: 1.75em;
+ padding-top: 8px;
+ padding-bottom: 4px;
+ width: 100%;
+}
+
+h3.groupheader {
font-size: 100%;
}
-CAPTION {
- font-weight: bold
+
+h1, h2, h3, h4, h5, h6 {
+ -webkit-transition: text-shadow 0.5s linear;
+ -moz-transition: text-shadow 0.5s linear;
+ -ms-transition: text-shadow 0.5s linear;
+ -o-transition: text-shadow 0.5s linear;
+ transition: text-shadow 0.5s linear;
+ margin-right: 15px;
}
-DIV.qindex {
- width: 100%;
- background-color: #e8eef2;
- border: 1px solid #84b0c7;
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+ text-shadow: 0 0 15px cyan;
+}
+
+dt {
+ font-weight: bold;
+}
+
+div.multicol {
+ -moz-column-gap: 1em;
+ -webkit-column-gap: 1em;
+ -moz-column-count: 3;
+ -webkit-column-count: 3;
+}
+
+p.startli, p.startdd {
+ margin-top: 2px;
+}
+
+p.starttd {
+ margin-top: 0px;
+}
+
+p.endli {
+ margin-bottom: 0px;
+}
+
+p.enddd {
+ margin-bottom: 4px;
+}
+
+p.endtd {
+ margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+ font-weight: bold;
+}
+
+span.legend {
+ font-size: 70%;
+ text-align: center;
+}
+
+h3.version {
+ font-size: 90%;
+ text-align: center;
+}
+
+div.qindex, div.navtab{
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
text-align: center;
- margin: 2px;
- padding: 2px;
- line-height: 140%;
}
-DIV.navpath {
+
+div.qindex, div.navpath {
width: 100%;
- background-color: #e8eef2;
- border: 1px solid #84b0c7;
- text-align: center;
- margin: 2px;
- padding: 2px;
line-height: 140%;
}
-DIV.navtab {
- background-color: #e8eef2;
- border: 1px solid #84b0c7;
- text-align: center;
- margin: 2px;
- margin-right: 15px;
- padding: 2px;
+
+div.navtab {
+ margin-right: 15px;
}
-TD.navtab {
- font-size: 70%;
+
+/* @group Link Styling */
+
+a {
+ color: #3D578C;
+ font-weight: normal;
+ text-decoration: none;
}
-A.qindex {
- text-decoration: none;
- font-weight: bold;
- color: #1A419D;
+
+.contents a:visited {
+ color: #4665A2;
}
-A.qindex:visited {
- text-decoration: none;
- font-weight: bold;
- color: #1A419D
+
+a:hover {
+ text-decoration: underline;
}
-A.qindex:hover {
- text-decoration: none;
- background-color: #ddddff;
+
+a.qindex {
+ font-weight: bold;
}
-A.qindexHL {
- text-decoration: none;
+
+a.qindexHL {
font-weight: bold;
- background-color: #6666cc;
+ background-color: #9CAFD4;
color: #ffffff;
- border: 1px double #9295C2;
+ border: 1px double #869DCA;
}
-A.qindexHL:hover {
- text-decoration: none;
- background-color: #6666cc;
- color: #ffffff;
+
+.contents a.qindexHL:visited {
+ color: #ffffff;
}
-A.qindexHL:visited {
- text-decoration: none;
- background-color: #6666cc;
- color: #ffffff
+
+a.el {
+ font-weight: bold;
}
-A.el {
- text-decoration: none;
- font-weight: bold
+
+a.elRef {
}
-A.elRef {
- font-weight: bold
+
+a.code, a.code:visited, a.line, a.line:visited {
+ color: #4665A2;
}
-A.code:link {
- text-decoration: none;
- font-weight: normal;
- color: #0000FF
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+ color: #4665A2;
}
-A.code:visited {
- text-decoration: none;
- font-weight: normal;
- color: #0000FF
+
+/* @end */
+
+dl.el {
+ margin-left: -1cm;
}
-A.codeRef:link {
- font-weight: normal;
- color: #0000FF
+
+pre.fragment {
+ border: 1px solid #C4CFE5;
+ background-color: #FBFCFD;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ overflow: auto;
+ word-wrap: break-word;
+ font-size: 9pt;
+ line-height: 125%;
+ font-family: monospace, fixed;
+ font-size: 105%;
}
-A.codeRef:visited {
- font-weight: normal;
- color: #0000FF
+
+div.fragment {
+ padding: 0px;
+ margin: 4px 8px 4px 2px;
+ background-color: #FBFCFD;
+ border: 1px solid #C4CFE5;
}
-A:hover {
- text-decoration: none;
- background-color: #f2f2ff
+
+div.line {
+ font-family: monospace, fixed;
+ font-size: 13px;
+ min-height: 13px;
+ line-height: 1.0;
+ text-wrap: unrestricted;
+ white-space: -moz-pre-wrap; /* Moz */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ white-space: pre-wrap; /* CSS3 */
+ word-wrap: break-word; /* IE 5.5+ */
+ text-indent: -53px;
+ padding-left: 53px;
+ padding-bottom: 0px;
+ margin: 0px;
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
}
-DL.el {
- margin-left: -1cm
+
+div.line:after {
+ content:"\000A";
+ white-space: pre;
}
-.fragment {
- font-family: monospace, fixed;
- font-size: 95%;
+
+div.line.glow {
+ background-color: cyan;
+ box-shadow: 0 0 10px cyan;
}
-PRE.fragment {
- border: 1px solid #CCCCCC;
- background-color: #f5f5f5;
- margin-top: 4px;
- margin-bottom: 4px;
- margin-left: 2px;
- margin-right: 8px;
- padding-left: 6px;
- padding-right: 6px;
- padding-top: 4px;
- padding-bottom: 4px;
+
+
+span.lineno {
+ padding-right: 4px;
+ text-align: right;
+ border-right: 2px solid #0F0;
+ background-color: #E8E8E8;
+ white-space: pre;
}
-DIV.ah {
- background-color: black;
- font-weight: bold;
- color: #ffffff;
- margin-bottom: 3px;
- margin-top: 3px
+span.lineno a {
+ background-color: #D8D8D8;
}
-DIV.groupHeader {
- margin-left: 16px;
- margin-top: 12px;
- margin-bottom: 6px;
- font-weight: bold;
+span.lineno a:hover {
+ background-color: #C8C8C8;
}
-DIV.groupText {
- margin-left: 16px;
- font-style: italic;
- font-size: 90%
+
+.lineno {
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
}
-BODY {
- background: white;
- color: black;
- margin-right: 20px;
- margin-left: 20px;
+
+div.ah, span.ah {
+ background-color: black;
+ font-weight: bold;
+ color: #ffffff;
+ margin-bottom: 3px;
+ margin-top: 3px;
+ padding: 0.2em;
+ border: solid thin #333;
+ border-radius: 0.5em;
+ -webkit-border-radius: .5em;
+ -moz-border-radius: .5em;
+ box-shadow: 2px 2px 3px #999;
+ -webkit-box-shadow: 2px 2px 3px #999;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+ background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%);
}
-TD.indexkey {
- background-color: #e8eef2;
+
+div.classindex ul {
+ list-style: none;
+ padding-left: 0;
+}
+
+div.classindex span.ai {
+ display: inline-block;
+}
+
+div.groupHeader {
+ margin-left: 16px;
+ margin-top: 12px;
font-weight: bold;
- padding-right : 10px;
- padding-top : 2px;
- padding-left : 10px;
- padding-bottom : 2px;
- margin-left : 0px;
- margin-right : 0px;
- margin-top : 2px;
- margin-bottom : 2px;
- border: 1px solid #CCCCCC;
-}
-TD.indexvalue {
- background-color: #e8eef2;
- font-style: italic;
- padding-right : 10px;
- padding-top : 2px;
- padding-left : 10px;
- padding-bottom : 2px;
- margin-left : 0px;
- margin-right : 0px;
- margin-top : 2px;
- margin-bottom : 2px;
- border: 1px solid #CCCCCC;
-}
-TR.memlist {
- background-color: #f0f0f0;
-}
-P.formulaDsp {
- text-align: center;
-}
-IMG.formulaDsp {
-}
-IMG.formulaInl {
- vertical-align: middle;
-}
-SPAN.keyword { color: #008000 }
-SPAN.keywordtype { color: #604020 }
-SPAN.keywordflow { color: #e08000 }
-SPAN.comment { color: #800000 }
-SPAN.preprocessor { color: #806020 }
-SPAN.stringliteral { color: #002080 }
-SPAN.charliteral { color: #008080 }
-SPAN.vhdldigit { color: #ff00ff }
-SPAN.vhdlchar { color: #000000 }
-SPAN.vhdlkeyword { color: #700070 }
-SPAN.vhdllogic { color: #ff0000 }
-
-.mdescLeft {
- padding: 0px 8px 4px 8px;
- font-size: 80%;
- font-style: italic;
- background-color: #FAFAFA;
- border-top: 1px none #E0E0E0;
- border-right: 1px none #E0E0E0;
- border-bottom: 1px none #E0E0E0;
- border-left: 1px none #E0E0E0;
- margin: 0px;
}
-.mdescRight {
- padding: 0px 8px 4px 8px;
- font-size: 80%;
+
+div.groupText {
+ margin-left: 16px;
font-style: italic;
- background-color: #FAFAFA;
- border-top: 1px none #E0E0E0;
- border-right: 1px none #E0E0E0;
- border-bottom: 1px none #E0E0E0;
- border-left: 1px none #E0E0E0;
- margin: 0px;
}
-.memItemLeft {
- padding: 1px 0px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: solid;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- background-color: #FAFAFA;
- font-size: 80%;
+
+body {
+ background-color: white;
+ color: black;
+ margin: 0;
}
-.memItemRight {
- padding: 1px 8px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: solid;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- background-color: #FAFAFA;
- font-size: 80%;
+
+div.contents {
+ margin-top: 10px;
+ margin-left: 12px;
+ margin-right: 8px;
}
-.memTemplItemLeft {
- padding: 1px 0px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: none;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- background-color: #FAFAFA;
- font-size: 80%;
+
+td.indexkey {
+ background-color: #EBEFF6;
+ font-weight: bold;
+ border: 1px solid #C4CFE5;
+ margin: 2px 0px 2px 0;
+ padding: 2px 10px;
+ white-space: nowrap;
+ vertical-align: top;
}
-.memTemplItemRight {
- padding: 1px 8px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: none;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- background-color: #FAFAFA;
- font-size: 80%;
+
+td.indexvalue {
+ background-color: #EBEFF6;
+ border: 1px solid #C4CFE5;
+ padding: 2px 10px;
+ margin: 2px 0px;
}
-.memTemplParams {
- padding: 1px 0px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: solid;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- color: #606060;
- background-color: #FAFAFA;
- font-size: 80%;
+
+tr.memlist {
+ background-color: #EEF1F7;
}
-.search {
+
+p.formulaDsp {
+ text-align: center;
+}
+
+img.formulaDsp {
+
+}
+
+img.formulaInl {
+ vertical-align: middle;
+}
+
+div.center {
+ text-align: center;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
+}
+
+div.center img {
+ border: 0px;
+}
+
+address.footer {
+ text-align: right;
+ padding-right: 12px;
+}
+
+img.footer {
+ border: 0px;
+ vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+ color: #008000
+}
+
+span.keywordtype {
+ color: #604020
+}
+
+span.keywordflow {
+ color: #e08000
+}
+
+span.comment {
+ color: #800000
+}
+
+span.preprocessor {
+ color: #806020
+}
+
+span.stringliteral {
+ color: #002080
+}
+
+span.charliteral {
+ color: #008080
+}
+
+span.vhdldigit {
+ color: #ff00ff
+}
+
+span.vhdlchar {
+ color: #000000
+}
+
+span.vhdlkeyword {
+ color: #700070
+}
+
+span.vhdllogic {
+ color: #ff0000
+}
+
+blockquote {
+ background-color: #F7F8FB;
+ border-left: 2px solid #9CAFD4;
+ margin: 0 24px 0 4px;
+ padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+/*
+.search {
color: #003399;
font-weight: bold;
}
-FORM.search {
+
+form.search {
margin-bottom: 0px;
margin-top: 0px;
}
-INPUT.search {
+
+input.search {
font-size: 75%;
color: #000080;
font-weight: normal;
background-color: #e8eef2;
}
-TD.tiny {
+*/
+
+td.tiny {
font-size: 75%;
}
-a {
- color: #1A41A8;
-}
-a:visited {
- color: #2A3798;
-}
-.dirtab {
+
+.dirtab {
padding: 4px;
border-collapse: collapse;
- border: 1px solid #84b0c7;
+ border: 1px solid #A3B4D7;
}
-TH.dirtab {
- background: #e8eef2;
+
+th.dirtab {
+ background: #EBEFF6;
font-weight: bold;
}
-HR {
+
+hr {
+ height: 0px;
+ border: none;
+ border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+ border-spacing: 0px;
+ padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+ background-color: cyan;
+ box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+ background-color: #F9FAFC;
border: none;
- border-top: 1px solid black;
+ margin: 4px;
+ padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+ padding: 0px 8px 4px 8px;
+ color: #555;
+}
+
+.memSeparator {
+ border-bottom: 1px solid #DEE4F0;
+ line-height: 1px;
+ margin: 0px;
+ padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+ white-space: nowrap;
+}
+
+.memItemRight {
+ width: 100%;
+}
+
+.memTemplParams {
+ color: #4665A2;
+ white-space: nowrap;
+ font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtitle {
+ padding: 8px;
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ margin-bottom: -1px;
+ background-image: url('nav_f.png');
+ background-repeat: repeat-x;
+ background-color: #E2E8F2;
+ line-height: 1.25;
+ font-weight: 300;
+ float:left;
+}
+
+.permalink
+{
+ font-size: 65%;
+ display: inline-block;
+ vertical-align: middle;
}
-/* Style for detailed member documentation */
.memtemplate {
font-size: 80%;
- color: #606060;
+ color: #4665A2;
font-weight: normal;
- margin-left: 3px;
-}
-.memnav {
- background-color: #e8eef2;
- border: 1px solid #84b0c7;
+ margin-left: 9px;
+}
+
+.memnav {
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
text-align: center;
margin: 2px;
margin-right: 15px;
padding: 2px;
}
+
+.mempage {
+ width: 100%;
+}
+
.memitem {
- padding: 4px;
- background-color: #eef3f5;
- border-width: 1px;
- border-style: solid;
- border-color: #dedeee;
- -moz-border-radius: 8px 8px 8px 8px;
+ padding: 0;
+ margin-bottom: 10px;
+ margin-right: 5px;
+ -webkit-transition: box-shadow 0.5s linear;
+ -moz-transition: box-shadow 0.5s linear;
+ -ms-transition: box-shadow 0.5s linear;
+ -o-transition: box-shadow 0.5s linear;
+ transition: box-shadow 0.5s linear;
+ display: table !important;
+ width: 100%;
+}
+
+.memitem.glow {
+ box-shadow: 0 0 15px cyan;
}
+
.memname {
- white-space: nowrap;
- font-weight: bold;
+ font-weight: 400;
+ margin-left: 6px;
}
-.memdoc{
- padding-left: 10px;
+
+.memname td {
+ vertical-align: bottom;
}
-.memproto {
- background-color: #d5e1e8;
- width: 100%;
- border-width: 1px;
- border-style: solid;
- border-color: #84b0c7;
- font-weight: bold;
- -moz-border-radius: 8px 8px 8px 8px;
+
+.memproto, dl.reflist dt {
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 0px 6px 0px;
+ color: #253555;
+ font-weight: bold;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ background-color: #DFE5F1;
+ /* opera specific markup */
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-top-right-radius: 4px;
+ /* firefox specific markup */
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ -moz-border-radius-topright: 4px;
+ /* webkit specific markup */
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -webkit-border-top-right-radius: 4px;
+
+}
+
+.overload {
+ font-family: "courier new",courier,monospace;
+ font-size: 65%;
}
+
+.memdoc, dl.reflist dd {
+ border-bottom: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 10px 2px 10px;
+ background-color: #FBFCFD;
+ border-top-width: 0;
+ background-image:url('nav_g.png');
+ background-repeat:repeat-x;
+ background-color: #FFFFFF;
+ /* opera specific markup */
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ /* firefox specific markup */
+ -moz-border-radius-bottomleft: 4px;
+ -moz-border-radius-bottomright: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ /* webkit specific markup */
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+ padding: 5px;
+}
+
+dl.reflist dd {
+ margin: 0px 0px 10px 0px;
+ padding: 5px;
+}
+
.paramkey {
text-align: right;
}
+
.paramtype {
white-space: nowrap;
}
+
.paramname {
color: #602020;
- font-style: italic;
white-space: nowrap;
}
-/* End Styling for detailed member documentation */
+.paramname em {
+ font-style: normal;
+}
+.paramname code {
+ line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+.params .paramname, .retval .paramname {
+ font-weight: bold;
+ vertical-align: top;
+}
+
+.params .paramtype {
+ font-style: italic;
+ vertical-align: top;
+}
+
+.params .paramdir {
+ font-family: "courier new",courier,monospace;
+ vertical-align: top;
+}
+
+table.mlabels {
+ border-spacing: 0px;
+}
+
+td.mlabels-left {
+ width: 100%;
+ padding: 0px;
+}
+
+td.mlabels-right {
+ vertical-align: bottom;
+ padding: 0px;
+ white-space: nowrap;
+}
+
+span.mlabels {
+ margin-left: 8px;
+}
+
+span.mlabel {
+ background-color: #728DC1;
+ border-top:1px solid #5373B4;
+ border-left:1px solid #5373B4;
+ border-right:1px solid #C4CFE5;
+ border-bottom:1px solid #C4CFE5;
+ text-shadow: none;
+ color: white;
+ margin-right: 4px;
+ padding: 2px 3px;
+ border-radius: 3px;
+ font-size: 7pt;
+ white-space: nowrap;
+ vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view inside a (index) page */
+
+div.directory {
+ margin: 10px 0px;
+ border-top: 1px solid #9CAFD4;
+ border-bottom: 1px solid #9CAFD4;
+ width: 100%;
+}
+
+.directory table {
+ border-collapse:collapse;
+}
+
+.directory td {
+ margin: 0px;
+ padding: 0px;
+ vertical-align: top;
+}
+
+.directory td.entry {
+ white-space: nowrap;
+ padding-right: 6px;
+ padding-top: 3px;
+}
+
+.directory td.entry a {
+ outline:none;
+}
+
+.directory td.entry a img {
+ border: none;
+}
+
+.directory td.desc {
+ width: 100%;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 3px;
+ border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+ padding-left: 6px;
+ background-color: #F7F8FB;
+}
+
+.directory img {
+ vertical-align: -30%;
+}
+
+.directory .levels {
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
+}
+
+.directory .levels span {
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
+ color: #3D578C;
+}
+
+.arrow {
+ color: #9CAFD4;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ cursor: pointer;
+ font-size: 80%;
+ display: inline-block;
+ width: 16px;
+ height: 22px;
+}
+
+.icon {
+ font-family: Arial, Helvetica;
+ font-weight: bold;
+ font-size: 12px;
+ height: 14px;
+ width: 16px;
+ display: inline-block;
+ background-color: #728DC1;
+ color: white;
+ text-align: center;
+ border-radius: 4px;
+ margin-left: 2px;
+ margin-right: 2px;
+}
+
+.icona {
+ width: 24px;
+ height: 22px;
+ display: inline-block;
+}
+
+.iconfopen {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('folderopen.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+.iconfclosed {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('folderclosed.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+.icondoc {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('doc.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+table.directory {
+ font: 400 14px Roboto,sans-serif;
+}
+
+/* @end */
+
+div.dynheader {
+ margin-top: 8px;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+address {
+ font-style: normal;
+ color: #2A3D61;
+}
+
+table.doxtable caption {
+ caption-side: top;
+}
+
+table.doxtable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+table.fieldtable {
+ /*width: 100%;*/
+ margin-bottom: 10px;
+ border: 1px solid #A8B8D9;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+ padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+ white-space: nowrap;
+ border-right: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+ padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+ border-bottom: 1px solid #A8B8D9;
+ /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+ margin-top: 0px;
+}
+
+.fieldtable td.fielddoc p:last-child {
+ margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+ border-bottom: none;
+}
+
+.fieldtable th {
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ font-size: 90%;
+ color: #253555;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ font-weight: 400;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+ top: 0px;
+ left: 10px;
+ height: 36px;
+ background-image: url('tab_b.png');
+ z-index: 101;
+ overflow: hidden;
+ font-size: 13px;
+}
+
+.navpath ul
+{
+ font-size: 11px;
+ background-image:url('tab_b.png');
+ background-repeat:repeat-x;
+ background-position: 0 -5px;
+ height:30px;
+ line-height:30px;
+ color:#8AA0CC;
+ border:solid 1px #C2CDE4;
+ overflow:hidden;
+ margin:0px;
+ padding:0px;
+}
+
+.navpath li
+{
+ list-style-type:none;
+ float:left;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:url('bc_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+ height:32px;
+ display:block;
+ text-decoration: none;
+ outline: none;
+ color: #283A5D;
+ font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ text-decoration: none;
+}
+
+.navpath li.navelem a:hover
+{
+ color:#6884BD;
+}
+
+.navpath li.footer
+{
+ list-style-type:none;
+ float:right;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:none;
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+ font-size: 8pt;
+}
+
+
+div.summary
+{
+ float: right;
+ font-size: 8pt;
+ padding-right: 5px;
+ width: 50%;
+ text-align: right;
+}
+
+div.summary a
+{
+ white-space: nowrap;
+}
+
+table.classindex
+{
+ margin: 10px;
+ white-space: nowrap;
+ margin-left: 3%;
+ margin-right: 3%;
+ width: 94%;
+ border: 0;
+ border-spacing: 0;
+ padding: 0;
+}
+
+div.ingroups
+{
+ font-size: 8pt;
+ width: 50%;
+ text-align: left;
+}
+
+div.ingroups a
+{
+ white-space: nowrap;
+}
+
+div.header
+{
+ background-image:url('nav_h.png');
+ background-repeat:repeat-x;
+ background-color: #F9FAFC;
+ margin: 0px;
+ border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+ padding: 5px 5px 5px 10px;
+}
+
+dl
+{
+ padding: 0 0 0 10px;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
+{
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+dl.note
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #D0C000;
+}
+
+dl.warning, dl.attention
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00D000;
+}
+
+dl.deprecated
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #505050;
+}
+
+dl.todo
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00C0E0;
+}
+
+dl.test
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #3030E0;
+}
+
+dl.bug
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #C08050;
+}
+
+dl.section dd {
+ margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+ text-align: center;
+ vertical-align: bottom;
+ border-collapse: separate;
+}
+
+#projectlogo img
+{
+ border: 0px none;
+}
+
+#projectalign
+{
+ vertical-align: middle;
+}
+
+#projectname
+{
+ font: 300% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 2px 0px;
+}
+
+#projectbrief
+{
+ font: 120% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#projectnumber
+{
+ font: 50% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#titlearea
+{
+ padding: 0px;
+ margin: 0px;
+ width: 100%;
+ border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+ text-align: center;
+}
+
+.dotgraph
+{
+ text-align: center;
+}
+
+.mscgraph
+{
+ text-align: center;
+}
+
+.plantumlgraph
+{
+ text-align: center;
+}
+
+.diagraph
+{
+ text-align: center;
+}
+
+.caption
+{
+ font-weight: bold;
+}
+
+div.zoom
+{
+ border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+ margin-bottom:50px;
+}
+
+dl.citelist dt {
+ color:#334975;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
+}
+
+dl.citelist dd {
+ margin:2px 0;
+ padding:5px 0;
+}
+
+div.toc {
+ padding: 14px 25px;
+ background-color: #F4F6FA;
+ border: 1px solid #D8DFEE;
+ border-radius: 7px 7px 7px 7px;
+ float: right;
+ height: auto;
+ margin: 0 8px 10px 10px;
+ width: 200px;
+}
+
+div.toc li {
+ background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+ font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+ margin-top: 5px;
+ padding-left: 10px;
+ padding-top: 2px;
+}
+
+div.toc h3 {
+ font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+ color: #4665A2;
+ border-bottom: 0 none;
+ margin: 0;
+}
+
+div.toc ul {
+ list-style: none outside none;
+ border: medium none;
+ padding: 0px;
+}
+
+div.toc li.level1 {
+ margin-left: 0px;
+}
+
+div.toc li.level2 {
+ margin-left: 15px;
+}
+
+div.toc li.level3 {
+ margin-left: 30px;
+}
+
+div.toc li.level4 {
+ margin-left: 45px;
+}
+
+.inherit_header {
+ font-weight: bold;
+ color: gray;
+ cursor: pointer;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+.inherit_header td {
+ padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+ display: none;
+}
+
+tr.heading h2 {
+ margin-top: 12px;
+ margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+ position: absolute;
+ display: none;
+}
+
+#powerTip {
+ cursor: default;
+ white-space: nowrap;
+ background-color: white;
+ border: 1px solid gray;
+ border-radius: 4px 4px 4px 4px;
+ box-shadow: 1px 1px 7px gray;
+ display: none;
+ font-size: smaller;
+ max-width: 80%;
+ opacity: 0.9;
+ padding: 1ex 1em 1em;
+ position: absolute;
+ z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+ color: grey;
+ font-style: italic;
+}
-/* for the tree view */
-.ftvtree {
- font-family: sans-serif;
- margin:0.5em;
+#powerTip div.ttname a {
+ font-weight: bold;
}
-/* these are for tree view when used as main index */
-.directory {
- font-size: 9pt;
- font-weight: bold;
+
+#powerTip div.ttname {
+ font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+ color: #006318;
+}
+
+#powerTip div {
+ margin: 0px;
+ padding: 0px;
+ font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+ content: "";
+ position: absolute;
+ margin: 0px;
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.w:after, #powerTip.w:before,
+#powerTip.e:after, #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ border: solid transparent;
+ content: " ";
+ height: 0;
+ width: 0;
+ position: absolute;
+}
+
+#powerTip.n:after, #powerTip.s:after,
+#powerTip.w:after, #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+ border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before, #powerTip.s:before,
+#powerTip.w:before, #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+ border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+ top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+ border-top-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+#powerTip.n:before {
+ border-top-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+ left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+ right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+ left: 14px;
+}
+
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+ border-bottom-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+ border-bottom-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+ left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+ right: 14px;
}
-.directory h3 {
- margin: 0px;
- margin-top: 1em;
- font-size: 11pt;
+
+#powerTip.se:after, #powerTip.se:before {
+ left: 14px;
}
-/* The following two styles can be used to replace the root node title */
-/* with an image of your choice. Simply uncomment the next two styles, */
-/* specify the name of your image and be sure to set 'height' to the */
-/* proper pixel height of your image. */
+#powerTip.e:after, #powerTip.e:before {
+ left: 100%;
+}
+#powerTip.e:after {
+ border-left-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.e:before {
+ border-left-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
-/* .directory h3.swap { */
-/* height: 61px; */
-/* background-repeat: no-repeat; */
-/* background-image: url("yourimage.gif"); */
-/* } */
-/* .directory h3.swap span { */
-/* display: none; */
-/* } */
+#powerTip.w:after, #powerTip.w:before {
+ right: 100%;
+}
+#powerTip.w:after {
+ border-right-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.w:before {
+ border-right-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
-.directory > h3 {
- margin-top: 0;
+@media print
+{
+ #top { display: none; }
+ #side-nav { display: none; }
+ #nav-path { display: none; }
+ body { overflow:visible; }
+ h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+ .summary { display: none; }
+ .memitem { page-break-inside: avoid; }
+ #doc-content
+ {
+ margin-left:0 !important;
+ height:auto !important;
+ width:auto !important;
+ overflow:inherit;
+ display:inline;
+ }
}
-.directory p {
- margin: 0px;
- white-space: nowrap;
+
+/* @group Markdown */
+
+/*
+table.markdownTable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
}
-.directory div {
- display: none;
- margin: 0px;
+
+table.markdownTable td, table.markdownTable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
}
-.directory img {
- vertical-align: -30%;
+
+table.markdownTableHead tr {
}
-/* these are for tree view when not used as main index */
-.directory-alt {
- font-size: 100%;
- font-weight: bold;
+
+table.markdownTableBodyLeft td, table.markdownTable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
}
-.directory-alt h3 {
- margin: 0px;
- margin-top: 1em;
- font-size: 11pt;
+
+th.markdownTableHeadLeft th.markdownTableHeadRight th.markdownTableHeadCenter th.markdownTableHeadNone {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
}
-.directory-alt > h3 {
- margin-top: 0;
+
+th.markdownTableHeadLeft {
+ text-align: left
}
-.directory-alt p {
- margin: 0px;
- white-space: nowrap;
+
+th.markdownTableHeadRight {
+ text-align: right
}
-.directory-alt div {
- display: none;
- margin: 0px;
+
+th.markdownTableHeadCenter {
+ text-align: center
+}
+*/
+
+table.markdownTable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.markdownTable td, table.markdownTable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.markdownTable tr {
+}
+
+th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+th.markdownTableHeadLeft, td.markdownTableBodyLeft {
+ text-align: left
}
-.directory-alt img {
- vertical-align: -30%;
+
+th.markdownTableHeadRight, td.markdownTableBodyRight {
+ text-align: right
+}
+
+th.markdownTableHeadCenter, td.markdownTableBodyCenter {
+ text-align: center
}
+
+/* @end */
diff --git a/doc/doxyout/hx509/html/doxygen.png b/doc/doxyout/hx509/html/doxygen.png
index f0a274bbaffd..3ff17d807fd8 100644
--- a/doc/doxyout/hx509/html/doxygen.png
+++ b/doc/doxyout/hx509/html/doxygen.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/dynsections.js b/doc/doxyout/hx509/html/dynsections.js
new file mode 100644
index 000000000000..85e183690954
--- /dev/null
+++ b/doc/doxyout/hx509/html/dynsections.js
@@ -0,0 +1,97 @@
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+ content.hide();
+ summary.show();
+ $(linkObj).addClass('closed').removeClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ content.show();
+ summary.hide();
+ $(linkObj).removeClass('closed').addClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+ return false;
+}
+
+function updateStripes()
+{
+ $('table.directory tr').
+ removeClass('even').filter(':visible:even').addClass('even');
+}
+
+function toggleLevel(level)
+{
+ $('table.directory tr').each(function() {
+ var l = this.id.split('_').length-1;
+ var i = $('#img'+this.id.substring(3));
+ var a = $('#arr'+this.id.substring(3));
+ if (l<level+1) {
+ i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
+ a.html('&#9660;');
+ $(this).show();
+ } else if (l==level+1) {
+ i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
+ a.html('&#9658;');
+ $(this).show();
+ } else {
+ $(this).hide();
+ }
+ });
+ updateStripes();
+}
+
+function toggleFolder(id)
+{
+ // the clicked row
+ var currentRow = $('#row_'+id);
+
+ // all rows after the clicked row
+ var rows = currentRow.nextAll("tr");
+
+ var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+
+ // only match elements AFTER this one (can't hide elements before)
+ var childRows = rows.filter(function() { return this.id.match(re); });
+
+ // first row is visible we are HIDING
+ if (childRows.filter(':first').is(':visible')===true) {
+ // replace down arrow by right arrow for current row
+ var currentRowSpans = currentRow.find("span");
+ currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+ currentRowSpans.filter(".arrow").html('&#9658;');
+ rows.filter("[id^=row_"+id+"]").hide(); // hide all children
+ } else { // we are SHOWING
+ // replace right arrow by down arrow for current row
+ var currentRowSpans = currentRow.find("span");
+ currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
+ currentRowSpans.filter(".arrow").html('&#9660;');
+ // replace down arrows by right arrows for child rows
+ var childRowsSpans = childRows.find("span");
+ childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+ childRowsSpans.filter(".arrow").html('&#9658;');
+ childRows.show(); //show all children
+ }
+ updateStripes();
+}
+
+
+function toggleInherit(id)
+{
+ var rows = $('tr.inherit.'+id);
+ var img = $('tr.inherit_header.'+id+' img');
+ var src = $(img).attr('src');
+ if (rows.filter(':first').is(':visible')===true) {
+ rows.css('display','none');
+ $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ rows.css('display','table-row'); // using show() causes jump in firefox
+ $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+}
+
diff --git a/doc/doxyout/hx509/html/folderclosed.png b/doc/doxyout/hx509/html/folderclosed.png
new file mode 100644
index 000000000000..bb8ab35edce8
--- /dev/null
+++ b/doc/doxyout/hx509/html/folderclosed.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/folderopen.png b/doc/doxyout/hx509/html/folderopen.png
new file mode 100644
index 000000000000..d6c7f676a3b3
--- /dev/null
+++ b/doc/doxyout/hx509/html/folderopen.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/graph_legend.dot b/doc/doxyout/hx509/html/graph_legend.dot
deleted file mode 100644
index 4df0f1aa4864..000000000000
--- a/doc/doxyout/hx509/html/graph_legend.dot
+++ /dev/null
@@ -1,22 +0,0 @@
-digraph G
-{
- edge [fontname="FreeSans",fontsize=10,labelfontname="FreeSans",labelfontsize=10];
- node [fontname="FreeSans",fontsize=10,shape=record];
- Node9 [shape="box",label="Inherited",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",fillcolor="grey75",style="filled" fontcolor="black"];
- Node10 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="FreeSans"];
- Node10 [shape="box",label="PublicBase",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",color="black",URL="$classPublicBase.html"];
- Node11 -> Node10 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="FreeSans"];
- Node11 [shape="box",label="Truncated",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",color="red",URL="$classTruncated.html"];
- Node13 -> Node9 [dir=back,color="darkgreen",fontsize=10,style="solid",fontname="FreeSans"];
- Node13 [shape="box",label="ProtectedBase",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",color="black",URL="$classProtectedBase.html"];
- Node14 -> Node9 [dir=back,color="firebrick4",fontsize=10,style="solid",fontname="FreeSans"];
- Node14 [shape="box",label="PrivateBase",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",color="black",URL="$classPrivateBase.html"];
- Node15 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="FreeSans"];
- Node15 [shape="box",label="Undocumented",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",color="grey75"];
- Node16 -> Node9 [dir=back,color="midnightblue",fontsize=10,style="solid",fontname="FreeSans"];
- Node16 [shape="box",label="Templ< int >",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",color="black",URL="$classTempl.html"];
- Node17 -> Node16 [dir=back,color="orange",fontsize=10,style="dashed",label="< int >",fontname="FreeSans"];
- Node17 [shape="box",label="Templ< T >",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",color="black",URL="$classTempl.html"];
- Node18 -> Node9 [dir=back,color="darkorchid3",fontsize=10,style="dashed",label="m_usedClass",fontname="FreeSans"];
- Node18 [shape="box",label="Used",fontsize=10,height=0.2,width=0.4,fontname="FreeSans",color="black",URL="$classUsed.html"];
-}
diff --git a/doc/doxyout/hx509/html/graph_legend.html b/doc/doxyout/hx509/html/graph_legend.html
index 3ead3e542c86..d059cff62db9 100644
--- a/doc/doxyout/hx509/html/graph_legend.html
+++ b/doc/doxyout/hx509/html/graph_legend.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Graph Legend</title>
+<title>Graph Legend</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,68 +8,39 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Graph Legend</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>Graph Legend</h1>This page explains how to interpret the graphs that are generated by doxygen.<p>
-Consider the following example: <div class="fragment"><pre class="fragment"><span class="comment">/*! Invisible class because of truncation */</span>
-<span class="keyword">class </span>Invisible { };
-<span class="comment"></span>
-<span class="comment">/*! Truncated class, inheritance relation is hidden */</span>
-<span class="keyword">class </span>Truncated : <span class="keyword">public</span> Invisible { };
-
-<span class="comment">/* Class not documented with doxygen comments */</span>
-<span class="keyword">class </span>Undocumented { };
-<span class="comment"></span>
-<span class="comment">/*! Class that is inherited using public inheritance */</span>
-<span class="keyword">class </span>PublicBase : <span class="keyword">public</span> Truncated { };
-<span class="comment"></span>
-<span class="comment">/*! A template class */</span>
-<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">class </span>Templ { };
-<span class="comment"></span>
-<span class="comment">/*! Class that is inherited using protected inheritance */</span>
-<span class="keyword">class </span>ProtectedBase { };
-<span class="comment"></span>
-<span class="comment">/*! Class that is inherited using private inheritance */</span>
-<span class="keyword">class </span>PrivateBase { };
-<span class="comment"></span>
-<span class="comment">/*! Class that is used by the Inherited class */</span>
-<span class="keyword">class </span>Used { };
-<span class="comment"></span>
-<span class="comment">/*! Super class that inherits a number of other classes */</span>
-<span class="keyword">class </span>Inherited : <span class="keyword">public</span> PublicBase,
- <span class="keyword">protected</span> ProtectedBase,
- <span class="keyword">private</span> PrivateBase,
- <span class="keyword">public</span> Undocumented,
- <span class="keyword">public</span> Templ&lt;int&gt;
-{
- <span class="keyword">private</span>:
- Used *m_usedClass;
-};
-</pre></div> If the <code>MAX_DOT_GRAPH_HEIGHT</code> tag in the configuration file is set to 240 this will result in the following graph:<p>
-<center><div align="center">
-<img src="graph_legend.png" alt="graph_legend.png">
+<p>This page explains how to interpret the graphs that are generated by doxygen.</p>
+<p>Consider the following example: </p><div class="fragment"><div class="line">/*! Invisible class because of truncation */</div><div class="line">class Invisible { };</div><div class="line"></div><div class="line">/*! Truncated class, inheritance relation is hidden */</div><div class="line">class Truncated : public Invisible { };</div><div class="line"></div><div class="line">/* Class not documented with doxygen comments */</div><div class="line">class Undocumented { };</div><div class="line"></div><div class="line">/*! Class that is inherited using public inheritance */</div><div class="line">class PublicBase : public Truncated { };</div><div class="line"></div><div class="line">/*! A template class */</div><div class="line">template&lt;class T&gt; class Templ { };</div><div class="line"></div><div class="line">/*! Class that is inherited using protected inheritance */</div><div class="line">class ProtectedBase { };</div><div class="line"></div><div class="line">/*! Class that is inherited using private inheritance */</div><div class="line">class PrivateBase { };</div><div class="line"></div><div class="line">/*! Class that is used by the Inherited class */</div><div class="line">class Used { };</div><div class="line"></div><div class="line">/*! Super class that inherits a number of other classes */</div><div class="line">class Inherited : public PublicBase,</div><div class="line"> protected ProtectedBase,</div><div class="line"> private PrivateBase,</div><div class="line"> public Undocumented,</div><div class="line"> public Templ&lt;int&gt;</div><div class="line">{</div><div class="line"> private:</div><div class="line"> Used *m_usedClass;</div><div class="line">};</div></div><!-- fragment --><p> This will result in the following graph:</p>
+<center><div class="image">
+<img src="graph_legend.png"/>
</div>
-</center> <p>
-The boxes in the above graph have the following meaning: <ul>
+</center><p>The boxes in the above graph have the following meaning: </p>
+<ul>
<li>
A filled gray box represents the struct or class for which the graph is generated. </li>
<li>
A box with a black border denotes a documented struct or class. </li>
<li>
-A box with a grey border denotes an undocumented struct or class. </li>
+A box with a gray border denotes an undocumented struct or class. </li>
<li>
A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries. </li>
</ul>
-The arrows have the following meaning: <ul>
+<p>The arrows have the following meaning: </p>
+<ul>
<li>
A dark blue arrow is used to visualize a public inheritance relation between two classes. </li>
<li>
@@ -77,12 +48,12 @@ A dark green arrow is used for protected inheritance. </li>
<li>
A dark red arrow is used for private inheritance. </li>
<li>
-A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible. </li>
+A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible. </li>
<li>
-A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance. </li>
+A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance. </li>
</ul>
-</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:41 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/graph_legend.md5 b/doc/doxyout/hx509/html/graph_legend.md5
new file mode 100644
index 000000000000..a06ed050cbb5
--- /dev/null
+++ b/doc/doxyout/hx509/html/graph_legend.md5
@@ -0,0 +1 @@
+387ff8eb65306fa251338d3c9bd7bfff \ No newline at end of file
diff --git a/doc/doxyout/hx509/html/graph_legend.png b/doc/doxyout/hx509/html/graph_legend.png
index 9b96937bfd5f..881e40f9c0a2 100644
--- a/doc/doxyout/hx509/html/graph_legend.png
+++ b/doc/doxyout/hx509/html/graph_legend.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/group__hx509.html b/doc/doxyout/hx509/html/group__hx509.html
index 98a6181d4482..afa0936a24e7 100644
--- a/doc/doxyout/hx509/html/group__hx509.html
+++ b/doc/doxyout/hx509/html/group__hx509.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 library</title>
+<title>hx509 library</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,82 +8,86 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 library</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 library</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509.html#g96fe3d8ccb6f810238cb9046123c24c3">hx509_context_init</a> (hx509_context *context)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509.html#gedbcd7cf7d922d0c348d318cbdc46b2f">hx509_context_free</a> (hx509_context *context)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga96fe3d8ccb6f810238cb9046123c24c3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509.html#ga96fe3d8ccb6f810238cb9046123c24c3">hx509_context_init</a> (hx509_context *context)</td></tr>
+<tr class="separator:ga96fe3d8ccb6f810238cb9046123c24c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaedbcd7cf7d922d0c348d318cbdc46b2f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509.html#gaedbcd7cf7d922d0c348d318cbdc46b2f">hx509_context_free</a> (hx509_context *context)</td></tr>
+<tr class="separator:gaedbcd7cf7d922d0c348d318cbdc46b2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<hr><h2>Function Documentation</h2>
-<a class="anchor" name="gedbcd7cf7d922d0c348d318cbdc46b2f"></a><!-- doxytag: member="cert.c::hx509_context_free" ref="gedbcd7cf7d922d0c348d318cbdc46b2f" args="(hx509_context *context)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="gaedbcd7cf7d922d0c348d318cbdc46b2f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaedbcd7cf7d922d0c348d318cbdc46b2f">&#9670;&nbsp;</a></span>hx509_context_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_context_free </td>
+ <td class="memname">void hx509_context_free </td>
<td>(</td>
- <td class="paramtype">hx509_context *&nbsp;</td>
- <td class="paramname"> <em>context</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_context *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free the context allocated by <a class="el" href="group__hx509.html#g96fe3d8ccb6f810238cb9046123c24c3">hx509_context_init()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>context to be freed. </td></tr>
+</div><div class="memdoc">
+<p>Free the context allocated by <a class="el" href="group__hx509.html#ga96fe3d8ccb6f810238cb9046123c24c3">hx509_context_init()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>context to be freed. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g96fe3d8ccb6f810238cb9046123c24c3"></a><!-- doxytag: member="cert.c::hx509_context_init" ref="g96fe3d8ccb6f810238cb9046123c24c3" args="(hx509_context *context)" -->
+</div>
+<a id="ga96fe3d8ccb6f810238cb9046123c24c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga96fe3d8ccb6f810238cb9046123c24c3">&#9670;&nbsp;</a></span>hx509_context_init()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_context_init </td>
+ <td class="memname">int hx509_context_init </td>
<td>(</td>
- <td class="paramtype">hx509_context *&nbsp;</td>
- <td class="paramname"> <em>context</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_context *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Creates a hx509 context that most functions in the library uses. The context is only allowed to be used by one thread at each moment. Free the context with <a class="el" href="group__hx509.html#gedbcd7cf7d922d0c348d318cbdc46b2f">hx509_context_free()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>Returns a pointer to new hx509 context.</td></tr>
+</div><div class="memdoc">
+<p>Creates a hx509 context that most functions in the library uses. The context is only allowed to be used by one thread at each moment. Free the context with <a class="el" href="group__hx509.html#gaedbcd7cf7d922d0c348d318cbdc46b2f">hx509_context_free()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>Returns a pointer to new hx509 context.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__ca.html b/doc/doxyout/hx509/html/group__hx509__ca.html
index a7a0e5528027..79f9e43ee797 100644
--- a/doc/doxyout/hx509/html/group__hx509__ca.html
+++ b/doc/doxyout/hx509/html/group__hx509__ca.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 CA functions</title>
+<title>hx509 CA functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,1172 +8,1223 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 CA functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 CA functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g627b48e10d0b3576aec5823d6098ea3a">hx509_ca_tbs_init</a> (hx509_context context, hx509_ca_tbs *tbs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g89eef97566653fbbe6ab32b59ea99299">hx509_ca_tbs_free</a> (hx509_ca_tbs *tbs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g6a124401ceb514cf16cf8e3721234d03">hx509_ca_tbs_set_notBefore</a> (hx509_context context, hx509_ca_tbs tbs, time_t t)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gc64ad4daabe3c912be50c2a32af4fe05">hx509_ca_tbs_set_notAfter</a> (hx509_context context, hx509_ca_tbs tbs, time_t t)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g587184eedd56450858eb74cae842f084">hx509_ca_tbs_set_notAfter_lifetime</a> (hx509_context context, hx509_ca_tbs tbs, time_t delta)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">struct units *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g2809ea576f40642337c8bf49071723b0">hx509_ca_tbs_template_units</a> (void)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g2d7c245443a81540ff993e7cc6f51ebb">hx509_ca_tbs_set_template</a> (hx509_context context, hx509_ca_tbs tbs, int flags, hx509_cert cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g3e105ce23d67234c3b5d35a0752449cf">hx509_ca_tbs_set_ca</a> (hx509_context context, hx509_ca_tbs tbs, int pathLenConstraint)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g215241c575ae3296e137f155a0a4dd6e">hx509_ca_tbs_set_proxy</a> (hx509_context context, hx509_ca_tbs tbs, int pathLenConstraint)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ge41a6e44a39c95e6c29376985f0b39b0">hx509_ca_tbs_set_domaincontroller</a> (hx509_context context, hx509_ca_tbs tbs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ge12bfa65cf1112bf3181a5499e8f7ba6">hx509_ca_tbs_set_spki</a> (hx509_context context, hx509_ca_tbs tbs, const SubjectPublicKeyInfo *spki)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g3f611617f0001575b723a4a9c0d9b3ca">hx509_ca_tbs_set_serialnumber</a> (hx509_context context, hx509_ca_tbs tbs, const heim_integer *serialNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g4d26e70019741e516dc92158914cd414">hx509_ca_tbs_add_eku</a> (hx509_context context, hx509_ca_tbs tbs, const heim_oid *oid)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g8c5b557c63342686630b62239396b96a">hx509_ca_tbs_add_crl_dp_uri</a> (hx509_context context, hx509_ca_tbs tbs, const char *uri, hx509_name issuername)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g8e938c9e9b1fea29e5bf77a2824891e2">hx509_ca_tbs_add_san_otherName</a> (hx509_context context, hx509_ca_tbs tbs, const heim_oid *oid, const heim_octet_string *os)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gede019208dbf7ad49cd077951887c4c3">hx509_ca_tbs_add_san_pkinit</a> (hx509_context context, hx509_ca_tbs tbs, const char *principal)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gbc4f3398499094a859fbceb769ba5051">hx509_ca_tbs_add_san_ms_upn</a> (hx509_context context, hx509_ca_tbs tbs, const char *principal)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g6286a0d6f375949301d62215184e7275">hx509_ca_tbs_add_san_jid</a> (hx509_context context, hx509_ca_tbs tbs, const char *jid)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g3f4c23c964ef2331b45f80fb5355ede7">hx509_ca_tbs_add_san_hostname</a> (hx509_context context, hx509_ca_tbs tbs, const char *dnsname)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gf621ee0bac71f4ee09881812f4c4d196">hx509_ca_tbs_add_san_rfc822name</a> (hx509_context context, hx509_ca_tbs tbs, const char *rfc822Name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g9e8cf374812308654e3d7270afb59da1">hx509_ca_tbs_set_subject</a> (hx509_context context, hx509_ca_tbs tbs, hx509_name subject)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ge22ea3d0201845dbc73f4b21502face6">hx509_ca_tbs_set_unique</a> (hx509_context context, hx509_ca_tbs tbs, const heim_bit_string *subjectUniqueID, const heim_bit_string *issuerUniqueID)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g36432d6249ee668196a692c7286d09ce">hx509_ca_tbs_subject_expand</a> (hx509_context context, hx509_ca_tbs tbs, hx509_env env)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g3f0ff00b9c54018e346eed759b25ae16">hx509_ca_sign</a> (hx509_context context, hx509_ca_tbs tbs, hx509_cert signer, hx509_cert *certificate)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#g310b010421b8a7c169566ef74ce319fb">hx509_ca_sign_self</a> (hx509_context context, hx509_ca_tbs tbs, hx509_private_key signer, hx509_cert *certificate)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga627b48e10d0b3576aec5823d6098ea3a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga627b48e10d0b3576aec5823d6098ea3a">hx509_ca_tbs_init</a> (hx509_context context, hx509_ca_tbs *tbs)</td></tr>
+<tr class="separator:ga627b48e10d0b3576aec5823d6098ea3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga89eef97566653fbbe6ab32b59ea99299"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga89eef97566653fbbe6ab32b59ea99299">hx509_ca_tbs_free</a> (hx509_ca_tbs *tbs)</td></tr>
+<tr class="separator:ga89eef97566653fbbe6ab32b59ea99299"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6a124401ceb514cf16cf8e3721234d03"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga6a124401ceb514cf16cf8e3721234d03">hx509_ca_tbs_set_notBefore</a> (hx509_context context, hx509_ca_tbs tbs, time_t t)</td></tr>
+<tr class="separator:ga6a124401ceb514cf16cf8e3721234d03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac64ad4daabe3c912be50c2a32af4fe05"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gac64ad4daabe3c912be50c2a32af4fe05">hx509_ca_tbs_set_notAfter</a> (hx509_context context, hx509_ca_tbs tbs, time_t t)</td></tr>
+<tr class="separator:gac64ad4daabe3c912be50c2a32af4fe05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga587184eedd56450858eb74cae842f084"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga587184eedd56450858eb74cae842f084">hx509_ca_tbs_set_notAfter_lifetime</a> (hx509_context context, hx509_ca_tbs tbs, time_t delta)</td></tr>
+<tr class="separator:ga587184eedd56450858eb74cae842f084"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf805458a31b3ba5731dc432c711aa5c1"><td class="memItemLeft" align="right" valign="top">const struct units *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gaf805458a31b3ba5731dc432c711aa5c1">hx509_ca_tbs_template_units</a> (void)</td></tr>
+<tr class="separator:gaf805458a31b3ba5731dc432c711aa5c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga2d7c245443a81540ff993e7cc6f51ebb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga2d7c245443a81540ff993e7cc6f51ebb">hx509_ca_tbs_set_template</a> (hx509_context context, hx509_ca_tbs tbs, int flags, hx509_cert cert)</td></tr>
+<tr class="separator:ga2d7c245443a81540ff993e7cc6f51ebb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga3e105ce23d67234c3b5d35a0752449cf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga3e105ce23d67234c3b5d35a0752449cf">hx509_ca_tbs_set_ca</a> (hx509_context context, hx509_ca_tbs tbs, int pathLenConstraint)</td></tr>
+<tr class="separator:ga3e105ce23d67234c3b5d35a0752449cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga215241c575ae3296e137f155a0a4dd6e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga215241c575ae3296e137f155a0a4dd6e">hx509_ca_tbs_set_proxy</a> (hx509_context context, hx509_ca_tbs tbs, int pathLenConstraint)</td></tr>
+<tr class="separator:ga215241c575ae3296e137f155a0a4dd6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae41a6e44a39c95e6c29376985f0b39b0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gae41a6e44a39c95e6c29376985f0b39b0">hx509_ca_tbs_set_domaincontroller</a> (hx509_context context, hx509_ca_tbs tbs)</td></tr>
+<tr class="separator:gae41a6e44a39c95e6c29376985f0b39b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae12bfa65cf1112bf3181a5499e8f7ba6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gae12bfa65cf1112bf3181a5499e8f7ba6">hx509_ca_tbs_set_spki</a> (hx509_context context, hx509_ca_tbs tbs, const SubjectPublicKeyInfo *spki)</td></tr>
+<tr class="separator:gae12bfa65cf1112bf3181a5499e8f7ba6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga3f611617f0001575b723a4a9c0d9b3ca"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga3f611617f0001575b723a4a9c0d9b3ca">hx509_ca_tbs_set_serialnumber</a> (hx509_context context, hx509_ca_tbs tbs, const heim_integer *serialNumber)</td></tr>
+<tr class="separator:ga3f611617f0001575b723a4a9c0d9b3ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4d26e70019741e516dc92158914cd414"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga4d26e70019741e516dc92158914cd414">hx509_ca_tbs_add_eku</a> (hx509_context context, hx509_ca_tbs tbs, const heim_oid *oid)</td></tr>
+<tr class="separator:ga4d26e70019741e516dc92158914cd414"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8c5b557c63342686630b62239396b96a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga8c5b557c63342686630b62239396b96a">hx509_ca_tbs_add_crl_dp_uri</a> (hx509_context context, hx509_ca_tbs tbs, const char *uri, hx509_name issuername)</td></tr>
+<tr class="separator:ga8c5b557c63342686630b62239396b96a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8e938c9e9b1fea29e5bf77a2824891e2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga8e938c9e9b1fea29e5bf77a2824891e2">hx509_ca_tbs_add_san_otherName</a> (hx509_context context, hx509_ca_tbs tbs, const heim_oid *oid, const heim_octet_string *os)</td></tr>
+<tr class="separator:ga8e938c9e9b1fea29e5bf77a2824891e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaede019208dbf7ad49cd077951887c4c3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gaede019208dbf7ad49cd077951887c4c3">hx509_ca_tbs_add_san_pkinit</a> (hx509_context context, hx509_ca_tbs tbs, const char *principal)</td></tr>
+<tr class="separator:gaede019208dbf7ad49cd077951887c4c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gabc4f3398499094a859fbceb769ba5051"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gabc4f3398499094a859fbceb769ba5051">hx509_ca_tbs_add_san_ms_upn</a> (hx509_context context, hx509_ca_tbs tbs, const char *principal)</td></tr>
+<tr class="separator:gabc4f3398499094a859fbceb769ba5051"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6286a0d6f375949301d62215184e7275"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga6286a0d6f375949301d62215184e7275">hx509_ca_tbs_add_san_jid</a> (hx509_context context, hx509_ca_tbs tbs, const char *jid)</td></tr>
+<tr class="separator:ga6286a0d6f375949301d62215184e7275"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga3f4c23c964ef2331b45f80fb5355ede7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga3f4c23c964ef2331b45f80fb5355ede7">hx509_ca_tbs_add_san_hostname</a> (hx509_context context, hx509_ca_tbs tbs, const char *dnsname)</td></tr>
+<tr class="separator:ga3f4c23c964ef2331b45f80fb5355ede7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf621ee0bac71f4ee09881812f4c4d196"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gaf621ee0bac71f4ee09881812f4c4d196">hx509_ca_tbs_add_san_rfc822name</a> (hx509_context context, hx509_ca_tbs tbs, const char *rfc822Name)</td></tr>
+<tr class="separator:gaf621ee0bac71f4ee09881812f4c4d196"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga9e8cf374812308654e3d7270afb59da1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga9e8cf374812308654e3d7270afb59da1">hx509_ca_tbs_set_subject</a> (hx509_context context, hx509_ca_tbs tbs, hx509_name subject)</td></tr>
+<tr class="separator:ga9e8cf374812308654e3d7270afb59da1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae22ea3d0201845dbc73f4b21502face6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#gae22ea3d0201845dbc73f4b21502face6">hx509_ca_tbs_set_unique</a> (hx509_context context, hx509_ca_tbs tbs, const heim_bit_string *subjectUniqueID, const heim_bit_string *issuerUniqueID)</td></tr>
+<tr class="separator:gae22ea3d0201845dbc73f4b21502face6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga36432d6249ee668196a692c7286d09ce"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga36432d6249ee668196a692c7286d09ce">hx509_ca_tbs_subject_expand</a> (hx509_context context, hx509_ca_tbs tbs, hx509_env env)</td></tr>
+<tr class="separator:ga36432d6249ee668196a692c7286d09ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4a0a95e3af51c1a1851b1d6b92c20662"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga4a0a95e3af51c1a1851b1d6b92c20662">hx509_ca_tbs_set_signature_algorithm</a> (hx509_context context, hx509_ca_tbs tbs, const AlgorithmIdentifier *sigalg)</td></tr>
+<tr class="separator:ga4a0a95e3af51c1a1851b1d6b92c20662"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga3f0ff00b9c54018e346eed759b25ae16"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga3f0ff00b9c54018e346eed759b25ae16">hx509_ca_sign</a> (hx509_context context, hx509_ca_tbs tbs, hx509_cert signer, hx509_cert *certificate)</td></tr>
+<tr class="separator:ga3f0ff00b9c54018e346eed759b25ae16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga310b010421b8a7c169566ef74ce319fb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__ca.html#ga310b010421b8a7c169566ef74ce319fb">hx509_ca_sign_self</a> (hx509_context context, hx509_ca_tbs tbs, hx509_private_key signer, hx509_cert *certificate)</td></tr>
+<tr class="separator:ga310b010421b8a7c169566ef74ce319fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-See the <a class="el" href="page_ca.html">Hx509 CA functions</a> for description and examples. <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g3f0ff00b9c54018e346eed759b25ae16"></a><!-- doxytag: member="ca.c::hx509_ca_sign" ref="g3f0ff00b9c54018e346eed759b25ae16" args="(hx509_context context, hx509_ca_tbs tbs, hx509_cert signer, hx509_cert *certificate)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>See the <a class="el" href="page_ca.html">Hx509 CA functions</a> for description and examples. </p>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga3f0ff00b9c54018e346eed759b25ae16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga3f0ff00b9c54018e346eed759b25ae16">&#9670;&nbsp;</a></span>hx509_ca_sign()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_sign </td>
+ <td class="memname">int hx509_ca_sign </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>signer</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>signer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert *&nbsp;</td>
- <td class="paramname"> <em>certificate</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert *&#160;</td>
+ <td class="paramname"><em>certificate</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Sign a to-be-signed certificate object with a issuer certificate.<p>
-The caller needs to at least have called the following functions on the to-be-signed certificate object:<ul>
-<li><a class="el" href="group__hx509__ca.html#g627b48e10d0b3576aec5823d6098ea3a">hx509_ca_tbs_init()</a></li><li><a class="el" href="group__hx509__ca.html#g9e8cf374812308654e3d7270afb59da1">hx509_ca_tbs_set_subject()</a></li><li><a class="el" href="group__hx509__ca.html#ge12bfa65cf1112bf3181a5499e8f7ba6">hx509_ca_tbs_set_spki()</a></li></ul>
-<p>
-When done the to-be-signed certificate object should be freed with <a class="el" href="group__hx509__ca.html#g89eef97566653fbbe6ab32b59ea99299">hx509_ca_tbs_free()</a>.<p>
-When creating self-signed certificate use <a class="el" href="group__hx509__ca.html#g310b010421b8a7c169566ef74ce319fb">hx509_ca_sign_self()</a> instead.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>signer</em>&nbsp;</td><td>the CA certificate object to sign with (need private key). </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certificate</em>&nbsp;</td><td>return cerificate, free with <a class="el" href="group__hx509__cert.html#gd2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Sign a to-be-signed certificate object with a issuer certificate.</p>
+<p>The caller needs to at least have called the following functions on the to-be-signed certificate object:</p><ul>
+<li><a class="el" href="group__hx509__ca.html#ga627b48e10d0b3576aec5823d6098ea3a">hx509_ca_tbs_init()</a></li>
+<li><a class="el" href="group__hx509__ca.html#ga9e8cf374812308654e3d7270afb59da1">hx509_ca_tbs_set_subject()</a></li>
+<li><a class="el" href="group__hx509__ca.html#gae12bfa65cf1112bf3181a5499e8f7ba6">hx509_ca_tbs_set_spki()</a></li>
+</ul>
+<p>When done the to-be-signed certificate object should be freed with <a class="el" href="group__hx509__ca.html#ga89eef97566653fbbe6ab32b59ea99299">hx509_ca_tbs_free()</a>.</p>
+<p>When creating self-signed certificate use <a class="el" href="group__hx509__ca.html#ga310b010421b8a7c169566ef74ce319fb">hx509_ca_sign_self()</a> instead.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">signer</td><td>the CA certificate object to sign with (need private key). </td></tr>
+ <tr><td class="paramname">certificate</td><td>return cerificate, free with <a class="el" href="group__hx509__cert.html#gad2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g310b010421b8a7c169566ef74ce319fb"></a><!-- doxytag: member="ca.c::hx509_ca_sign_self" ref="g310b010421b8a7c169566ef74ce319fb" args="(hx509_context context, hx509_ca_tbs tbs, hx509_private_key signer, hx509_cert *certificate)" -->
+</div>
+<a id="ga310b010421b8a7c169566ef74ce319fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga310b010421b8a7c169566ef74ce319fb">&#9670;&nbsp;</a></span>hx509_ca_sign_self()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_sign_self </td>
+ <td class="memname">int hx509_ca_sign_self </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_private_key&nbsp;</td>
- <td class="paramname"> <em>signer</em>, </td>
+ <td class="paramtype">hx509_private_key&#160;</td>
+ <td class="paramname"><em>signer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert *&nbsp;</td>
- <td class="paramname"> <em>certificate</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert *&#160;</td>
+ <td class="paramname"><em>certificate</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Work just like <a class="el" href="group__hx509__ca.html#g3f0ff00b9c54018e346eed759b25ae16">hx509_ca_sign()</a> but signs it-self.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>signer</em>&nbsp;</td><td>private key to sign with. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certificate</em>&nbsp;</td><td>return cerificate, free with <a class="el" href="group__hx509__cert.html#gd2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Work just like <a class="el" href="group__hx509__ca.html#ga3f0ff00b9c54018e346eed759b25ae16">hx509_ca_sign()</a> but signs it-self.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">signer</td><td>private key to sign with. </td></tr>
+ <tr><td class="paramname">certificate</td><td>return cerificate, free with <a class="el" href="group__hx509__cert.html#gad2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g8c5b557c63342686630b62239396b96a"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_add_crl_dp_uri" ref="g8c5b557c63342686630b62239396b96a" args="(hx509_context context, hx509_ca_tbs tbs, const char *uri, hx509_name issuername)" -->
+</div>
+<a id="ga8c5b557c63342686630b62239396b96a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga8c5b557c63342686630b62239396b96a">&#9670;&nbsp;</a></span>hx509_ca_tbs_add_crl_dp_uri()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_add_crl_dp_uri </td>
+ <td class="memname">int hx509_ca_tbs_add_crl_dp_uri </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>uri</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>uri</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name&nbsp;</td>
- <td class="paramname"> <em>issuername</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_name&#160;</td>
+ <td class="paramname"><em>issuername</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add CRL distribution point URI to the to-be-signed certificate object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>uri</em>&nbsp;</td><td>uri to the CRL. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>issuername</em>&nbsp;</td><td>name of the issuer.</td></tr>
+</div><div class="memdoc">
+<p>Add CRL distribution point URI to the to-be-signed certificate object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">uri</td><td>uri to the CRL. </td></tr>
+ <tr><td class="paramname">issuername</td><td>name of the issuer.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<p>issuername not supported</p>
-<p>
-issuername not supported
</div>
-</div><p>
-<a class="anchor" name="g4d26e70019741e516dc92158914cd414"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_add_eku" ref="g4d26e70019741e516dc92158914cd414" args="(hx509_context context, hx509_ca_tbs tbs, const heim_oid *oid)" -->
+</div>
+<a id="ga4d26e70019741e516dc92158914cd414"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4d26e70019741e516dc92158914cd414">&#9670;&nbsp;</a></span>hx509_ca_tbs_add_eku()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_add_eku </td>
+ <td class="memname">int hx509_ca_tbs_add_eku </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>oid</em></td><td>&nbsp;</td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>oid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-An an extended key usage to the to-be-signed certificate object. Duplicates will detected and not added.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>oid</em>&nbsp;</td><td>extended key usage to add.</td></tr>
+</div><div class="memdoc">
+<p>An an extended key usage to the to-be-signed certificate object. Duplicates will detected and not added.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">oid</td><td>extended key usage to add.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g3f4c23c964ef2331b45f80fb5355ede7"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_add_san_hostname" ref="g3f4c23c964ef2331b45f80fb5355ede7" args="(hx509_context context, hx509_ca_tbs tbs, const char *dnsname)" -->
+</div>
+<a id="ga3f4c23c964ef2331b45f80fb5355ede7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga3f4c23c964ef2331b45f80fb5355ede7">&#9670;&nbsp;</a></span>hx509_ca_tbs_add_san_hostname()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_add_san_hostname </td>
+ <td class="memname">int hx509_ca_tbs_add_san_hostname </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>dnsname</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>dnsname</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a Subject Alternative Name hostname to to-be-signed certificate object. A domain match starts with ., an exact match does not.<p>
-Example of a an domain match: .domain.se matches the hostname host.domain.se.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>dnsname</em>&nbsp;</td><td>a hostame.</td></tr>
+</div><div class="memdoc">
+<p>Add a Subject Alternative Name hostname to to-be-signed certificate object. A domain match starts with ., an exact match does not.</p>
+<p>Example of a an domain match: .domain.se matches the hostname host.domain.se.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">dnsname</td><td>a hostame.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g6286a0d6f375949301d62215184e7275"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_add_san_jid" ref="g6286a0d6f375949301d62215184e7275" args="(hx509_context context, hx509_ca_tbs tbs, const char *jid)" -->
+</div>
+<a id="ga6286a0d6f375949301d62215184e7275"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga6286a0d6f375949301d62215184e7275">&#9670;&nbsp;</a></span>hx509_ca_tbs_add_san_jid()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_add_san_jid </td>
+ <td class="memname">int hx509_ca_tbs_add_san_jid </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>jid</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>jid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a Jabber/XMPP jid Subject Alternative Name to the to-be-signed certificate object. The jid is an UTF8 string.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>jid</em>&nbsp;</td><td>string of an a jabber id in UTF8.</td></tr>
+</div><div class="memdoc">
+<p>Add a Jabber/XMPP jid Subject Alternative Name to the to-be-signed certificate object. The jid is an UTF8 string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">jid</td><td>string of an a jabber id in UTF8.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gbc4f3398499094a859fbceb769ba5051"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_add_san_ms_upn" ref="gbc4f3398499094a859fbceb769ba5051" args="(hx509_context context, hx509_ca_tbs tbs, const char *principal)" -->
+</div>
+<a id="gabc4f3398499094a859fbceb769ba5051"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gabc4f3398499094a859fbceb769ba5051">&#9670;&nbsp;</a></span>hx509_ca_tbs_add_san_ms_upn()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_add_san_ms_upn </td>
+ <td class="memname">int hx509_ca_tbs_add_san_ms_upn </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>principal</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>principal</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add Microsoft UPN Subject Alternative Name to the to-be-signed certificate object. The principal string is a UTF8 string.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>principal</em>&nbsp;</td><td>Microsoft UPN string.</td></tr>
+</div><div class="memdoc">
+<p>Add Microsoft UPN Subject Alternative Name to the to-be-signed certificate object. The principal string is a UTF8 string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">principal</td><td>Microsoft UPN string.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g8e938c9e9b1fea29e5bf77a2824891e2"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_add_san_otherName" ref="g8e938c9e9b1fea29e5bf77a2824891e2" args="(hx509_context context, hx509_ca_tbs tbs, const heim_oid *oid, const heim_octet_string *os)" -->
+</div>
+<a id="ga8e938c9e9b1fea29e5bf77a2824891e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga8e938c9e9b1fea29e5bf77a2824891e2">&#9670;&nbsp;</a></span>hx509_ca_tbs_add_san_otherName()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_add_san_otherName </td>
+ <td class="memname">int hx509_ca_tbs_add_san_otherName </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>oid</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>oid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>os</em></td><td>&nbsp;</td>
+ <td class="paramtype">const heim_octet_string *&#160;</td>
+ <td class="paramname"><em>os</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add Subject Alternative Name otherName to the to-be-signed certificate object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>oid</em>&nbsp;</td><td>the oid of the OtherName. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>os</em>&nbsp;</td><td>data in the other name.</td></tr>
+</div><div class="memdoc">
+<p>Add Subject Alternative Name otherName to the to-be-signed certificate object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">oid</td><td>the oid of the OtherName. </td></tr>
+ <tr><td class="paramname">os</td><td>data in the other name.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gede019208dbf7ad49cd077951887c4c3"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_add_san_pkinit" ref="gede019208dbf7ad49cd077951887c4c3" args="(hx509_context context, hx509_ca_tbs tbs, const char *principal)" -->
+</div>
+<a id="gaede019208dbf7ad49cd077951887c4c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaede019208dbf7ad49cd077951887c4c3">&#9670;&nbsp;</a></span>hx509_ca_tbs_add_san_pkinit()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_add_san_pkinit </td>
+ <td class="memname">int hx509_ca_tbs_add_san_pkinit </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>principal</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>principal</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add Kerberos Subject Alternative Name to the to-be-signed certificate object. The principal string is a UTF8 string.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>principal</em>&nbsp;</td><td>Kerberos principal to add to the certificate.</td></tr>
+</div><div class="memdoc">
+<p>Add Kerberos Subject Alternative Name to the to-be-signed certificate object. The principal string is a UTF8 string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">principal</td><td>Kerberos principal to add to the certificate.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gf621ee0bac71f4ee09881812f4c4d196"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_add_san_rfc822name" ref="gf621ee0bac71f4ee09881812f4c4d196" args="(hx509_context context, hx509_ca_tbs tbs, const char *rfc822Name)" -->
+</div>
+<a id="gaf621ee0bac71f4ee09881812f4c4d196"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaf621ee0bac71f4ee09881812f4c4d196">&#9670;&nbsp;</a></span>hx509_ca_tbs_add_san_rfc822name()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_add_san_rfc822name </td>
+ <td class="memname">int hx509_ca_tbs_add_san_rfc822name </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>rfc822Name</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>rfc822Name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a Subject Alternative Name rfc822 (email address) to to-be-signed certificate object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>rfc822Name</em>&nbsp;</td><td>a string to a email address.</td></tr>
+</div><div class="memdoc">
+<p>Add a Subject Alternative Name rfc822 (email address) to to-be-signed certificate object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">rfc822Name</td><td>a string to a email address.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g89eef97566653fbbe6ab32b59ea99299"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_free" ref="g89eef97566653fbbe6ab32b59ea99299" args="(hx509_ca_tbs *tbs)" -->
+</div>
+<a id="ga89eef97566653fbbe6ab32b59ea99299"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga89eef97566653fbbe6ab32b59ea99299">&#9670;&nbsp;</a></span>hx509_ca_tbs_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_ca_tbs_free </td>
+ <td class="memname">void hx509_ca_tbs_free </td>
<td>(</td>
- <td class="paramtype">hx509_ca_tbs *&nbsp;</td>
- <td class="paramname"> <em>tbs</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_ca_tbs *&#160;</td>
+ <td class="paramname"><em>tbs</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free an To Be Signed object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to free. </td></tr>
+</div><div class="memdoc">
+<p>Free an To Be Signed object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">tbs</td><td>object to free. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g627b48e10d0b3576aec5823d6098ea3a"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_init" ref="g627b48e10d0b3576aec5823d6098ea3a" args="(hx509_context context, hx509_ca_tbs *tbs)" -->
+</div>
+<a id="ga627b48e10d0b3576aec5823d6098ea3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga627b48e10d0b3576aec5823d6098ea3a">&#9670;&nbsp;</a></span>hx509_ca_tbs_init()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_init </td>
+ <td class="memname">int hx509_ca_tbs_init </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs *&nbsp;</td>
- <td class="paramname"> <em>tbs</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_ca_tbs *&#160;</td>
+ <td class="paramname"><em>tbs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allocate an to-be-signed certificate object that will be converted into an certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>returned to-be-signed certicate object, free with <a class="el" href="group__hx509__ca.html#g89eef97566653fbbe6ab32b59ea99299">hx509_ca_tbs_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Allocate an to-be-signed certificate object that will be converted into an certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>returned to-be-signed certicate object, free with <a class="el" href="group__hx509__ca.html#ga89eef97566653fbbe6ab32b59ea99299">hx509_ca_tbs_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g3e105ce23d67234c3b5d35a0752449cf"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_ca" ref="g3e105ce23d67234c3b5d35a0752449cf" args="(hx509_context context, hx509_ca_tbs tbs, int pathLenConstraint)" -->
+</div>
+<a id="ga3e105ce23d67234c3b5d35a0752449cf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga3e105ce23d67234c3b5d35a0752449cf">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_ca()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_ca </td>
+ <td class="memname">int hx509_ca_tbs_set_ca </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>pathLenConstraint</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>pathLenConstraint</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Make the to-be-signed certificate object a CA certificate. If the pathLenConstraint is negative path length constraint is used.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>pathLenConstraint</em>&nbsp;</td><td>path length constraint, negative, no constraint.</td></tr>
+</div><div class="memdoc">
+<p>Make the to-be-signed certificate object a CA certificate. If the pathLenConstraint is negative path length constraint is used.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">pathLenConstraint</td><td>path length constraint, negative, no constraint.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="ge41a6e44a39c95e6c29376985f0b39b0"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_domaincontroller" ref="ge41a6e44a39c95e6c29376985f0b39b0" args="(hx509_context context, hx509_ca_tbs tbs)" -->
+</div>
+<a id="gae41a6e44a39c95e6c29376985f0b39b0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae41a6e44a39c95e6c29376985f0b39b0">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_domaincontroller()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_domaincontroller </td>
+ <td class="memname">int hx509_ca_tbs_set_domaincontroller </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Make the to-be-signed certificate object a windows domain controller certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed.</td></tr>
+</div><div class="memdoc">
+<p>Make the to-be-signed certificate object a windows domain controller certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gc64ad4daabe3c912be50c2a32af4fe05"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_notAfter" ref="gc64ad4daabe3c912be50c2a32af4fe05" args="(hx509_context context, hx509_ca_tbs tbs, time_t t)" -->
+</div>
+<a id="gac64ad4daabe3c912be50c2a32af4fe05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gac64ad4daabe3c912be50c2a32af4fe05">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_notAfter()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_notAfter </td>
+ <td class="memname">int hx509_ca_tbs_set_notAfter </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">time_t&nbsp;</td>
- <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
+ <td class="paramtype">time_t&#160;</td>
+ <td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the absolute time when the certificate is valid to.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>time when the certificate will expire</td></tr>
+</div><div class="memdoc">
+<p>Set the absolute time when the certificate is valid to.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">t</td><td>time when the certificate will expire</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g587184eedd56450858eb74cae842f084"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_notAfter_lifetime" ref="g587184eedd56450858eb74cae842f084" args="(hx509_context context, hx509_ca_tbs tbs, time_t delta)" -->
+</div>
+<a id="ga587184eedd56450858eb74cae842f084"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga587184eedd56450858eb74cae842f084">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_notAfter_lifetime()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_notAfter_lifetime </td>
+ <td class="memname">int hx509_ca_tbs_set_notAfter_lifetime </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">time_t&nbsp;</td>
- <td class="paramname"> <em>delta</em></td><td>&nbsp;</td>
+ <td class="paramtype">time_t&#160;</td>
+ <td class="paramname"><em>delta</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the relative time when the certificiate is going to expire.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>delta</em>&nbsp;</td><td>seconds to the certificate is going to expire.</td></tr>
+</div><div class="memdoc">
+<p>Set the relative time when the certificiate is going to expire.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">delta</td><td>seconds to the certificate is going to expire.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g6a124401ceb514cf16cf8e3721234d03"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_notBefore" ref="g6a124401ceb514cf16cf8e3721234d03" args="(hx509_context context, hx509_ca_tbs tbs, time_t t)" -->
+</div>
+<a id="ga6a124401ceb514cf16cf8e3721234d03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga6a124401ceb514cf16cf8e3721234d03">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_notBefore()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_notBefore </td>
+ <td class="memname">int hx509_ca_tbs_set_notBefore </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">time_t&nbsp;</td>
- <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
+ <td class="paramtype">time_t&#160;</td>
+ <td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the absolute time when the certificate is valid from. If not set the current time will be used.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>time the certificated will start to be valid</td></tr>
+</div><div class="memdoc">
+<p>Set the absolute time when the certificate is valid from. If not set the current time will be used.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">t</td><td>time the certificated will start to be valid</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g215241c575ae3296e137f155a0a4dd6e"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_proxy" ref="g215241c575ae3296e137f155a0a4dd6e" args="(hx509_context context, hx509_ca_tbs tbs, int pathLenConstraint)" -->
+</div>
+<a id="ga215241c575ae3296e137f155a0a4dd6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga215241c575ae3296e137f155a0a4dd6e">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_proxy()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_proxy </td>
+ <td class="memname">int hx509_ca_tbs_set_proxy </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>pathLenConstraint</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>pathLenConstraint</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Make the to-be-signed certificate object a proxy certificate. If the pathLenConstraint is negative path length constraint is used.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>pathLenConstraint</em>&nbsp;</td><td>path length constraint, negative, no constraint.</td></tr>
+</div><div class="memdoc">
+<p>Make the to-be-signed certificate object a proxy certificate. If the pathLenConstraint is negative path length constraint is used.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">pathLenConstraint</td><td>path length constraint, negative, no constraint.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g3f611617f0001575b723a4a9c0d9b3ca"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_serialnumber" ref="g3f611617f0001575b723a4a9c0d9b3ca" args="(hx509_context context, hx509_ca_tbs tbs, const heim_integer *serialNumber)" -->
+</div>
+<a id="ga3f611617f0001575b723a4a9c0d9b3ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga3f611617f0001575b723a4a9c0d9b3ca">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_serialnumber()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_serialnumber </td>
+ <td class="memname">int hx509_ca_tbs_set_serialnumber </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_integer *&nbsp;</td>
- <td class="paramname"> <em>serialNumber</em></td><td>&nbsp;</td>
+ <td class="paramtype">const heim_integer *&#160;</td>
+ <td class="paramname"><em>serialNumber</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the serial number to use for to-be-signed certificate object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>serialNumber</em>&nbsp;</td><td>serial number to use for the to-be-signed certificate object.</td></tr>
+</div><div class="memdoc">
+<p>Set the serial number to use for to-be-signed certificate object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">serialNumber</td><td>serial number to use for the to-be-signed certificate object.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="ge12bfa65cf1112bf3181a5499e8f7ba6"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_spki" ref="ge12bfa65cf1112bf3181a5499e8f7ba6" args="(hx509_context context, hx509_ca_tbs tbs, const SubjectPublicKeyInfo *spki)" -->
+</div>
+<a id="ga4a0a95e3af51c1a1851b1d6b92c20662"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4a0a95e3af51c1a1851b1d6b92c20662">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_signature_algorithm()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_spki </td>
+ <td class="memname">int hx509_ca_tbs_set_signature_algorithm </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const SubjectPublicKeyInfo *&nbsp;</td>
- <td class="paramname"> <em>spki</em></td><td>&nbsp;</td>
+ <td class="paramtype">const AlgorithmIdentifier *&#160;</td>
+ <td class="paramname"><em>sigalg</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the subject public key info (SPKI) in the to-be-signed certificate object. SPKI is the public key and key related parameters in the certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>spki</em>&nbsp;</td><td>subject public key info to use for the to-be-signed certificate object.</td></tr>
+</div><div class="memdoc">
+<p>Set signature algorithm on the to be signed certificate</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">sigalg</td><td>signature algorithm to use</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g9e8cf374812308654e3d7270afb59da1"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_subject" ref="g9e8cf374812308654e3d7270afb59da1" args="(hx509_context context, hx509_ca_tbs tbs, hx509_name subject)" -->
+</div>
+<a id="gae12bfa65cf1112bf3181a5499e8f7ba6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae12bfa65cf1112bf3181a5499e8f7ba6">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_spki()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_subject </td>
+ <td class="memname">int hx509_ca_tbs_set_spki </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name&nbsp;</td>
- <td class="paramname"> <em>subject</em></td><td>&nbsp;</td>
+ <td class="paramtype">const SubjectPublicKeyInfo *&#160;</td>
+ <td class="paramname"><em>spki</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
+</div><div class="memdoc">
+<p>Set the subject public key info (SPKI) in the to-be-signed certificate object. SPKI is the public key and key related parameters in the certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">spki</td><td>subject public key info to use for the to-be-signed certificate object.</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+
+</div>
</div>
-<div class="memdoc">
+<a id="ga9e8cf374812308654e3d7270afb59da1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga9e8cf374812308654e3d7270afb59da1">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_subject()</h2>
-<p>
-Set the subject name of a to-be-signed certificate object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>subject</em>&nbsp;</td><td>the name to set a subject.</td></tr>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int hx509_ca_tbs_set_subject </td>
+ <td>(</td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">hx509_name&#160;</td>
+ <td class="paramname"><em>subject</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Set the subject name of a to-be-signed certificate object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">subject</td><td>the name to set a subject.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g2d7c245443a81540ff993e7cc6f51ebb"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_template" ref="g2d7c245443a81540ff993e7cc6f51ebb" args="(hx509_context context, hx509_ca_tbs tbs, int flags, hx509_cert cert)" -->
+</div>
+<a id="ga2d7c245443a81540ff993e7cc6f51ebb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga2d7c245443a81540ff993e7cc6f51ebb">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_template()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_template </td>
+ <td class="memname">int hx509_ca_tbs_set_template </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Initialize the to-be-signed certificate object from a template certifiate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>bit field selecting what to copy from the template certifiate. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>template certificate.</td></tr>
+</div><div class="memdoc">
+<p>Initialize the to-be-signed certificate object from a template certifiate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">flags</td><td>bit field selecting what to copy from the template certifiate. </td></tr>
+ <tr><td class="paramname">cert</td><td>template certificate.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="ge22ea3d0201845dbc73f4b21502face6"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_set_unique" ref="ge22ea3d0201845dbc73f4b21502face6" args="(hx509_context context, hx509_ca_tbs tbs, const heim_bit_string *subjectUniqueID, const heim_bit_string *issuerUniqueID)" -->
+</div>
+<a id="gae22ea3d0201845dbc73f4b21502face6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae22ea3d0201845dbc73f4b21502face6">&#9670;&nbsp;</a></span>hx509_ca_tbs_set_unique()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_set_unique </td>
+ <td class="memname">int hx509_ca_tbs_set_unique </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_bit_string *&nbsp;</td>
- <td class="paramname"> <em>subjectUniqueID</em>, </td>
+ <td class="paramtype">const heim_bit_string *&#160;</td>
+ <td class="paramname"><em>subjectUniqueID</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_bit_string *&nbsp;</td>
- <td class="paramname"> <em>issuerUniqueID</em></td><td>&nbsp;</td>
+ <td class="paramtype">const heim_bit_string *&#160;</td>
+ <td class="paramname"><em>issuerUniqueID</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the issuerUniqueID and subjectUniqueID<p>
-These are only supposed to be used considered with version 2 certificates, replaced by the two extensions SubjectKeyIdentifier and IssuerKeyIdentifier. This function is to allow application using legacy protocol to issue them.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>issuerUniqueID</em>&nbsp;</td><td>to be set </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>subjectUniqueID</em>&nbsp;</td><td>to be set</td></tr>
+</div><div class="memdoc">
+<p>Set the issuerUniqueID and subjectUniqueID</p>
+<p>These are only supposed to be used considered with version 2 certificates, replaced by the two extensions SubjectKeyIdentifier and IssuerKeyIdentifier. This function is to allow application using legacy protocol to issue them.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">issuerUniqueID</td><td>to be set </td></tr>
+ <tr><td class="paramname">subjectUniqueID</td><td>to be set</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g36432d6249ee668196a692c7286d09ce"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_subject_expand" ref="g36432d6249ee668196a692c7286d09ce" args="(hx509_context context, hx509_ca_tbs tbs, hx509_env env)" -->
+</div>
+<a id="ga36432d6249ee668196a692c7286d09ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga36432d6249ee668196a692c7286d09ce">&#9670;&nbsp;</a></span>hx509_ca_tbs_subject_expand()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ca_tbs_subject_expand </td>
+ <td class="memname">int hx509_ca_tbs_subject_expand </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_ca_tbs&nbsp;</td>
- <td class="paramname"> <em>tbs</em>, </td>
+ <td class="paramtype">hx509_ca_tbs&#160;</td>
+ <td class="paramname"><em>tbs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_env&nbsp;</td>
- <td class="paramname"> <em>env</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_env&#160;</td>
+ <td class="paramname"><em>env</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Expand the the subject name in the to-be-signed certificate object using <a class="el" href="group__hx509__name.html#g42015083c70b6aa29c4f082998dbbece">hx509_name_expand()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>tbs</em>&nbsp;</td><td>object to be signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>enviroment variable to expand variables in the subject name, see hx509_env_init().</td></tr>
+</div><div class="memdoc">
+<p>Expand the the subject name in the to-be-signed certificate object using <a class="el" href="group__hx509__name.html#ga42015083c70b6aa29c4f082998dbbece">hx509_name_expand()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">tbs</td><td>object to be signed. </td></tr>
+ <tr><td class="paramname">env</td><td>environment variable to expand variables in the subject name, see hx509_env_init().</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g2809ea576f40642337c8bf49071723b0"></a><!-- doxytag: member="ca.c::hx509_ca_tbs_template_units" ref="g2809ea576f40642337c8bf49071723b0" args="(void)" -->
+</div>
+<a id="gaf805458a31b3ba5731dc432c711aa5c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaf805458a31b3ba5731dc432c711aa5c1">&#9670;&nbsp;</a></span>hx509_ca_tbs_template_units()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">struct units* hx509_ca_tbs_template_units </td>
+ <td class="memname">const struct units* hx509_ca_tbs_template_units </td>
<td>(</td>
- <td class="paramtype">void&nbsp;</td>
- <td class="paramname"> </td>
- <td>&nbsp;)&nbsp;</td>
- <td><code> [read]</code></td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Make of template units, use to build flags argument to <a class="el" href="group__hx509__ca.html#g2d7c245443a81540ff993e7cc6f51ebb">hx509_ca_tbs_set_template()</a> with parse_units().<p>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>an units structure. </dd></dl>
+</div><div class="memdoc">
+<p>Make of template units, use to build flags argument to <a class="el" href="group__hx509__ca.html#ga2d7c245443a81540ff993e7cc6f51ebb">hx509_ca_tbs_set_template()</a> with parse_units().</p>
+<dl class="section return"><dt>Returns</dt><dd>an units structure. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:41 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__cert.html b/doc/doxyout/hx509/html/group__hx509__cert.html
index a91284ed4837..5532a2c69d6b 100644
--- a/doc/doxyout/hx509/html/group__hx509__cert.html
+++ b/doc/doxyout/hx509/html/group__hx509__cert.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 certificate functions</title>
+<title>hx509 certificate functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,1418 +8,1423 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 certificate functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 certificate functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g1aa420f664ce5933f8af4cf6c37fd6f6">hx509_cert_init</a> (hx509_context context, const Certificate *c, hx509_cert *cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g479d8c1bf22aa8fdfa448bed1ec54d7b">hx509_cert_init_data</a> (hx509_context context, const void *ptr, size_t len, hx509_cert *cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gd2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free</a> (hx509_cert cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">hx509_cert&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g1870b485d4e8e53f75690f35f4526fcc">hx509_cert_ref</a> (hx509_cert cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gfb8063ac0396ad60392b8b9554c6b896">hx509_verify_ctx_f_allow_default_trustanchors</a> (hx509_verify_ctx ctx, int boolean)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g49e7c45c70442dcb81d394093d9cbe29">hx509_cert_find_subjectAltName_otherName</a> (hx509_context context, hx509_cert cert, const heim_oid *oid, hx509_octet_string_list *list)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gb84ed704b59c7965a598ef9c7c353216">hx509_cert_cmp</a> (hx509_cert p, hx509_cert q)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g3c61a21c5a802b2f366c9610ff89fa90">hx509_cert_get_issuer</a> (hx509_cert p, hx509_name *name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g9f64bb8083bb535ccba007b723c73619">hx509_cert_get_subject</a> (hx509_cert p, hx509_name *name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g5e8e38603eb13753912b0075aab276cf">hx509_cert_get_base_subject</a> (hx509_context context, hx509_cert c, hx509_name *name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g2960bea38768b49c8b949fe2ea5320e3">hx509_cert_get_serialnumber</a> (hx509_cert p, heim_integer *i)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g2e36444c1bce8995ee193013364ce852">hx509_cert_get_notBefore</a> (hx509_cert p)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">time_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gd3e8410e9bb4d0bf61bc3e926a4049eb">hx509_cert_get_notAfter</a> (hx509_cert p)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gc9e328025dd91339cf73eecdeec4ffd6">hx509_cert_get_SPKI</a> (hx509_context context, hx509_cert p, SubjectPublicKeyInfo *spki)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gc2fd6cd8b1fbe0d470a88143a359c395">hx509_cert_get_SPKI_AlgorithmIdentifier</a> (hx509_context context, hx509_cert p, AlgorithmIdentifier *alg)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gc88fb8bf53b3e105f728251f6d4d4b1f">hx509_cert_get_issuer_unique_id</a> (hx509_context context, hx509_cert p, heim_bit_string *issuer)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gc7184f4f0249842866d51b17e4b101fb">hx509_cert_get_subject_unique_id</a> (hx509_context context, hx509_cert p, heim_bit_string *subject)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g5dc160f02aeffffb0eea58b6203c856a">hx509_verify_hostname</a> (hx509_context context, const hx509_cert cert, int flags, hx509_hostname_type type, const char *hostname, const struct sockaddr *sa, int sa_size)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">hx509_cert_attribute&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g2038342b93f828789a241a7fee26f4c8">hx509_cert_get_attribute</a> (hx509_cert cert, const heim_oid *oid)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g972768dbcc822fed1b74e7686b407f78">hx509_cert_set_friendly_name</a> (hx509_cert cert, const char *name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ge2a1de96837304d68216c309e698c3fd">hx509_cert_get_friendly_name</a> (hx509_cert cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g5833168d3181e12883b51284fd069543">hx509_query_alloc</a> (hx509_context context, hx509_query **q)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gc708daef26edff5fd36f4587e61a9914">hx509_query_match_option</a> (hx509_query *q, hx509_query_option option)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gd5d7a68cc8ca4c948ae99b7eb6f5bc2e">hx509_query_match_issuer_serial</a> (hx509_query *q, const Name *issuer, const heim_integer *serialNumber)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g5be7b5ece155f2577335b5575f141362">hx509_query_match_friendly_name</a> (hx509_query *q, const char *name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g5a7e01c75b7b8243356048a88133c2df">hx509_query_match_eku</a> (hx509_query *q, const heim_oid *eku)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ge1660c0cf5a41f17db72a8c18e79c684">hx509_query_match_cmp_func</a> (hx509_query *q, int(*func)(hx509_context, hx509_cert, void *), void *ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g6aafd01e9215fef980a572b2c7289d8c">hx509_query_free</a> (hx509_context context, hx509_query *q)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g94b4aa7d907d34914e161831e74440a8">hx509_query_statistic_file</a> (hx509_context context, const char *fn)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g522fb2a85515ce8debea860cdfeb94c0">hx509_query_unparse_stats</a> (hx509_context context, int printtype, FILE *out)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g1b329c40d7c17cc1b099ec0bd24d4dc9">hx509_cert_check_eku</a> (hx509_context context, hx509_cert cert, const heim_oid *eku, int allow_any_eku)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gfa02f22b6db5ca3c19a488066fea5d7a">hx509_cert_binary</a> (hx509_context context, hx509_cert c, heim_octet_string *os)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#g32a804b17d97d71af17602fdf6b1c891">hx509_print_cert</a> (hx509_context context, hx509_cert cert, FILE *out)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga31c3f5e9a6d7892729c56f0f86a76f4a"><td class="memItemLeft" align="right" valign="top">hx509_cert&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga31c3f5e9a6d7892729c56f0f86a76f4a">hx509_cert_init</a> (hx509_context context, const Certificate *c, heim_error_t *error)</td></tr>
+<tr class="separator:ga31c3f5e9a6d7892729c56f0f86a76f4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga134b62e36ffcf09bbf866a88bc4c5010"><td class="memItemLeft" align="right" valign="top">hx509_cert&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga134b62e36ffcf09bbf866a88bc4c5010">hx509_cert_init_data</a> (hx509_context context, const void *ptr, size_t len, heim_error_t *error)</td></tr>
+<tr class="separator:ga134b62e36ffcf09bbf866a88bc4c5010"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad2f9bb0ddc4babb26a8ccd983db8c948"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gad2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free</a> (hx509_cert cert)</td></tr>
+<tr class="separator:gad2f9bb0ddc4babb26a8ccd983db8c948"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1870b485d4e8e53f75690f35f4526fcc"><td class="memItemLeft" align="right" valign="top">hx509_cert&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga1870b485d4e8e53f75690f35f4526fcc">hx509_cert_ref</a> (hx509_cert cert)</td></tr>
+<tr class="separator:ga1870b485d4e8e53f75690f35f4526fcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gafb8063ac0396ad60392b8b9554c6b896"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gafb8063ac0396ad60392b8b9554c6b896">hx509_verify_ctx_f_allow_default_trustanchors</a> (hx509_verify_ctx ctx, int boolean)</td></tr>
+<tr class="separator:gafb8063ac0396ad60392b8b9554c6b896"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga49e7c45c70442dcb81d394093d9cbe29"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga49e7c45c70442dcb81d394093d9cbe29">hx509_cert_find_subjectAltName_otherName</a> (hx509_context context, hx509_cert cert, const heim_oid *oid, hx509_octet_string_list *list)</td></tr>
+<tr class="separator:ga49e7c45c70442dcb81d394093d9cbe29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab84ed704b59c7965a598ef9c7c353216"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gab84ed704b59c7965a598ef9c7c353216">hx509_cert_cmp</a> (hx509_cert p, hx509_cert q)</td></tr>
+<tr class="separator:gab84ed704b59c7965a598ef9c7c353216"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga3c61a21c5a802b2f366c9610ff89fa90"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga3c61a21c5a802b2f366c9610ff89fa90">hx509_cert_get_issuer</a> (hx509_cert p, hx509_name *name)</td></tr>
+<tr class="separator:ga3c61a21c5a802b2f366c9610ff89fa90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga9f64bb8083bb535ccba007b723c73619"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga9f64bb8083bb535ccba007b723c73619">hx509_cert_get_subject</a> (hx509_cert p, hx509_name *name)</td></tr>
+<tr class="separator:ga9f64bb8083bb535ccba007b723c73619"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5e8e38603eb13753912b0075aab276cf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga5e8e38603eb13753912b0075aab276cf">hx509_cert_get_base_subject</a> (hx509_context context, hx509_cert c, hx509_name *name)</td></tr>
+<tr class="separator:ga5e8e38603eb13753912b0075aab276cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga2960bea38768b49c8b949fe2ea5320e3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga2960bea38768b49c8b949fe2ea5320e3">hx509_cert_get_serialnumber</a> (hx509_cert p, heim_integer *i)</td></tr>
+<tr class="separator:ga2960bea38768b49c8b949fe2ea5320e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga2e36444c1bce8995ee193013364ce852"><td class="memItemLeft" align="right" valign="top">time_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga2e36444c1bce8995ee193013364ce852">hx509_cert_get_notBefore</a> (hx509_cert p)</td></tr>
+<tr class="separator:ga2e36444c1bce8995ee193013364ce852"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad3e8410e9bb4d0bf61bc3e926a4049eb"><td class="memItemLeft" align="right" valign="top">time_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gad3e8410e9bb4d0bf61bc3e926a4049eb">hx509_cert_get_notAfter</a> (hx509_cert p)</td></tr>
+<tr class="separator:gad3e8410e9bb4d0bf61bc3e926a4049eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac9e328025dd91339cf73eecdeec4ffd6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gac9e328025dd91339cf73eecdeec4ffd6">hx509_cert_get_SPKI</a> (hx509_context context, hx509_cert p, SubjectPublicKeyInfo *spki)</td></tr>
+<tr class="separator:gac9e328025dd91339cf73eecdeec4ffd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac2fd6cd8b1fbe0d470a88143a359c395"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gac2fd6cd8b1fbe0d470a88143a359c395">hx509_cert_get_SPKI_AlgorithmIdentifier</a> (hx509_context context, hx509_cert p, AlgorithmIdentifier *alg)</td></tr>
+<tr class="separator:gac2fd6cd8b1fbe0d470a88143a359c395"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac88fb8bf53b3e105f728251f6d4d4b1f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gac88fb8bf53b3e105f728251f6d4d4b1f">hx509_cert_get_issuer_unique_id</a> (hx509_context context, hx509_cert p, heim_bit_string *issuer)</td></tr>
+<tr class="separator:gac88fb8bf53b3e105f728251f6d4d4b1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac7184f4f0249842866d51b17e4b101fb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gac7184f4f0249842866d51b17e4b101fb">hx509_cert_get_subject_unique_id</a> (hx509_context context, hx509_cert p, heim_bit_string *subject)</td></tr>
+<tr class="separator:gac7184f4f0249842866d51b17e4b101fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5dc160f02aeffffb0eea58b6203c856a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga5dc160f02aeffffb0eea58b6203c856a">hx509_verify_hostname</a> (hx509_context context, const hx509_cert cert, int flags, hx509_hostname_type type, const char *hostname, const struct sockaddr *sa, int sa_size)</td></tr>
+<tr class="separator:ga5dc160f02aeffffb0eea58b6203c856a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga2038342b93f828789a241a7fee26f4c8"><td class="memItemLeft" align="right" valign="top">hx509_cert_attribute&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga2038342b93f828789a241a7fee26f4c8">hx509_cert_get_attribute</a> (hx509_cert cert, const heim_oid *oid)</td></tr>
+<tr class="separator:ga2038342b93f828789a241a7fee26f4c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga972768dbcc822fed1b74e7686b407f78"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga972768dbcc822fed1b74e7686b407f78">hx509_cert_set_friendly_name</a> (hx509_cert cert, const char *name)</td></tr>
+<tr class="separator:ga972768dbcc822fed1b74e7686b407f78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae2a1de96837304d68216c309e698c3fd"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gae2a1de96837304d68216c309e698c3fd">hx509_cert_get_friendly_name</a> (hx509_cert cert)</td></tr>
+<tr class="separator:gae2a1de96837304d68216c309e698c3fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5833168d3181e12883b51284fd069543"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga5833168d3181e12883b51284fd069543">hx509_query_alloc</a> (hx509_context context, hx509_query **q)</td></tr>
+<tr class="separator:ga5833168d3181e12883b51284fd069543"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac708daef26edff5fd36f4587e61a9914"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gac708daef26edff5fd36f4587e61a9914">hx509_query_match_option</a> (hx509_query *q, hx509_query_option option)</td></tr>
+<tr class="separator:gac708daef26edff5fd36f4587e61a9914"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad5d7a68cc8ca4c948ae99b7eb6f5bc2e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gad5d7a68cc8ca4c948ae99b7eb6f5bc2e">hx509_query_match_issuer_serial</a> (hx509_query *q, const Name *issuer, const heim_integer *serialNumber)</td></tr>
+<tr class="separator:gad5d7a68cc8ca4c948ae99b7eb6f5bc2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5be7b5ece155f2577335b5575f141362"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga5be7b5ece155f2577335b5575f141362">hx509_query_match_friendly_name</a> (hx509_query *q, const char *name)</td></tr>
+<tr class="separator:ga5be7b5ece155f2577335b5575f141362"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5a7e01c75b7b8243356048a88133c2df"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga5a7e01c75b7b8243356048a88133c2df">hx509_query_match_eku</a> (hx509_query *q, const heim_oid *eku)</td></tr>
+<tr class="separator:ga5a7e01c75b7b8243356048a88133c2df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae1660c0cf5a41f17db72a8c18e79c684"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gae1660c0cf5a41f17db72a8c18e79c684">hx509_query_match_cmp_func</a> (hx509_query *q, int(*func)(hx509_context, hx509_cert, void *), void *ctx)</td></tr>
+<tr class="separator:gae1660c0cf5a41f17db72a8c18e79c684"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6aafd01e9215fef980a572b2c7289d8c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga6aafd01e9215fef980a572b2c7289d8c">hx509_query_free</a> (hx509_context context, hx509_query *q)</td></tr>
+<tr class="separator:ga6aafd01e9215fef980a572b2c7289d8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga94b4aa7d907d34914e161831e74440a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga94b4aa7d907d34914e161831e74440a8">hx509_query_statistic_file</a> (hx509_context context, const char *fn)</td></tr>
+<tr class="separator:ga94b4aa7d907d34914e161831e74440a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga522fb2a85515ce8debea860cdfeb94c0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga522fb2a85515ce8debea860cdfeb94c0">hx509_query_unparse_stats</a> (hx509_context context, int printtype, FILE *out)</td></tr>
+<tr class="separator:ga522fb2a85515ce8debea860cdfeb94c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1b329c40d7c17cc1b099ec0bd24d4dc9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga1b329c40d7c17cc1b099ec0bd24d4dc9">hx509_cert_check_eku</a> (hx509_context context, hx509_cert cert, const heim_oid *eku, int allow_any_eku)</td></tr>
+<tr class="separator:ga1b329c40d7c17cc1b099ec0bd24d4dc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gafa02f22b6db5ca3c19a488066fea5d7a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#gafa02f22b6db5ca3c19a488066fea5d7a">hx509_cert_binary</a> (hx509_context context, hx509_cert c, heim_octet_string *os)</td></tr>
+<tr class="separator:gafa02f22b6db5ca3c19a488066fea5d7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga32a804b17d97d71af17602fdf6b1c891"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cert.html#ga32a804b17d97d71af17602fdf6b1c891">hx509_print_cert</a> (hx509_context context, hx509_cert cert, FILE *out)</td></tr>
+<tr class="separator:ga32a804b17d97d71af17602fdf6b1c891"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-See the <a class="el" href="page_cert.html">The basic certificate</a> for description and examples. <hr><h2>Function Documentation</h2>
-<a class="anchor" name="gfa02f22b6db5ca3c19a488066fea5d7a"></a><!-- doxytag: member="cert.c::hx509_cert_binary" ref="gfa02f22b6db5ca3c19a488066fea5d7a" args="(hx509_context context, hx509_cert c, heim_octet_string *os)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>See the <a class="el" href="page_cert.html">The basic certificate</a> for description and examples. </p>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="gafa02f22b6db5ca3c19a488066fea5d7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gafa02f22b6db5ca3c19a488066fea5d7a">&#9670;&nbsp;</a></span>hx509_cert_binary()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_binary </td>
+ <td class="memname">int hx509_cert_binary </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>c</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>os</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>os</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Encodes the hx509 certificate as a DER encode binary.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>the certificate to encode. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>os</em>&nbsp;</td><td>the encode certificate, set to NULL, 0 on case of error. Free the os-&gt;data with <a class="el" href="group__hx509__misc.html#gba6d3eb6abde539a3191269f785e3e61">hx509_xfree()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Encodes the hx509 certificate as a DER encode binary.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">c</td><td>the certificate to encode. </td></tr>
+ <tr><td class="paramname">os</td><td>the encode certificate, set to NULL, 0 on case of error. Free the os-&gt;data with <a class="el" href="group__hx509__misc.html#gaba6d3eb6abde539a3191269f785e3e61">hx509_xfree()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g1b329c40d7c17cc1b099ec0bd24d4dc9"></a><!-- doxytag: member="cert.c::hx509_cert_check_eku" ref="g1b329c40d7c17cc1b099ec0bd24d4dc9" args="(hx509_context context, hx509_cert cert, const heim_oid *eku, int allow_any_eku)" -->
+</div>
+<a id="ga1b329c40d7c17cc1b099ec0bd24d4dc9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1b329c40d7c17cc1b099ec0bd24d4dc9">&#9670;&nbsp;</a></span>hx509_cert_check_eku()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_check_eku </td>
+ <td class="memname">int hx509_cert_check_eku </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>eku</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>eku</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>allow_any_eku</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>allow_any_eku</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Check the extended key usage on the hx509 certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>eku</em>&nbsp;</td><td>the EKU to check for </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>allow_any_eku</em>&nbsp;</td><td>if the any EKU is set, allow that to be a substitute.</td></tr>
+</div><div class="memdoc">
+<p>Check the extended key usage on the hx509 certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">cert</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">eku</td><td>the EKU to check for </td></tr>
+ <tr><td class="paramname">allow_any_eku</td><td>if the any EKU is set, allow that to be a substitute.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gb84ed704b59c7965a598ef9c7c353216"></a><!-- doxytag: member="cert.c::hx509_cert_cmp" ref="gb84ed704b59c7965a598ef9c7c353216" args="(hx509_cert p, hx509_cert q)" -->
+</div>
+<a id="gab84ed704b59c7965a598ef9c7c353216"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gab84ed704b59c7965a598ef9c7c353216">&#9670;&nbsp;</a></span>hx509_cert_cmp()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_cmp </td>
+ <td class="memname">int hx509_cert_cmp </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>q</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Compare to hx509 certificate object, useful for sorting.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>a hx509 certificate object.</td></tr>
+</div><div class="memdoc">
+<p>Compare to hx509 certificate object, useful for sorting.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">p</td><td>a hx509 certificate object. </td></tr>
+ <tr><td class="paramname">q</td><td>a hx509 certificate object.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 the objects are the same, returns &gt; 0 is p is "larger" then q, &lt; 0 if p is "smaller" then q. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>0 the objects are the same, returns &gt; 0 is p is "larger" then q, &lt; 0 if p is "smaller" then q. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g49e7c45c70442dcb81d394093d9cbe29"></a><!-- doxytag: member="cert.c::hx509_cert_find_subjectAltName_otherName" ref="g49e7c45c70442dcb81d394093d9cbe29" args="(hx509_context context, hx509_cert cert, const heim_oid *oid, hx509_octet_string_list *list)" -->
+</div>
+<a id="ga49e7c45c70442dcb81d394093d9cbe29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga49e7c45c70442dcb81d394093d9cbe29">&#9670;&nbsp;</a></span>hx509_cert_find_subjectAltName_otherName()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_find_subjectAltName_otherName </td>
+ <td class="memname">int hx509_cert_find_subjectAltName_otherName </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>oid</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>oid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_octet_string_list *&nbsp;</td>
- <td class="paramname"> <em>list</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_octet_string_list *&#160;</td>
+ <td class="paramname"><em>list</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Return a list of subjectAltNames specified by oid in the certificate. On error the<p>
-The returned list of octet string should be freed with <a class="el" href="group__hx509__misc.html#ga39b9443f688a6d9152ff6dc05f3be8e">hx509_free_octet_string_list()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>a hx509 certificate object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>oid</em>&nbsp;</td><td>an oid to for SubjectAltName. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>list</em>&nbsp;</td><td>list of matching SubjectAltName.</td></tr>
+</div><div class="memdoc">
+<p>Return a list of subjectAltNames specified by oid in the certificate. On error the</p>
+<p>The returned list of octet string should be freed with <a class="el" href="group__hx509__misc.html#gaa39b9443f688a6d9152ff6dc05f3be8e">hx509_free_octet_string_list()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">cert</td><td>a hx509 certificate object. </td></tr>
+ <tr><td class="paramname">oid</td><td>an oid to for SubjectAltName. </td></tr>
+ <tr><td class="paramname">list</td><td>list of matching SubjectAltName.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gd2f9bb0ddc4babb26a8ccd983db8c948"></a><!-- doxytag: member="cert.c::hx509_cert_free" ref="gd2f9bb0ddc4babb26a8ccd983db8c948" args="(hx509_cert cert)" -->
+</div>
+<a id="gad2f9bb0ddc4babb26a8ccd983db8c948"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gad2f9bb0ddc4babb26a8ccd983db8c948">&#9670;&nbsp;</a></span>hx509_cert_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_cert_free </td>
+ <td class="memname">void hx509_cert_free </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free reference to the hx509 certificate object, if the refcounter reaches 0, the object if freed. Its allowed to pass in NULL.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>the cert to free. </td></tr>
+</div><div class="memdoc">
+<p>Free reference to the hx509 certificate object, if the refcounter reaches 0, the object if freed. Its allowed to pass in NULL.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">cert</td><td>the cert to free. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g2038342b93f828789a241a7fee26f4c8"></a><!-- doxytag: member="cert.c::hx509_cert_get_attribute" ref="g2038342b93f828789a241a7fee26f4c8" args="(hx509_cert cert, const heim_oid *oid)" -->
+</div>
+<a id="ga2038342b93f828789a241a7fee26f4c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga2038342b93f828789a241a7fee26f4c8">&#9670;&nbsp;</a></span>hx509_cert_get_attribute()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">hx509_cert_attribute hx509_cert_get_attribute </td>
+ <td class="memname">hx509_cert_attribute hx509_cert_get_attribute </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>oid</em></td><td>&nbsp;</td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>oid</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get an external attribute for the certificate, examples are friendly name and id.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>hx509 certificate object to search </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>oid</em>&nbsp;</td><td>an oid to search for.</td></tr>
+</div><div class="memdoc">
+<p>Get an external attribute for the certificate, examples are friendly name and id.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">cert</td><td>hx509 certificate object to search </td></tr>
+ <tr><td class="paramname">oid</td><td>an oid to search for.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>an hx509_cert_attribute, only valid as long as the certificate is referenced. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>an hx509_cert_attribute, only valid as long as the certificate is referenced. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g5e8e38603eb13753912b0075aab276cf"></a><!-- doxytag: member="cert.c::hx509_cert_get_base_subject" ref="g5e8e38603eb13753912b0075aab276cf" args="(hx509_context context, hx509_cert c, hx509_name *name)" -->
+</div>
+<a id="ga5e8e38603eb13753912b0075aab276cf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5e8e38603eb13753912b0075aab276cf">&#9670;&nbsp;</a></span>hx509_cert_get_base_subject()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_get_base_subject </td>
+ <td class="memname">int hx509_cert_get_base_subject </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>c</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name *&nbsp;</td>
- <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_name *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Return the name of the base subject of the hx509 certificate. If the certiicate is a verified proxy certificate, the this function return the base certificate (root of the proxy chain). If the proxy certificate is not verified with the base certificate HX509_PROXY_CERTIFICATE_NOT_CANONICALIZED is returned.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>a hx509 certificate object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>a pointer to a hx509 name, should be freed by <a class="el" href="group__hx509__name.html#gaf351931efb02fc7aea736af9977155e">hx509_name_free()</a>. See also <a class="el" href="group__hx509__cert.html#g9f64bb8083bb535ccba007b723c73619">hx509_cert_get_subject()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Return the name of the base subject of the hx509 certificate. If the certiicate is a verified proxy certificate, the this function return the base certificate (root of the proxy chain). If the proxy certificate is not verified with the base certificate HX509_PROXY_CERTIFICATE_NOT_CANONICALIZED is returned.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">c</td><td>a hx509 certificate object. </td></tr>
+ <tr><td class="paramname">name</td><td>a pointer to a hx509 name, should be freed by <a class="el" href="group__hx509__name.html#gaaf351931efb02fc7aea736af9977155e">hx509_name_free()</a>. See also <a class="el" href="group__hx509__cert.html#ga9f64bb8083bb535ccba007b723c73619">hx509_cert_get_subject()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="ge2a1de96837304d68216c309e698c3fd"></a><!-- doxytag: member="cert.c::hx509_cert_get_friendly_name" ref="ge2a1de96837304d68216c309e698c3fd" args="(hx509_cert cert)" -->
+</div>
+<a id="gae2a1de96837304d68216c309e698c3fd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae2a1de96837304d68216c309e698c3fd">&#9670;&nbsp;</a></span>hx509_cert_get_friendly_name()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">const char* hx509_cert_get_friendly_name </td>
+ <td class="memname">const char* hx509_cert_get_friendly_name </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get friendly name of the certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>cert to get the friendly name from.</td></tr>
+</div><div class="memdoc">
+<p>Get friendly name of the certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">cert</td><td>cert to get the friendly name from.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>an friendly name or NULL if there is. The friendly name is only valid as long as the certificate is referenced. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>an friendly name or NULL if there is. The friendly name is only valid as long as the certificate is referenced. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g3c61a21c5a802b2f366c9610ff89fa90"></a><!-- doxytag: member="cert.c::hx509_cert_get_issuer" ref="g3c61a21c5a802b2f366c9610ff89fa90" args="(hx509_cert p, hx509_name *name)" -->
+</div>
+<a id="ga3c61a21c5a802b2f366c9610ff89fa90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga3c61a21c5a802b2f366c9610ff89fa90">&#9670;&nbsp;</a></span>hx509_cert_get_issuer()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_get_issuer </td>
+ <td class="memname">int hx509_cert_get_issuer </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name *&nbsp;</td>
- <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_name *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Return the name of the issuer of the hx509 certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>a pointer to a hx509 name, should be freed by <a class="el" href="group__hx509__name.html#gaf351931efb02fc7aea736af9977155e">hx509_name_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Return the name of the issuer of the hx509 certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">p</td><td>a hx509 certificate object. </td></tr>
+ <tr><td class="paramname">name</td><td>a pointer to a hx509 name, should be freed by <a class="el" href="group__hx509__name.html#gaaf351931efb02fc7aea736af9977155e">hx509_name_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gc88fb8bf53b3e105f728251f6d4d4b1f"></a><!-- doxytag: member="cert.c::hx509_cert_get_issuer_unique_id" ref="gc88fb8bf53b3e105f728251f6d4d4b1f" args="(hx509_context context, hx509_cert p, heim_bit_string *issuer)" -->
+</div>
+<a id="gac88fb8bf53b3e105f728251f6d4d4b1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gac88fb8bf53b3e105f728251f6d4d4b1f">&#9670;&nbsp;</a></span>hx509_cert_get_issuer_unique_id()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_get_issuer_unique_id </td>
+ <td class="memname">int hx509_cert_get_issuer_unique_id </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_bit_string *&nbsp;</td>
- <td class="paramname"> <em>issuer</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_bit_string *&#160;</td>
+ <td class="paramname"><em>issuer</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get a copy of the Issuer Unique ID<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509_context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>issuer</em>&nbsp;</td><td>the issuer id returned, free with der_free_bit_string()</td></tr>
+</div><div class="memdoc">
+<p>Get a copy of the Issuer Unique ID</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509_context </td></tr>
+ <tr><td class="paramname">p</td><td>a hx509 certificate </td></tr>
+ <tr><td class="paramname">issuer</td><td>the issuer id returned, free with der_free_bit_string()</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. The error code HX509_EXTENSION_NOT_FOUND is returned if the certificate doesn't have a issuerUniqueID </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. The error code HX509_EXTENSION_NOT_FOUND is returned if the certificate doesn't have a issuerUniqueID </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gd3e8410e9bb4d0bf61bc3e926a4049eb"></a><!-- doxytag: member="cert.c::hx509_cert_get_notAfter" ref="gd3e8410e9bb4d0bf61bc3e926a4049eb" args="(hx509_cert p)" -->
+</div>
+<a id="gad3e8410e9bb4d0bf61bc3e926a4049eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gad3e8410e9bb4d0bf61bc3e926a4049eb">&#9670;&nbsp;</a></span>hx509_cert_get_notAfter()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">time_t hx509_cert_get_notAfter </td>
+ <td class="memname">time_t hx509_cert_get_notAfter </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get notAfter time of the certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate object.</td></tr>
+</div><div class="memdoc">
+<p>Get notAfter time of the certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">p</td><td>a hx509 certificate object.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>return not after time. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>return not after time. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g2e36444c1bce8995ee193013364ce852"></a><!-- doxytag: member="cert.c::hx509_cert_get_notBefore" ref="g2e36444c1bce8995ee193013364ce852" args="(hx509_cert p)" -->
+</div>
+<a id="ga2e36444c1bce8995ee193013364ce852"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga2e36444c1bce8995ee193013364ce852">&#9670;&nbsp;</a></span>hx509_cert_get_notBefore()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">time_t hx509_cert_get_notBefore </td>
+ <td class="memname">time_t hx509_cert_get_notBefore </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get notBefore time of the certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate object.</td></tr>
+</div><div class="memdoc">
+<p>Get notBefore time of the certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">p</td><td>a hx509 certificate object.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>return not before time </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>return not before time </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g2960bea38768b49c8b949fe2ea5320e3"></a><!-- doxytag: member="cert.c::hx509_cert_get_serialnumber" ref="g2960bea38768b49c8b949fe2ea5320e3" args="(hx509_cert p, heim_integer *i)" -->
+</div>
+<a id="ga2960bea38768b49c8b949fe2ea5320e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga2960bea38768b49c8b949fe2ea5320e3">&#9670;&nbsp;</a></span>hx509_cert_get_serialnumber()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_get_serialnumber </td>
+ <td class="memname">int hx509_cert_get_serialnumber </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_integer *&nbsp;</td>
- <td class="paramname"> <em>i</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_integer *&#160;</td>
+ <td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get serial number of the certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>i</em>&nbsp;</td><td>serial number, should be freed ith der_free_heim_integer().</td></tr>
+</div><div class="memdoc">
+<p>Get serial number of the certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">p</td><td>a hx509 certificate object. </td></tr>
+ <tr><td class="paramname">i</td><td>serial number, should be freed ith der_free_heim_integer().</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gc9e328025dd91339cf73eecdeec4ffd6"></a><!-- doxytag: member="cert.c::hx509_cert_get_SPKI" ref="gc9e328025dd91339cf73eecdeec4ffd6" args="(hx509_context context, hx509_cert p, SubjectPublicKeyInfo *spki)" -->
+</div>
+<a id="gac9e328025dd91339cf73eecdeec4ffd6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gac9e328025dd91339cf73eecdeec4ffd6">&#9670;&nbsp;</a></span>hx509_cert_get_SPKI()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_get_SPKI </td>
+ <td class="memname">int hx509_cert_get_SPKI </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">SubjectPublicKeyInfo *&nbsp;</td>
- <td class="paramname"> <em>spki</em></td><td>&nbsp;</td>
+ <td class="paramtype">SubjectPublicKeyInfo *&#160;</td>
+ <td class="paramname"><em>spki</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the SubjectPublicKeyInfo structure from the hx509 certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>spki</em>&nbsp;</td><td>SubjectPublicKeyInfo, should be freed with free_SubjectPublicKeyInfo().</td></tr>
+</div><div class="memdoc">
+<p>Get the SubjectPublicKeyInfo structure from the hx509 certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">p</td><td>a hx509 certificate object. </td></tr>
+ <tr><td class="paramname">spki</td><td>SubjectPublicKeyInfo, should be freed with free_SubjectPublicKeyInfo().</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gc2fd6cd8b1fbe0d470a88143a359c395"></a><!-- doxytag: member="cert.c::hx509_cert_get_SPKI_AlgorithmIdentifier" ref="gc2fd6cd8b1fbe0d470a88143a359c395" args="(hx509_context context, hx509_cert p, AlgorithmIdentifier *alg)" -->
+</div>
+<a id="gac2fd6cd8b1fbe0d470a88143a359c395"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gac2fd6cd8b1fbe0d470a88143a359c395">&#9670;&nbsp;</a></span>hx509_cert_get_SPKI_AlgorithmIdentifier()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_get_SPKI_AlgorithmIdentifier </td>
+ <td class="memname">int hx509_cert_get_SPKI_AlgorithmIdentifier </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">AlgorithmIdentifier *&nbsp;</td>
- <td class="paramname"> <em>alg</em></td><td>&nbsp;</td>
+ <td class="paramtype">AlgorithmIdentifier *&#160;</td>
+ <td class="paramname"><em>alg</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the AlgorithmIdentifier from the hx509 certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>alg</em>&nbsp;</td><td>AlgorithmIdentifier, should be freed with free_AlgorithmIdentifier(). The algorithmidentifier is typicly rsaEncryption, or id-ecPublicKey, or some other public key mechanism.</td></tr>
+</div><div class="memdoc">
+<p>Get the AlgorithmIdentifier from the hx509 certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">p</td><td>a hx509 certificate object. </td></tr>
+ <tr><td class="paramname">alg</td><td>AlgorithmIdentifier, should be freed with free_AlgorithmIdentifier(). The algorithmidentifier is typicly rsaEncryption, or id-ecPublicKey, or some other public key mechanism.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g9f64bb8083bb535ccba007b723c73619"></a><!-- doxytag: member="cert.c::hx509_cert_get_subject" ref="g9f64bb8083bb535ccba007b723c73619" args="(hx509_cert p, hx509_name *name)" -->
+</div>
+<a id="ga9f64bb8083bb535ccba007b723c73619"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga9f64bb8083bb535ccba007b723c73619">&#9670;&nbsp;</a></span>hx509_cert_get_subject()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_get_subject </td>
+ <td class="memname">int hx509_cert_get_subject </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name *&nbsp;</td>
- <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_name *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Return the name of the subject of the hx509 certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>a pointer to a hx509 name, should be freed by <a class="el" href="group__hx509__name.html#gaf351931efb02fc7aea736af9977155e">hx509_name_free()</a>. See also <a class="el" href="group__hx509__cert.html#g5e8e38603eb13753912b0075aab276cf">hx509_cert_get_base_subject()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Return the name of the subject of the hx509 certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">p</td><td>a hx509 certificate object. </td></tr>
+ <tr><td class="paramname">name</td><td>a pointer to a hx509 name, should be freed by <a class="el" href="group__hx509__name.html#gaaf351931efb02fc7aea736af9977155e">hx509_name_free()</a>. See also <a class="el" href="group__hx509__cert.html#ga5e8e38603eb13753912b0075aab276cf">hx509_cert_get_base_subject()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gc7184f4f0249842866d51b17e4b101fb"></a><!-- doxytag: member="cert.c::hx509_cert_get_subject_unique_id" ref="gc7184f4f0249842866d51b17e4b101fb" args="(hx509_context context, hx509_cert p, heim_bit_string *subject)" -->
+</div>
+<a id="gac7184f4f0249842866d51b17e4b101fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gac7184f4f0249842866d51b17e4b101fb">&#9670;&nbsp;</a></span>hx509_cert_get_subject_unique_id()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_get_subject_unique_id </td>
+ <td class="memname">int hx509_cert_get_subject_unique_id </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>p</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_bit_string *&nbsp;</td>
- <td class="paramname"> <em>subject</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_bit_string *&#160;</td>
+ <td class="paramname"><em>subject</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get a copy of the Subect Unique ID<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509_context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>p</em>&nbsp;</td><td>a hx509 certificate </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>subject</em>&nbsp;</td><td>the subject id returned, free with der_free_bit_string()</td></tr>
+</div><div class="memdoc">
+<p>Get a copy of the Subect Unique ID</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509_context </td></tr>
+ <tr><td class="paramname">p</td><td>a hx509 certificate </td></tr>
+ <tr><td class="paramname">subject</td><td>the subject id returned, free with der_free_bit_string()</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. The error code HX509_EXTENSION_NOT_FOUND is returned if the certificate doesn't have a subjectUniqueID </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. The error code HX509_EXTENSION_NOT_FOUND is returned if the certificate doesn't have a subjectUniqueID </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g1aa420f664ce5933f8af4cf6c37fd6f6"></a><!-- doxytag: member="cert.c::hx509_cert_init" ref="g1aa420f664ce5933f8af4cf6c37fd6f6" args="(hx509_context context, const Certificate *c, hx509_cert *cert)" -->
+</div>
+<a id="ga31c3f5e9a6d7892729c56f0f86a76f4a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga31c3f5e9a6d7892729c56f0f86a76f4a">&#9670;&nbsp;</a></span>hx509_cert_init()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_init </td>
+ <td class="memname">hx509_cert hx509_cert_init </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const Certificate *&nbsp;</td>
- <td class="paramname"> <em>c</em>, </td>
+ <td class="paramtype">const Certificate *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert *&nbsp;</td>
- <td class="paramname"> <em>cert</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_error_t *&#160;</td>
+ <td class="paramname"><em>error</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allocate and init an hx509 certificate object from the decoded certificate `c´.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td></td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td></td></tr>
+</div><div class="memdoc">
+<p>Allocate and init an hx509 certificate object from the decoded certificate `c´.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">c</td><td></td></tr>
+ <tr><td class="paramname">error</td><td></td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 certificate </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g479d8c1bf22aa8fdfa448bed1ec54d7b"></a><!-- doxytag: member="cert.c::hx509_cert_init_data" ref="g479d8c1bf22aa8fdfa448bed1ec54d7b" args="(hx509_context context, const void *ptr, size_t len, hx509_cert *cert)" -->
+</div>
+<a id="ga134b62e36ffcf09bbf866a88bc4c5010"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga134b62e36ffcf09bbf866a88bc4c5010">&#9670;&nbsp;</a></span>hx509_cert_init_data()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_init_data </td>
+ <td class="memname">hx509_cert hx509_cert_init_data </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const void *&nbsp;</td>
- <td class="paramname"> <em>ptr</em>, </td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>ptr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>len</em>, </td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert *&nbsp;</td>
- <td class="paramname"> <em>cert</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_error_t *&#160;</td>
+ <td class="paramname"><em>error</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Just like <a class="el" href="group__hx509__cert.html#g1aa420f664ce5933f8af4cf6c37fd6f6">hx509_cert_init()</a>, but instead of a decode certificate takes an pointer and length to a memory region that contains a DER/BER encoded certificate.<p>
-If the memory region doesn't contain just the certificate and nothing more the function will fail with HX509_EXTRA_DATA_AFTER_STRUCTURE.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ptr</em>&nbsp;</td><td>pointer to memory region containing encoded certificate. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>len</em>&nbsp;</td><td>length of memory region. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>a return pointer to a hx509 certificate object, will contain NULL on error.</td></tr>
+</div><div class="memdoc">
+<p>Just like <a class="el" href="group__hx509__cert.html#ga31c3f5e9a6d7892729c56f0f86a76f4a">hx509_cert_init()</a>, but instead of a decode certificate takes an pointer and length to a memory region that contains a DER/BER encoded certificate.</p>
+<p>If the memory region doesn't contain just the certificate and nothing more the function will fail with HX509_EXTRA_DATA_AFTER_STRUCTURE.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">ptr</td><td>pointer to memory region containing encoded certificate. </td></tr>
+ <tr><td class="paramname">len</td><td>length of memory region. </td></tr>
+ <tr><td class="paramname">error</td><td>possibly returns an error</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 certificate </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g1870b485d4e8e53f75690f35f4526fcc"></a><!-- doxytag: member="cert.c::hx509_cert_ref" ref="g1870b485d4e8e53f75690f35f4526fcc" args="(hx509_cert cert)" -->
+</div>
+<a id="ga1870b485d4e8e53f75690f35f4526fcc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1870b485d4e8e53f75690f35f4526fcc">&#9670;&nbsp;</a></span>hx509_cert_ref()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">hx509_cert hx509_cert_ref </td>
+ <td class="memname">hx509_cert hx509_cert_ref </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a reference to a hx509 certificate object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>a pointer to an hx509 certificate object.</td></tr>
+</div><div class="memdoc">
+<p>Add a reference to a hx509 certificate object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">cert</td><td>a pointer to an hx509 certificate object.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>the same object as is passed in. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>the same object as is passed in. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g972768dbcc822fed1b74e7686b407f78"></a><!-- doxytag: member="cert.c::hx509_cert_set_friendly_name" ref="g972768dbcc822fed1b74e7686b407f78" args="(hx509_cert cert, const char *name)" -->
+</div>
+<a id="ga972768dbcc822fed1b74e7686b407f78"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga972768dbcc822fed1b74e7686b407f78">&#9670;&nbsp;</a></span>hx509_cert_set_friendly_name()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_set_friendly_name </td>
+ <td class="memname">int hx509_cert_set_friendly_name </td>
<td>(</td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the friendly name on the certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>The certificate to set the friendly name on </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>Friendly name.</td></tr>
+</div><div class="memdoc">
+<p>Set the friendly name on the certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">cert</td><td>The certificate to set the friendly name on </td></tr>
+ <tr><td class="paramname">name</td><td>Friendly name.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g32a804b17d97d71af17602fdf6b1c891"></a><!-- doxytag: member="cert.c::hx509_print_cert" ref="g32a804b17d97d71af17602fdf6b1c891" args="(hx509_context context, hx509_cert cert, FILE *out)" -->
+</div>
+<a id="ga32a804b17d97d71af17602fdf6b1c891"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga32a804b17d97d71af17602fdf6b1c891">&#9670;&nbsp;</a></span>hx509_print_cert()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_print_cert </td>
+ <td class="memname">int hx509_print_cert </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">FILE *&nbsp;</td>
- <td class="paramname"> <em>out</em></td><td>&nbsp;</td>
+ <td class="paramtype">FILE *&#160;</td>
+ <td class="paramname"><em>out</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Print a simple representation of a certificate<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context, can be NULL </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>certificate to print </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>out</em>&nbsp;</td><td>the stdio output stream, if NULL, stdout is used</td></tr>
+</div><div class="memdoc">
+<p>Print a simple representation of a certificate</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context, can be NULL </td></tr>
+ <tr><td class="paramname">cert</td><td>certificate to print </td></tr>
+ <tr><td class="paramname">out</td><td>the stdio output stream, if NULL, stdout is used</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g5833168d3181e12883b51284fd069543"></a><!-- doxytag: member="cert.c::hx509_query_alloc" ref="g5833168d3181e12883b51284fd069543" args="(hx509_context context, hx509_query **q)" -->
+</div>
+<a id="ga5833168d3181e12883b51284fd069543"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5833168d3181e12883b51284fd069543">&#9670;&nbsp;</a></span>hx509_query_alloc()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_query_alloc </td>
+ <td class="memname">int hx509_query_alloc </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_query **&nbsp;</td>
- <td class="paramname"> <em>q</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_query **&#160;</td>
+ <td class="paramname"><em>q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allocate an query controller. Free using <a class="el" href="group__hx509__cert.html#g6aafd01e9215fef980a572b2c7289d8c">hx509_query_free()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>return pointer to a hx509_query.</td></tr>
+</div><div class="memdoc">
+<p>Allocate an query controller. Free using <a class="el" href="group__hx509__cert.html#ga6aafd01e9215fef980a572b2c7289d8c">hx509_query_free()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">q</td><td>return pointer to a hx509_query.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g6aafd01e9215fef980a572b2c7289d8c"></a><!-- doxytag: member="cert.c::hx509_query_free" ref="g6aafd01e9215fef980a572b2c7289d8c" args="(hx509_context context, hx509_query *q)" -->
+</div>
+<a id="ga6aafd01e9215fef980a572b2c7289d8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga6aafd01e9215fef980a572b2c7289d8c">&#9670;&nbsp;</a></span>hx509_query_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_query_free </td>
+ <td class="memname">void hx509_query_free </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_query *&nbsp;</td>
- <td class="paramname"> <em>q</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_query *&#160;</td>
+ <td class="paramname"><em>q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free the query controller.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>a pointer to the query controller. </td></tr>
+</div><div class="memdoc">
+<p>Free the query controller.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">q</td><td>a pointer to the query controller. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="ge1660c0cf5a41f17db72a8c18e79c684"></a><!-- doxytag: member="cert.c::hx509_query_match_cmp_func" ref="ge1660c0cf5a41f17db72a8c18e79c684" args="(hx509_query *q, int(*func)(hx509_context, hx509_cert, void *), void *ctx)" -->
+</div>
+<a id="gae1660c0cf5a41f17db72a8c18e79c684"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae1660c0cf5a41f17db72a8c18e79c684">&#9670;&nbsp;</a></span>hx509_query_match_cmp_func()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_query_match_cmp_func </td>
+ <td class="memname">int hx509_query_match_cmp_func </td>
<td>(</td>
- <td class="paramtype">hx509_query *&nbsp;</td>
- <td class="paramname"> <em>q</em>, </td>
+ <td class="paramtype">hx509_query *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int(*)(hx509_context, hx509_cert, void *)&nbsp;</td>
- <td class="paramname"> <em>func</em>, </td>
+ <td class="paramtype">int(*)(hx509_context, hx509_cert, void *)&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the query controller to match using a specific match function.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>a hx509 query controller. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>func</em>&nbsp;</td><td>function to use for matching, if the argument is NULL, the match function is removed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>context passed to the function.</td></tr>
+</div><div class="memdoc">
+<p>Set the query controller to match using a specific match function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">q</td><td>a hx509 query controller. </td></tr>
+ <tr><td class="paramname">func</td><td>function to use for matching, if the argument is NULL, the match function is removed. </td></tr>
+ <tr><td class="paramname">ctx</td><td>context passed to the function.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g5a7e01c75b7b8243356048a88133c2df"></a><!-- doxytag: member="cert.c::hx509_query_match_eku" ref="g5a7e01c75b7b8243356048a88133c2df" args="(hx509_query *q, const heim_oid *eku)" -->
+</div>
+<a id="ga5a7e01c75b7b8243356048a88133c2df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5a7e01c75b7b8243356048a88133c2df">&#9670;&nbsp;</a></span>hx509_query_match_eku()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_query_match_eku </td>
+ <td class="memname">int hx509_query_match_eku </td>
<td>(</td>
- <td class="paramtype">hx509_query *&nbsp;</td>
- <td class="paramname"> <em>q</em>, </td>
+ <td class="paramtype">hx509_query *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>eku</em></td><td>&nbsp;</td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>eku</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the query controller to require an one specific EKU (extended key usage). Any previous EKU matching is overwitten. If NULL is passed in as the eku, the EKU requirement is reset.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>a hx509 query controller. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>eku</em>&nbsp;</td><td>an EKU to match on.</td></tr>
+</div><div class="memdoc">
+<p>Set the query controller to require an one specific EKU (extended key usage). Any previous EKU matching is overwitten. If NULL is passed in as the eku, the EKU requirement is reset.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">q</td><td>a hx509 query controller. </td></tr>
+ <tr><td class="paramname">eku</td><td>an EKU to match on.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g5be7b5ece155f2577335b5575f141362"></a><!-- doxytag: member="cert.c::hx509_query_match_friendly_name" ref="g5be7b5ece155f2577335b5575f141362" args="(hx509_query *q, const char *name)" -->
+</div>
+<a id="ga5be7b5ece155f2577335b5575f141362"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5be7b5ece155f2577335b5575f141362">&#9670;&nbsp;</a></span>hx509_query_match_friendly_name()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_query_match_friendly_name </td>
+ <td class="memname">int hx509_query_match_friendly_name </td>
<td>(</td>
- <td class="paramtype">hx509_query *&nbsp;</td>
- <td class="paramname"> <em>q</em>, </td>
+ <td class="paramtype">hx509_query *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the query controller to match on a friendly name<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>a hx509 query controller. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>a friendly name to match on</td></tr>
+</div><div class="memdoc">
+<p>Set the query controller to match on a friendly name</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">q</td><td>a hx509 query controller. </td></tr>
+ <tr><td class="paramname">name</td><td>a friendly name to match on</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gd5d7a68cc8ca4c948ae99b7eb6f5bc2e"></a><!-- doxytag: member="cert.c::hx509_query_match_issuer_serial" ref="gd5d7a68cc8ca4c948ae99b7eb6f5bc2e" args="(hx509_query *q, const Name *issuer, const heim_integer *serialNumber)" -->
+</div>
+<a id="gad5d7a68cc8ca4c948ae99b7eb6f5bc2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gad5d7a68cc8ca4c948ae99b7eb6f5bc2e">&#9670;&nbsp;</a></span>hx509_query_match_issuer_serial()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_query_match_issuer_serial </td>
+ <td class="memname">int hx509_query_match_issuer_serial </td>
<td>(</td>
- <td class="paramtype">hx509_query *&nbsp;</td>
- <td class="paramname"> <em>q</em>, </td>
+ <td class="paramtype">hx509_query *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const Name *&nbsp;</td>
- <td class="paramname"> <em>issuer</em>, </td>
+ <td class="paramtype">const Name *&#160;</td>
+ <td class="paramname"><em>issuer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_integer *&nbsp;</td>
- <td class="paramname"> <em>serialNumber</em></td><td>&nbsp;</td>
+ <td class="paramtype">const heim_integer *&#160;</td>
+ <td class="paramname"><em>serialNumber</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the issuer and serial number of match in the query controller. The function make copies of the isser and serial number.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>a hx509 query controller </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>issuer</em>&nbsp;</td><td>issuer to search for </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>serialNumber</em>&nbsp;</td><td>the serialNumber of the issuer.</td></tr>
+</div><div class="memdoc">
+<p>Set the issuer and serial number of match in the query controller. The function make copies of the isser and serial number.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">q</td><td>a hx509 query controller </td></tr>
+ <tr><td class="paramname">issuer</td><td>issuer to search for </td></tr>
+ <tr><td class="paramname">serialNumber</td><td>the serialNumber of the issuer.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gc708daef26edff5fd36f4587e61a9914"></a><!-- doxytag: member="cert.c::hx509_query_match_option" ref="gc708daef26edff5fd36f4587e61a9914" args="(hx509_query *q, hx509_query_option option)" -->
+</div>
+<a id="gac708daef26edff5fd36f4587e61a9914"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gac708daef26edff5fd36f4587e61a9914">&#9670;&nbsp;</a></span>hx509_query_match_option()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_query_match_option </td>
+ <td class="memname">void hx509_query_match_option </td>
<td>(</td>
- <td class="paramtype">hx509_query *&nbsp;</td>
- <td class="paramname"> <em>q</em>, </td>
+ <td class="paramtype">hx509_query *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_query_option&nbsp;</td>
- <td class="paramname"> <em>option</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_query_option&#160;</td>
+ <td class="paramname"><em>option</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set match options for the hx509 query controller.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>query controller. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>option</em>&nbsp;</td><td>options to control the query controller.</td></tr>
+</div><div class="memdoc">
+<p>Set match options for the hx509 query controller.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">q</td><td>query controller. </td></tr>
+ <tr><td class="paramname">option</td><td>options to control the query controller.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g94b4aa7d907d34914e161831e74440a8"></a><!-- doxytag: member="cert.c::hx509_query_statistic_file" ref="g94b4aa7d907d34914e161831e74440a8" args="(hx509_context context, const char *fn)" -->
+</div>
+<a id="ga94b4aa7d907d34914e161831e74440a8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga94b4aa7d907d34914e161831e74440a8">&#9670;&nbsp;</a></span>hx509_query_statistic_file()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_query_statistic_file </td>
+ <td class="memname">void hx509_query_statistic_file </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>fn</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>fn</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set a statistic file for the query statistics.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>fn</em>&nbsp;</td><td>statistics file name </td></tr>
+</div><div class="memdoc">
+<p>Set a statistic file for the query statistics.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">fn</td><td>statistics file name </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g522fb2a85515ce8debea860cdfeb94c0"></a><!-- doxytag: member="cert.c::hx509_query_unparse_stats" ref="g522fb2a85515ce8debea860cdfeb94c0" args="(hx509_context context, int printtype, FILE *out)" -->
+</div>
+<a id="ga522fb2a85515ce8debea860cdfeb94c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga522fb2a85515ce8debea860cdfeb94c0">&#9670;&nbsp;</a></span>hx509_query_unparse_stats()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_query_unparse_stats </td>
+ <td class="memname">void hx509_query_unparse_stats </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>printtype</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>printtype</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">FILE *&nbsp;</td>
- <td class="paramname"> <em>out</em></td><td>&nbsp;</td>
+ <td class="paramtype">FILE *&#160;</td>
+ <td class="paramname"><em>out</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Unparse the statistics file and print the result on a FILE descriptor.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>printtype</em>&nbsp;</td><td>tyep to print </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>out</em>&nbsp;</td><td>the FILE to write the data on. </td></tr>
+</div><div class="memdoc">
+<p>Unparse the statistics file and print the result on a FILE descriptor.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">printtype</td><td>tyep to print </td></tr>
+ <tr><td class="paramname">out</td><td>the FILE to write the data on. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="gfb8063ac0396ad60392b8b9554c6b896"></a><!-- doxytag: member="cert.c::hx509_verify_ctx_f_allow_default_trustanchors" ref="gfb8063ac0396ad60392b8b9554c6b896" args="(hx509_verify_ctx ctx, int boolean)" -->
+</div>
+<a id="gafb8063ac0396ad60392b8b9554c6b896"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gafb8063ac0396ad60392b8b9554c6b896">&#9670;&nbsp;</a></span>hx509_verify_ctx_f_allow_default_trustanchors()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_verify_ctx_f_allow_default_trustanchors </td>
+ <td class="memname">void hx509_verify_ctx_f_allow_default_trustanchors </td>
<td>(</td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>boolean</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>boolean</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allow using the operating system builtin trust anchors if no other trust anchors are configured.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a verification context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>boolean</em>&nbsp;</td><td>if non zero, useing the operating systems builtin trust anchors.</td></tr>
+</div><div class="memdoc">
+<p>Allow using the operating system builtin trust anchors if no other trust anchors are configured.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>a verification context </td></tr>
+ <tr><td class="paramname">boolean</td><td>if non zero, useing the operating systems builtin trust anchors.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g5dc160f02aeffffb0eea58b6203c856a"></a><!-- doxytag: member="cert.c::hx509_verify_hostname" ref="g5dc160f02aeffffb0eea58b6203c856a" args="(hx509_context context, const hx509_cert cert, int flags, hx509_hostname_type type, const char *hostname, const struct sockaddr *sa, int sa_size)" -->
+</div>
+<a id="ga5dc160f02aeffffb0eea58b6203c856a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5dc160f02aeffffb0eea58b6203c856a">&#9670;&nbsp;</a></span>hx509_verify_hostname()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_verify_hostname </td>
+ <td class="memname">int hx509_verify_hostname </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">const hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_hostname_type&nbsp;</td>
- <td class="paramname"> <em>type</em>, </td>
+ <td class="paramtype">hx509_hostname_type&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>hostname</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>hostname</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const struct sockaddr *&nbsp;</td>
- <td class="paramname"> <em>sa</em>, </td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>sa</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>sa_size</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>sa_size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Verify that the certificate is allowed to be used for the hostname and address.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>the certificate to match with </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>Flags to modify the behavior:<ul>
-<li>HX509_VHN_F_ALLOW_NO_MATCH no match is ok </li></ul>
+</div><div class="memdoc">
+<p>Verify that the certificate is allowed to be used for the hostname and address.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">cert</td><td>the certificate to match with </td></tr>
+ <tr><td class="paramname">flags</td><td>Flags to modify the behavior:<ul>
+<li>HX509_VHN_F_ALLOW_NO_MATCH no match is ok </li>
+</ul>
</td></tr>
- <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>type of hostname:<ul>
-<li>HX509_HN_HOSTNAME for plain hostname.</li><li>HX509_HN_DNSSRV for DNS SRV names. </li></ul>
+ <tr><td class="paramname">type</td><td>type of hostname:<ul>
+<li>HX509_HN_HOSTNAME for plain hostname.</li>
+<li>HX509_HN_DNSSRV for DNS SRV names. </li>
+</ul>
</td></tr>
- <tr><td valign="top"></td><td valign="top"><em>hostname</em>&nbsp;</td><td>the hostname to check </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>sa</em>&nbsp;</td><td>address of the host </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>sa_size</em>&nbsp;</td><td>length of address</td></tr>
+ <tr><td class="paramname">hostname</td><td>the hostname to check </td></tr>
+ <tr><td class="paramname">sa</td><td>address of the host </td></tr>
+ <tr><td class="paramname">sa_size</td><td>length of address</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__cms.html b/doc/doxyout/hx509/html/group__hx509__cms.html
index 043e134fac01..fc8d99c94d18 100644
--- a/doc/doxyout/hx509/html/group__hx509__cms.html
+++ b/doc/doxyout/hx509/html/group__hx509__cms.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 CMS/pkcs7 functions</title>
+<title>hx509 CMS/pkcs7 functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,497 +8,513 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 CMS/pkcs7 functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 CMS/pkcs7 functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#g59a1f6dc31e384a0d378c8179f2be9c3">hx509_cms_wrap_ContentInfo</a> (const heim_oid *oid, const heim_octet_string *buf, heim_octet_string *res)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#gacbd636f3053c560782d83251f42b71a">hx509_cms_unwrap_ContentInfo</a> (const heim_octet_string *in, heim_oid *oid, heim_octet_string *out, int *have_data)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#gb13d28bf986e3b66c05e7e33799be07b">hx509_cms_unenvelope</a> (hx509_context context, hx509_certs certs, int flags, const void *data, size_t length, const heim_octet_string *encryptedContent, time_t time_now, heim_oid *contentType, heim_octet_string *content)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#g618f32b35fa6f679cc5f32fb8abdbe85">hx509_cms_envelope_1</a> (hx509_context context, int flags, hx509_cert cert, const void *data, size_t length, const heim_oid *encryption_type, const heim_oid *contentType, heim_octet_string *content)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#gedaf18507474021a8d092ca6ac90a1ad">hx509_cms_verify_signed</a> (hx509_context context, hx509_verify_ctx ctx, unsigned int flags, const void *data, size_t length, const heim_octet_string *signedContent, hx509_certs pool, heim_oid *contentType, heim_octet_string *content, hx509_certs *signer_certs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#g8dfb6d8d72f6a71caffaf11b9d847921">hx509_cms_create_signed_1</a> (hx509_context context, int flags, const heim_oid *eContentType, const void *data, size_t length, const AlgorithmIdentifier *digest_alg, hx509_cert cert, hx509_peer_info peer, hx509_certs anchors, hx509_certs pool, heim_octet_string *signed_data)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga59a1f6dc31e384a0d378c8179f2be9c3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#ga59a1f6dc31e384a0d378c8179f2be9c3">hx509_cms_wrap_ContentInfo</a> (const heim_oid *oid, const heim_octet_string *buf, heim_octet_string *res)</td></tr>
+<tr class="separator:ga59a1f6dc31e384a0d378c8179f2be9c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaacbd636f3053c560782d83251f42b71a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#gaacbd636f3053c560782d83251f42b71a">hx509_cms_unwrap_ContentInfo</a> (const heim_octet_string *in, heim_oid *oid, heim_octet_string *out, int *have_data)</td></tr>
+<tr class="separator:gaacbd636f3053c560782d83251f42b71a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab13d28bf986e3b66c05e7e33799be07b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#gab13d28bf986e3b66c05e7e33799be07b">hx509_cms_unenvelope</a> (hx509_context context, hx509_certs certs, int flags, const void *data, size_t length, const heim_octet_string *encryptedContent, time_t time_now, heim_oid *contentType, heim_octet_string *content)</td></tr>
+<tr class="separator:gab13d28bf986e3b66c05e7e33799be07b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga618f32b35fa6f679cc5f32fb8abdbe85"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#ga618f32b35fa6f679cc5f32fb8abdbe85">hx509_cms_envelope_1</a> (hx509_context context, int flags, hx509_cert cert, const void *data, size_t length, const heim_oid *encryption_type, const heim_oid *contentType, heim_octet_string *content)</td></tr>
+<tr class="separator:ga618f32b35fa6f679cc5f32fb8abdbe85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaedaf18507474021a8d092ca6ac90a1ad"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#gaedaf18507474021a8d092ca6ac90a1ad">hx509_cms_verify_signed</a> (hx509_context context, hx509_verify_ctx ctx, unsigned int flags, const void *data, size_t length, const heim_octet_string *signedContent, hx509_certs pool, heim_oid *contentType, heim_octet_string *content, hx509_certs *signer_certs)</td></tr>
+<tr class="separator:gaedaf18507474021a8d092ca6ac90a1ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8dfb6d8d72f6a71caffaf11b9d847921"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__cms.html#ga8dfb6d8d72f6a71caffaf11b9d847921">hx509_cms_create_signed_1</a> (hx509_context context, int flags, const heim_oid *eContentType, const void *data, size_t length, const AlgorithmIdentifier *digest_alg, hx509_cert cert, hx509_peer_info peer, hx509_certs anchors, hx509_certs pool, heim_octet_string *signed_data)</td></tr>
+<tr class="separator:ga8dfb6d8d72f6a71caffaf11b9d847921"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-See the <a class="el" href="page_cms.html">CMS/PKCS7 message functions.</a> for description and examples. <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g8dfb6d8d72f6a71caffaf11b9d847921"></a><!-- doxytag: member="cms.c::hx509_cms_create_signed_1" ref="g8dfb6d8d72f6a71caffaf11b9d847921" args="(hx509_context context, int flags, const heim_oid *eContentType, const void *data, size_t length, const AlgorithmIdentifier *digest_alg, hx509_cert cert, hx509_peer_info peer, hx509_certs anchors, hx509_certs pool, heim_octet_string *signed_data)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>See the <a class="el" href="page_cms.html">CMS/PKCS7 message functions.</a> for description and examples. </p>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga8dfb6d8d72f6a71caffaf11b9d847921"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga8dfb6d8d72f6a71caffaf11b9d847921">&#9670;&nbsp;</a></span>hx509_cms_create_signed_1()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cms_create_signed_1 </td>
+ <td class="memname">int hx509_cms_create_signed_1 </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>eContentType</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>eContentType</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const void *&nbsp;</td>
- <td class="paramname"> <em>data</em>, </td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>length</em>, </td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const AlgorithmIdentifier *&nbsp;</td>
- <td class="paramname"> <em>digest_alg</em>, </td>
+ <td class="paramtype">const AlgorithmIdentifier *&#160;</td>
+ <td class="paramname"><em>digest_alg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_peer_info&nbsp;</td>
- <td class="paramname"> <em>peer</em>, </td>
+ <td class="paramtype">hx509_peer_info&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>anchors</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>anchors</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>pool</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>pool</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>signed_data</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>signed_data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Decode SignedData and verify that the signature is correct.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td></td></tr>
- <tr><td valign="top"></td><td valign="top"><em>eContentType</em>&nbsp;</td><td>the type of the data. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>data to sign </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>length of the data that data point to. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>digest_alg</em>&nbsp;</td><td>digest algorithm to use, use NULL to get the default or the peer determined algorithm. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>certificate to use for sign the data. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>peer</em>&nbsp;</td><td>info about the peer the message to send the message to, like what digest algorithm to use. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>anchors</em>&nbsp;</td><td>trust anchors that the client will use, used to polulate the certificates included in the message </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>certificates to use in try to build the path to the trust anchors. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>signed_data</em>&nbsp;</td><td>the output of the function, free with der_free_octet_string(). </td></tr>
+</div><div class="memdoc">
+<p>Decode SignedData and verify that the signature is correct.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">flags</td><td></td></tr>
+ <tr><td class="paramname">eContentType</td><td>the type of the data. </td></tr>
+ <tr><td class="paramname">data</td><td>data to sign </td></tr>
+ <tr><td class="paramname">length</td><td>length of the data that data point to. </td></tr>
+ <tr><td class="paramname">digest_alg</td><td>digest algorithm to use, use NULL to get the default or the peer determined algorithm. </td></tr>
+ <tr><td class="paramname">cert</td><td>certificate to use for sign the data. </td></tr>
+ <tr><td class="paramname">peer</td><td>info about the peer the message to send the message to, like what digest algorithm to use. </td></tr>
+ <tr><td class="paramname">anchors</td><td>trust anchors that the client will use, used to polulate the certificates included in the message </td></tr>
+ <tr><td class="paramname">pool</td><td>certificates to use in try to build the path to the trust anchors. </td></tr>
+ <tr><td class="paramname">signed_data</td><td>the output of the function, free with der_free_octet_string().</td></tr>
</table>
+ </dd>
</dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g618f32b35fa6f679cc5f32fb8abdbe85"></a><!-- doxytag: member="cms.c::hx509_cms_envelope_1" ref="g618f32b35fa6f679cc5f32fb8abdbe85" args="(hx509_context context, int flags, hx509_cert cert, const void *data, size_t length, const heim_oid *encryption_type, const heim_oid *contentType, heim_octet_string *content)" -->
+</div>
+<a id="ga618f32b35fa6f679cc5f32fb8abdbe85"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga618f32b35fa6f679cc5f32fb8abdbe85">&#9670;&nbsp;</a></span>hx509_cms_envelope_1()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cms_envelope_1 </td>
+ <td class="memname">int hx509_cms_envelope_1 </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const void *&nbsp;</td>
- <td class="paramname"> <em>data</em>, </td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>length</em>, </td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>encryption_type</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>encryption_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>contentType</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>contentType</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>content</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>content</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Encrypt end encode EnvelopedData.<p>
-Encrypt and encode EnvelopedData. The data is encrypted with a random key and the the random key is encrypted with the certificates private key. This limits what private key type can be used to RSA.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>flags to control the behavior.<ul>
-<li>HX509_CMS_EV_NO_KU_CHECK - Dont check KU on certificate</li><li>HX509_CMS_EV_ALLOW_WEAK - Allow weak crytpo</li><li>HX509_CMS_EV_ID_NAME - prefer issuer name and serial number </li></ul>
+</div><div class="memdoc">
+<p>Encrypt end encode EnvelopedData.</p>
+<p>Encrypt and encode EnvelopedData. The data is encrypted with a random key and the the random key is encrypted with the certificates private key. This limits what private key type can be used to RSA.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">flags</td><td>flags to control the behavior.<ul>
+<li>HX509_CMS_EV_NO_KU_CHECK - Dont check KU on certificate</li>
+<li>HX509_CMS_EV_ALLOW_WEAK - Allow weak crytpo</li>
+<li>HX509_CMS_EV_ID_NAME - prefer issuer name and serial number </li>
+</ul>
</td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>Certificate to encrypt the EnvelopedData encryption key with. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer the data to encrypt. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>length of the data that data point to. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>encryption_type</em>&nbsp;</td><td>Encryption cipher to use for the bulk data, use NULL to get default. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>contentType</em>&nbsp;</td><td>type of the data that is encrypted </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>content</em>&nbsp;</td><td>the output of the function, free with der_free_octet_string(). </td></tr>
+ <tr><td class="paramname">cert</td><td>Certificate to encrypt the EnvelopedData encryption key with. </td></tr>
+ <tr><td class="paramname">data</td><td>pointer the data to encrypt. </td></tr>
+ <tr><td class="paramname">length</td><td>length of the data that data point to. </td></tr>
+ <tr><td class="paramname">encryption_type</td><td>Encryption cipher to use for the bulk data, use NULL to get default. </td></tr>
+ <tr><td class="paramname">contentType</td><td>type of the data that is encrypted </td></tr>
+ <tr><td class="paramname">content</td><td>the output of the function, free with der_free_octet_string().</td></tr>
</table>
+ </dd>
</dl>
+<dl class="section return"><dt>Returns</dt><dd>an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gb13d28bf986e3b66c05e7e33799be07b"></a><!-- doxytag: member="cms.c::hx509_cms_unenvelope" ref="gb13d28bf986e3b66c05e7e33799be07b" args="(hx509_context context, hx509_certs certs, int flags, const void *data, size_t length, const heim_octet_string *encryptedContent, time_t time_now, heim_oid *contentType, heim_octet_string *content)" -->
+</div>
+<a id="gab13d28bf986e3b66c05e7e33799be07b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gab13d28bf986e3b66c05e7e33799be07b">&#9670;&nbsp;</a></span>hx509_cms_unenvelope()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cms_unenvelope </td>
+ <td class="memname">int hx509_cms_unenvelope </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const void *&nbsp;</td>
- <td class="paramname"> <em>data</em>, </td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>length</em>, </td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>encryptedContent</em>, </td>
+ <td class="paramtype">const heim_octet_string *&#160;</td>
+ <td class="paramname"><em>encryptedContent</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">time_t&nbsp;</td>
- <td class="paramname"> <em>time_now</em>, </td>
+ <td class="paramtype">time_t&#160;</td>
+ <td class="paramname"><em>time_now</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_oid *&nbsp;</td>
- <td class="paramname"> <em>contentType</em>, </td>
+ <td class="paramtype">heim_oid *&#160;</td>
+ <td class="paramname"><em>contentType</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>content</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>content</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Decode and unencrypt EnvelopedData.<p>
-Extract data and parameteres from from the EnvelopedData. Also supports using detached EnvelopedData.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>Certificate that can decrypt the EnvelopedData encryption key. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>HX509_CMS_UE flags to control the behavior. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer the structure the contains the DER/BER encoded EnvelopedData stucture. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>length of the data that data point to. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>encryptedContent</em>&nbsp;</td><td>in case of detached signature, this contains the actual encrypted data, othersize its should be NULL. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>time_now</em>&nbsp;</td><td>set the current time, if zero the library uses now as the date. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>contentType</em>&nbsp;</td><td>output type oid, should be freed with der_free_oid(). </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>content</em>&nbsp;</td><td>the data, free with der_free_octet_string(). </td></tr>
+</div><div class="memdoc">
+<p>Decode and unencrypt EnvelopedData.</p>
+<p>Extract data and parameteres from from the EnvelopedData. Also supports using detached EnvelopedData.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>Certificate that can decrypt the EnvelopedData encryption key. </td></tr>
+ <tr><td class="paramname">flags</td><td>HX509_CMS_UE flags to control the behavior. </td></tr>
+ <tr><td class="paramname">data</td><td>pointer the structure the contains the DER/BER encoded EnvelopedData stucture. </td></tr>
+ <tr><td class="paramname">length</td><td>length of the data that data point to. </td></tr>
+ <tr><td class="paramname">encryptedContent</td><td>in case of detached signature, this contains the actual encrypted data, othersize its should be NULL. </td></tr>
+ <tr><td class="paramname">time_now</td><td>set the current time, if zero the library uses now as the date. </td></tr>
+ <tr><td class="paramname">contentType</td><td>output type oid, should be freed with der_free_oid(). </td></tr>
+ <tr><td class="paramname">content</td><td>the data, free with der_free_octet_string().</td></tr>
</table>
+ </dd>
</dl>
+<dl class="section return"><dt>Returns</dt><dd>an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gacbd636f3053c560782d83251f42b71a"></a><!-- doxytag: member="cms.c::hx509_cms_unwrap_ContentInfo" ref="gacbd636f3053c560782d83251f42b71a" args="(const heim_octet_string *in, heim_oid *oid, heim_octet_string *out, int *have_data)" -->
+</div>
+<a id="gaacbd636f3053c560782d83251f42b71a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaacbd636f3053c560782d83251f42b71a">&#9670;&nbsp;</a></span>hx509_cms_unwrap_ContentInfo()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cms_unwrap_ContentInfo </td>
+ <td class="memname">int hx509_cms_unwrap_ContentInfo </td>
<td>(</td>
- <td class="paramtype">const heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>in</em>, </td>
+ <td class="paramtype">const heim_octet_string *&#160;</td>
+ <td class="paramname"><em>in</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_oid *&nbsp;</td>
- <td class="paramname"> <em>oid</em>, </td>
+ <td class="paramtype">heim_oid *&#160;</td>
+ <td class="paramname"><em>oid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>out</em>, </td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>out</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int *&nbsp;</td>
- <td class="paramname"> <em>have_data</em></td><td>&nbsp;</td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>have_data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Decode an ContentInfo and unwrap data and oid it.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>in</em>&nbsp;</td><td>the encoded buffer. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>oid</em>&nbsp;</td><td>type of the content. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>out</em>&nbsp;</td><td>data to be wrapped. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>have_data</em>&nbsp;</td><td>since the data is optional, this flags show dthe diffrence between no data and the zero length data.</td></tr>
+</div><div class="memdoc">
+<p>Decode an ContentInfo and unwrap data and oid it.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">in</td><td>the encoded buffer. </td></tr>
+ <tr><td class="paramname">oid</td><td>type of the content. </td></tr>
+ <tr><td class="paramname">out</td><td>data to be wrapped. </td></tr>
+ <tr><td class="paramname">have_data</td><td>since the data is optional, this flags show dthe diffrence between no data and the zero length data.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gedaf18507474021a8d092ca6ac90a1ad"></a><!-- doxytag: member="cms.c::hx509_cms_verify_signed" ref="gedaf18507474021a8d092ca6ac90a1ad" args="(hx509_context context, hx509_verify_ctx ctx, unsigned int flags, const void *data, size_t length, const heim_octet_string *signedContent, hx509_certs pool, heim_oid *contentType, heim_octet_string *content, hx509_certs *signer_certs)" -->
+</div>
+<a id="gaedaf18507474021a8d092ca6ac90a1ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaedaf18507474021a8d092ca6ac90a1ad">&#9670;&nbsp;</a></span>hx509_cms_verify_signed()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cms_verify_signed </td>
+ <td class="memname">int hx509_cms_verify_signed </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">unsigned int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const void *&nbsp;</td>
- <td class="paramname"> <em>data</em>, </td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>length</em>, </td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>signedContent</em>, </td>
+ <td class="paramtype">const heim_octet_string *&#160;</td>
+ <td class="paramname"><em>signedContent</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>pool</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>pool</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_oid *&nbsp;</td>
- <td class="paramname"> <em>contentType</em>, </td>
+ <td class="paramtype">heim_oid *&#160;</td>
+ <td class="paramname"><em>contentType</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>content</em>, </td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>content</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs *&nbsp;</td>
- <td class="paramname"> <em>signer_certs</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_certs *&#160;</td>
+ <td class="paramname"><em>signer_certs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Decode SignedData and verify that the signature is correct.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a hx509 verify context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>to control the behaivor of the function.<ul>
-<li>HX509_CMS_VS_NO_KU_CHECK - Don't check KeyUsage</li><li>HX509_CMS_VS_ALLOW_DATA_OID_MISMATCH - allow oid mismatch</li><li>HX509_CMS_VS_ALLOW_ZERO_SIGNER - no signer, see below. </li></ul>
+</div><div class="memdoc">
+<p>Decode SignedData and verify that the signature is correct.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">ctx</td><td>a hx509 verify context. </td></tr>
+ <tr><td class="paramname">flags</td><td>to control the behaivor of the function.<ul>
+<li>HX509_CMS_VS_NO_KU_CHECK - Don't check KeyUsage</li>
+<li>HX509_CMS_VS_ALLOW_DATA_OID_MISMATCH - allow oid mismatch</li>
+<li>HX509_CMS_VS_ALLOW_ZERO_SIGNER - no signer, see below. </li>
+</ul>
</td></tr>
- <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer to CMS SignedData encoded data. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>length of the data that data point to. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>signedContent</em>&nbsp;</td><td>external data used for signature. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>certificate pool to build certificates paths. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>contentType</em>&nbsp;</td><td>free with der_free_oid(). </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>content</em>&nbsp;</td><td>the output of the function, free with der_free_octet_string(). </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>signer_certs</em>&nbsp;</td><td>list of the cerficates used to sign this request, free with <a class="el" href="group__hx509__keyset.html#ga3df96cfe4137beaea7e7b87b95dbe3f">hx509_certs_free()</a>. </td></tr>
+ <tr><td class="paramname">data</td><td>pointer to CMS SignedData encoded data. </td></tr>
+ <tr><td class="paramname">length</td><td>length of the data that data point to. </td></tr>
+ <tr><td class="paramname">signedContent</td><td>external data used for signature. </td></tr>
+ <tr><td class="paramname">pool</td><td>certificate pool to build certificates paths. </td></tr>
+ <tr><td class="paramname">contentType</td><td>free with der_free_oid(). </td></tr>
+ <tr><td class="paramname">content</td><td>the output of the function, free with der_free_octet_string(). </td></tr>
+ <tr><td class="paramname">signer_certs</td><td>list of the cerficates used to sign this request, free with <a class="el" href="group__hx509__keyset.html#gaa3df96cfe4137beaea7e7b87b95dbe3f">hx509_certs_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
+<dl class="section return"><dt>Returns</dt><dd>an hx509 error code. </dd></dl>
+<p>If HX509_CMS_VS_NO_KU_CHECK is set, allow more liberal search for matching certificates by not considering KeyUsage bits on the certificates.</p>
+<p>If HX509_CMS_VS_ALLOW_DATA_OID_MISMATCH, allow encapContentInfo mismatch with the oid in signedAttributes (or if no signedAttributes where use, pkcs7-data oid). This is only needed to work with broken CMS implementations that doesn't follow CMS signedAttributes rules.</p>
+<p>If HX509_CMS_VS_NO_VALIDATE flags is set, do not verify the signing certificates and leave that up to the caller.</p>
+<p>If HX509_CMS_VS_ALLOW_ZERO_SIGNER is set, allow empty SignerInfo (no signatures). If SignedData have no signatures, the function will return 0 with signer_certs set to NULL. Zero signers is allowed by the standard, but since its only useful in corner cases, it make into a flag that the caller have to turn on.</p>
-<p>
-If HX509_CMS_VS_NO_KU_CHECK is set, allow more liberal search for matching certificates by not considering KeyUsage bits on the certificates.<p>
-If HX509_CMS_VS_ALLOW_DATA_OID_MISMATCH, allow encapContentInfo mismatch with the oid in signedAttributes (or if no signedAttributes where use, pkcs7-data oid). This is only needed to work with broken CMS implementations that doesn't follow CMS signedAttributes rules.<p>
-If HX509_CMS_VS_NO_VALIDATE flags is set, do not verify the signing certificates and leave that up to the caller.<p>
-If HX509_CMS_VS_ALLOW_ZERO_SIGNER is set, allow empty SignerInfo (no signatures). If SignedData have no signatures, the function will return 0 with signer_certs set to NULL. Zero signers is allowed by the standard, but since its only useful in corner cases, it make into a flag that the caller have to turn on.
</div>
-</div><p>
-<a class="anchor" name="g59a1f6dc31e384a0d378c8179f2be9c3"></a><!-- doxytag: member="cms.c::hx509_cms_wrap_ContentInfo" ref="g59a1f6dc31e384a0d378c8179f2be9c3" args="(const heim_oid *oid, const heim_octet_string *buf, heim_octet_string *res)" -->
+</div>
+<a id="ga59a1f6dc31e384a0d378c8179f2be9c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga59a1f6dc31e384a0d378c8179f2be9c3">&#9670;&nbsp;</a></span>hx509_cms_wrap_ContentInfo()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cms_wrap_ContentInfo </td>
+ <td class="memname">int hx509_cms_wrap_ContentInfo </td>
<td>(</td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>oid</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>oid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>buf</em>, </td>
+ <td class="paramtype">const heim_octet_string *&#160;</td>
+ <td class="paramname"><em>buf</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>res</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>res</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Wrap data and oid in a ContentInfo and encode it.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>oid</em>&nbsp;</td><td>type of the content. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>buf</em>&nbsp;</td><td>data to be wrapped. If a NULL pointer is passed in, the optional content field in the ContentInfo is not going be filled in. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>the encoded buffer, the result should be freed with der_free_octet_string().</td></tr>
+</div><div class="memdoc">
+<p>Wrap data and oid in a ContentInfo and encode it.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">oid</td><td>type of the content. </td></tr>
+ <tr><td class="paramname">buf</td><td>data to be wrapped. If a NULL pointer is passed in, the optional content field in the ContentInfo is not going be filled in. </td></tr>
+ <tr><td class="paramname">res</td><td>the encoded buffer, the result should be freed with der_free_octet_string().</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__crypto.html b/doc/doxyout/hx509/html/group__hx509__crypto.html
index 3e57a8bd9de1..8f91866762ce 100644
--- a/doc/doxyout/hx509/html/group__hx509__crypto.html
+++ b/doc/doxyout/hx509/html/group__hx509__crypto.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 crypto functions</title>
+<title>hx509 crypto functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,85 +8,91 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 crypto functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 crypto functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__crypto.html#g0580de84a86f6d373f5121855bf3a7d5">hx509_verify_signature</a> (hx509_context context, const hx509_cert signer, const AlgorithmIdentifier *alg, const heim_octet_string *data, const heim_octet_string *sig)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga0580de84a86f6d373f5121855bf3a7d5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__crypto.html#ga0580de84a86f6d373f5121855bf3a7d5">hx509_verify_signature</a> (hx509_context context, const hx509_cert signer, const AlgorithmIdentifier *alg, const heim_octet_string *data, const heim_octet_string *sig)</td></tr>
+<tr class="separator:ga0580de84a86f6d373f5121855bf3a7d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<hr><h2>Function Documentation</h2>
-<a class="anchor" name="g0580de84a86f6d373f5121855bf3a7d5"></a><!-- doxytag: member="cert.c::hx509_verify_signature" ref="g0580de84a86f6d373f5121855bf3a7d5" args="(hx509_context context, const hx509_cert signer, const AlgorithmIdentifier *alg, const heim_octet_string *data, const heim_octet_string *sig)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga0580de84a86f6d373f5121855bf3a7d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga0580de84a86f6d373f5121855bf3a7d5">&#9670;&nbsp;</a></span>hx509_verify_signature()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_verify_signature </td>
+ <td class="memname">int hx509_verify_signature </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const hx509_cert&nbsp;</td>
- <td class="paramname"> <em>signer</em>, </td>
+ <td class="paramtype">const hx509_cert&#160;</td>
+ <td class="paramname"><em>signer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const AlgorithmIdentifier *&nbsp;</td>
- <td class="paramname"> <em>alg</em>, </td>
+ <td class="paramtype">const AlgorithmIdentifier *&#160;</td>
+ <td class="paramname"><em>alg</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>data</em>, </td>
+ <td class="paramtype">const heim_octet_string *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>sig</em></td><td>&nbsp;</td>
+ <td class="paramtype">const heim_octet_string *&#160;</td>
+ <td class="paramname"><em>sig</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Verify a signature made using the private key of an certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>signer</em>&nbsp;</td><td>the certificate that made the signature. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>alg</em>&nbsp;</td><td>algorthm that was used to sign the data. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>the data that was signed. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>sig</em>&nbsp;</td><td>the sigature to verify.</td></tr>
+</div><div class="memdoc">
+<p>Verify a signature made using the private key of an certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">signer</td><td>the certificate that made the signature. </td></tr>
+ <tr><td class="paramname">alg</td><td>algorthm that was used to sign the data. </td></tr>
+ <tr><td class="paramname">data</td><td>the data that was signed. </td></tr>
+ <tr><td class="paramname">sig</td><td>the sigature to verify.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__env.html b/doc/doxyout/hx509/html/group__hx509__env.html
index 085f6dbcbf01..156952706241 100644
--- a/doc/doxyout/hx509/html/group__hx509__env.html
+++ b/doc/doxyout/hx509/html/group__hx509__env.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 enviroment functions</title>
+<title>hx509 environment functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,304 +8,309 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 environment functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 enviroment functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#gd60c343e1400c16df1e2f00d2bdff9e9">hx509_env_add</a> (hx509_context context, hx509_env *env, const char *key, const char *value)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#gf08b9d284b8845a7ce14ef1b21ec1adf">hx509_env_add_binding</a> (hx509_context context, hx509_env *env, const char *key, hx509_env list)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#ga4be057dabba9197ad9ada2594ad36e8">hx509_env_lfind</a> (hx509_context context, hx509_env env, const char *key, size_t len)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#g7e481b337974e7474f8bc7bd9199af13">hx509_env_find</a> (hx509_context context, hx509_env env, const char *key)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">hx509_env&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#g9f2ea48c27a58b690a218c44fd4c90a6">hx509_env_find_binding</a> (hx509_context context, hx509_env env, const char *key)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#gf5587becc945154ca8c6f1795db5c8da">hx509_env_free</a> (hx509_env *env)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:gad60c343e1400c16df1e2f00d2bdff9e9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#gad60c343e1400c16df1e2f00d2bdff9e9">hx509_env_add</a> (hx509_context context, hx509_env *env, const char *key, const char *value)</td></tr>
+<tr class="separator:gad60c343e1400c16df1e2f00d2bdff9e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf08b9d284b8845a7ce14ef1b21ec1adf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#gaf08b9d284b8845a7ce14ef1b21ec1adf">hx509_env_add_binding</a> (hx509_context context, hx509_env *env, const char *key, hx509_env list)</td></tr>
+<tr class="separator:gaf08b9d284b8845a7ce14ef1b21ec1adf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaa4be057dabba9197ad9ada2594ad36e8"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#gaa4be057dabba9197ad9ada2594ad36e8">hx509_env_lfind</a> (hx509_context context, hx509_env env, const char *key, size_t len)</td></tr>
+<tr class="separator:gaa4be057dabba9197ad9ada2594ad36e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7e481b337974e7474f8bc7bd9199af13"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#ga7e481b337974e7474f8bc7bd9199af13">hx509_env_find</a> (hx509_context context, hx509_env env, const char *key)</td></tr>
+<tr class="separator:ga7e481b337974e7474f8bc7bd9199af13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga9f2ea48c27a58b690a218c44fd4c90a6"><td class="memItemLeft" align="right" valign="top">hx509_env&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#ga9f2ea48c27a58b690a218c44fd4c90a6">hx509_env_find_binding</a> (hx509_context context, hx509_env env, const char *key)</td></tr>
+<tr class="separator:ga9f2ea48c27a58b690a218c44fd4c90a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf5587becc945154ca8c6f1795db5c8da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__env.html#gaf5587becc945154ca8c6f1795db5c8da">hx509_env_free</a> (hx509_env *env)</td></tr>
+<tr class="separator:gaf5587becc945154ca8c6f1795db5c8da"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<hr><h2>Function Documentation</h2>
-<a class="anchor" name="gd60c343e1400c16df1e2f00d2bdff9e9"></a><!-- doxytag: member="env.c::hx509_env_add" ref="gd60c343e1400c16df1e2f00d2bdff9e9" args="(hx509_context context, hx509_env *env, const char *key, const char *value)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="gad60c343e1400c16df1e2f00d2bdff9e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gad60c343e1400c16df1e2f00d2bdff9e9">&#9670;&nbsp;</a></span>hx509_env_add()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_env_add </td>
+ <td class="memname">int hx509_env_add </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_env *&nbsp;</td>
- <td class="paramname"> <em>env</em>, </td>
+ <td class="paramtype">hx509_env *&#160;</td>
+ <td class="paramname"><em>env</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>key</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>value</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a new key/value pair to the hx509_env.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>enviroment to add the enviroment variable too. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>key to add </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>value to add</td></tr>
+</div><div class="memdoc">
+<p>Add a new key/value pair to the hx509_env.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">env</td><td>environment to add the environment variable too. </td></tr>
+ <tr><td class="paramname">key</td><td>key to add </td></tr>
+ <tr><td class="paramname">value</td><td>value to add</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gf08b9d284b8845a7ce14ef1b21ec1adf"></a><!-- doxytag: member="env.c::hx509_env_add_binding" ref="gf08b9d284b8845a7ce14ef1b21ec1adf" args="(hx509_context context, hx509_env *env, const char *key, hx509_env list)" -->
+</div>
+<a id="gaf08b9d284b8845a7ce14ef1b21ec1adf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaf08b9d284b8845a7ce14ef1b21ec1adf">&#9670;&nbsp;</a></span>hx509_env_add_binding()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_env_add_binding </td>
+ <td class="memname">int hx509_env_add_binding </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_env *&nbsp;</td>
- <td class="paramname"> <em>env</em>, </td>
+ <td class="paramtype">hx509_env *&#160;</td>
+ <td class="paramname"><em>env</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>key</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_env&nbsp;</td>
- <td class="paramname"> <em>list</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_env&#160;</td>
+ <td class="paramname"><em>list</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a new key/binding pair to the hx509_env.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>enviroment to add the enviroment variable too. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>key to add </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>list</em>&nbsp;</td><td>binding list to add</td></tr>
+</div><div class="memdoc">
+<p>Add a new key/binding pair to the hx509_env.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">env</td><td>environment to add the environment variable too. </td></tr>
+ <tr><td class="paramname">key</td><td>key to add </td></tr>
+ <tr><td class="paramname">list</td><td>binding list to add</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g7e481b337974e7474f8bc7bd9199af13"></a><!-- doxytag: member="env.c::hx509_env_find" ref="g7e481b337974e7474f8bc7bd9199af13" args="(hx509_context context, hx509_env env, const char *key)" -->
+</div>
+<a id="ga7e481b337974e7474f8bc7bd9199af13"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga7e481b337974e7474f8bc7bd9199af13">&#9670;&nbsp;</a></span>hx509_env_find()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">const char* hx509_env_find </td>
+ <td class="memname">const char* hx509_env_find </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_env&nbsp;</td>
- <td class="paramname"> <em>env</em>, </td>
+ <td class="paramtype">hx509_env&#160;</td>
+ <td class="paramname"><em>env</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>key</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Search the hx509_env for a key.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>enviroment to add the enviroment variable too. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>key to search for.</td></tr>
+</div><div class="memdoc">
+<p>Search the hx509_env for a key.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">env</td><td>environment to add the environment variable too. </td></tr>
+ <tr><td class="paramname">key</td><td>key to search for.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>the value if the key is found, NULL otherwise. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>the value if the key is found, NULL otherwise. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g9f2ea48c27a58b690a218c44fd4c90a6"></a><!-- doxytag: member="env.c::hx509_env_find_binding" ref="g9f2ea48c27a58b690a218c44fd4c90a6" args="(hx509_context context, hx509_env env, const char *key)" -->
+</div>
+<a id="ga9f2ea48c27a58b690a218c44fd4c90a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga9f2ea48c27a58b690a218c44fd4c90a6">&#9670;&nbsp;</a></span>hx509_env_find_binding()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">hx509_env hx509_env_find_binding </td>
+ <td class="memname">hx509_env hx509_env_find_binding </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_env&nbsp;</td>
- <td class="paramname"> <em>env</em>, </td>
+ <td class="paramtype">hx509_env&#160;</td>
+ <td class="paramname"><em>env</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>key</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Search the hx509_env for a binding.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>enviroment to add the enviroment variable too. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>key to search for.</td></tr>
+</div><div class="memdoc">
+<p>Search the hx509_env for a binding.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">env</td><td>environment to add the environment variable too. </td></tr>
+ <tr><td class="paramname">key</td><td>key to search for.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>the binding if the key is found, NULL if not found. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>the binding if the key is found, NULL if not found. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gf5587becc945154ca8c6f1795db5c8da"></a><!-- doxytag: member="env.c::hx509_env_free" ref="gf5587becc945154ca8c6f1795db5c8da" args="(hx509_env *env)" -->
+</div>
+<a id="gaf5587becc945154ca8c6f1795db5c8da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaf5587becc945154ca8c6f1795db5c8da">&#9670;&nbsp;</a></span>hx509_env_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_env_free </td>
+ <td class="memname">void hx509_env_free </td>
<td>(</td>
- <td class="paramtype">hx509_env *&nbsp;</td>
- <td class="paramname"> <em>env</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_env *&#160;</td>
+ <td class="paramname"><em>env</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free an hx509_env enviroment context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>the enviroment to free. </td></tr>
+</div><div class="memdoc">
+<p>Free an hx509_env environment context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">env</td><td>the environment to free. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="ga4be057dabba9197ad9ada2594ad36e8"></a><!-- doxytag: member="env.c::hx509_env_lfind" ref="ga4be057dabba9197ad9ada2594ad36e8" args="(hx509_context context, hx509_env env, const char *key, size_t len)" -->
+</div>
+<a id="gaa4be057dabba9197ad9ada2594ad36e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaa4be057dabba9197ad9ada2594ad36e8">&#9670;&nbsp;</a></span>hx509_env_lfind()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">const char* hx509_env_lfind </td>
+ <td class="memname">const char* hx509_env_lfind </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_env&nbsp;</td>
- <td class="paramname"> <em>env</em>, </td>
+ <td class="paramtype">hx509_env&#160;</td>
+ <td class="paramname"><em>env</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>key</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Search the hx509_env for a length based key.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>enviroment to add the enviroment variable too. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>key</em>&nbsp;</td><td>key to search for. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>len</em>&nbsp;</td><td>length of key.</td></tr>
+</div><div class="memdoc">
+<p>Search the hx509_env for a length based key.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">env</td><td>environment to add the environment variable too. </td></tr>
+ <tr><td class="paramname">key</td><td>key to search for. </td></tr>
+ <tr><td class="paramname">len</td><td>length of key.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>the value if the key is found, NULL otherwise. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>the value if the key is found, NULL otherwise. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:41 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__error.html b/doc/doxyout/hx509/html/group__hx509__error.html
index 95fb0ae8dc6b..40b4e9de19cb 100644
--- a/doc/doxyout/hx509/html/group__hx509__error.html
+++ b/doc/doxyout/hx509/html/group__hx509__error.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 error functions</title>
+<title>hx509 error functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,301 +8,308 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 error functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 error functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#g99a2f278c27355d474bc12e5809ae5ff">hx509_clear_error_string</a> (hx509_context context)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#g4d3505a920021f838cab2228cd197e3d">hx509_set_error_stringv</a> (hx509_context context, int flags, int code, const char *fmt, va_list ap)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#gd9d4e6e56d2baef65f8c05ee53d6c198">hx509_set_error_string</a> (hx509_context context, int flags, int code, const char *fmt,...)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string</a> (hx509_context context, int error_code)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#gdd65f91b64ae79e6540708b9ab322992">hx509_free_error_string</a> (char *str)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#g992270111a54a73af9f96216eb548aa4">hx509_err</a> (hx509_context context, int exit_code, int error_code, const char *fmt,...)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga99a2f278c27355d474bc12e5809ae5ff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#ga99a2f278c27355d474bc12e5809ae5ff">hx509_clear_error_string</a> (hx509_context context)</td></tr>
+<tr class="separator:ga99a2f278c27355d474bc12e5809ae5ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4d3505a920021f838cab2228cd197e3d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#ga4d3505a920021f838cab2228cd197e3d">hx509_set_error_stringv</a> (hx509_context context, int flags, int code, const char *fmt, va_list ap)</td></tr>
+<tr class="separator:ga4d3505a920021f838cab2228cd197e3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad9d4e6e56d2baef65f8c05ee53d6c198"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#gad9d4e6e56d2baef65f8c05ee53d6c198">hx509_set_error_string</a> (hx509_context context, int flags, int code, const char *fmt,...)</td></tr>
+<tr class="separator:gad9d4e6e56d2baef65f8c05ee53d6c198"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga15791abff76719acb531223fdcbcac87"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string</a> (hx509_context context, int error_code)</td></tr>
+<tr class="separator:ga15791abff76719acb531223fdcbcac87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gadd65f91b64ae79e6540708b9ab322992"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#gadd65f91b64ae79e6540708b9ab322992">hx509_free_error_string</a> (char *str)</td></tr>
+<tr class="separator:gadd65f91b64ae79e6540708b9ab322992"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga992270111a54a73af9f96216eb548aa4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__error.html#ga992270111a54a73af9f96216eb548aa4">hx509_err</a> (hx509_context context, int exit_code, int error_code, const char *fmt,...)</td></tr>
+<tr class="separator:ga992270111a54a73af9f96216eb548aa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-See the <a class="el" href="page_error.html">Hx509 error reporting functions</a> for description and examples. <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g99a2f278c27355d474bc12e5809ae5ff"></a><!-- doxytag: member="error.c::hx509_clear_error_string" ref="g99a2f278c27355d474bc12e5809ae5ff" args="(hx509_context context)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>See the <a class="el" href="page_error.html">Hx509 error reporting functions</a> for description and examples. </p>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga99a2f278c27355d474bc12e5809ae5ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga99a2f278c27355d474bc12e5809ae5ff">&#9670;&nbsp;</a></span>hx509_clear_error_string()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_clear_error_string </td>
+ <td class="memname">void hx509_clear_error_string </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Resets the error strings the hx509 context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
+</div><div class="memdoc">
+<p>Resets the error strings the hx509 context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g992270111a54a73af9f96216eb548aa4"></a><!-- doxytag: member="error.c::hx509_err" ref="g992270111a54a73af9f96216eb548aa4" args="(hx509_context context, int exit_code, int error_code, const char *fmt,...)" -->
+</div>
+<a id="ga992270111a54a73af9f96216eb548aa4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga992270111a54a73af9f96216eb548aa4">&#9670;&nbsp;</a></span>hx509_err()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_err </td>
+ <td class="memname">void hx509_err </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>exit_code</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>exit_code</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>error_code</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>error_code</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>fmt</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">&nbsp;</td>
- <td class="paramname"> <em>...</em></td><td>&nbsp;</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Print error message and fatally exit from error code<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>exit_code</em>&nbsp;</td><td>exit() code from process. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>error_code</em>&nbsp;</td><td>Error code for the reason to exit. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>fmt</em>&nbsp;</td><td>format string with the exit message. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>...</em>&nbsp;</td><td>argument to format string. </td></tr>
+</div><div class="memdoc">
+<p>Print error message and fatally exit from error code</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">exit_code</td><td>exit() code from process. </td></tr>
+ <tr><td class="paramname">error_code</td><td>Error code for the reason to exit. </td></tr>
+ <tr><td class="paramname">fmt</td><td>format string with the exit message. </td></tr>
+ <tr><td class="paramname">...</td><td>argument to format string. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="gdd65f91b64ae79e6540708b9ab322992"></a><!-- doxytag: member="error.c::hx509_free_error_string" ref="gdd65f91b64ae79e6540708b9ab322992" args="(char *str)" -->
+</div>
+<a id="gadd65f91b64ae79e6540708b9ab322992"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gadd65f91b64ae79e6540708b9ab322992">&#9670;&nbsp;</a></span>hx509_free_error_string()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_free_error_string </td>
+ <td class="memname">void hx509_free_error_string </td>
<td>(</td>
- <td class="paramtype">char *&nbsp;</td>
- <td class="paramname"> <em>str</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>str</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free error string returned by <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>error string to free. </td></tr>
+</div><div class="memdoc">
+<p>Free error string returned by <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">str</td><td>error string to free. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g15791abff76719acb531223fdcbcac87"></a><!-- doxytag: member="error.c::hx509_get_error_string" ref="g15791abff76719acb531223fdcbcac87" args="(hx509_context context, int error_code)" -->
+</div>
+<a id="ga15791abff76719acb531223fdcbcac87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga15791abff76719acb531223fdcbcac87">&#9670;&nbsp;</a></span>hx509_get_error_string()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">char* hx509_get_error_string </td>
+ <td class="memname">char* hx509_get_error_string </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>error_code</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>error_code</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get an error string from context associated with error_code.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>error_code</em>&nbsp;</td><td>Get error message for this error code.</td></tr>
+</div><div class="memdoc">
+<p>Get an error string from context associated with error_code.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">error_code</td><td>Get error message for this error code.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>error string, free with <a class="el" href="group__hx509__error.html#gdd65f91b64ae79e6540708b9ab322992">hx509_free_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>error string, free with <a class="el" href="group__hx509__error.html#gadd65f91b64ae79e6540708b9ab322992">hx509_free_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gd9d4e6e56d2baef65f8c05ee53d6c198"></a><!-- doxytag: member="error.c::hx509_set_error_string" ref="gd9d4e6e56d2baef65f8c05ee53d6c198" args="(hx509_context context, int flags, int code, const char *fmt,...)" -->
+</div>
+<a id="gad9d4e6e56d2baef65f8c05ee53d6c198"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gad9d4e6e56d2baef65f8c05ee53d6c198">&#9670;&nbsp;</a></span>hx509_set_error_string()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_set_error_string </td>
+ <td class="memname">void hx509_set_error_string </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>code</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>code</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>fmt</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">&nbsp;</td>
- <td class="paramname"> <em>...</em></td><td>&nbsp;</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-See <a class="el" href="group__hx509__error.html#g4d3505a920021f838cab2228cd197e3d">hx509_set_error_stringv()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td><ul>
-<li>HX509_ERROR_APPEND appends the error string to the old messages (code is updated). </li></ul>
+</div><div class="memdoc">
+<p>See <a class="el" href="group__hx509__error.html#ga4d3505a920021f838cab2228cd197e3d">hx509_set_error_stringv()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">flags</td><td><ul>
+<li>HX509_ERROR_APPEND appends the error string to the old messages (code is updated). </li>
+</ul>
</td></tr>
- <tr><td valign="top"></td><td valign="top"><em>code</em>&nbsp;</td><td>error code related to error message </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>fmt</em>&nbsp;</td><td>error message format </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>...</em>&nbsp;</td><td>arguments to error message format </td></tr>
+ <tr><td class="paramname">code</td><td>error code related to error message </td></tr>
+ <tr><td class="paramname">fmt</td><td>error message format </td></tr>
+ <tr><td class="paramname">...</td><td>arguments to error message format </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g4d3505a920021f838cab2228cd197e3d"></a><!-- doxytag: member="error.c::hx509_set_error_stringv" ref="g4d3505a920021f838cab2228cd197e3d" args="(hx509_context context, int flags, int code, const char *fmt, va_list ap)" -->
+</div>
+<a id="ga4d3505a920021f838cab2228cd197e3d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4d3505a920021f838cab2228cd197e3d">&#9670;&nbsp;</a></span>hx509_set_error_stringv()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_set_error_stringv </td>
+ <td class="memname">void hx509_set_error_stringv </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>code</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>code</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>fmt</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">va_list&nbsp;</td>
- <td class="paramname"> <em>ap</em></td><td>&nbsp;</td>
+ <td class="paramtype">va_list&#160;</td>
+ <td class="paramname"><em>ap</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add an error message to the hx509 context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td><ul>
-<li>HX509_ERROR_APPEND appends the error string to the old messages (code is updated). </li></ul>
+</div><div class="memdoc">
+<p>Add an error message to the hx509 context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">flags</td><td><ul>
+<li>HX509_ERROR_APPEND appends the error string to the old messages (code is updated). </li>
+</ul>
</td></tr>
- <tr><td valign="top"></td><td valign="top"><em>code</em>&nbsp;</td><td>error code related to error message </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>fmt</em>&nbsp;</td><td>error message format </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ap</em>&nbsp;</td><td>arguments to error message format </td></tr>
+ <tr><td class="paramname">code</td><td>error code related to error message </td></tr>
+ <tr><td class="paramname">fmt</td><td>error message format </td></tr>
+ <tr><td class="paramname">ap</td><td>arguments to error message format </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__keyset.html b/doc/doxyout/hx509/html/group__hx509__keyset.html
index 1abd8e909534..e31f314d77ec 100644
--- a/doc/doxyout/hx509/html/group__hx509__keyset.html
+++ b/doc/doxyout/hx509/html/group__hx509__keyset.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 certificate store functions</title>
+<title>hx509 certificate store functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,774 +8,773 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 certificate store functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 certificate store functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g38cec16ab23ae65a6113f6e323a38032">hx509_certs_init</a> (hx509_context context, const char *name, int flags, hx509_lock lock, hx509_certs *certs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g1dbde45fbffbaf909cd99b339f8641bd">hx509_certs_store</a> (hx509_context context, hx509_certs certs, int flags, hx509_lock lock)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga3df96cfe4137beaea7e7b87b95dbe3f">hx509_certs_free</a> (hx509_certs *certs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g8734f5269e166329c0b66d546187a4a9">hx509_certs_start_seq</a> (hx509_context context, hx509_certs certs, hx509_cursor *cursor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g63c38b4729df8a074f191db831ac9db7">hx509_certs_next_cert</a> (hx509_context context, hx509_certs certs, hx509_cursor cursor, hx509_cert *cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g9f05c59f97dcfade924a72fe82cf9a16">hx509_certs_end_seq</a> (hx509_context context, hx509_certs certs, hx509_cursor cursor)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f</a> (hx509_context context, hx509_certs certs, int(*func)(hx509_context, void *, hx509_cert), void *ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#gee9789b91e1b425c17ddd6a5c1f2a834">hx509_ci_print_names</a> (hx509_context context, void *ctx, hx509_cert c)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g4ebe1ee219223b590bdf3e58dc2182da">hx509_certs_add</a> (hx509_context context, hx509_certs certs, hx509_cert cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g5f0c737b4dddb2a8c7bbab05b04ceb7a">hx509_certs_find</a> (hx509_context context, hx509_certs certs, const hx509_query *q, hx509_cert *r)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g1a7b21b477dc3a43286fd1ff96163609">hx509_certs_filter</a> (hx509_context context, hx509_certs certs, const hx509_query *q, hx509_certs *result)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g201bbf3425e451337abb26589202d9fe">hx509_certs_merge</a> (hx509_context context, hx509_certs to, hx509_certs from)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g5aa16e2f2d1bd1349e0586fdb53b85e6">hx509_certs_append</a> (hx509_context context, hx509_certs to, hx509_lock lock, const char *name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g0457faff2ddddfbae50fa62ec1369072">hx509_get_one_cert</a> (hx509_context context, hx509_certs certs, hx509_cert *c)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#g82fc84cff0a174d58e763ffe2c2a0aad">hx509_certs_info</a> (hx509_context context, hx509_certs certs, int(*func)(void *, const char *), void *ctx)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga38cec16ab23ae65a6113f6e323a38032"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga38cec16ab23ae65a6113f6e323a38032">hx509_certs_init</a> (hx509_context context, const char *name, int flags, hx509_lock lock, hx509_certs *certs)</td></tr>
+<tr class="separator:ga38cec16ab23ae65a6113f6e323a38032"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1dbde45fbffbaf909cd99b339f8641bd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga1dbde45fbffbaf909cd99b339f8641bd">hx509_certs_store</a> (hx509_context context, hx509_certs certs, int flags, hx509_lock lock)</td></tr>
+<tr class="separator:ga1dbde45fbffbaf909cd99b339f8641bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaa3df96cfe4137beaea7e7b87b95dbe3f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#gaa3df96cfe4137beaea7e7b87b95dbe3f">hx509_certs_free</a> (hx509_certs *certs)</td></tr>
+<tr class="separator:gaa3df96cfe4137beaea7e7b87b95dbe3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8734f5269e166329c0b66d546187a4a9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga8734f5269e166329c0b66d546187a4a9">hx509_certs_start_seq</a> (hx509_context context, hx509_certs certs, hx509_cursor *cursor)</td></tr>
+<tr class="separator:ga8734f5269e166329c0b66d546187a4a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga63c38b4729df8a074f191db831ac9db7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga63c38b4729df8a074f191db831ac9db7">hx509_certs_next_cert</a> (hx509_context context, hx509_certs certs, hx509_cursor cursor, hx509_cert *cert)</td></tr>
+<tr class="separator:ga63c38b4729df8a074f191db831ac9db7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga9f05c59f97dcfade924a72fe82cf9a16"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga9f05c59f97dcfade924a72fe82cf9a16">hx509_certs_end_seq</a> (hx509_context context, hx509_certs certs, hx509_cursor cursor)</td></tr>
+<tr class="separator:ga9f05c59f97dcfade924a72fe82cf9a16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4ba1d8deb9545c59b8f6bde86585014b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f</a> (hx509_context context, hx509_certs certs, int(*func)(hx509_context, void *, hx509_cert), void *ctx)</td></tr>
+<tr class="separator:ga4ba1d8deb9545c59b8f6bde86585014b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaee9789b91e1b425c17ddd6a5c1f2a834"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#gaee9789b91e1b425c17ddd6a5c1f2a834">hx509_ci_print_names</a> (hx509_context context, void *ctx, hx509_cert c)</td></tr>
+<tr class="separator:gaee9789b91e1b425c17ddd6a5c1f2a834"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4ebe1ee219223b590bdf3e58dc2182da"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga4ebe1ee219223b590bdf3e58dc2182da">hx509_certs_add</a> (hx509_context context, hx509_certs certs, hx509_cert cert)</td></tr>
+<tr class="separator:ga4ebe1ee219223b590bdf3e58dc2182da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5f0c737b4dddb2a8c7bbab05b04ceb7a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga5f0c737b4dddb2a8c7bbab05b04ceb7a">hx509_certs_find</a> (hx509_context context, hx509_certs certs, const hx509_query *q, hx509_cert *r)</td></tr>
+<tr class="separator:ga5f0c737b4dddb2a8c7bbab05b04ceb7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1a7b21b477dc3a43286fd1ff96163609"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga1a7b21b477dc3a43286fd1ff96163609">hx509_certs_filter</a> (hx509_context context, hx509_certs certs, const hx509_query *q, hx509_certs *result)</td></tr>
+<tr class="separator:ga1a7b21b477dc3a43286fd1ff96163609"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga201bbf3425e451337abb26589202d9fe"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga201bbf3425e451337abb26589202d9fe">hx509_certs_merge</a> (hx509_context context, hx509_certs to, hx509_certs from)</td></tr>
+<tr class="separator:ga201bbf3425e451337abb26589202d9fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5aa16e2f2d1bd1349e0586fdb53b85e6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga5aa16e2f2d1bd1349e0586fdb53b85e6">hx509_certs_append</a> (hx509_context context, hx509_certs to, hx509_lock lock, const char *name)</td></tr>
+<tr class="separator:ga5aa16e2f2d1bd1349e0586fdb53b85e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga0457faff2ddddfbae50fa62ec1369072"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga0457faff2ddddfbae50fa62ec1369072">hx509_get_one_cert</a> (hx509_context context, hx509_certs certs, hx509_cert *c)</td></tr>
+<tr class="separator:ga0457faff2ddddfbae50fa62ec1369072"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga82fc84cff0a174d58e763ffe2c2a0aad"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__keyset.html#ga82fc84cff0a174d58e763ffe2c2a0aad">hx509_certs_info</a> (hx509_context context, hx509_certs certs, int(*func)(void *, const char *), void *ctx)</td></tr>
+<tr class="separator:ga82fc84cff0a174d58e763ffe2c2a0aad"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-See the <a class="el" href="page_keyset.html">Certificate store operations</a> for description and examples. <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g4ebe1ee219223b590bdf3e58dc2182da"></a><!-- doxytag: member="keyset.c::hx509_certs_add" ref="g4ebe1ee219223b590bdf3e58dc2182da" args="(hx509_context context, hx509_certs certs, hx509_cert cert)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>See the <a class="el" href="page_keyset.html">Certificate store operations</a> for description and examples. </p>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga4ebe1ee219223b590bdf3e58dc2182da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4ebe1ee219223b590bdf3e58dc2182da">&#9670;&nbsp;</a></span>hx509_certs_add()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_add </td>
+ <td class="memname">int hx509_certs_add </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a certificate to the certificiate store.<p>
-The receiving keyset certs will either increase reference counter of the cert or make a deep copy, either way, the caller needs to free the cert itself.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to add the certificate to. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>certificate to add.</td></tr>
+</div><div class="memdoc">
+<p>Add a certificate to the certificiate store.</p>
+<p>The receiving keyset certs will either increase reference counter of the cert or make a deep copy, either way, the caller needs to free the cert itself.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>certificate store to add the certificate to. </td></tr>
+ <tr><td class="paramname">cert</td><td>certificate to add.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g5aa16e2f2d1bd1349e0586fdb53b85e6"></a><!-- doxytag: member="keyset.c::hx509_certs_append" ref="g5aa16e2f2d1bd1349e0586fdb53b85e6" args="(hx509_context context, hx509_certs to, hx509_lock lock, const char *name)" -->
+</div>
+<a id="ga5aa16e2f2d1bd1349e0586fdb53b85e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5aa16e2f2d1bd1349e0586fdb53b85e6">&#9670;&nbsp;</a></span>hx509_certs_append()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_append </td>
+ <td class="memname">int hx509_certs_append </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>to</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>to</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_lock&nbsp;</td>
- <td class="paramname"> <em>lock</em>, </td>
+ <td class="paramtype">hx509_lock&#160;</td>
+ <td class="paramname"><em>lock</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Same a <a class="el" href="group__hx509__keyset.html#g201bbf3425e451337abb26589202d9fe">hx509_certs_merge()</a> but use a lock and name to describe the from source.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>to</em>&nbsp;</td><td>the store to merge into. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>lock</em>&nbsp;</td><td>a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see <a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a>). </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name of the source store</td></tr>
+</div><div class="memdoc">
+<p>Same a <a class="el" href="group__hx509__keyset.html#ga201bbf3425e451337abb26589202d9fe">hx509_certs_merge()</a> but use a lock and name to describe the from source.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">to</td><td>the store to merge into. </td></tr>
+ <tr><td class="paramname">lock</td><td>a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see <a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a>). </td></tr>
+ <tr><td class="paramname">name</td><td>name of the source store</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g9f05c59f97dcfade924a72fe82cf9a16"></a><!-- doxytag: member="keyset.c::hx509_certs_end_seq" ref="g9f05c59f97dcfade924a72fe82cf9a16" args="(hx509_context context, hx509_certs certs, hx509_cursor cursor)" -->
+</div>
+<a id="ga9f05c59f97dcfade924a72fe82cf9a16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga9f05c59f97dcfade924a72fe82cf9a16">&#9670;&nbsp;</a></span>hx509_certs_end_seq()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_end_seq </td>
+ <td class="memname">int hx509_certs_end_seq </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cursor&nbsp;</td>
- <td class="paramname"> <em>cursor</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cursor&#160;</td>
+ <td class="paramname"><em>cursor</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-End the iteration over certificates.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to iterate over. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cursor</em>&nbsp;</td><td>cursor that will keep track of progress, freed.</td></tr>
+</div><div class="memdoc">
+<p>End the iteration over certificates.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>certificate store to iterate over. </td></tr>
+ <tr><td class="paramname">cursor</td><td>cursor that will keep track of progress, freed.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g1a7b21b477dc3a43286fd1ff96163609"></a><!-- doxytag: member="keyset.c::hx509_certs_filter" ref="g1a7b21b477dc3a43286fd1ff96163609" args="(hx509_context context, hx509_certs certs, const hx509_query *q, hx509_certs *result)" -->
+</div>
+<a id="ga1a7b21b477dc3a43286fd1ff96163609"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1a7b21b477dc3a43286fd1ff96163609">&#9670;&nbsp;</a></span>hx509_certs_filter()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_filter </td>
+ <td class="memname">int hx509_certs_filter </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const hx509_query *&nbsp;</td>
- <td class="paramname"> <em>q</em>, </td>
+ <td class="paramtype">const hx509_query *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs *&nbsp;</td>
- <td class="paramname"> <em>result</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_certs *&#160;</td>
+ <td class="paramname"><em>result</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Filter certificate matching the query.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to search. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>query allocated with <a class="el" href="group__hx509__query.html">hx509 query functions</a> functions. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>result</em>&nbsp;</td><td>the filtered certificate store, caller must free with <a class="el" href="group__hx509__keyset.html#ga3df96cfe4137beaea7e7b87b95dbe3f">hx509_certs_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Filter certificate matching the query.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>certificate store to search. </td></tr>
+ <tr><td class="paramname">q</td><td>query allocated with <a class="el" href="group__hx509__query.html">hx509 query functions</a> functions. </td></tr>
+ <tr><td class="paramname">result</td><td>the filtered certificate store, caller must free with <a class="el" href="group__hx509__keyset.html#gaa3df96cfe4137beaea7e7b87b95dbe3f">hx509_certs_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
+<p>Return HX509_CERT_NOT_FOUND if no certificate in certs matched the query.</p>
-<p>
-Return HX509_CERT_NOT_FOUND if no certificate in certs matched the query.
</div>
-</div><p>
-<a class="anchor" name="g5f0c737b4dddb2a8c7bbab05b04ceb7a"></a><!-- doxytag: member="keyset.c::hx509_certs_find" ref="g5f0c737b4dddb2a8c7bbab05b04ceb7a" args="(hx509_context context, hx509_certs certs, const hx509_query *q, hx509_cert *r)" -->
+</div>
+<a id="ga5f0c737b4dddb2a8c7bbab05b04ceb7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5f0c737b4dddb2a8c7bbab05b04ceb7a">&#9670;&nbsp;</a></span>hx509_certs_find()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_find </td>
+ <td class="memname">int hx509_certs_find </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const hx509_query *&nbsp;</td>
- <td class="paramname"> <em>q</em>, </td>
+ <td class="paramtype">const hx509_query *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert *&nbsp;</td>
- <td class="paramname"> <em>r</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert *&#160;</td>
+ <td class="paramname"><em>r</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Find a certificate matching the query.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to search. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>q</em>&nbsp;</td><td>query allocated with <a class="el" href="group__hx509__query.html">hx509 query functions</a> functions. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>r</em>&nbsp;</td><td>return certificate (or NULL on error), should be freed with <a class="el" href="group__hx509__cert.html#gd2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Find a certificate matching the query.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>certificate store to search. </td></tr>
+ <tr><td class="paramname">q</td><td>query allocated with <a class="el" href="group__hx509__query.html">hx509 query functions</a> functions. </td></tr>
+ <tr><td class="paramname">r</td><td>return certificate (or NULL on error), should be freed with <a class="el" href="group__hx509__cert.html#gad2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
+<p>Return HX509_CERT_NOT_FOUND if no certificate in certs matched the query.</p>
-<p>
-Return HX509_CERT_NOT_FOUND if no certificate in certs matched the query.
</div>
-</div><p>
-<a class="anchor" name="ga3df96cfe4137beaea7e7b87b95dbe3f"></a><!-- doxytag: member="keyset.c::hx509_certs_free" ref="ga3df96cfe4137beaea7e7b87b95dbe3f" args="(hx509_certs *certs)" -->
+</div>
+<a id="gaa3df96cfe4137beaea7e7b87b95dbe3f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaa3df96cfe4137beaea7e7b87b95dbe3f">&#9670;&nbsp;</a></span>hx509_certs_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_certs_free </td>
+ <td class="memname">void hx509_certs_free </td>
<td>(</td>
- <td class="paramtype">hx509_certs *&nbsp;</td>
- <td class="paramname"> <em>certs</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_certs *&#160;</td>
+ <td class="paramname"><em>certs</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free a certificate store.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to free. </td></tr>
+</div><div class="memdoc">
+<p>Free a certificate store.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">certs</td><td>certificate store to free. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g82fc84cff0a174d58e763ffe2c2a0aad"></a><!-- doxytag: member="keyset.c::hx509_certs_info" ref="g82fc84cff0a174d58e763ffe2c2a0aad" args="(hx509_context context, hx509_certs certs, int(*func)(void *, const char *), void *ctx)" -->
+</div>
+<a id="ga82fc84cff0a174d58e763ffe2c2a0aad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga82fc84cff0a174d58e763ffe2c2a0aad">&#9670;&nbsp;</a></span>hx509_certs_info()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_info </td>
+ <td class="memname">int hx509_certs_info </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int(*)(void *, const char *)&nbsp;</td>
- <td class="paramname"> <em>func</em>, </td>
+ <td class="paramtype">int(*)(void *, const char *)&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Print some info about the certificate store.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to print information about. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>func</em>&nbsp;</td><td>function that will get each line of the information, if NULL is used the data is printed on a FILE descriptor that should be passed in ctx, if ctx also is NULL, stdout is used. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>parameter to func.</td></tr>
+</div><div class="memdoc">
+<p>Print some info about the certificate store.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>certificate store to print information about. </td></tr>
+ <tr><td class="paramname">func</td><td>function that will get each line of the information, if NULL is used the data is printed on a FILE descriptor that should be passed in ctx, if ctx also is NULL, stdout is used. </td></tr>
+ <tr><td class="paramname">ctx</td><td>parameter to func.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g38cec16ab23ae65a6113f6e323a38032"></a><!-- doxytag: member="keyset.c::hx509_certs_init" ref="g38cec16ab23ae65a6113f6e323a38032" args="(hx509_context context, const char *name, int flags, hx509_lock lock, hx509_certs *certs)" -->
+</div>
+<a id="ga38cec16ab23ae65a6113f6e323a38032"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga38cec16ab23ae65a6113f6e323a38032">&#9670;&nbsp;</a></span>hx509_certs_init()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_init </td>
+ <td class="memname">int hx509_certs_init </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>name</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_lock&nbsp;</td>
- <td class="paramname"> <em>lock</em>, </td>
+ <td class="paramtype">hx509_lock&#160;</td>
+ <td class="paramname"><em>lock</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs *&nbsp;</td>
- <td class="paramname"> <em>certs</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_certs *&#160;</td>
+ <td class="paramname"><em>certs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Open or creates a new hx509 certificate store.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name of the store, format is TYPE:type-specific-string, if NULL is used the MEMORY store is used. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>list of flags:<ul>
-<li>HX509_CERTS_CREATE create a new keystore of the specific TYPE.</li><li>HX509_CERTS_UNPROTECT_ALL fails if any private key failed to be extracted. </li></ul>
+</div><div class="memdoc">
+<p>Open or creates a new hx509 certificate store.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context </td></tr>
+ <tr><td class="paramname">name</td><td>name of the store, format is TYPE:type-specific-string, if NULL is used the MEMORY store is used. </td></tr>
+ <tr><td class="paramname">flags</td><td>list of flags:<ul>
+<li>HX509_CERTS_CREATE create a new keystore of the specific TYPE.</li>
+<li>HX509_CERTS_UNPROTECT_ALL fails if any private key failed to be extracted. </li>
+</ul>
</td></tr>
- <tr><td valign="top"></td><td valign="top"><em>lock</em>&nbsp;</td><td>a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see <a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a>). </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>return pointer, free with <a class="el" href="group__hx509__keyset.html#ga3df96cfe4137beaea7e7b87b95dbe3f">hx509_certs_free()</a>. </td></tr>
+ <tr><td class="paramname">lock</td><td>a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see <a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a>). </td></tr>
+ <tr><td class="paramname">certs</td><td>return pointer, free with <a class="el" href="group__hx509__keyset.html#gaa3df96cfe4137beaea7e7b87b95dbe3f">hx509_certs_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g4ba1d8deb9545c59b8f6bde86585014b"></a><!-- doxytag: member="keyset.c::hx509_certs_iter_f" ref="g4ba1d8deb9545c59b8f6bde86585014b" args="(hx509_context context, hx509_certs certs, int(*func)(hx509_context, void *, hx509_cert), void *ctx)" -->
+</div>
+<a id="ga4ba1d8deb9545c59b8f6bde86585014b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4ba1d8deb9545c59b8f6bde86585014b">&#9670;&nbsp;</a></span>hx509_certs_iter_f()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_iter_f </td>
+ <td class="memname">int hx509_certs_iter_f </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int(*)(hx509_context, void *, hx509_cert)&nbsp;</td>
- <td class="paramname"> <em>func</em>, </td>
+ <td class="paramtype">int(*)(hx509_context, void *, hx509_cert)&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Iterate over all certificates in a keystore and call an function for each fo them.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to iterate over. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>func</em>&nbsp;</td><td>function to call for each certificate. The function should return non-zero to abort the iteration, that value is passed back to the caller of <a class="el" href="group__hx509__keyset.html#g4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f()</a>. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>context variable that will passed to the function.</td></tr>
+</div><div class="memdoc">
+<p>Iterate over all certificates in a keystore and call a function for each of them.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>certificate store to iterate over. </td></tr>
+ <tr><td class="paramname">func</td><td>function to call for each certificate. The function should return non-zero to abort the iteration, that value is passed back to the caller of <a class="el" href="group__hx509__keyset.html#ga4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f()</a>. </td></tr>
+ <tr><td class="paramname">ctx</td><td>context variable that will passed to the function.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g201bbf3425e451337abb26589202d9fe"></a><!-- doxytag: member="keyset.c::hx509_certs_merge" ref="g201bbf3425e451337abb26589202d9fe" args="(hx509_context context, hx509_certs to, hx509_certs from)" -->
+</div>
+<a id="ga201bbf3425e451337abb26589202d9fe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga201bbf3425e451337abb26589202d9fe">&#9670;&nbsp;</a></span>hx509_certs_merge()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_merge </td>
+ <td class="memname">int hx509_certs_merge </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>to</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>to</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>from</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>from</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Merge a certificate store into another. The from store is keep intact.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>to</em>&nbsp;</td><td>the store to merge into. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>from</em>&nbsp;</td><td>the store to copy the object from.</td></tr>
+</div><div class="memdoc">
+<p>Merge a certificate store into another. The from store is keep intact.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">to</td><td>the store to merge into. </td></tr>
+ <tr><td class="paramname">from</td><td>the store to copy the object from.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g63c38b4729df8a074f191db831ac9db7"></a><!-- doxytag: member="keyset.c::hx509_certs_next_cert" ref="g63c38b4729df8a074f191db831ac9db7" args="(hx509_context context, hx509_certs certs, hx509_cursor cursor, hx509_cert *cert)" -->
+</div>
+<a id="ga63c38b4729df8a074f191db831ac9db7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga63c38b4729df8a074f191db831ac9db7">&#9670;&nbsp;</a></span>hx509_certs_next_cert()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_next_cert </td>
+ <td class="memname">int hx509_certs_next_cert </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cursor&nbsp;</td>
- <td class="paramname"> <em>cursor</em>, </td>
+ <td class="paramtype">hx509_cursor&#160;</td>
+ <td class="paramname"><em>cursor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert *&nbsp;</td>
- <td class="paramname"> <em>cert</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert *&#160;</td>
+ <td class="paramname"><em>cert</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get next ceritificate from the certificate keystore pointed out by cursor.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to iterate over. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cursor</em>&nbsp;</td><td>cursor that keeps track of progress. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>return certificate next in store, NULL if the store contains no more certificates. Free with <a class="el" href="group__hx509__cert.html#gd2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Get next ceritificate from the certificate keystore pointed out by cursor.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>certificate store to iterate over. </td></tr>
+ <tr><td class="paramname">cursor</td><td>cursor that keeps track of progress. </td></tr>
+ <tr><td class="paramname">cert</td><td>return certificate next in store, NULL if the store contains no more certificates. Free with <a class="el" href="group__hx509__cert.html#gad2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g8734f5269e166329c0b66d546187a4a9"></a><!-- doxytag: member="keyset.c::hx509_certs_start_seq" ref="g8734f5269e166329c0b66d546187a4a9" args="(hx509_context context, hx509_certs certs, hx509_cursor *cursor)" -->
+</div>
+<a id="ga8734f5269e166329c0b66d546187a4a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga8734f5269e166329c0b66d546187a4a9">&#9670;&nbsp;</a></span>hx509_certs_start_seq()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_start_seq </td>
+ <td class="memname">int hx509_certs_start_seq </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cursor *&nbsp;</td>
- <td class="paramname"> <em>cursor</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cursor *&#160;</td>
+ <td class="paramname"><em>cursor</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Start the integration<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to iterate over </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cursor</em>&nbsp;</td><td>cursor that will keep track of progress, free with <a class="el" href="group__hx509__keyset.html#g9f05c59f97dcfade924a72fe82cf9a16">hx509_certs_end_seq()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Start the integration</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>certificate store to iterate over </td></tr>
+ <tr><td class="paramname">cursor</td><td>cursor that will keep track of progress, free with <a class="el" href="group__hx509__keyset.html#ga9f05c59f97dcfade924a72fe82cf9a16">hx509_certs_end_seq()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. HX509_UNSUPPORTED_OPERATION is returned if the certificate store doesn't support the iteration operation. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. HX509_UNSUPPORTED_OPERATION is returned if the certificate store doesn't support the iteration operation. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g1dbde45fbffbaf909cd99b339f8641bd"></a><!-- doxytag: member="keyset.c::hx509_certs_store" ref="g1dbde45fbffbaf909cd99b339f8641bd" args="(hx509_context context, hx509_certs certs, int flags, hx509_lock lock)" -->
+</div>
+<a id="ga1dbde45fbffbaf909cd99b339f8641bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1dbde45fbffbaf909cd99b339f8641bd">&#9670;&nbsp;</a></span>hx509_certs_store()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_certs_store </td>
+ <td class="memname">int hx509_certs_store </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_lock&nbsp;</td>
- <td class="paramname"> <em>lock</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_lock&#160;</td>
+ <td class="paramname"><em>lock</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Write the certificate store to stable storage.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>a certificate store to store. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>currently unused, use 0. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>lock</em>&nbsp;</td><td>a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see <a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a>).</td></tr>
+</div><div class="memdoc">
+<p>Write the certificate store to stable storage.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>a certificate store to store. </td></tr>
+ <tr><td class="paramname">flags</td><td>currently unused, use 0. </td></tr>
+ <tr><td class="paramname">lock</td><td>a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see <a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a>).</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. HX509_UNSUPPORTED_OPERATION if the certificate store doesn't support the store operation. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. HX509_UNSUPPORTED_OPERATION if the certificate store doesn't support the store operation. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gee9789b91e1b425c17ddd6a5c1f2a834"></a><!-- doxytag: member="keyset.c::hx509_ci_print_names" ref="gee9789b91e1b425c17ddd6a5c1f2a834" args="(hx509_context context, void *ctx, hx509_cert c)" -->
+</div>
+<a id="gaee9789b91e1b425c17ddd6a5c1f2a834"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaee9789b91e1b425c17ddd6a5c1f2a834">&#9670;&nbsp;</a></span>hx509_ci_print_names()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ci_print_names </td>
+ <td class="memname">int hx509_ci_print_names </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>c</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Iterate over all certificates in a keystore and call an function for each fo them.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>certificate store to iterate over. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>func</em>&nbsp;</td><td>function to call for each certificate. The function should return non-zero to abort the iteration, that value is passed back to the caller of hx509_certs_iter().</td></tr>
- </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. Function to use to <a class="el" href="group__hx509__keyset.html#g4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f()</a> as a function argument, the ctx variable to <a class="el" href="group__hx509__keyset.html#g4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f()</a> should be a FILE file descriptor.</dd></dl>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>used by <a class="el" href="group__hx509__keyset.html#g4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f()</a>. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>a certificate</td></tr>
+</div><div class="memdoc">
+<p>Function to use to <a class="el" href="group__hx509__keyset.html#ga4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f()</a> as a function argument, the ctx variable to <a class="el" href="group__hx509__keyset.html#ga4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f()</a> should be a FILE file descriptor.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">ctx</td><td>used by <a class="el" href="group__hx509__keyset.html#ga4ba1d8deb9545c59b8f6bde86585014b">hx509_certs_iter_f()</a>. </td></tr>
+ <tr><td class="paramname">c</td><td>a certificate</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g0457faff2ddddfbae50fa62ec1369072"></a><!-- doxytag: member="keyset.c::hx509_get_one_cert" ref="g0457faff2ddddfbae50fa62ec1369072" args="(hx509_context context, hx509_certs certs, hx509_cert *c)" -->
+</div>
+<a id="ga0457faff2ddddfbae50fa62ec1369072"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga0457faff2ddddfbae50fa62ec1369072">&#9670;&nbsp;</a></span>hx509_get_one_cert()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_get_one_cert </td>
+ <td class="memname">int hx509_get_one_cert </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert *&nbsp;</td>
- <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert *&#160;</td>
+ <td class="paramname"><em>c</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Get one random certificate from the certificate store.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>a certificate store to get the certificate from. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>return certificate, should be freed with <a class="el" href="group__hx509__cert.html#gd2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Get one random certificate from the certificate store.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">certs</td><td>a certificate store to get the certificate from. </td></tr>
+ <tr><td class="paramname">c</td><td>return certificate, should be freed with <a class="el" href="group__hx509__cert.html#gad2f9bb0ddc4babb26a8ccd983db8c948">hx509_cert_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns an hx509 error code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns an hx509 error code. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__lock.html b/doc/doxyout/hx509/html/group__hx509__lock.html
index fecc3272c611..4b4731a571d9 100644
--- a/doc/doxyout/hx509/html/group__hx509__lock.html
+++ b/doc/doxyout/hx509/html/group__hx509__lock.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 lock functions</title>
+<title>hx509 lock functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,22 +8,24 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">hx509 lock functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 lock functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-</table>
-See the <a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a> for description and examples. </div>
+<p>See the <a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a> for description and examples. </p>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__misc.html b/doc/doxyout/hx509/html/group__hx509__misc.html
index 08ce4b162e0c..bd5f1b02231d 100644
--- a/doc/doxyout/hx509/html/group__hx509__misc.html
+++ b/doc/doxyout/hx509/html/group__hx509__misc.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 misc functions</title>
+<title>hx509 misc functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,81 +8,85 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 misc functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 misc functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__misc.html#ga39b9443f688a6d9152ff6dc05f3be8e">hx509_free_octet_string_list</a> (hx509_octet_string_list *list)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__misc.html#gba6d3eb6abde539a3191269f785e3e61">hx509_xfree</a> (void *ptr)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:gaa39b9443f688a6d9152ff6dc05f3be8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__misc.html#gaa39b9443f688a6d9152ff6dc05f3be8e">hx509_free_octet_string_list</a> (hx509_octet_string_list *list)</td></tr>
+<tr class="separator:gaa39b9443f688a6d9152ff6dc05f3be8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaba6d3eb6abde539a3191269f785e3e61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__misc.html#gaba6d3eb6abde539a3191269f785e3e61">hx509_xfree</a> (void *ptr)</td></tr>
+<tr class="separator:gaba6d3eb6abde539a3191269f785e3e61"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<hr><h2>Function Documentation</h2>
-<a class="anchor" name="ga39b9443f688a6d9152ff6dc05f3be8e"></a><!-- doxytag: member="cert.c::hx509_free_octet_string_list" ref="ga39b9443f688a6d9152ff6dc05f3be8e" args="(hx509_octet_string_list *list)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="gaa39b9443f688a6d9152ff6dc05f3be8e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaa39b9443f688a6d9152ff6dc05f3be8e">&#9670;&nbsp;</a></span>hx509_free_octet_string_list()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_free_octet_string_list </td>
+ <td class="memname">void hx509_free_octet_string_list </td>
<td>(</td>
- <td class="paramtype">hx509_octet_string_list *&nbsp;</td>
- <td class="paramname"> <em>list</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_octet_string_list *&#160;</td>
+ <td class="paramname"><em>list</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free a list of octet strings returned by another hx509 library function.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>list</em>&nbsp;</td><td>list to be freed. </td></tr>
+</div><div class="memdoc">
+<p>Free a list of octet strings returned by another hx509 library function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">list</td><td>list to be freed. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="gba6d3eb6abde539a3191269f785e3e61"></a><!-- doxytag: member="cert.c::hx509_xfree" ref="gba6d3eb6abde539a3191269f785e3e61" args="(void *ptr)" -->
+</div>
+<a id="gaba6d3eb6abde539a3191269f785e3e61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaba6d3eb6abde539a3191269f785e3e61">&#9670;&nbsp;</a></span>hx509_xfree()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_xfree </td>
+ <td class="memname">void hx509_xfree </td>
<td>(</td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>ptr</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free a data element allocated in the library.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ptr</em>&nbsp;</td><td>data to be freed. </td></tr>
+</div><div class="memdoc">
+<p>Free a data element allocated in the library.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ptr</td><td>data to be freed. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__name.html b/doc/doxyout/hx509/html/group__hx509__name.html
index 9970c09496d9..78cfd6b8817e 100644
--- a/doc/doxyout/hx509/html/group__hx509__name.html
+++ b/doc/doxyout/hx509/html/group__hx509__name.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 name functions</title>
+<title>hx509 name functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,463 +8,467 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 name functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 name functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g1bd74b34e0aa88b083678ba231d38718">hx509_name_to_string</a> (const hx509_name name, char **str)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gbd49c49301d601bc53371b867a7eac54">hx509_name_cmp</a> (hx509_name n1, hx509_name n2)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g0565f607a4e57d0911ee7081ad9548c5">hx509_parse_name</a> (hx509_context context, const char *str, hx509_name *name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gcf9b6bfcdd810bed71e98f7e04d918ca">hx509_name_copy</a> (hx509_context context, const hx509_name from, hx509_name *to)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g6e65dc67aa48bb87e4fb98ecfe512fbd">hx509_name_to_Name</a> (const hx509_name from, Name *to)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g42015083c70b6aa29c4f082998dbbece">hx509_name_expand</a> (hx509_context context, hx509_name name, hx509_env env)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gaf351931efb02fc7aea736af9977155e">hx509_name_free</a> (hx509_name *name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gf8f73e0a75da2189b1815d8c968750df">hx509_unparse_der_name</a> (const void *data, size_t length, char **str)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g1838777e576422c1cb17093bbf7fa018">hx509_name_binary</a> (const hx509_name name, heim_octet_string *os)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g4f6715dcabbbcb5d48512e504eae8352">hx509_name_is_null_p</a> (const hx509_name name)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g678a0bf7676746ea1827efe951042f1e">hx509_general_name_unparse</a> (GeneralName *name, char **str)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga1bd74b34e0aa88b083678ba231d38718"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#ga1bd74b34e0aa88b083678ba231d38718">hx509_name_to_string</a> (const hx509_name name, char **str)</td></tr>
+<tr class="separator:ga1bd74b34e0aa88b083678ba231d38718"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gabd49c49301d601bc53371b867a7eac54"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gabd49c49301d601bc53371b867a7eac54">hx509_name_cmp</a> (hx509_name n1, hx509_name n2)</td></tr>
+<tr class="separator:gabd49c49301d601bc53371b867a7eac54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga0565f607a4e57d0911ee7081ad9548c5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#ga0565f607a4e57d0911ee7081ad9548c5">hx509_parse_name</a> (hx509_context context, const char *str, hx509_name *name)</td></tr>
+<tr class="separator:ga0565f607a4e57d0911ee7081ad9548c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gacf9b6bfcdd810bed71e98f7e04d918ca"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gacf9b6bfcdd810bed71e98f7e04d918ca">hx509_name_copy</a> (hx509_context context, const hx509_name from, hx509_name *to)</td></tr>
+<tr class="separator:gacf9b6bfcdd810bed71e98f7e04d918ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6e65dc67aa48bb87e4fb98ecfe512fbd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#ga6e65dc67aa48bb87e4fb98ecfe512fbd">hx509_name_to_Name</a> (const hx509_name from, Name *to)</td></tr>
+<tr class="separator:ga6e65dc67aa48bb87e4fb98ecfe512fbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga42015083c70b6aa29c4f082998dbbece"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#ga42015083c70b6aa29c4f082998dbbece">hx509_name_expand</a> (hx509_context context, hx509_name name, hx509_env env)</td></tr>
+<tr class="separator:ga42015083c70b6aa29c4f082998dbbece"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaaf351931efb02fc7aea736af9977155e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gaaf351931efb02fc7aea736af9977155e">hx509_name_free</a> (hx509_name *name)</td></tr>
+<tr class="separator:gaaf351931efb02fc7aea736af9977155e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf8f73e0a75da2189b1815d8c968750df"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gaf8f73e0a75da2189b1815d8c968750df">hx509_unparse_der_name</a> (const void *data, size_t length, char **str)</td></tr>
+<tr class="separator:gaf8f73e0a75da2189b1815d8c968750df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1838777e576422c1cb17093bbf7fa018"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#ga1838777e576422c1cb17093bbf7fa018">hx509_name_binary</a> (const hx509_name name, heim_octet_string *os)</td></tr>
+<tr class="separator:ga1838777e576422c1cb17093bbf7fa018"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4f6715dcabbbcb5d48512e504eae8352"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#ga4f6715dcabbbcb5d48512e504eae8352">hx509_name_is_null_p</a> (const hx509_name name)</td></tr>
+<tr class="separator:ga4f6715dcabbbcb5d48512e504eae8352"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga678a0bf7676746ea1827efe951042f1e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#ga678a0bf7676746ea1827efe951042f1e">hx509_general_name_unparse</a> (GeneralName *name, char **str)</td></tr>
+<tr class="separator:ga678a0bf7676746ea1827efe951042f1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-See the <a class="el" href="page_name.html">PKIX/X.509 Names</a> for description and examples. <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g678a0bf7676746ea1827efe951042f1e"></a><!-- doxytag: member="name.c::hx509_general_name_unparse" ref="g678a0bf7676746ea1827efe951042f1e" args="(GeneralName *name, char **str)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>See the <a class="el" href="page_name.html">PKIX/X.509 Names</a> for description and examples. </p>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga678a0bf7676746ea1827efe951042f1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga678a0bf7676746ea1827efe951042f1e">&#9670;&nbsp;</a></span>hx509_general_name_unparse()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_general_name_unparse </td>
+ <td class="memname">int hx509_general_name_unparse </td>
<td>(</td>
- <td class="paramtype">GeneralName *&nbsp;</td>
- <td class="paramname"> <em>name</em>, </td>
+ <td class="paramtype">GeneralName *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char **&nbsp;</td>
- <td class="paramname"> <em>str</em></td><td>&nbsp;</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Unparse the hx509 name in name into a string.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name to print </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>an allocated string returns the name in string form</td></tr>
+</div><div class="memdoc">
+<p>Unparse the hx509 name in name into a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">name</td><td>the name to print </td></tr>
+ <tr><td class="paramname">str</td><td>an allocated string returns the name in string form</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g1838777e576422c1cb17093bbf7fa018"></a><!-- doxytag: member="name.c::hx509_name_binary" ref="g1838777e576422c1cb17093bbf7fa018" args="(const hx509_name name, heim_octet_string *os)" -->
+</div>
+<a id="ga1838777e576422c1cb17093bbf7fa018"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1838777e576422c1cb17093bbf7fa018">&#9670;&nbsp;</a></span>hx509_name_binary()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_name_binary </td>
+ <td class="memname">int hx509_name_binary </td>
<td>(</td>
- <td class="paramtype">const hx509_name&nbsp;</td>
- <td class="paramname"> <em>name</em>, </td>
+ <td class="paramtype">const hx509_name&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>os</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>os</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Convert a hx509_name object to DER encoded name.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name to concert </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>os</em>&nbsp;</td><td>data to a DER encoded name, free the resulting octet string with hx509_xfree(os-&gt;data).</td></tr>
+</div><div class="memdoc">
+<p>Convert a hx509_name object to DER encoded name.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">name</td><td>name to concert </td></tr>
+ <tr><td class="paramname">os</td><td>data to a DER encoded name, free the resulting octet string with hx509_xfree(os-&gt;data).</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gbd49c49301d601bc53371b867a7eac54"></a><!-- doxytag: member="name.c::hx509_name_cmp" ref="gbd49c49301d601bc53371b867a7eac54" args="(hx509_name n1, hx509_name n2)" -->
+</div>
+<a id="gabd49c49301d601bc53371b867a7eac54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gabd49c49301d601bc53371b867a7eac54">&#9670;&nbsp;</a></span>hx509_name_cmp()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_name_cmp </td>
+ <td class="memname">int hx509_name_cmp </td>
<td>(</td>
- <td class="paramtype">hx509_name&nbsp;</td>
- <td class="paramname"> <em>n1</em>, </td>
+ <td class="paramtype">hx509_name&#160;</td>
+ <td class="paramname"><em>n1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name&nbsp;</td>
- <td class="paramname"> <em>n2</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_name&#160;</td>
+ <td class="paramname"><em>n2</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Compare to hx509 name object, useful for sorting.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>n1</em>&nbsp;</td><td>a hx509 name object. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>n2</em>&nbsp;</td><td>a hx509 name object.</td></tr>
+</div><div class="memdoc">
+<p>Compare to hx509 name object, useful for sorting.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">n1</td><td>a hx509 name object. </td></tr>
+ <tr><td class="paramname">n2</td><td>a hx509 name object.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 the objects are the same, returns &gt; 0 is n2 is "larger" then n2, &lt; 0 if n1 is "smaller" then n2. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>0 the objects are the same, returns &gt; 0 is n2 is "larger" then n2, &lt; 0 if n1 is "smaller" then n2. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gcf9b6bfcdd810bed71e98f7e04d918ca"></a><!-- doxytag: member="name.c::hx509_name_copy" ref="gcf9b6bfcdd810bed71e98f7e04d918ca" args="(hx509_context context, const hx509_name from, hx509_name *to)" -->
+</div>
+<a id="gacf9b6bfcdd810bed71e98f7e04d918ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gacf9b6bfcdd810bed71e98f7e04d918ca">&#9670;&nbsp;</a></span>hx509_name_copy()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_name_copy </td>
+ <td class="memname">int hx509_name_copy </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const hx509_name&nbsp;</td>
- <td class="paramname"> <em>from</em>, </td>
+ <td class="paramtype">const hx509_name&#160;</td>
+ <td class="paramname"><em>from</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name *&nbsp;</td>
- <td class="paramname"> <em>to</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_name *&#160;</td>
+ <td class="paramname"><em>to</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Copy a hx509 name object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 cotext. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>from</em>&nbsp;</td><td>the name to copy from </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>to</em>&nbsp;</td><td>the name to copy to</td></tr>
+</div><div class="memdoc">
+<p>Copy a hx509 name object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 cotext. </td></tr>
+ <tr><td class="paramname">from</td><td>the name to copy from </td></tr>
+ <tr><td class="paramname">to</td><td>the name to copy to</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g42015083c70b6aa29c4f082998dbbece"></a><!-- doxytag: member="name.c::hx509_name_expand" ref="g42015083c70b6aa29c4f082998dbbece" args="(hx509_context context, hx509_name name, hx509_env env)" -->
+</div>
+<a id="ga42015083c70b6aa29c4f082998dbbece"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga42015083c70b6aa29c4f082998dbbece">&#9670;&nbsp;</a></span>hx509_name_expand()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_name_expand </td>
+ <td class="memname">int hx509_name_expand </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name&nbsp;</td>
- <td class="paramname"> <em>name</em>, </td>
+ <td class="paramtype">hx509_name&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_env&nbsp;</td>
- <td class="paramname"> <em>env</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_env&#160;</td>
+ <td class="paramname"><em>env</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Expands variables in the name using env. Variables are on the form ${name}. Useful when dealing with certificate templates.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 cotext. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name to expand. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>env</em>&nbsp;</td><td>environment variable to expand.</td></tr>
+</div><div class="memdoc">
+<p>Expands variables in the name using env. Variables are on the form ${name}. Useful when dealing with certificate templates.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 cotext. </td></tr>
+ <tr><td class="paramname">name</td><td>the name to expand. </td></tr>
+ <tr><td class="paramname">env</td><td>environment variable to expand.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<p>Only UTF8String rdnSequence names are allowed </p>
-<p>
-Only UTF8String rdnSequence names are allowed
</div>
-</div><p>
-<a class="anchor" name="gaf351931efb02fc7aea736af9977155e"></a><!-- doxytag: member="name.c::hx509_name_free" ref="gaf351931efb02fc7aea736af9977155e" args="(hx509_name *name)" -->
+</div>
+<a id="gaaf351931efb02fc7aea736af9977155e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaaf351931efb02fc7aea736af9977155e">&#9670;&nbsp;</a></span>hx509_name_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_name_free </td>
+ <td class="memname">void hx509_name_free </td>
<td>(</td>
- <td class="paramtype">hx509_name *&nbsp;</td>
- <td class="paramname"> <em>name</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_name *&#160;</td>
+ <td class="paramname"><em>name</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free a hx509 name object, upond return *name will be NULL.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>a hx509 name object to be freed. </td></tr>
+</div><div class="memdoc">
+<p>Free a hx509 name object, upond return *name will be NULL.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">name</td><td>a hx509 name object to be freed. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g4f6715dcabbbcb5d48512e504eae8352"></a><!-- doxytag: member="name.c::hx509_name_is_null_p" ref="g4f6715dcabbbcb5d48512e504eae8352" args="(const hx509_name name)" -->
+</div>
+<a id="ga4f6715dcabbbcb5d48512e504eae8352"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4f6715dcabbbcb5d48512e504eae8352">&#9670;&nbsp;</a></span>hx509_name_is_null_p()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_name_is_null_p </td>
+ <td class="memname">int hx509_name_is_null_p </td>
<td>(</td>
- <td class="paramtype">const hx509_name&nbsp;</td>
- <td class="paramname"> <em>name</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">const hx509_name&#160;</td>
+ <td class="paramname"><em>name</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Unparse the hx509 name in name into a string.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the name to check if its empty/null.</td></tr>
+</div><div class="memdoc">
+<p>Unparse the hx509 name in name into a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">name</td><td>the name to check if its empty/null.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>non zero if the name is empty/null. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>non zero if the name is empty/null. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g6e65dc67aa48bb87e4fb98ecfe512fbd"></a><!-- doxytag: member="name.c::hx509_name_to_Name" ref="g6e65dc67aa48bb87e4fb98ecfe512fbd" args="(const hx509_name from, Name *to)" -->
+</div>
+<a id="ga6e65dc67aa48bb87e4fb98ecfe512fbd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga6e65dc67aa48bb87e4fb98ecfe512fbd">&#9670;&nbsp;</a></span>hx509_name_to_Name()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_name_to_Name </td>
+ <td class="memname">int hx509_name_to_Name </td>
<td>(</td>
- <td class="paramtype">const hx509_name&nbsp;</td>
- <td class="paramname"> <em>from</em>, </td>
+ <td class="paramtype">const hx509_name&#160;</td>
+ <td class="paramname"><em>from</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">Name *&nbsp;</td>
- <td class="paramname"> <em>to</em></td><td>&nbsp;</td>
+ <td class="paramtype">Name *&#160;</td>
+ <td class="paramname"><em>to</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Convert a hx509_name into a Name.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>from</em>&nbsp;</td><td>the name to copy from </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>to</em>&nbsp;</td><td>the name to copy to</td></tr>
+</div><div class="memdoc">
+<p>Convert a hx509_name into a Name.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">from</td><td>the name to copy from </td></tr>
+ <tr><td class="paramname">to</td><td>the name to copy to</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g1bd74b34e0aa88b083678ba231d38718"></a><!-- doxytag: member="name.c::hx509_name_to_string" ref="g1bd74b34e0aa88b083678ba231d38718" args="(const hx509_name name, char **str)" -->
+</div>
+<a id="ga1bd74b34e0aa88b083678ba231d38718"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1bd74b34e0aa88b083678ba231d38718">&#9670;&nbsp;</a></span>hx509_name_to_string()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_name_to_string </td>
+ <td class="memname">int hx509_name_to_string </td>
<td>(</td>
- <td class="paramtype">const hx509_name&nbsp;</td>
- <td class="paramname"> <em>name</em>, </td>
+ <td class="paramtype">const hx509_name&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char **&nbsp;</td>
- <td class="paramname"> <em>str</em></td><td>&nbsp;</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Convert the hx509 name object into a printable string. The resulting string should be freed with free().<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name to print </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>the string to return</td></tr>
+</div><div class="memdoc">
+<p>Convert the hx509 name object into a printable string. The resulting string should be freed with free().</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">name</td><td>name to print </td></tr>
+ <tr><td class="paramname">str</td><td>the string to return</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g0565f607a4e57d0911ee7081ad9548c5"></a><!-- doxytag: member="name.c::hx509_parse_name" ref="g0565f607a4e57d0911ee7081ad9548c5" args="(hx509_context context, const char *str, hx509_name *name)" -->
+</div>
+<a id="ga0565f607a4e57d0911ee7081ad9548c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga0565f607a4e57d0911ee7081ad9548c5">&#9670;&nbsp;</a></span>hx509_parse_name()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_parse_name </td>
+ <td class="memname">int hx509_parse_name </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>str</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_name *&nbsp;</td>
- <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_name *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Parse a string into a hx509 name object.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>a string to parse. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>the resulting object, NULL in case of error.</td></tr>
+</div><div class="memdoc">
+<p>Parse a string into a hx509 name object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">str</td><td>a string to parse. </td></tr>
+ <tr><td class="paramname">name</td><td>the resulting object, NULL in case of error.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gf8f73e0a75da2189b1815d8c968750df"></a><!-- doxytag: member="name.c::hx509_unparse_der_name" ref="gf8f73e0a75da2189b1815d8c968750df" args="(const void *data, size_t length, char **str)" -->
+</div>
+<a id="gaf8f73e0a75da2189b1815d8c968750df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaf8f73e0a75da2189b1815d8c968750df">&#9670;&nbsp;</a></span>hx509_unparse_der_name()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_unparse_der_name </td>
+ <td class="memname">int hx509_unparse_der_name </td>
<td>(</td>
- <td class="paramtype">const void *&nbsp;</td>
- <td class="paramname"> <em>data</em>, </td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>length</em>, </td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char **&nbsp;</td>
- <td class="paramname"> <em>str</em></td><td>&nbsp;</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Convert a DER encoded name info a string.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>data to a DER/BER encoded name </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>length of data </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>the resulting string, is NULL on failure.</td></tr>
+</div><div class="memdoc">
+<p>Convert a DER encoded name info a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">data</td><td>data to a DER/BER encoded name </td></tr>
+ <tr><td class="paramname">length</td><td>length of data </td></tr>
+ <tr><td class="paramname">str</td><td>the resulting string, is NULL on failure.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__peer.html b/doc/doxyout/hx509/html/group__hx509__peer.html
index eecfd0361d8f..b266208f53c7 100644
--- a/doc/doxyout/hx509/html/group__hx509__peer.html
+++ b/doc/doxyout/hx509/html/group__hx509__peer.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 certificate selecting functions</title>
+<title>hx509 certificate selecting functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,230 +8,235 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 certificate selecting functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 certificate selecting functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#gf4093f25751c1974c7fc65b882aac4d8">hx509_peer_info_alloc</a> (hx509_context context, hx509_peer_info *peer)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#ge7b541b7b98303050e8ecc85935d2abc">hx509_peer_info_free</a> (hx509_peer_info peer)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#g6462bcb987ee03fcb181834f127e5d3e">hx509_peer_info_set_cert</a> (hx509_peer_info peer, hx509_cert cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#g5ca456f9cc2d27e4cf034f342324f0d1">hx509_peer_info_add_cms_alg</a> (hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier *val)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#g4f61c86442845518d86bc2c5b30fcdb5">hx509_peer_info_set_cms_algs</a> (hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier *val, size_t len)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:gaf4093f25751c1974c7fc65b882aac4d8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#gaf4093f25751c1974c7fc65b882aac4d8">hx509_peer_info_alloc</a> (hx509_context context, hx509_peer_info *peer)</td></tr>
+<tr class="separator:gaf4093f25751c1974c7fc65b882aac4d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae7b541b7b98303050e8ecc85935d2abc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#gae7b541b7b98303050e8ecc85935d2abc">hx509_peer_info_free</a> (hx509_peer_info peer)</td></tr>
+<tr class="separator:gae7b541b7b98303050e8ecc85935d2abc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6462bcb987ee03fcb181834f127e5d3e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#ga6462bcb987ee03fcb181834f127e5d3e">hx509_peer_info_set_cert</a> (hx509_peer_info peer, hx509_cert cert)</td></tr>
+<tr class="separator:ga6462bcb987ee03fcb181834f127e5d3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5ca456f9cc2d27e4cf034f342324f0d1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#ga5ca456f9cc2d27e4cf034f342324f0d1">hx509_peer_info_add_cms_alg</a> (hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier *val)</td></tr>
+<tr class="separator:ga5ca456f9cc2d27e4cf034f342324f0d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4f61c86442845518d86bc2c5b30fcdb5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__peer.html#ga4f61c86442845518d86bc2c5b30fcdb5">hx509_peer_info_set_cms_algs</a> (hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier *val, size_t len)</td></tr>
+<tr class="separator:ga4f61c86442845518d86bc2c5b30fcdb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<hr><h2>Function Documentation</h2>
-<a class="anchor" name="g5ca456f9cc2d27e4cf034f342324f0d1"></a><!-- doxytag: member="peer.c::hx509_peer_info_add_cms_alg" ref="g5ca456f9cc2d27e4cf034f342324f0d1" args="(hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier *val)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga5ca456f9cc2d27e4cf034f342324f0d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5ca456f9cc2d27e4cf034f342324f0d1">&#9670;&nbsp;</a></span>hx509_peer_info_add_cms_alg()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_peer_info_add_cms_alg </td>
+ <td class="memname">int hx509_peer_info_add_cms_alg </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_peer_info&nbsp;</td>
- <td class="paramname"> <em>peer</em>, </td>
+ <td class="paramtype">hx509_peer_info&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const AlgorithmIdentifier *&nbsp;</td>
- <td class="paramname"> <em>val</em></td><td>&nbsp;</td>
+ <td class="paramtype">const AlgorithmIdentifier *&#160;</td>
+ <td class="paramname"><em>val</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add an additional algorithm that the peer supports.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>peer</em>&nbsp;</td><td>the peer to set the new algorithms for </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>an AlgorithmsIdentier to add</td></tr>
+</div><div class="memdoc">
+<p>Add an additional algorithm that the peer supports.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">peer</td><td>the peer to set the new algorithms for </td></tr>
+ <tr><td class="paramname">val</td><td>an AlgorithmsIdentier to add</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gf4093f25751c1974c7fc65b882aac4d8"></a><!-- doxytag: member="peer.c::hx509_peer_info_alloc" ref="gf4093f25751c1974c7fc65b882aac4d8" args="(hx509_context context, hx509_peer_info *peer)" -->
+</div>
+<a id="gaf4093f25751c1974c7fc65b882aac4d8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaf4093f25751c1974c7fc65b882aac4d8">&#9670;&nbsp;</a></span>hx509_peer_info_alloc()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_peer_info_alloc </td>
+ <td class="memname">int hx509_peer_info_alloc </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_peer_info *&nbsp;</td>
- <td class="paramname"> <em>peer</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_peer_info *&#160;</td>
+ <td class="paramname"><em>peer</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allocate a new peer info structure an init it to default values.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>peer</em>&nbsp;</td><td>return an allocated peer, free with <a class="el" href="group__hx509__peer.html#ge7b541b7b98303050e8ecc85935d2abc">hx509_peer_info_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Allocate a new peer info structure an init it to default values.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">peer</td><td>return an allocated peer, free with <a class="el" href="group__hx509__peer.html#gae7b541b7b98303050e8ecc85935d2abc">hx509_peer_info_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="ge7b541b7b98303050e8ecc85935d2abc"></a><!-- doxytag: member="peer.c::hx509_peer_info_free" ref="ge7b541b7b98303050e8ecc85935d2abc" args="(hx509_peer_info peer)" -->
+</div>
+<a id="gae7b541b7b98303050e8ecc85935d2abc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae7b541b7b98303050e8ecc85935d2abc">&#9670;&nbsp;</a></span>hx509_peer_info_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_peer_info_free </td>
+ <td class="memname">void hx509_peer_info_free </td>
<td>(</td>
- <td class="paramtype">hx509_peer_info&nbsp;</td>
- <td class="paramname"> <em>peer</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_peer_info&#160;</td>
+ <td class="paramname"><em>peer</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free a peer info structure.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>peer</em>&nbsp;</td><td>peer info to be freed. </td></tr>
+</div><div class="memdoc">
+<p>Free a peer info structure.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">peer</td><td>peer info to be freed. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g6462bcb987ee03fcb181834f127e5d3e"></a><!-- doxytag: member="peer.c::hx509_peer_info_set_cert" ref="g6462bcb987ee03fcb181834f127e5d3e" args="(hx509_peer_info peer, hx509_cert cert)" -->
+</div>
+<a id="ga6462bcb987ee03fcb181834f127e5d3e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga6462bcb987ee03fcb181834f127e5d3e">&#9670;&nbsp;</a></span>hx509_peer_info_set_cert()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_peer_info_set_cert </td>
+ <td class="memname">int hx509_peer_info_set_cert </td>
<td>(</td>
- <td class="paramtype">hx509_peer_info&nbsp;</td>
- <td class="paramname"> <em>peer</em>, </td>
+ <td class="paramtype">hx509_peer_info&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the certificate that remote peer is using.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>peer</em>&nbsp;</td><td>peer info to update </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>cerificate of the remote peer.</td></tr>
+</div><div class="memdoc">
+<p>Set the certificate that remote peer is using.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">peer</td><td>peer info to update </td></tr>
+ <tr><td class="paramname">cert</td><td>cerificate of the remote peer.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g4f61c86442845518d86bc2c5b30fcdb5"></a><!-- doxytag: member="peer.c::hx509_peer_info_set_cms_algs" ref="g4f61c86442845518d86bc2c5b30fcdb5" args="(hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier *val, size_t len)" -->
+</div>
+<a id="ga4f61c86442845518d86bc2c5b30fcdb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4f61c86442845518d86bc2c5b30fcdb5">&#9670;&nbsp;</a></span>hx509_peer_info_set_cms_algs()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_peer_info_set_cms_algs </td>
+ <td class="memname">int hx509_peer_info_set_cms_algs </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_peer_info&nbsp;</td>
- <td class="paramname"> <em>peer</em>, </td>
+ <td class="paramtype">hx509_peer_info&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const AlgorithmIdentifier *&nbsp;</td>
- <td class="paramname"> <em>val</em>, </td>
+ <td class="paramtype">const AlgorithmIdentifier *&#160;</td>
+ <td class="paramname"><em>val</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the algorithms that the peer supports.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>peer</em>&nbsp;</td><td>the peer to set the new algorithms for </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>array of supported AlgorithmsIdentiers </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>len</em>&nbsp;</td><td>length of array val.</td></tr>
+</div><div class="memdoc">
+<p>Set the algorithms that the peer supports.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">peer</td><td>the peer to set the new algorithms for </td></tr>
+ <tr><td class="paramname">val</td><td>array of supported AlgorithmsIdentiers </td></tr>
+ <tr><td class="paramname">len</td><td>length of array val.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:41 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__print.html b/doc/doxyout/hx509/html/group__hx509__print.html
index 63dcd4beb801..72278f6861f8 100644
--- a/doc/doxyout/hx509/html/group__hx509__print.html
+++ b/doc/doxyout/hx509/html/group__hx509__print.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 printing functions</title>
+<title>hx509 printing functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,445 +8,452 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 printing functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 printing functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#ge27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout</a> (void *ctx, const char *fmt, va_list va)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gc116d19332498d183eb055452d682d81">hx509_oid_sprint</a> (const heim_oid *oid, char **str)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g984e34629525e8c301b237c158c34d23">hx509_oid_print</a> (const heim_oid *oid, hx509_vprint_func func, void *ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g274370b840dec6de699577e3d203e6b2">hx509_bitstring_print</a> (const heim_bit_string *b, hx509_vprint_func func, void *ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gafcf2f11a60a1f9b6ccabaacef0e697f">hx509_cert_keyusage_print</a> (hx509_context context, hx509_cert c, char **s)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g582e93c29a1becbe5c2ac1ac758e09f4">hx509_validate_ctx_init</a> (hx509_context context, hx509_validate_ctx *ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g2fab228a24716340f368fa729b5722b1">hx509_validate_ctx_set_print</a> (hx509_validate_ctx ctx, hx509_vprint_func func, void *c)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gdfc4c934e63c8c7b10661520de70411e">hx509_validate_ctx_add_flags</a> (hx509_validate_ctx ctx, int flags)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g72409ecab29eec94cc0215ed21ecca8e">hx509_validate_ctx_free</a> (hx509_validate_ctx ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g5e3ded9ba5c466a2c6f80b9d233b69c3">hx509_validate_cert</a> (hx509_context context, hx509_validate_ctx ctx, hx509_cert cert)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:gae27c328d203e88c87cf81b6eb1d1fe66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gae27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout</a> (void *ctx, const char *fmt, va_list va)</td></tr>
+<tr class="separator:gae27c328d203e88c87cf81b6eb1d1fe66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac116d19332498d183eb055452d682d81"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gac116d19332498d183eb055452d682d81">hx509_oid_sprint</a> (const heim_oid *oid, char **str)</td></tr>
+<tr class="separator:gac116d19332498d183eb055452d682d81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga984e34629525e8c301b237c158c34d23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#ga984e34629525e8c301b237c158c34d23">hx509_oid_print</a> (const heim_oid *oid, hx509_vprint_func func, void *ctx)</td></tr>
+<tr class="separator:ga984e34629525e8c301b237c158c34d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga274370b840dec6de699577e3d203e6b2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#ga274370b840dec6de699577e3d203e6b2">hx509_bitstring_print</a> (const heim_bit_string *b, hx509_vprint_func func, void *ctx)</td></tr>
+<tr class="separator:ga274370b840dec6de699577e3d203e6b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaafcf2f11a60a1f9b6ccabaacef0e697f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gaafcf2f11a60a1f9b6ccabaacef0e697f">hx509_cert_keyusage_print</a> (hx509_context context, hx509_cert c, char **s)</td></tr>
+<tr class="separator:gaafcf2f11a60a1f9b6ccabaacef0e697f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga582e93c29a1becbe5c2ac1ac758e09f4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#ga582e93c29a1becbe5c2ac1ac758e09f4">hx509_validate_ctx_init</a> (hx509_context context, hx509_validate_ctx *ctx)</td></tr>
+<tr class="separator:ga582e93c29a1becbe5c2ac1ac758e09f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga2fab228a24716340f368fa729b5722b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#ga2fab228a24716340f368fa729b5722b1">hx509_validate_ctx_set_print</a> (hx509_validate_ctx ctx, hx509_vprint_func func, void *c)</td></tr>
+<tr class="separator:ga2fab228a24716340f368fa729b5722b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gadfc4c934e63c8c7b10661520de70411e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gadfc4c934e63c8c7b10661520de70411e">hx509_validate_ctx_add_flags</a> (hx509_validate_ctx ctx, int flags)</td></tr>
+<tr class="separator:gadfc4c934e63c8c7b10661520de70411e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga72409ecab29eec94cc0215ed21ecca8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#ga72409ecab29eec94cc0215ed21ecca8e">hx509_validate_ctx_free</a> (hx509_validate_ctx ctx)</td></tr>
+<tr class="separator:ga72409ecab29eec94cc0215ed21ecca8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5e3ded9ba5c466a2c6f80b9d233b69c3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#ga5e3ded9ba5c466a2c6f80b9d233b69c3">hx509_validate_cert</a> (hx509_context context, hx509_validate_ctx ctx, hx509_cert cert)</td></tr>
+<tr class="separator:ga5e3ded9ba5c466a2c6f80b9d233b69c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<hr><h2>Function Documentation</h2>
-<a class="anchor" name="g274370b840dec6de699577e3d203e6b2"></a><!-- doxytag: member="print.c::hx509_bitstring_print" ref="g274370b840dec6de699577e3d203e6b2" args="(const heim_bit_string *b, hx509_vprint_func func, void *ctx)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga274370b840dec6de699577e3d203e6b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga274370b840dec6de699577e3d203e6b2">&#9670;&nbsp;</a></span>hx509_bitstring_print()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_bitstring_print </td>
+ <td class="memname">void hx509_bitstring_print </td>
<td>(</td>
- <td class="paramtype">const heim_bit_string *&nbsp;</td>
- <td class="paramname"> <em>b</em>, </td>
+ <td class="paramtype">const heim_bit_string *&#160;</td>
+ <td class="paramname"><em>b</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_vprint_func&nbsp;</td>
- <td class="paramname"> <em>func</em>, </td>
+ <td class="paramtype">hx509_vprint_func&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Print a bitstring using a hx509_vprint_func function. To print to stdout use <a class="el" href="group__hx509__print.html#ge27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>b</em>&nbsp;</td><td>bit string to print. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>func</em>&nbsp;</td><td>hx509_vprint_func to print with. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>context variable to hx509_vprint_func function. </td></tr>
+</div><div class="memdoc">
+<p>Print a bitstring using a hx509_vprint_func function. To print to stdout use <a class="el" href="group__hx509__print.html#gae27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">b</td><td>bit string to print. </td></tr>
+ <tr><td class="paramname">func</td><td>hx509_vprint_func to print with. </td></tr>
+ <tr><td class="paramname">ctx</td><td>context variable to hx509_vprint_func function. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="gafcf2f11a60a1f9b6ccabaacef0e697f"></a><!-- doxytag: member="print.c::hx509_cert_keyusage_print" ref="gafcf2f11a60a1f9b6ccabaacef0e697f" args="(hx509_context context, hx509_cert c, char **s)" -->
+</div>
+<a id="gaafcf2f11a60a1f9b6ccabaacef0e697f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaafcf2f11a60a1f9b6ccabaacef0e697f">&#9670;&nbsp;</a></span>hx509_cert_keyusage_print()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_cert_keyusage_print </td>
+ <td class="memname">int hx509_cert_keyusage_print </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>c</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char **&nbsp;</td>
- <td class="paramname"> <em>s</em></td><td>&nbsp;</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Print certificate usage for a certificate to a string.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>a certificate print the keyusage for. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>s</em>&nbsp;</td><td>the return string with the keysage printed in to, free with <a class="el" href="group__hx509__misc.html#gba6d3eb6abde539a3191269f785e3e61">hx509_xfree()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Print certificate usage for a certificate to a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">c</td><td>a certificate print the keyusage for. </td></tr>
+ <tr><td class="paramname">s</td><td>the return string with the keysage printed in to, free with <a class="el" href="group__hx509__misc.html#gaba6d3eb6abde539a3191269f785e3e61">hx509_xfree()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g984e34629525e8c301b237c158c34d23"></a><!-- doxytag: member="print.c::hx509_oid_print" ref="g984e34629525e8c301b237c158c34d23" args="(const heim_oid *oid, hx509_vprint_func func, void *ctx)" -->
+</div>
+<a id="ga984e34629525e8c301b237c158c34d23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga984e34629525e8c301b237c158c34d23">&#9670;&nbsp;</a></span>hx509_oid_print()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_oid_print </td>
+ <td class="memname">void hx509_oid_print </td>
<td>(</td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>oid</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>oid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_vprint_func&nbsp;</td>
- <td class="paramname"> <em>func</em>, </td>
+ <td class="paramtype">hx509_vprint_func&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Print a oid using a hx509_vprint_func function. To print to stdout use <a class="el" href="group__hx509__print.html#ge27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>oid</em>&nbsp;</td><td>oid to print </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>func</em>&nbsp;</td><td>hx509_vprint_func to print with. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>context variable to hx509_vprint_func function. </td></tr>
+</div><div class="memdoc">
+<p>Print a oid using a hx509_vprint_func function. To print to stdout use <a class="el" href="group__hx509__print.html#gae27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">oid</td><td>oid to print </td></tr>
+ <tr><td class="paramname">func</td><td>hx509_vprint_func to print with. </td></tr>
+ <tr><td class="paramname">ctx</td><td>context variable to hx509_vprint_func function. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="gc116d19332498d183eb055452d682d81"></a><!-- doxytag: member="print.c::hx509_oid_sprint" ref="gc116d19332498d183eb055452d682d81" args="(const heim_oid *oid, char **str)" -->
+</div>
+<a id="gac116d19332498d183eb055452d682d81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gac116d19332498d183eb055452d682d81">&#9670;&nbsp;</a></span>hx509_oid_sprint()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_oid_sprint </td>
+ <td class="memname">int hx509_oid_sprint </td>
<td>(</td>
- <td class="paramtype">const heim_oid *&nbsp;</td>
- <td class="paramname"> <em>oid</em>, </td>
+ <td class="paramtype">const heim_oid *&#160;</td>
+ <td class="paramname"><em>oid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">char **&nbsp;</td>
- <td class="paramname"> <em>str</em></td><td>&nbsp;</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Print a oid to a string.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>oid</em>&nbsp;</td><td>oid to print </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>str</em>&nbsp;</td><td>allocated string, free with <a class="el" href="group__hx509__misc.html#gba6d3eb6abde539a3191269f785e3e61">hx509_xfree()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Print a oid to a string.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">oid</td><td>oid to print </td></tr>
+ <tr><td class="paramname">str</td><td>allocated string, free with <a class="el" href="group__hx509__misc.html#gaba6d3eb6abde539a3191269f785e3e61">hx509_xfree()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="ge27c328d203e88c87cf81b6eb1d1fe66"></a><!-- doxytag: member="print.c::hx509_print_stdout" ref="ge27c328d203e88c87cf81b6eb1d1fe66" args="(void *ctx, const char *fmt, va_list va)" -->
+</div>
+<a id="gae27c328d203e88c87cf81b6eb1d1fe66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae27c328d203e88c87cf81b6eb1d1fe66">&#9670;&nbsp;</a></span>hx509_print_stdout()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_print_stdout </td>
+ <td class="memname">void hx509_print_stdout </td>
<td>(</td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>fmt</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">va_list&nbsp;</td>
- <td class="paramname"> <em>va</em></td><td>&nbsp;</td>
+ <td class="paramtype">va_list&#160;</td>
+ <td class="paramname"><em>va</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Helper function to print on stdout for:<ul>
-<li><a class="el" href="group__hx509__print.html#g984e34629525e8c301b237c158c34d23">hx509_oid_print()</a>,</li><li><a class="el" href="group__hx509__print.html#g274370b840dec6de699577e3d203e6b2">hx509_bitstring_print()</a>,</li><li><a class="el" href="group__hx509__print.html#g2fab228a24716340f368fa729b5722b1">hx509_validate_ctx_set_print()</a>.</li></ul>
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>the context to the print function. If the ctx is NULL, stdout is used. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>fmt</em>&nbsp;</td><td>the printing format. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>va</em>&nbsp;</td><td>the argumet list. </td></tr>
+</div><div class="memdoc">
+<p>Helper function to print on stdout for:</p><ul>
+<li><a class="el" href="group__hx509__print.html#ga984e34629525e8c301b237c158c34d23">hx509_oid_print()</a>,</li>
+<li><a class="el" href="group__hx509__print.html#ga274370b840dec6de699577e3d203e6b2">hx509_bitstring_print()</a>,</li>
+<li><a class="el" href="group__hx509__print.html#ga2fab228a24716340f368fa729b5722b1">hx509_validate_ctx_set_print()</a>.</li>
+</ul>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>the context to the print function. If the ctx is NULL, stdout is used. </td></tr>
+ <tr><td class="paramname">fmt</td><td>the printing format. </td></tr>
+ <tr><td class="paramname">va</td><td>the argumet list. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g5e3ded9ba5c466a2c6f80b9d233b69c3"></a><!-- doxytag: member="print.c::hx509_validate_cert" ref="g5e3ded9ba5c466a2c6f80b9d233b69c3" args="(hx509_context context, hx509_validate_ctx ctx, hx509_cert cert)" -->
+</div>
+<a id="ga5e3ded9ba5c466a2c6f80b9d233b69c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5e3ded9ba5c466a2c6f80b9d233b69c3">&#9670;&nbsp;</a></span>hx509_validate_cert()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_validate_cert </td>
+ <td class="memname">int hx509_validate_cert </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_validate_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_validate_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Validate/Print the status of the certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>A hx509 validation context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>the cerificate to validate/print.</td></tr>
+</div><div class="memdoc">
+<p>Validate/Print the status of the certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">ctx</td><td>A hx509 validation context. </td></tr>
+ <tr><td class="paramname">cert</td><td>the cerificate to validate/print.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gdfc4c934e63c8c7b10661520de70411e"></a><!-- doxytag: member="print.c::hx509_validate_ctx_add_flags" ref="gdfc4c934e63c8c7b10661520de70411e" args="(hx509_validate_ctx ctx, int flags)" -->
+</div>
+<a id="gadfc4c934e63c8c7b10661520de70411e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gadfc4c934e63c8c7b10661520de70411e">&#9670;&nbsp;</a></span>hx509_validate_ctx_add_flags()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_validate_ctx_add_flags </td>
+ <td class="memname">void hx509_validate_ctx_add_flags </td>
<td>(</td>
- <td class="paramtype">hx509_validate_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_validate_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add flags to control the behaivor of the <a class="el" href="group__hx509__print.html#g5e3ded9ba5c466a2c6f80b9d233b69c3">hx509_validate_cert()</a> function.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>A hx509 validation context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>flags to add to the validation context.</td></tr>
+</div><div class="memdoc">
+<p>Add flags to control the behaivor of the <a class="el" href="group__hx509__print.html#ga5e3ded9ba5c466a2c6f80b9d233b69c3">hx509_validate_cert()</a> function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>A hx509 validation context. </td></tr>
+ <tr><td class="paramname">flags</td><td>flags to add to the validation context.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g72409ecab29eec94cc0215ed21ecca8e"></a><!-- doxytag: member="print.c::hx509_validate_ctx_free" ref="g72409ecab29eec94cc0215ed21ecca8e" args="(hx509_validate_ctx ctx)" -->
+</div>
+<a id="ga72409ecab29eec94cc0215ed21ecca8e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga72409ecab29eec94cc0215ed21ecca8e">&#9670;&nbsp;</a></span>hx509_validate_ctx_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_validate_ctx_free </td>
+ <td class="memname">void hx509_validate_ctx_free </td>
<td>(</td>
- <td class="paramtype">hx509_validate_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_validate_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free an hx509 validate context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>the hx509 validate context to free. </td></tr>
+</div><div class="memdoc">
+<p>Free an hx509 validate context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>the hx509 validate context to free. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g582e93c29a1becbe5c2ac1ac758e09f4"></a><!-- doxytag: member="print.c::hx509_validate_ctx_init" ref="g582e93c29a1becbe5c2ac1ac758e09f4" args="(hx509_context context, hx509_validate_ctx *ctx)" -->
+</div>
+<a id="ga582e93c29a1becbe5c2ac1ac758e09f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga582e93c29a1becbe5c2ac1ac758e09f4">&#9670;&nbsp;</a></span>hx509_validate_ctx_init()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_validate_ctx_init </td>
+ <td class="memname">int hx509_validate_ctx_init </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_validate_ctx *&nbsp;</td>
- <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_validate_ctx *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allocate a hx509 validation/printing context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a new allocated hx509 validation context, free with <a class="el" href="group__hx509__print.html#g72409ecab29eec94cc0215ed21ecca8e">hx509_validate_ctx_free()</a>.</td></tr>
+</div><div class="memdoc">
+<p>Allocate a hx509 validation/printing context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">ctx</td><td>a new allocated hx509 validation context, free with <a class="el" href="group__hx509__print.html#ga72409ecab29eec94cc0215ed21ecca8e">hx509_validate_ctx_free()</a>.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g2fab228a24716340f368fa729b5722b1"></a><!-- doxytag: member="print.c::hx509_validate_ctx_set_print" ref="g2fab228a24716340f368fa729b5722b1" args="(hx509_validate_ctx ctx, hx509_vprint_func func, void *c)" -->
+</div>
+<a id="ga2fab228a24716340f368fa729b5722b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga2fab228a24716340f368fa729b5722b1">&#9670;&nbsp;</a></span>hx509_validate_ctx_set_print()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_validate_ctx_set_print </td>
+ <td class="memname">void hx509_validate_ctx_set_print </td>
<td>(</td>
- <td class="paramtype">hx509_validate_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_validate_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_vprint_func&nbsp;</td>
- <td class="paramname"> <em>func</em>, </td>
+ <td class="paramtype">hx509_vprint_func&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">void *&nbsp;</td>
- <td class="paramname"> <em>c</em></td><td>&nbsp;</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>c</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the printing functions for the validation context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a hx509 valication context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>func</em>&nbsp;</td><td>the printing function to usea. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>c</em>&nbsp;</td><td>the context variable to the printing function.</td></tr>
+</div><div class="memdoc">
+<p>Set the printing functions for the validation context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>a hx509 valication context. </td></tr>
+ <tr><td class="paramname">func</td><td>the printing function to usea. </td></tr>
+ <tr><td class="paramname">c</td><td>the context variable to the printing function.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:41 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__query.html b/doc/doxyout/hx509/html/group__hx509__query.html
index c1e6495fb984..637968c5d499 100644
--- a/doc/doxyout/hx509/html/group__hx509__query.html
+++ b/doc/doxyout/hx509/html/group__hx509__query.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 query functions</title>
+<title>hx509 query functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,22 +8,23 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">hx509 query functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 query functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-</table>
-</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__revoke.html b/doc/doxyout/hx509/html/group__hx509__revoke.html
index 13c1652eae08..8677aa51b5d3 100644
--- a/doc/doxyout/hx509/html/group__hx509__revoke.html
+++ b/doc/doxyout/hx509/html/group__hx509__revoke.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 revokation checking functions</title>
+<title>hx509 revokation checking functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,371 +8,377 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 revokation checking functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 revokation checking functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#g83057d3c52d4b298b92571d48cf7099e">hx509_revoke_init</a> (hx509_context context, hx509_revoke_ctx *ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#gc0928df8a473e5a76fd8a2785d43ea9b">hx509_revoke_free</a> (hx509_revoke_ctx *ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#gbda08999b0473bda2077b54c96be79e9">hx509_revoke_add_ocsp</a> (hx509_context context, hx509_revoke_ctx ctx, const char *path)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#g90c30e6adae77012e1360bb502b57c72">hx509_revoke_add_crl</a> (hx509_context context, hx509_revoke_ctx ctx, const char *path)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#g3faf6194dc7429f8850e02b3ae2bbeeb">hx509_revoke_verify</a> (hx509_context context, hx509_revoke_ctx ctx, hx509_certs certs, time_t now, hx509_cert cert, hx509_cert parent_cert)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#gef3bddfe2f6b619ced673cf9aef07c37">hx509_ocsp_request</a> (hx509_context context, hx509_certs reqcerts, hx509_certs pool, hx509_cert signer, const AlgorithmIdentifier *digest, heim_octet_string *request, heim_octet_string *nonce)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#gb55b117222f61fd628744f2cd6d5a218">hx509_revoke_ocsp_print</a> (hx509_context context, const char *path, FILE *out)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga83057d3c52d4b298b92571d48cf7099e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#ga83057d3c52d4b298b92571d48cf7099e">hx509_revoke_init</a> (hx509_context context, hx509_revoke_ctx *ctx)</td></tr>
+<tr class="separator:ga83057d3c52d4b298b92571d48cf7099e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac0928df8a473e5a76fd8a2785d43ea9b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#gac0928df8a473e5a76fd8a2785d43ea9b">hx509_revoke_free</a> (hx509_revoke_ctx *ctx)</td></tr>
+<tr class="separator:gac0928df8a473e5a76fd8a2785d43ea9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gabda08999b0473bda2077b54c96be79e9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#gabda08999b0473bda2077b54c96be79e9">hx509_revoke_add_ocsp</a> (hx509_context context, hx509_revoke_ctx ctx, const char *path)</td></tr>
+<tr class="separator:gabda08999b0473bda2077b54c96be79e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga90c30e6adae77012e1360bb502b57c72"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#ga90c30e6adae77012e1360bb502b57c72">hx509_revoke_add_crl</a> (hx509_context context, hx509_revoke_ctx ctx, const char *path)</td></tr>
+<tr class="separator:ga90c30e6adae77012e1360bb502b57c72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga3faf6194dc7429f8850e02b3ae2bbeeb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#ga3faf6194dc7429f8850e02b3ae2bbeeb">hx509_revoke_verify</a> (hx509_context context, hx509_revoke_ctx ctx, hx509_certs certs, time_t now, hx509_cert cert, hx509_cert parent_cert)</td></tr>
+<tr class="separator:ga3faf6194dc7429f8850e02b3ae2bbeeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaef3bddfe2f6b619ced673cf9aef07c37"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#gaef3bddfe2f6b619ced673cf9aef07c37">hx509_ocsp_request</a> (hx509_context context, hx509_certs reqcerts, hx509_certs pool, hx509_cert signer, const AlgorithmIdentifier *digest, heim_octet_string *request, heim_octet_string *nonce)</td></tr>
+<tr class="separator:gaef3bddfe2f6b619ced673cf9aef07c37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab55b117222f61fd628744f2cd6d5a218"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__revoke.html#gab55b117222f61fd628744f2cd6d5a218">hx509_revoke_ocsp_print</a> (hx509_context context, const char *path, FILE *out)</td></tr>
+<tr class="separator:gab55b117222f61fd628744f2cd6d5a218"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-See the <a class="el" href="page_revoke.html">Revocation methods</a> for description and examples. <hr><h2>Function Documentation</h2>
-<a class="anchor" name="gef3bddfe2f6b619ced673cf9aef07c37"></a><!-- doxytag: member="revoke.c::hx509_ocsp_request" ref="gef3bddfe2f6b619ced673cf9aef07c37" args="(hx509_context context, hx509_certs reqcerts, hx509_certs pool, hx509_cert signer, const AlgorithmIdentifier *digest, heim_octet_string *request, heim_octet_string *nonce)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>See the <a class="el" href="page_revoke.html">Revocation methods</a> for description and examples. </p>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="gaef3bddfe2f6b619ced673cf9aef07c37"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaef3bddfe2f6b619ced673cf9aef07c37">&#9670;&nbsp;</a></span>hx509_ocsp_request()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ocsp_request </td>
+ <td class="memname">int hx509_ocsp_request </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>reqcerts</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>reqcerts</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>pool</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>pool</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>signer</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>signer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const AlgorithmIdentifier *&nbsp;</td>
- <td class="paramname"> <em>digest</em>, </td>
+ <td class="paramtype">const AlgorithmIdentifier *&#160;</td>
+ <td class="paramname"><em>digest</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>request</em>, </td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>nonce</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>nonce</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Create an OCSP request for a set of certificates.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>reqcerts</em>&nbsp;</td><td>list of certificates to request ocsp data for </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>certificate pool to use when signing </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>signer</em>&nbsp;</td><td>certificate to use to sign the request </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>digest</em>&nbsp;</td><td>the signing algorithm in the request, if NULL use the default signature algorithm, </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>request</em>&nbsp;</td><td>the encoded request, free with free_heim_octet_string(). </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>nonce</em>&nbsp;</td><td>nonce in the request, free with free_heim_octet_string().</td></tr>
+</div><div class="memdoc">
+<p>Create an OCSP request for a set of certificates.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context </td></tr>
+ <tr><td class="paramname">reqcerts</td><td>list of certificates to request ocsp data for </td></tr>
+ <tr><td class="paramname">pool</td><td>certificate pool to use when signing </td></tr>
+ <tr><td class="paramname">signer</td><td>certificate to use to sign the request </td></tr>
+ <tr><td class="paramname">digest</td><td>the signing algorithm in the request, if NULL use the default signature algorithm, </td></tr>
+ <tr><td class="paramname">request</td><td>the encoded request, free with free_heim_octet_string(). </td></tr>
+ <tr><td class="paramname">nonce</td><td>nonce in the request, free with free_heim_octet_string().</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g90c30e6adae77012e1360bb502b57c72"></a><!-- doxytag: member="revoke.c::hx509_revoke_add_crl" ref="g90c30e6adae77012e1360bb502b57c72" args="(hx509_context context, hx509_revoke_ctx ctx, const char *path)" -->
+</div>
+<a id="ga90c30e6adae77012e1360bb502b57c72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga90c30e6adae77012e1360bb502b57c72">&#9670;&nbsp;</a></span>hx509_revoke_add_crl()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_revoke_add_crl </td>
+ <td class="memname">int hx509_revoke_add_crl </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_revoke_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_revoke_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>path</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a CRL file to the revokation context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>hx509 context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>hx509 revokation context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>path to file that is going to be added to the context.</td></tr>
+</div><div class="memdoc">
+<p>Add a CRL file to the revokation context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>hx509 context </td></tr>
+ <tr><td class="paramname">ctx</td><td>hx509 revokation context </td></tr>
+ <tr><td class="paramname">path</td><td>path to file that is going to be added to the context.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gbda08999b0473bda2077b54c96be79e9"></a><!-- doxytag: member="revoke.c::hx509_revoke_add_ocsp" ref="gbda08999b0473bda2077b54c96be79e9" args="(hx509_context context, hx509_revoke_ctx ctx, const char *path)" -->
+</div>
+<a id="gabda08999b0473bda2077b54c96be79e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gabda08999b0473bda2077b54c96be79e9">&#9670;&nbsp;</a></span>hx509_revoke_add_ocsp()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_revoke_add_ocsp </td>
+ <td class="memname">int hx509_revoke_add_ocsp </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_revoke_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_revoke_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>path</em></td><td>&nbsp;</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>path</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add a OCSP file to the revokation context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>hx509 context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>hx509 revokation context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>path to file that is going to be added to the context.</td></tr>
+</div><div class="memdoc">
+<p>Add a OCSP file to the revokation context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>hx509 context </td></tr>
+ <tr><td class="paramname">ctx</td><td>hx509 revokation context </td></tr>
+ <tr><td class="paramname">path</td><td>path to file that is going to be added to the context.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gc0928df8a473e5a76fd8a2785d43ea9b"></a><!-- doxytag: member="revoke.c::hx509_revoke_free" ref="gc0928df8a473e5a76fd8a2785d43ea9b" args="(hx509_revoke_ctx *ctx)" -->
+</div>
+<a id="gac0928df8a473e5a76fd8a2785d43ea9b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gac0928df8a473e5a76fd8a2785d43ea9b">&#9670;&nbsp;</a></span>hx509_revoke_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_revoke_free </td>
+ <td class="memname">void hx509_revoke_free </td>
<td>(</td>
- <td class="paramtype">hx509_revoke_ctx *&nbsp;</td>
- <td class="paramname"> <em>ctx</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_revoke_ctx *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free a hx509 revokation context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>context to be freed </td></tr>
+</div><div class="memdoc">
+<p>Free a hx509 revokation context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>context to be freed </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g83057d3c52d4b298b92571d48cf7099e"></a><!-- doxytag: member="revoke.c::hx509_revoke_init" ref="g83057d3c52d4b298b92571d48cf7099e" args="(hx509_context context, hx509_revoke_ctx *ctx)" -->
+</div>
+<a id="ga83057d3c52d4b298b92571d48cf7099e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga83057d3c52d4b298b92571d48cf7099e">&#9670;&nbsp;</a></span>hx509_revoke_init()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_revoke_init </td>
+ <td class="memname">int hx509_revoke_init </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_revoke_ctx *&nbsp;</td>
- <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_revoke_ctx *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allocate a revokation context. Free with <a class="el" href="group__hx509__revoke.html#gc0928df8a473e5a76fd8a2785d43ea9b">hx509_revoke_free()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>returns a newly allocated revokation context.</td></tr>
+</div><div class="memdoc">
+<p>Allocate a revokation context. Free with <a class="el" href="group__hx509__revoke.html#gac0928df8a473e5a76fd8a2785d43ea9b">hx509_revoke_free()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">ctx</td><td>returns a newly allocated revokation context.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gb55b117222f61fd628744f2cd6d5a218"></a><!-- doxytag: member="revoke.c::hx509_revoke_ocsp_print" ref="gb55b117222f61fd628744f2cd6d5a218" args="(hx509_context context, const char *path, FILE *out)" -->
+</div>
+<a id="gab55b117222f61fd628744f2cd6d5a218"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gab55b117222f61fd628744f2cd6d5a218">&#9670;&nbsp;</a></span>hx509_revoke_ocsp_print()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_revoke_ocsp_print </td>
+ <td class="memname">int hx509_revoke_ocsp_print </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const char *&nbsp;</td>
- <td class="paramname"> <em>path</em>, </td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>path</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">FILE *&nbsp;</td>
- <td class="paramname"> <em>out</em></td><td>&nbsp;</td>
+ <td class="paramtype">FILE *&#160;</td>
+ <td class="paramname"><em>out</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Print the OCSP reply stored in a file.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>path</em>&nbsp;</td><td>path to a file with a OCSP reply </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>out</em>&nbsp;</td><td>the out FILE descriptor to print the reply on</td></tr>
+</div><div class="memdoc">
+<p>Print the OCSP reply stored in a file.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context </td></tr>
+ <tr><td class="paramname">path</td><td>path to a file with a OCSP reply </td></tr>
+ <tr><td class="paramname">out</td><td>the out FILE descriptor to print the reply on</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g3faf6194dc7429f8850e02b3ae2bbeeb"></a><!-- doxytag: member="revoke.c::hx509_revoke_verify" ref="g3faf6194dc7429f8850e02b3ae2bbeeb" args="(hx509_context context, hx509_revoke_ctx ctx, hx509_certs certs, time_t now, hx509_cert cert, hx509_cert parent_cert)" -->
+</div>
+<a id="ga3faf6194dc7429f8850e02b3ae2bbeeb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga3faf6194dc7429f8850e02b3ae2bbeeb">&#9670;&nbsp;</a></span>hx509_revoke_verify()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_revoke_verify </td>
+ <td class="memname">int hx509_revoke_verify </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_revoke_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_revoke_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em>, </td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">time_t&nbsp;</td>
- <td class="paramname"> <em>now</em>, </td>
+ <td class="paramtype">time_t&#160;</td>
+ <td class="paramname"><em>now</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>parent_cert</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>parent_cert</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Check that a certificate is not expired according to a revokation context. Also need the parent certificte to the check OCSP parent identifier.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>hx509 context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>hx509 revokation context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td></td></tr>
- <tr><td valign="top"></td><td valign="top"><em>now</em>&nbsp;</td><td></td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td></td></tr>
- <tr><td valign="top"></td><td valign="top"><em>parent_cert</em>&nbsp;</td><td></td></tr>
+</div><div class="memdoc">
+<p>Check that a certificate is not expired according to a revokation context. Also need the parent certificte to the check OCSP parent identifier.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>hx509 context </td></tr>
+ <tr><td class="paramname">ctx</td><td>hx509 revokation context </td></tr>
+ <tr><td class="paramname">certs</td><td></td></tr>
+ <tr><td class="paramname">now</td><td></td></tr>
+ <tr><td class="paramname">cert</td><td></td></tr>
+ <tr><td class="paramname">parent_cert</td><td></td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/group__hx509__verify.html b/doc/doxyout/hx509/html/group__hx509__verify.html
index bd0cbabf03f2..37bcf1eb8532 100644
--- a/doc/doxyout/hx509/html/group__hx509__verify.html
+++ b/doc/doxyout/hx509/html/group__hx509__verify.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: hx509 verification functions</title>
+<title>hx509 verification functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,707 +8,712 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hx509 verification functions</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>hx509 verification functions</h1><table border="0" cellpadding="0" cellspacing="0">
-<tr><td></td></tr>
-<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gcf53ef0c8202b75d946b47266e4777da">hx509_context_set_missing_revoke</a> (hx509_context context, int flag)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g53a78d7c374e238354600b754f8ef4c7">hx509_verify_init_ctx</a> (hx509_context context, hx509_verify_ctx *ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga90ca3387075fbdf3ae014beda0b4108">hx509_verify_destroy_ctx</a> (hx509_verify_ctx ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gacc284cfe15ebfd4372aa0725d24e8a0">hx509_verify_attach_anchors</a> (hx509_verify_ctx ctx, hx509_certs set)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gaf1e783c744e3ce3918d7c00f101f1fc">hx509_verify_attach_revoke</a> (hx509_verify_ctx ctx, hx509_revoke_ctx revoke_ctx)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g1490c2944163f25cf02377bae5d0ab37">hx509_verify_set_time</a> (hx509_verify_ctx ctx, time_t t)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g11a6fe7afbd5cee1af2dedeffcaad33c">hx509_verify_set_max_depth</a> (hx509_verify_ctx ctx, unsigned int max_depth)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g50cae1e3d318471ff444770cfec4b0a8">hx509_verify_set_proxy_certificate</a> (hx509_verify_ctx ctx, int boolean)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g7c301cedab40be9a495dea2778202140">hx509_verify_set_strict_rfc3280_verification</a> (hx509_verify_ctx ctx, int boolean)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g1e84c0d08972e2dd87ba89f105183914">hx509_verify_path</a> (hx509_context context, hx509_verify_ctx ctx, hx509_cert cert, hx509_certs pool)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ge7e5973c6c9a66d599c44d9473ade82a">hx509_ocsp_verify</a> (hx509_context context, time_t now, hx509_cert cert, int flags, const void *data, size_t length, time_t *expiration)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g8b46fa446893a189808deabc2bc630d1">hx509_crl_alloc</a> (hx509_context context, hx509_crl *crl)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g51a77209dd8f88e8ca52ad618dc62fe6">hx509_crl_add_revoked_certs</a> (hx509_context context, hx509_crl crl, hx509_certs certs)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gaff0e82873a480d002cc7f1b69f430e8">hx509_crl_lifetime</a> (hx509_context context, hx509_crl crl, int delta)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gb59b054be16d4607aed4001ee071ecb6">hx509_crl_free</a> (hx509_context context, hx509_crl *crl)</td></tr>
-
-<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#g7361cfd5f3b413ea4715977fae210760">hx509_crl_sign</a> (hx509_context context, hx509_cert signer, hx509_crl crl, heim_octet_string *os)</td></tr>
-
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:gacf53ef0c8202b75d946b47266e4777da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gacf53ef0c8202b75d946b47266e4777da">hx509_context_set_missing_revoke</a> (hx509_context context, int flag)</td></tr>
+<tr class="separator:gacf53ef0c8202b75d946b47266e4777da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga53a78d7c374e238354600b754f8ef4c7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga53a78d7c374e238354600b754f8ef4c7">hx509_verify_init_ctx</a> (hx509_context context, hx509_verify_ctx *ctx)</td></tr>
+<tr class="separator:ga53a78d7c374e238354600b754f8ef4c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaa90ca3387075fbdf3ae014beda0b4108"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gaa90ca3387075fbdf3ae014beda0b4108">hx509_verify_destroy_ctx</a> (hx509_verify_ctx ctx)</td></tr>
+<tr class="separator:gaa90ca3387075fbdf3ae014beda0b4108"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaacc284cfe15ebfd4372aa0725d24e8a0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gaacc284cfe15ebfd4372aa0725d24e8a0">hx509_verify_attach_anchors</a> (hx509_verify_ctx ctx, hx509_certs set)</td></tr>
+<tr class="separator:gaacc284cfe15ebfd4372aa0725d24e8a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaaf1e783c744e3ce3918d7c00f101f1fc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gaaf1e783c744e3ce3918d7c00f101f1fc">hx509_verify_attach_revoke</a> (hx509_verify_ctx ctx, hx509_revoke_ctx revoke_ctx)</td></tr>
+<tr class="separator:gaaf1e783c744e3ce3918d7c00f101f1fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1490c2944163f25cf02377bae5d0ab37"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga1490c2944163f25cf02377bae5d0ab37">hx509_verify_set_time</a> (hx509_verify_ctx ctx, time_t t)</td></tr>
+<tr class="separator:ga1490c2944163f25cf02377bae5d0ab37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga11a6fe7afbd5cee1af2dedeffcaad33c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga11a6fe7afbd5cee1af2dedeffcaad33c">hx509_verify_set_max_depth</a> (hx509_verify_ctx ctx, unsigned int max_depth)</td></tr>
+<tr class="separator:ga11a6fe7afbd5cee1af2dedeffcaad33c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga50cae1e3d318471ff444770cfec4b0a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga50cae1e3d318471ff444770cfec4b0a8">hx509_verify_set_proxy_certificate</a> (hx509_verify_ctx ctx, int boolean)</td></tr>
+<tr class="separator:ga50cae1e3d318471ff444770cfec4b0a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7c301cedab40be9a495dea2778202140"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga7c301cedab40be9a495dea2778202140">hx509_verify_set_strict_rfc3280_verification</a> (hx509_verify_ctx ctx, int boolean)</td></tr>
+<tr class="separator:ga7c301cedab40be9a495dea2778202140"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1e84c0d08972e2dd87ba89f105183914"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga1e84c0d08972e2dd87ba89f105183914">hx509_verify_path</a> (hx509_context context, hx509_verify_ctx ctx, hx509_cert cert, hx509_certs pool)</td></tr>
+<tr class="separator:ga1e84c0d08972e2dd87ba89f105183914"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae7e5973c6c9a66d599c44d9473ade82a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gae7e5973c6c9a66d599c44d9473ade82a">hx509_ocsp_verify</a> (hx509_context context, time_t now, hx509_cert cert, int flags, const void *data, size_t length, time_t *expiration)</td></tr>
+<tr class="separator:gae7e5973c6c9a66d599c44d9473ade82a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8b46fa446893a189808deabc2bc630d1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga8b46fa446893a189808deabc2bc630d1">hx509_crl_alloc</a> (hx509_context context, hx509_crl *crl)</td></tr>
+<tr class="separator:ga8b46fa446893a189808deabc2bc630d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga51a77209dd8f88e8ca52ad618dc62fe6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga51a77209dd8f88e8ca52ad618dc62fe6">hx509_crl_add_revoked_certs</a> (hx509_context context, hx509_crl crl, hx509_certs certs)</td></tr>
+<tr class="separator:ga51a77209dd8f88e8ca52ad618dc62fe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaaff0e82873a480d002cc7f1b69f430e8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gaaff0e82873a480d002cc7f1b69f430e8">hx509_crl_lifetime</a> (hx509_context context, hx509_crl crl, int delta)</td></tr>
+<tr class="separator:gaaff0e82873a480d002cc7f1b69f430e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab59b054be16d4607aed4001ee071ecb6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#gab59b054be16d4607aed4001ee071ecb6">hx509_crl_free</a> (hx509_context context, hx509_crl *crl)</td></tr>
+<tr class="separator:gab59b054be16d4607aed4001ee071ecb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7361cfd5f3b413ea4715977fae210760"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__verify.html#ga7361cfd5f3b413ea4715977fae210760">hx509_crl_sign</a> (hx509_context context, hx509_cert signer, hx509_crl crl, heim_octet_string *os)</td></tr>
+<tr class="separator:ga7361cfd5f3b413ea4715977fae210760"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
-<hr><a name="_details"></a><h2>Detailed Description</h2>
-<hr><h2>Function Documentation</h2>
-<a class="anchor" name="gcf53ef0c8202b75d946b47266e4777da"></a><!-- doxytag: member="cert.c::hx509_context_set_missing_revoke" ref="gcf53ef0c8202b75d946b47266e4777da" args="(hx509_context context, int flag)" -->
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="gacf53ef0c8202b75d946b47266e4777da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gacf53ef0c8202b75d946b47266e4777da">&#9670;&nbsp;</a></span>hx509_context_set_missing_revoke()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_context_set_missing_revoke </td>
+ <td class="memname">void hx509_context_set_missing_revoke </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flag</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flag</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Selects if the <a class="el" href="group__hx509__revoke.html#g3faf6194dc7429f8850e02b3ae2bbeeb">hx509_revoke_verify()</a> function is going to require the existans of a revokation method (OCSP, CRL) or not. Note that <a class="el" href="group__hx509__verify.html#g1e84c0d08972e2dd87ba89f105183914">hx509_verify_path()</a>, <a class="el" href="group__hx509__cms.html#gedaf18507474021a8d092ca6ac90a1ad">hx509_cms_verify_signed()</a>, and other function call <a class="el" href="group__hx509__revoke.html#g3faf6194dc7429f8850e02b3ae2bbeeb">hx509_revoke_verify()</a>.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>hx509 context to change the flag for. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flag</em>&nbsp;</td><td>zero, revokation method required, non zero missing revokation method ok </td></tr>
+</div><div class="memdoc">
+<p>Selects if the <a class="el" href="group__hx509__revoke.html#ga3faf6194dc7429f8850e02b3ae2bbeeb">hx509_revoke_verify()</a> function is going to require the existans of a revokation method (OCSP, CRL) or not. Note that <a class="el" href="group__hx509__verify.html#ga1e84c0d08972e2dd87ba89f105183914">hx509_verify_path()</a>, <a class="el" href="group__hx509__cms.html#gaedaf18507474021a8d092ca6ac90a1ad">hx509_cms_verify_signed()</a>, and other function call <a class="el" href="group__hx509__revoke.html#ga3faf6194dc7429f8850e02b3ae2bbeeb">hx509_revoke_verify()</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>hx509 context to change the flag for. </td></tr>
+ <tr><td class="paramname">flag</td><td>zero, revokation method required, non zero missing revokation method ok </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g51a77209dd8f88e8ca52ad618dc62fe6"></a><!-- doxytag: member="revoke.c::hx509_crl_add_revoked_certs" ref="g51a77209dd8f88e8ca52ad618dc62fe6" args="(hx509_context context, hx509_crl crl, hx509_certs certs)" -->
+</div>
+<a id="ga51a77209dd8f88e8ca52ad618dc62fe6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga51a77209dd8f88e8ca52ad618dc62fe6">&#9670;&nbsp;</a></span>hx509_crl_add_revoked_certs()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_crl_add_revoked_certs </td>
+ <td class="memname">int hx509_crl_add_revoked_certs </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_crl&nbsp;</td>
- <td class="paramname"> <em>crl</em>, </td>
+ <td class="paramtype">hx509_crl&#160;</td>
+ <td class="paramname"><em>crl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>certs</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>certs</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Add revoked certificate to an CRL context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>crl</em>&nbsp;</td><td>the CRL to add the revoked certificate to. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>certs</em>&nbsp;</td><td>keyset of certificate to revoke.</td></tr>
+</div><div class="memdoc">
+<p>Add revoked certificate to an CRL context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">crl</td><td>the CRL to add the revoked certificate to. </td></tr>
+ <tr><td class="paramname">certs</td><td>keyset of certificate to revoke.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g8b46fa446893a189808deabc2bc630d1"></a><!-- doxytag: member="revoke.c::hx509_crl_alloc" ref="g8b46fa446893a189808deabc2bc630d1" args="(hx509_context context, hx509_crl *crl)" -->
+</div>
+<a id="ga8b46fa446893a189808deabc2bc630d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga8b46fa446893a189808deabc2bc630d1">&#9670;&nbsp;</a></span>hx509_crl_alloc()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_crl_alloc </td>
+ <td class="memname">int hx509_crl_alloc </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_crl *&nbsp;</td>
- <td class="paramname"> <em>crl</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_crl *&#160;</td>
+ <td class="paramname"><em>crl</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Create a CRL context. Use <a class="el" href="group__hx509__verify.html#gb59b054be16d4607aed4001ee071ecb6">hx509_crl_free()</a> to free the CRL context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>crl</em>&nbsp;</td><td>return pointer to a newly allocated CRL context.</td></tr>
+</div><div class="memdoc">
+<p>Create a CRL context. Use <a class="el" href="group__hx509__verify.html#gab59b054be16d4607aed4001ee071ecb6">hx509_crl_free()</a> to free the CRL context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">crl</td><td>return pointer to a newly allocated CRL context.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gb59b054be16d4607aed4001ee071ecb6"></a><!-- doxytag: member="revoke.c::hx509_crl_free" ref="gb59b054be16d4607aed4001ee071ecb6" args="(hx509_context context, hx509_crl *crl)" -->
+</div>
+<a id="gab59b054be16d4607aed4001ee071ecb6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gab59b054be16d4607aed4001ee071ecb6">&#9670;&nbsp;</a></span>hx509_crl_free()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_crl_free </td>
+ <td class="memname">void hx509_crl_free </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_crl *&nbsp;</td>
- <td class="paramname"> <em>crl</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_crl *&#160;</td>
+ <td class="paramname"><em>crl</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free a CRL context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>crl</em>&nbsp;</td><td>a CRL context to free. </td></tr>
+</div><div class="memdoc">
+<p>Free a CRL context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">crl</td><td>a CRL context to free. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="gaff0e82873a480d002cc7f1b69f430e8"></a><!-- doxytag: member="revoke.c::hx509_crl_lifetime" ref="gaff0e82873a480d002cc7f1b69f430e8" args="(hx509_context context, hx509_crl crl, int delta)" -->
+</div>
+<a id="gaaff0e82873a480d002cc7f1b69f430e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaaff0e82873a480d002cc7f1b69f430e8">&#9670;&nbsp;</a></span>hx509_crl_lifetime()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_crl_lifetime </td>
+ <td class="memname">int hx509_crl_lifetime </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_crl&nbsp;</td>
- <td class="paramname"> <em>crl</em>, </td>
+ <td class="paramtype">hx509_crl&#160;</td>
+ <td class="paramname"><em>crl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>delta</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>delta</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the lifetime of a CRL context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>crl</em>&nbsp;</td><td>a CRL context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>delta</em>&nbsp;</td><td>delta time the certificate is valid, library adds the current time to this.</td></tr>
+</div><div class="memdoc">
+<p>Set the lifetime of a CRL context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">crl</td><td>a CRL context </td></tr>
+ <tr><td class="paramname">delta</td><td>delta time the certificate is valid, library adds the current time to this.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g7361cfd5f3b413ea4715977fae210760"></a><!-- doxytag: member="revoke.c::hx509_crl_sign" ref="g7361cfd5f3b413ea4715977fae210760" args="(hx509_context context, hx509_cert signer, hx509_crl crl, heim_octet_string *os)" -->
+</div>
+<a id="ga7361cfd5f3b413ea4715977fae210760"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga7361cfd5f3b413ea4715977fae210760">&#9670;&nbsp;</a></span>hx509_crl_sign()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_crl_sign </td>
+ <td class="memname">int hx509_crl_sign </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>signer</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>signer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_crl&nbsp;</td>
- <td class="paramname"> <em>crl</em>, </td>
+ <td class="paramtype">hx509_crl&#160;</td>
+ <td class="paramname"><em>crl</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">heim_octet_string *&nbsp;</td>
- <td class="paramname"> <em>os</em></td><td>&nbsp;</td>
+ <td class="paramtype">heim_octet_string *&#160;</td>
+ <td class="paramname"><em>os</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Sign a CRL and return an encode certificate.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>signer</em>&nbsp;</td><td>certificate to sign the CRL with </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>crl</em>&nbsp;</td><td>the CRL to sign </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>os</em>&nbsp;</td><td>return the signed and encoded CRL, free with free_heim_octet_string()</td></tr>
+</div><div class="memdoc">
+<p>Sign a CRL and return an encode certificate.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context. </td></tr>
+ <tr><td class="paramname">signer</td><td>certificate to sign the CRL with </td></tr>
+ <tr><td class="paramname">crl</td><td>the CRL to sign </td></tr>
+ <tr><td class="paramname">os</td><td>return the signed and encoded CRL, free with free_heim_octet_string()</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="ge7e5973c6c9a66d599c44d9473ade82a"></a><!-- doxytag: member="revoke.c::hx509_ocsp_verify" ref="ge7e5973c6c9a66d599c44d9473ade82a" args="(hx509_context context, time_t now, hx509_cert cert, int flags, const void *data, size_t length, time_t *expiration)" -->
+</div>
+<a id="gae7e5973c6c9a66d599c44d9473ade82a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae7e5973c6c9a66d599c44d9473ade82a">&#9670;&nbsp;</a></span>hx509_ocsp_verify()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_ocsp_verify </td>
+ <td class="memname">int hx509_ocsp_verify </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">time_t&nbsp;</td>
- <td class="paramname"> <em>now</em>, </td>
+ <td class="paramtype">time_t&#160;</td>
+ <td class="paramname"><em>now</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>flags</em>, </td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">const void *&nbsp;</td>
- <td class="paramname"> <em>data</em>, </td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">size_t&nbsp;</td>
- <td class="paramname"> <em>length</em>, </td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">time_t *&nbsp;</td>
- <td class="paramname"> <em>expiration</em></td><td>&nbsp;</td>
+ <td class="paramtype">time_t *&#160;</td>
+ <td class="paramname"><em>expiration</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Verify that the certificate is part of the OCSP reply and it's not expired. Doesn't verify signature the OCSP reply or it's done by a authorized sender, that is assumed to be already done.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>a hx509 context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>now</em>&nbsp;</td><td>the time right now, if 0, use the current time. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>the certificate to verify </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>flags</em>&nbsp;</td><td>flags control the behavior </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer to the encode ocsp reply </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the encode ocsp reply </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>expiration</em>&nbsp;</td><td>return the time the OCSP will expire and need to be rechecked.</td></tr>
+</div><div class="memdoc">
+<p>Verify that the certificate is part of the OCSP reply and it's not expired. Doesn't verify signature the OCSP reply or it's done by a authorized sender, that is assumed to be already done.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>a hx509 context </td></tr>
+ <tr><td class="paramname">now</td><td>the time right now, if 0, use the current time. </td></tr>
+ <tr><td class="paramname">cert</td><td>the certificate to verify </td></tr>
+ <tr><td class="paramname">flags</td><td>flags control the behavior </td></tr>
+ <tr><td class="paramname">data</td><td>pointer to the encode ocsp reply </td></tr>
+ <tr><td class="paramname">length</td><td>the length of the encode ocsp reply </td></tr>
+ <tr><td class="paramname">expiration</td><td>return the time the OCSP will expire and need to be rechecked.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="gacc284cfe15ebfd4372aa0725d24e8a0"></a><!-- doxytag: member="cert.c::hx509_verify_attach_anchors" ref="gacc284cfe15ebfd4372aa0725d24e8a0" args="(hx509_verify_ctx ctx, hx509_certs set)" -->
+</div>
+<a id="gaacc284cfe15ebfd4372aa0725d24e8a0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaacc284cfe15ebfd4372aa0725d24e8a0">&#9670;&nbsp;</a></span>hx509_verify_attach_anchors()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_verify_attach_anchors </td>
+ <td class="memname">void hx509_verify_attach_anchors </td>
<td>(</td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>set</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>set</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the trust anchors in the verification context, makes an reference to the keyset, so the consumer can free the keyset independent of the destruction of the verification context (ctx). If there already is a keyset attached, it's released.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a verification context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>a keyset containing the trust anchors. </td></tr>
+</div><div class="memdoc">
+<p>Set the trust anchors in the verification context, makes an reference to the keyset, so the consumer can free the keyset independent of the destruction of the verification context (ctx). If there already is a keyset attached, it's released.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>a verification context </td></tr>
+ <tr><td class="paramname">set</td><td>a keyset containing the trust anchors. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="gaf1e783c744e3ce3918d7c00f101f1fc"></a><!-- doxytag: member="cert.c::hx509_verify_attach_revoke" ref="gaf1e783c744e3ce3918d7c00f101f1fc" args="(hx509_verify_ctx ctx, hx509_revoke_ctx revoke_ctx)" -->
+</div>
+<a id="gaaf1e783c744e3ce3918d7c00f101f1fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaaf1e783c744e3ce3918d7c00f101f1fc">&#9670;&nbsp;</a></span>hx509_verify_attach_revoke()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_verify_attach_revoke </td>
+ <td class="memname">void hx509_verify_attach_revoke </td>
<td>(</td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_revoke_ctx&nbsp;</td>
- <td class="paramname"> <em>revoke_ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_revoke_ctx&#160;</td>
+ <td class="paramname"><em>revoke_ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Attach an revocation context to the verfication context, , makes an reference to the revoke context, so the consumer can free the revoke context independent of the destruction of the verification context. If there is no revoke context, the verification process is NOT going to check any verification status.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a verification context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>revoke_ctx</em>&nbsp;</td><td>a revoke context. </td></tr>
+</div><div class="memdoc">
+<p>Attach an revocation context to the verfication context, , makes an reference to the revoke context, so the consumer can free the revoke context independent of the destruction of the verification context. If there is no revoke context, the verification process is NOT going to check any verification status.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>a verification context. </td></tr>
+ <tr><td class="paramname">revoke_ctx</td><td>a revoke context. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="ga90ca3387075fbdf3ae014beda0b4108"></a><!-- doxytag: member="cert.c::hx509_verify_destroy_ctx" ref="ga90ca3387075fbdf3ae014beda0b4108" args="(hx509_verify_ctx ctx)" -->
+</div>
+<a id="gaa90ca3387075fbdf3ae014beda0b4108"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaa90ca3387075fbdf3ae014beda0b4108">&#9670;&nbsp;</a></span>hx509_verify_destroy_ctx()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_verify_destroy_ctx </td>
+ <td class="memname">void hx509_verify_destroy_ctx </td>
<td>(</td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em> </td>
- <td>&nbsp;)&nbsp;</td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
<td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Free an hx509 verification context.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>the context to be freed. </td></tr>
+</div><div class="memdoc">
+<p>Free an hx509 verification context.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>the context to be freed. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g53a78d7c374e238354600b754f8ef4c7"></a><!-- doxytag: member="cert.c::hx509_verify_init_ctx" ref="g53a78d7c374e238354600b754f8ef4c7" args="(hx509_context context, hx509_verify_ctx *ctx)" -->
+</div>
+<a id="ga53a78d7c374e238354600b754f8ef4c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga53a78d7c374e238354600b754f8ef4c7">&#9670;&nbsp;</a></span>hx509_verify_init_ctx()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_verify_init_ctx </td>
+ <td class="memname">int hx509_verify_init_ctx </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_verify_ctx *&nbsp;</td>
- <td class="paramname"> <em>ctx</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_verify_ctx *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allocate an verification context that is used fo control the verification process.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>returns a pointer to a hx509_verify_ctx object.</td></tr>
+</div><div class="memdoc">
+<p>Allocate an verification context that is used fo control the verification process.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">ctx</td><td>returns a pointer to a hx509_verify_ctx object.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g1e84c0d08972e2dd87ba89f105183914"></a><!-- doxytag: member="cert.c::hx509_verify_path" ref="g1e84c0d08972e2dd87ba89f105183914" args="(hx509_context context, hx509_verify_ctx ctx, hx509_cert cert, hx509_certs pool)" -->
+</div>
+<a id="ga1e84c0d08972e2dd87ba89f105183914"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1e84c0d08972e2dd87ba89f105183914">&#9670;&nbsp;</a></span>hx509_verify_path()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">int hx509_verify_path </td>
+ <td class="memname">int hx509_verify_path </td>
<td>(</td>
- <td class="paramtype">hx509_context&nbsp;</td>
- <td class="paramname"> <em>context</em>, </td>
+ <td class="paramtype">hx509_context&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_cert&nbsp;</td>
- <td class="paramname"> <em>cert</em>, </td>
+ <td class="paramtype">hx509_cert&#160;</td>
+ <td class="paramname"><em>cert</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">hx509_certs&nbsp;</td>
- <td class="paramname"> <em>pool</em></td><td>&nbsp;</td>
+ <td class="paramtype">hx509_certs&#160;</td>
+ <td class="paramname"><em>pool</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Build and verify the path for the certificate to the trust anchor specified in the verify context. The path is constructed from the certificate, the pool and the trust anchors.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>A hx509 context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>A hx509 verification context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>cert</em>&nbsp;</td><td>the certificate to build the path from. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>A keyset of certificates to build the chain from.</td></tr>
+</div><div class="memdoc">
+<p>Build and verify the path for the certificate to the trust anchor specified in the verify context. The path is constructed from the certificate, the pool and the trust anchors.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">context</td><td>A hx509 context. </td></tr>
+ <tr><td class="paramname">ctx</td><td>A hx509 verification context. </td></tr>
+ <tr><td class="paramname">cert</td><td>the certificate to build the path from. </td></tr>
+ <tr><td class="paramname">pool</td><td>A keyset of certificates to build the chain from.</td></tr>
</table>
+ </dd>
</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#ga15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl>
</div>
-</div><p>
-<a class="anchor" name="g11a6fe7afbd5cee1af2dedeffcaad33c"></a><!-- doxytag: member="cert.c::hx509_verify_set_max_depth" ref="g11a6fe7afbd5cee1af2dedeffcaad33c" args="(hx509_verify_ctx ctx, unsigned int max_depth)" -->
+</div>
+<a id="ga11a6fe7afbd5cee1af2dedeffcaad33c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga11a6fe7afbd5cee1af2dedeffcaad33c">&#9670;&nbsp;</a></span>hx509_verify_set_max_depth()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_verify_set_max_depth </td>
+ <td class="memname">void hx509_verify_set_max_depth </td>
<td>(</td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">unsigned int&nbsp;</td>
- <td class="paramname"> <em>max_depth</em></td><td>&nbsp;</td>
+ <td class="paramtype">unsigned int&#160;</td>
+ <td class="paramname"><em>max_depth</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the maximum depth of the certificate chain that the path builder is going to try.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a verification context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>max_depth</em>&nbsp;</td><td>maxium depth of the certificate chain, include trust anchor. </td></tr>
+</div><div class="memdoc">
+<p>Set the maximum depth of the certificate chain that the path builder is going to try.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>a verification context </td></tr>
+ <tr><td class="paramname">max_depth</td><td>maxium depth of the certificate chain, include trust anchor. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g50cae1e3d318471ff444770cfec4b0a8"></a><!-- doxytag: member="cert.c::hx509_verify_set_proxy_certificate" ref="g50cae1e3d318471ff444770cfec4b0a8" args="(hx509_verify_ctx ctx, int boolean)" -->
+</div>
+<a id="ga50cae1e3d318471ff444770cfec4b0a8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga50cae1e3d318471ff444770cfec4b0a8">&#9670;&nbsp;</a></span>hx509_verify_set_proxy_certificate()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_verify_set_proxy_certificate </td>
+ <td class="memname">void hx509_verify_set_proxy_certificate </td>
<td>(</td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>boolean</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>boolean</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Allow or deny the use of proxy certificates<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a verification context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>boolean</em>&nbsp;</td><td>if non zero, allow proxy certificates. </td></tr>
+</div><div class="memdoc">
+<p>Allow or deny the use of proxy certificates</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>a verification context </td></tr>
+ <tr><td class="paramname">boolean</td><td>if non zero, allow proxy certificates. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g7c301cedab40be9a495dea2778202140"></a><!-- doxytag: member="cert.c::hx509_verify_set_strict_rfc3280_verification" ref="g7c301cedab40be9a495dea2778202140" args="(hx509_verify_ctx ctx, int boolean)" -->
+</div>
+<a id="ga7c301cedab40be9a495dea2778202140"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga7c301cedab40be9a495dea2778202140">&#9670;&nbsp;</a></span>hx509_verify_set_strict_rfc3280_verification()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_verify_set_strict_rfc3280_verification </td>
+ <td class="memname">void hx509_verify_set_strict_rfc3280_verification </td>
<td>(</td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">int&nbsp;</td>
- <td class="paramname"> <em>boolean</em></td><td>&nbsp;</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>boolean</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Select strict RFC3280 verification of certificiates. This means checking key usage on CA certificates, this will make version 1 certificiates unuseable.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a verification context </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>boolean</em>&nbsp;</td><td>if non zero, use strict verification. </td></tr>
+</div><div class="memdoc">
+<p>Select strict RFC3280 verification of certificiates. This means checking key usage on CA certificates, this will make version 1 certificiates unuseable.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>a verification context </td></tr>
+ <tr><td class="paramname">boolean</td><td>if non zero, use strict verification. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
-<a class="anchor" name="g1490c2944163f25cf02377bae5d0ab37"></a><!-- doxytag: member="cert.c::hx509_verify_set_time" ref="g1490c2944163f25cf02377bae5d0ab37" args="(hx509_verify_ctx ctx, time_t t)" -->
+</div>
+<a id="ga1490c2944163f25cf02377bae5d0ab37"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1490c2944163f25cf02377bae5d0ab37">&#9670;&nbsp;</a></span>hx509_verify_set_time()</h2>
+
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
- <td class="memname">void hx509_verify_set_time </td>
+ <td class="memname">void hx509_verify_set_time </td>
<td>(</td>
- <td class="paramtype">hx509_verify_ctx&nbsp;</td>
- <td class="paramname"> <em>ctx</em>, </td>
+ <td class="paramtype">hx509_verify_ctx&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
- <td class="paramtype">time_t&nbsp;</td>
- <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
+ <td class="paramtype">time_t&#160;</td>
+ <td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
- <td></td><td></td><td></td>
+ <td></td><td></td>
</tr>
</table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the clock time the the verification process is going to use. Used to check certificate in the past and future time. If not set the current time will be used.<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
- <table border="0" cellspacing="2" cellpadding="0">
- <tr><td valign="top"></td><td valign="top"><em>ctx</em>&nbsp;</td><td>a verification context. </td></tr>
- <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>the time the verifiation is using. </td></tr>
+</div><div class="memdoc">
+<p>Set the clock time the the verification process is going to use. Used to check certificate in the past and future time. If not set the current time will be used.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">ctx</td><td>a verification context. </td></tr>
+ <tr><td class="paramname">t</td><td>the time the verifiation is using. </td></tr>
</table>
+ </dd>
</dl>
</div>
-</div><p>
</div>
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/index.html b/doc/doxyout/hx509/html/index.html
index 3deba3e118ac..a52301912b0d 100644
--- a/doc/doxyout/hx509/html/index.html
+++ b/doc/doxyout/hx509/html/index.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Heimdal PKIX/X.509 library</title>
+<title>Heimdal PKIX/X.509 library</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,28 +8,40 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li class="current"><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Heimdal PKIX/X.509 library </div> </div>
+</div><!--header-->
<div class="contents">
-<h1>Heimdal PKIX/X.509 library</h1>
-<p>
-<h3 align="center">1.5.2 </h3><h2><a class="anchor" name="intro">
-Introduction</a></h2>
-Heimdal libhx509 library is a implementation of the PKIX/X.509 and related protocols.<p>
-PKIX/X.509 is ...<p>
-Sections in this manual are:<ul>
-<li><a class="el" href="page_name.html">PKIX/X.509 Names</a></li><li><a class="el" href="page_cert.html">The basic certificate</a></li><li><a class="el" href="page_keyset.html">Certificate store operations</a></li><li><a class="el" href="page_error.html">Hx509 error reporting functions</a></li><li><a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a></li><li><a class="el" href="page_cms.html">CMS/PKCS7 message functions.</a></li><li><a class="el" href="page_ca.html">Hx509 CA functions</a></li><li><a class="el" href="page_revoke.html">Revocation methods</a></li><li><a class="el" href="page_print.html">Hx509 printing functions</a></li><li><a class="el" href="page_env.html">Hx509 enviroment functions</a></li></ul>
-<p>
-The project web page: <a href="http://www.h5l.org/">http://www.h5l.org/</a> </div>
+<div class="textblock"><h1><a class="anchor" id="intro"></a>
+Introduction</h1>
+<p>Heimdal libhx509 library is a implementation of the PKIX/X.509 and related protocols.</p>
+<p>PKIX/X.509 is ...</p>
+<p>Sections in this manual are:</p><ul>
+<li><a class="el" href="page_name.html">PKIX/X.509 Names</a></li>
+<li><a class="el" href="page_cert.html">The basic certificate</a></li>
+<li><a class="el" href="page_keyset.html">Certificate store operations</a></li>
+<li><a class="el" href="page_error.html">Hx509 error reporting functions</a></li>
+<li><a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a></li>
+<li><a class="el" href="page_cms.html">CMS/PKCS7 message functions.</a></li>
+<li><a class="el" href="page_ca.html">Hx509 CA functions</a></li>
+<li><a class="el" href="page_revoke.html">Revocation methods</a></li>
+<li><a class="el" href="page_print.html">Hx509 printing functions</a></li>
+<li><a class="el" href="page_env.html">Hx509 environment functions</a></li>
+</ul>
+<p>The project web page: <a href="http://www.h5l.org/">http://www.h5l.org/</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/jquery.js b/doc/doxyout/hx509/html/jquery.js
new file mode 100644
index 000000000000..f5343eda922a
--- /dev/null
+++ b/doc/doxyout/hx509/html/jquery.js
@@ -0,0 +1,87 @@
+/*!
+ * jQuery JavaScript Library v1.7.1
+ * http://jquery.com/
+ *
+ * Copyright 2011, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Mon Nov 21 21:11:03 2011 -0500
+ */
+(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b4<b3;b4++){if((b9=arguments[b4])!=null){for(b2 in b9){b0=b5[b2];b1=b9[b2];if(b5===b1){continue}if(b8&&b1&&(bF.isPlainObject(b1)||(b6=bF.isArray(b1)))){if(b6){b6=false;b7=b0&&bF.isArray(b0)?b0:[]}else{b7=b0&&bF.isPlainObject(b0)?b0:{}}b5[b2]=bF.extend(b8,b7,b1)}else{if(b1!==L){b5[b2]=b1}}}}}return b5};bF.extend({noConflict:function(b0){if(bb.$===bF){bb.$=bH}if(b0&&bb.jQuery===bF){bb.jQuery=bU}return bF},isReady:false,readyWait:1,holdReady:function(b0){if(b0){bF.readyWait++}else{bF.ready(true)}},ready:function(b0){if((b0===true&&!--bF.readyWait)||(b0!==true&&!bF.isReady)){if(!av.body){return setTimeout(bF.ready,1)}bF.isReady=true;if(b0!==true&&--bF.readyWait>0){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b4<b5;){if(b6.apply(b3[b4++],b2)===false){break}}}}else{if(b0){for(b1 in b3){if(b6.call(b3[b1],b1,b3[b1])===false){break}}}else{for(;b4<b5;){if(b6.call(b3[b4],b4,b3[b4++])===false){break}}}}return b3},trim:bO?function(b0){return b0==null?"":bO.call(b0)}:function(b0){return b0==null?"":b0.toString().replace(bI,"").replace(bE,"")},makeArray:function(b3,b1){var b0=b1||[];if(b3!=null){var b2=bF.type(b3);if(b3.length==null||b2==="string"||b2==="function"||b2==="regexp"||bF.isWindow(b3)){bz.call(b0,b3)}else{bF.merge(b0,b3)}}return b0},inArray:function(b2,b3,b1){var b0;if(b3){if(bv){return bv.call(b3,b2,b1)}b0=b3.length;b1=b1?b1<0?Math.max(0,b0+b1):b1:0;for(;b1<b0;b1++){if(b1 in b3&&b3[b1]===b2){return b1}}}return -1},merge:function(b4,b2){var b3=b4.length,b1=0;if(typeof b2.length==="number"){for(var b0=b2.length;b1<b0;b1++){b4[b3++]=b2[b1]}}else{while(b2[b1]!==L){b4[b3++]=b2[b1++]}}b4.length=b3;return b4},grep:function(b1,b6,b0){var b2=[],b5;b0=!!b0;for(var b3=0,b4=b1.length;b3<b4;b3++){b5=!!b6(b1[b3],b3);if(b0!==b5){b2.push(b1[b3])}}return b2},map:function(b0,b7,b8){var b5,b6,b4=[],b2=0,b1=b0.length,b3=b0 instanceof bF||b1!==L&&typeof b1==="number"&&((b1>0&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b2<b1;b2++){b5=b7(b0[b2],b2,b8);if(b5!=null){b4[b4.length]=b5}}}else{for(b6 in b0){b5=b7(b0[b6],b6,b8);if(b5!=null){b4[b4.length]=b5}}}return b4.concat.apply([],b4)},guid:1,proxy:function(b4,b3){if(typeof b3==="string"){var b2=b4[b3];b3=b4;b4=b2}if(!bF.isFunction(b4)){return L}var b0=bK.call(arguments,2),b1=function(){return b4.apply(b3,b0.concat(bK.call(arguments)))};b1.guid=b4.guid=b4.guid||b1.guid||bF.guid++;return b1},access:function(b0,b8,b6,b2,b5,b7){var b1=b0.length;if(typeof b8==="object"){for(var b3 in b8){bF.access(b0,b3,b8[b3],b2,b5,b6)}return b0}if(b6!==L){b2=!b7&&b2&&bF.isFunction(b6);for(var b4=0;b4<b1;b4++){b5(b0[b4],b8,b2?b6.call(b0[b4],b4,b5(b0[b4],b8)):b6,b7)}return b0}return b1?b5(b0[0],b8):L},now:function(){return(new Date()).getTime()},uaMatch:function(b1){b1=b1.toLowerCase();var b0=by.exec(b1)||bR.exec(b1)||bQ.exec(b1)||b1.indexOf("compatible")<0&&bS.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}},sub:function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bF.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bF&&!(b4 instanceof b0)){b4=b0(b4)}return bF.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(av);return b0},browser:{}});bF.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(b1,b0){bx["[object "+b0+"]"]=b0.toLowerCase()});bV=bF.uaMatch(bX);if(bV.browser){bF.browser[bV.browser]=true;bF.browser.version=bV.version}if(bF.browser.webkit){bF.browser.safari=true}if(bM.test("\xA0")){bI=/^[\s\xA0]+/;bE=/[\s\xA0]+$/}bD=bF(av);if(av.addEventListener){e=function(){av.removeEventListener("DOMContentLoaded",e,false);bF.ready()}}else{if(av.attachEvent){e=function(){if(av.readyState==="complete"){av.detachEvent("onreadystatechange",e);bF.ready()}}}}function bw(){if(bF.isReady){return}try{av.documentElement.doScroll("left")}catch(b0){setTimeout(bw,1);return}bF.ready()}return bF})();var a2={};function X(e){var bv=a2[e]={},bw,bx;e=e.split(/\s+/);for(bw=0,bx=e.length;bw<bx;bw++){bv[e[bw]]=true}return bv}b.Callbacks=function(bw){bw=bw?(a2[bw]||X(bw)):{};var bB=[],bC=[],bx,by,bv,bz,bA,bE=function(bF){var bG,bJ,bI,bH,bK;for(bG=0,bJ=bF.length;bG<bJ;bG++){bI=bF[bG];bH=b.type(bI);if(bH==="array"){bE(bI)}else{if(bH==="function"){if(!bw.unique||!bD.has(bI)){bB.push(bI)}}}}},e=function(bG,bF){bF=bF||[];bx=!bw.memory||[bG,bF];by=true;bA=bv||0;bv=0;bz=bB.length;for(;bB&&bA<bz;bA++){if(bB[bA].apply(bG,bF)===false&&bw.stopOnFalse){bx=true;break}}by=false;if(bB){if(!bw.once){if(bC&&bC.length){bx=bC.shift();bD.fireWith(bx[0],bx[1])}}else{if(bx===true){bD.disable()}else{bB=[]}}}},bD={add:function(){if(bB){var bF=bB.length;bE(arguments);if(by){bz=bB.length}else{if(bx&&bx!==true){bv=bF;e(bx[0],bx[1])}}}return this},remove:function(){if(bB){var bF=arguments,bH=0,bI=bF.length;for(;bH<bI;bH++){for(var bG=0;bG<bB.length;bG++){if(bF[bH]===bB[bG]){if(by){if(bG<=bz){bz--;if(bG<=bA){bA--}}}bB.splice(bG--,1);if(bw.unique){break}}}}}return this},has:function(bG){if(bB){var bF=0,bH=bB.length;for(;bF<bH;bF++){if(bG===bB[bF]){return true}}}return false},empty:function(){bB=[];return this},disable:function(){bB=bC=bx=L;return this},disabled:function(){return !bB},lock:function(){bC=L;if(!bx||bx===true){bD.disable()}return this},locked:function(){return !bC},fireWith:function(bG,bF){if(bC){if(by){if(!bw.once){bC.push([bG,bF])}}else{if(!(bw.once&&bx)){e(bG,bF)}}}return this},fire:function(){bD.fireWith(this,arguments);return this},fired:function(){return !!bx}};return bD};var aJ=[].slice;b.extend({Deferred:function(by){var bx=b.Callbacks("once memory"),bw=b.Callbacks("once memory"),bv=b.Callbacks("memory"),e="pending",bA={resolve:bx,reject:bw,notify:bv},bC={done:bx.add,fail:bw.add,progress:bv.add,state:function(){return e},isResolved:bx.fired,isRejected:bw.fired,then:function(bE,bD,bF){bB.done(bE).fail(bD).progress(bF);return this},always:function(){bB.done.apply(bB,arguments).fail.apply(bB,arguments);return this},pipe:function(bF,bE,bD){return b.Deferred(function(bG){b.each({done:[bF,"resolve"],fail:[bE,"reject"],progress:[bD,"notify"]},function(bI,bL){var bH=bL[0],bK=bL[1],bJ;if(b.isFunction(bH)){bB[bI](function(){bJ=bH.apply(this,arguments);if(bJ&&b.isFunction(bJ.promise)){bJ.promise().then(bG.resolve,bG.reject,bG.notify)}else{bG[bK+"With"](this===bB?bG:this,[bJ])}})}else{bB[bI](bG[bK])}})}).promise()},promise:function(bE){if(bE==null){bE=bC}else{for(var bD in bC){bE[bD]=bC[bD]}}return bE}},bB=bC.promise({}),bz;for(bz in bA){bB[bz]=bA[bz].fire;bB[bz+"With"]=bA[bz].fireWith}bB.done(function(){e="resolved"},bw.disable,bv.lock).fail(function(){e="rejected"},bx.disable,bv.lock);if(by){by.call(bB,bB)}return bB},when:function(bA){var bx=aJ.call(arguments,0),bv=0,e=bx.length,bB=new Array(e),bw=e,by=e,bC=e<=1&&bA&&b.isFunction(bA.promise)?bA:b.Deferred(),bE=bC.promise();function bD(bF){return function(bG){bx[bF]=arguments.length>1?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv<e;bv++){if(bx[bv]&&bx[bv].promise&&b.isFunction(bx[bv].promise)){bx[bv].promise().then(bD(bv),bC.reject,bz(bv))}else{--bw}}if(!bw){bC.resolveWith(bC,bx)}}else{if(bC!==bA){bC.resolveWith(bC,e?[bA]:[])}}return bE}});b.support=(function(){var bJ,bI,bF,bG,bx,bE,bA,bD,bz,bK,bB,by,bw,bv=av.createElement("div"),bH=av.documentElement;bv.setAttribute("className","t");bv.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav></:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="<div "+e+"><div></div></div><table "+e+" cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="<div style='width:4px;'></div>";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA<bz;bA++){delete bB[bv[bA]]}if(!(by?S:b.isEmptyObject)(bB)){return}}}if(!by){delete e[bw].data;if(!S(e[bw])){return}}if(b.support.deleteExpando||!e.setInterval){delete e[bw]}else{e[bw]=null}if(bD){if(b.support.deleteExpando){delete bx[bC]}else{if(bx.removeAttribute){bx.removeAttribute(bC)}else{bx[bC]=null}}}},_data:function(bv,e,bw){return b.data(bv,e,bw,true)},acceptData:function(bv){if(bv.nodeName){var e=b.noData[bv.nodeName.toLowerCase()];if(e){return !(e===true||bv.getAttribute("classid")!==e)}}return true}});b.fn.extend({data:function(by,bA){var bB,e,bw,bz=null;if(typeof by==="undefined"){if(this.length){bz=b.data(this[0]);if(this[0].nodeType===1&&!b._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var bx=0,bv=e.length;bx<bv;bx++){bw=e[bx].name;if(bw.indexOf("data-")===0){bw=b.camelCase(bw.substring(5));a5(this[0],bw,bz[bw])}}b._data(this[0],"parsedAttrs",true)}}return bz}else{if(typeof by==="object"){return this.each(function(){b.data(this,by)})}}bB=by.split(".");bB[1]=bB[1]?"."+bB[1]:"";if(bA===L){bz=this.triggerHandler("getData"+bB[1]+"!",[bB[0]]);if(bz===L&&this.length){bz=b.data(this[0],by);bz=a5(this[0],by,bz)}return bz===L&&bB[1]?this.data(bB[0]):bz}else{return this.each(function(){var bC=b(this),bD=[bB[0],bA];bC.triggerHandler("setData"+bB[1]+"!",bD);b.data(this,by,bA);bC.triggerHandler("changeData"+bB[1]+"!",bD)})}},removeData:function(e){return this.each(function(){b.removeData(this,e)})}});function a5(bx,bw,by){if(by===L&&bx.nodeType===1){var bv="data-"+bw.replace(aA,"-$1").toLowerCase();by=bx.getAttribute(bv);if(typeof by==="string"){try{by=by==="true"?true:by==="false"?false:by==="null"?null:b.isNumeric(by)?parseFloat(by):aS.test(by)?b.parseJSON(by):by}catch(bz){}b.data(bx,bw,by)}else{by=L}}return by}function S(bv){for(var e in bv){if(e==="data"&&b.isEmptyObject(bv[e])){continue}if(e!=="toJSON"){return false}}return true}function bi(by,bx,bA){var bw=bx+"defer",bv=bx+"queue",e=bx+"mark",bz=b._data(by,bw);if(bz&&(bA==="queue"||!b._data(by,bv))&&(bA==="mark"||!b._data(by,e))){setTimeout(function(){if(!b._data(by,bv)&&!b._data(by,e)){b.removeData(by,bw,true);bz.fire()}},0)}}b.extend({_mark:function(bv,e){if(bv){e=(e||"fx")+"mark";b._data(bv,e,(b._data(bv,e)||0)+1)}},_unmark:function(by,bx,bv){if(by!==true){bv=bx;bx=by;by=false}if(bx){bv=bv||"fx";var e=bv+"mark",bw=by?0:((b._data(bx,e)||1)-1);if(bw){b._data(bx,e,bw)}else{b.removeData(bx,e,true);bi(bx,bv,"mark")}}},queue:function(bv,e,bx){var bw;if(bv){e=(e||"fx")+"queue";bw=b._data(bv,e);if(bx){if(!bw||b.isArray(bx)){bw=b._data(bv,e,b.makeArray(bx))}else{bw.push(bx)}}return bw||[]}},dequeue:function(by,bx){bx=bx||"fx";var bv=b.queue(by,bx),bw=bv.shift(),e={};if(bw==="inprogress"){bw=bv.shift()}if(bw){if(bx==="fx"){bv.unshift("inprogress")}b._data(by,bx+".run",e);bw.call(by,function(){b.dequeue(by,bx)},e)}if(!bv.length){b.removeData(by,bx+"queue "+bx+".run",true);bi(by,bx,"queue")}}});b.fn.extend({queue:function(e,bv){if(typeof e!=="string"){bv=e;e="fx"}if(bv===L){return b.queue(this[0],e)}return this.each(function(){var bw=b.queue(this,e,bv);if(e==="fx"&&bw[0]!=="inprogress"){b.dequeue(this,e)}})},dequeue:function(e){return this.each(function(){b.dequeue(this,e)})},delay:function(bv,e){bv=b.fx?b.fx.speeds[bv]||bv:bv;e=e||"fx";return this.queue(e,function(bx,bw){var by=setTimeout(bx,bv);bw.stop=function(){clearTimeout(by)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(bD,bw){if(typeof bD!=="string"){bw=bD;bD=L}bD=bD||"fx";var e=b.Deferred(),bv=this,by=bv.length,bB=1,bz=bD+"defer",bA=bD+"queue",bC=bD+"mark",bx;function bE(){if(!(--bB)){e.resolveWith(bv,[bv])}}while(by--){if((bx=b.data(bv[by],bz,L,true)||(b.data(bv[by],bA,L,true)||b.data(bv[by],bC,L,true))&&b.data(bv[by],bz,b.Callbacks("once memory"),true))){bB++;bx.add(bE)}}bE();return e.promise()}});var aP=/[\n\t\r]/g,af=/\s+/,aU=/\r/g,g=/^(?:button|input)$/i,D=/^(?:button|input|object|select|textarea)$/i,l=/^a(?:rea)?$/i,ao=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,F=b.support.getSetAttribute,be,aY,aF;b.fn.extend({attr:function(e,bv){return b.access(this,e,bv,true,b.attr)},removeAttr:function(e){return this.each(function(){b.removeAttr(this,e)})},prop:function(e,bv){return b.access(this,e,bv,true,b.prop)},removeProp:function(e){e=b.propFix[e]||e;return this.each(function(){try{this[e]=L;delete this[e]}catch(bv){}})},addClass:function(by){var bA,bw,bv,bx,bz,bB,e;if(b.isFunction(by)){return this.each(function(bC){b(this).addClass(by.call(this,bC,this.className))})}if(by&&typeof by==="string"){bA=by.split(af);for(bw=0,bv=this.length;bw<bv;bw++){bx=this[bw];if(bx.nodeType===1){if(!bx.className&&bA.length===1){bx.className=by}else{bz=" "+bx.className+" ";for(bB=0,e=bA.length;bB<e;bB++){if(!~bz.indexOf(" "+bA[bB]+" ")){bz+=bA[bB]+" "}}bx.className=b.trim(bz)}}}}return this},removeClass:function(bz){var bA,bw,bv,by,bx,bB,e;if(b.isFunction(bz)){return this.each(function(bC){b(this).removeClass(bz.call(this,bC,this.className))})}if((bz&&typeof bz==="string")||bz===L){bA=(bz||"").split(af);for(bw=0,bv=this.length;bw<bv;bw++){by=this[bw];if(by.nodeType===1&&by.className){if(bz){bx=(" "+by.className+" ").replace(aP," ");for(bB=0,e=bA.length;bB<e;bB++){bx=bx.replace(" "+bA[bB]+" "," ")}by.className=b.trim(bx)}else{by.className=""}}}}return this},toggleClass:function(bx,bv){var bw=typeof bx,e=typeof bv==="boolean";if(b.isFunction(bx)){return this.each(function(by){b(this).toggleClass(bx.call(this,by,this.className,bv),bv)})}return this.each(function(){if(bw==="string"){var bA,bz=0,by=b(this),bB=bv,bC=bx.split(af);while((bA=bC[bz++])){bB=e?bB:!by.hasClass(bA);by[bB?"addClass":"removeClass"](bA)}}else{if(bw==="undefined"||bw==="boolean"){if(this.className){b._data(this,"__className__",this.className)}this.className=this.className||bx===false?"":b._data(this,"__className__")||""}}})},hasClass:function(e){var bx=" "+e+" ",bw=0,bv=this.length;for(;bw<bv;bw++){if(this[bw].nodeType===1&&(" "+this[bw].className+" ").replace(aP," ").indexOf(bx)>-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv<bz;bv++){bx=bC[bv];if(bx.selected&&(b.support.optDisabled?!bx.disabled:bx.getAttribute("disabled")===null)&&(!bx.parentNode.disabled||!b.nodeName(bx.parentNode,"optgroup"))){bA=b(bx).val();if(bw){return bA}bB.push(bA)}}if(bw&&!bB.length&&bC.length){return b(bC[by]).val()}return bB},set:function(bv,bw){var e=b.makeArray(bw);b(bv).find("option").each(function(){this.selected=b.inArray(b(this).val(),e)>=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw<e;bw++){bv=bA[bw];if(bv){by=b.propFix[bv]||bv;b.attr(bx,bv,"");bx.removeAttribute(F?bv:by);if(ao.test(bv)&&by in bx){bx[by]=false}}}}},attrHooks:{type:{set:function(e,bv){if(g.test(e.nodeName)&&e.parentNode){b.error("type property can't be changed")}else{if(!b.support.radioValue&&bv==="radio"&&b.nodeName(e,"input")){var bw=e.value;e.setAttribute("type",bv);if(bw){e.value=bw}return bv}}}},value:{get:function(bv,e){if(be&&b.nodeName(bv,"button")){return be.get(bv,e)}return e in bv?bv.value:null},set:function(bv,bw,e){if(be&&b.nodeName(bv,"button")){return be.set(bv,bw,e)}bv.value=bw}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(bz,bx,bA){var bw,e,by,bv=bz.nodeType;if(!bz||bv===3||bv===8||bv===2){return}by=bv!==1||!b.isXMLDoc(bz);if(by){bx=b.propFix[bx]||bx;e=b.propHooks[bx]}if(bA!==L){if(e&&"set" in e&&(bw=e.set(bz,bA,bx))!==L){return bw}else{return(bz[bx]=bA)}}else{if(e&&"get" in e&&(bw=e.get(bz,bx))!==null){return bw}else{return bz[bx]}}},propHooks:{tabIndex:{get:function(bv){var e=bv.getAttributeNode("tabindex");return e&&e.specified?parseInt(e.value,10):D.test(bv.nodeName)||l.test(bv.nodeName)&&bv.href?0:L}}}});b.attrHooks.tabindex=b.propHooks.tabIndex;aY={get:function(bv,e){var bx,bw=b.prop(bv,e);return bw===true||typeof bw!=="boolean"&&(bx=bv.getAttributeNode(e))&&bx.nodeValue!==false?e.toLowerCase():L},set:function(bv,bx,e){var bw;if(bx===false){b.removeAttr(bv,e)}else{bw=b.propFix[e]||e;if(bw in bv){bv[bw]=true}bv.setAttribute(e,e.toLowerCase())}return e}};if(!F){aF={name:true,id:true};be=b.valHooks.button={get:function(bw,bv){var e;e=bw.getAttributeNode(bv);return e&&(aF[bv]?e.nodeValue!=="":e.specified)?e.nodeValue:L},set:function(bw,bx,bv){var e=bw.getAttributeNode(bv);if(!e){e=av.createAttribute(bv);bw.setAttributeNode(e)}return(e.nodeValue=bx+"")}};b.attrHooks.tabindex.set=be.set;b.each(["width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{set:function(bw,bx){if(bx===""){bw.setAttribute(e,"auto");return bx}}})});b.attrHooks.contenteditable={get:be.get,set:function(bv,bw,e){if(bw===""){bw="false"}be.set(bv,bw,e)}}}if(!b.support.hrefNormalized){b.each(["href","src","width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{get:function(bx){var bw=bx.getAttribute(e,2);return bw===null?L:bw}})})}if(!b.support.style){b.attrHooks.style={get:function(e){return e.style.cssText.toLowerCase()||L},set:function(e,bv){return(e.style.cssText=""+bv)}}}if(!b.support.optSelected){b.propHooks.selected=b.extend(b.propHooks.selected,{get:function(bv){var e=bv.parentNode;if(e){e.selectedIndex;if(e.parentNode){e.parentNode.selectedIndex}}return null}})}if(!b.support.enctype){b.propFix.enctype="encoding"}if(!b.support.checkOn){b.each(["radio","checkbox"],function(){b.valHooks[this]={get:function(e){return e.getAttribute("value")===null?"on":e.value}}})}b.each(["radio","checkbox"],function(){b.valHooks[this]=b.extend(b.valHooks[this],{set:function(e,bv){if(b.isArray(bv)){return(e.checked=b.inArray(b(e).val(),bv)>=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI<bC.length;bI++){bH=n.exec(bC[bI])||[];bF=bH[1];e=(bH[2]||"").split(".").sort();bE=b.event.special[bF]||{};bF=(by?bE.delegateType:bE.bindType)||bF;bE=b.event.special[bF]||{};bG=b.extend({type:bF,origType:bH[1],data:bA,handler:bJ,guid:bJ.guid,selector:by,quick:Y(by),namespace:e.join(".")},bv);bw=bK[bF];if(!bw){bw=bK[bF]=[];bw.delegateCount=0;if(!bE.setup||bE.setup.call(bx,bA,e,bB)===false){if(bx.addEventListener){bx.addEventListener(bF,bB,false)}else{if(bx.attachEvent){bx.attachEvent("on"+bF,bB)}}}}if(bE.add){bE.add.call(bx,bG);if(!bG.handler.guid){bG.handler.guid=bJ.guid}}if(by){bw.splice(bw.delegateCount++,0,bG)}else{bw.push(bG)}b.event.global[bF]=true}bx=null},global:{},remove:function(bJ,bE,bv,bH,bB){var bI=b.hasData(bJ)&&b._data(bJ),bF,bx,bz,bL,bC,bA,bG,bw,by,bK,bD,e;if(!bI||!(bw=bI.events)){return}bE=b.trim(bt(bE||"")).split(" ");for(bF=0;bF<bE.length;bF++){bx=n.exec(bE[bF])||[];bz=bL=bx[1];bC=bx[2];if(!bz){for(bz in bw){b.event.remove(bJ,bz+bE[bF],bv,bH,true)}continue}by=b.event.special[bz]||{};bz=(bH?by.delegateType:by.bindType)||bz;bD=bw[bz]||[];bA=bD.length;bC=bC?new RegExp("(^|\\.)"+bC.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(bG=0;bG<bD.length;bG++){e=bD[bG];if((bB||bL===e.origType)&&(!bv||bv.guid===e.guid)&&(!bC||bC.test(e.namespace))&&(!bH||bH===e.selector||bH==="**"&&e.selector)){bD.splice(bG--,1);if(e.selector){bD.delegateCount--}if(by.remove){by.remove.call(bJ,e)}}}if(bD.length===0&&bA!==bD.length){if(!by.teardown||by.teardown.call(bJ,bC)===false){b.removeEvent(bJ,bz,bI.handle)}delete bw[bz]}}if(b.isEmptyObject(bw)){bK=bI.handle;if(bK){bK.elem=null}b.removeData(bJ,["events","handle"],true)}},customEvent:{getData:true,setData:true,changeData:true},trigger:function(bv,bD,bA,bJ){if(bA&&(bA.nodeType===3||bA.nodeType===8)){return}var bG=bv.type||bv,bx=[],e,bw,bC,bH,bz,by,bF,bE,bB,bI;if(T.test(bG+b.event.triggered)){return}if(bG.indexOf("!")>=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bC<bB.length&&!bv.isPropagationStopped();bC++){bH=bB[bC][0];bv.type=bB[bC][1];bE=(b._data(bH,"events")||{})[bv.type]&&b._data(bH,"handle");if(bE){bE.apply(bH,bD)}bE=by&&bH[by];if(bE&&b.acceptData(bH)&&bE.apply(bH,bD)===false){bv.preventDefault()}}bv.type=bG;if(!bJ&&!bv.isDefaultPrevented()){if((!bF._default||bF._default.apply(bA.ownerDocument,bD)===false)&&!(bG==="click"&&b.nodeName(bA,"a"))&&b.acceptData(bA)){if(by&&bA[bG]&&((bG!=="focus"&&bG!=="blur")||bv.target.offsetWidth!==0)&&!b.isWindow(bA)){bz=bA[by];if(bz){bA[by]=null}b.event.triggered=bG;bA[bG]();b.event.triggered=L;if(bz){bA[by]=bz}}}}return bv.result},dispatch:function(e){e=b.event.fix(e||bb.event);var bz=((b._data(this,"events")||{})[e.type]||[]),bA=bz.delegateCount,bG=[].slice.call(arguments,0),by=!e.exclusive&&!e.namespace,bH=[],bC,bB,bK,bx,bF,bE,bv,bD,bI,bw,bJ;bG[0]=e;e.delegateTarget=this;if(bA&&!e.target.disabled&&!(e.button&&e.type==="click")){bx=b(this);bx.context=this.ownerDocument||this;for(bK=e.target;bK!=this;bK=bK.parentNode||this){bE={};bD=[];bx[0]=bK;for(bC=0;bC<bA;bC++){bI=bz[bC];bw=bI.selector;if(bE[bw]===L){bE[bw]=(bI.quick?j(bK,bI.quick):bx.is(bw))}if(bE[bw]){bD.push(bI)}}if(bD.length){bH.push({elem:bK,matches:bD})}}}if(bz.length>bA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC<bH.length&&!e.isPropagationStopped();bC++){bv=bH[bC];e.currentTarget=bv.elem;for(bB=0;bB<bv.matches.length&&!e.isImmediatePropagationStopped();bB++){bI=bv.matches[bB];if(by||(!e.namespace&&!bI.namespace)||e.namespace_re&&e.namespace_re.test(bI.namespace)){e.data=bI.data;e.handleObj=bI;bF=((b.event.special[bI.origType]||{}).handle||bI.handler).apply(bv.elem,bG);if(bF!==L){e.result=bF;if(bF===false){e.preventDefault();e.stopPropagation()}}}}}return e.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(bv,e){if(bv.which==null){bv.which=e.charCode!=null?e.charCode:e.keyCode}return bv}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(bx,bw){var by,bz,e,bv=bw.button,bA=bw.fromElement;if(bx.pageX==null&&bw.clientX!=null){by=bx.target.ownerDocument||av;bz=by.documentElement;e=by.body;bx.pageX=bw.clientX+(bz&&bz.scrollLeft||e&&e.scrollLeft||0)-(bz&&bz.clientLeft||e&&e.clientLeft||0);bx.pageY=bw.clientY+(bz&&bz.scrollTop||e&&e.scrollTop||0)-(bz&&bz.clientTop||e&&e.clientTop||0)}if(!bx.relatedTarget&&bA){bx.relatedTarget=bA===bx.target?bw.toElement:bA}if(!bx.which&&bv!==L){bx.which=(bv&1?1:(bv&2?3:(bv&4?2:0)))}return bx}},fix:function(bw){if(bw[b.expando]){return bw}var bv,bz,e=bw,bx=b.event.fixHooks[bw.type]||{},by=bx.props?this.props.concat(bx.props):this.props;bw=b.Event(e);for(bv=by.length;bv;){bz=by[--bv];bw[bz]=e[bz]}if(!bw.target){bw.target=e.srcElement||av}if(bw.target.nodeType===3){bw.target=bw.target.parentNode}if(bw.metaKey===L){bw.metaKey=bw.ctrlKey}return bx.filter?bx.filter(bw,e):bw},special:{ready:{setup:b.bindReady},load:{noBubble:true},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(bw,bv,e){if(b.isWindow(this)){this.onbeforeunload=e}},teardown:function(bv,e){if(this.onbeforeunload===e){this.onbeforeunload=null}}}},simulate:function(bw,by,bx,bv){var bz=b.extend(new b.Event(),bx,{type:bw,isSimulated:true,originalEvent:{}});if(bv){b.event.trigger(bz,null,by)}else{b.event.dispatch.call(by,bz)}if(bz.isDefaultPrevented()){bx.preventDefault()}}};b.event.handle=b.event.dispatch;b.removeEvent=av.removeEventListener?function(bv,e,bw){if(bv.removeEventListener){bv.removeEventListener(e,bw,false)}}:function(bv,e,bw){if(bv.detachEvent){bv.detachEvent("on"+e,bw)}};b.Event=function(bv,e){if(!(this instanceof b.Event)){return new b.Event(bv,e)}if(bv&&bv.type){this.originalEvent=bv;this.type=bv.type;this.isDefaultPrevented=(bv.defaultPrevented||bv.returnValue===false||bv.getPreventDefault&&bv.getPreventDefault())?i:bk}else{this.type=bv}if(e){b.extend(this,e)}this.timeStamp=bv&&bv.timeStamp||b.now();this[b.expando]=true};function bk(){return false}function i(){return true}b.Event.prototype={preventDefault:function(){this.isDefaultPrevented=i;var bv=this.originalEvent;if(!bv){return}if(bv.preventDefault){bv.preventDefault()}else{bv.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=i;var bv=this.originalEvent;if(!bv){return}if(bv.stopPropagation){bv.stopPropagation()}bv.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=i;this.stopPropagation()},isDefaultPrevented:bk,isPropagationStopped:bk,isImmediatePropagationStopped:bk};b.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(bv,e){b.event.special[bv]={delegateType:e,bindType:e,handle:function(bz){var bB=this,bA=bz.relatedTarget,by=bz.handleObj,bw=by.selector,bx;if(!bA||(bA!==bB&&!b.contains(bB,bA))){bz.type=by.origType;bx=by.handler.apply(this,arguments);bz.type=e}return bx}}});if(!b.support.submitBubbles){b.event.special.submit={setup:function(){if(b.nodeName(this,"form")){return false}b.event.add(this,"click._submit keypress._submit",function(bx){var bw=bx.target,bv=b.nodeName(bw,"input")||b.nodeName(bw,"button")?bw.form:L;if(bv&&!bv._submit_attached){b.event.add(bv,"submit._submit",function(e){if(this.parentNode&&!e.isTrigger){b.event.simulate("submit",this.parentNode,e,true)}});bv._submit_attached=true}})},teardown:function(){if(b.nodeName(this,"form")){return false}b.event.remove(this,"._submit")}}}if(!b.support.changeBubbles){b.event.special.change={setup:function(){if(bd.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio"){b.event.add(this,"propertychange._change",function(e){if(e.originalEvent.propertyName==="checked"){this._just_changed=true}});b.event.add(this,"click._change",function(e){if(this._just_changed&&!e.isTrigger){this._just_changed=false;b.event.simulate("change",this,e,true)}})}return false}b.event.add(this,"beforeactivate._change",function(bw){var bv=bw.target;if(bd.test(bv.nodeName)&&!bv._change_attached){b.event.add(bv,"change._change",function(e){if(this.parentNode&&!e.isSimulated&&!e.isTrigger){b.event.simulate("change",this.parentNode,e,true)}});bv._change_attached=true}})},handle:function(bv){var e=bv.target;if(this!==e||bv.isSimulated||bv.isTrigger||(e.type!=="radio"&&e.type!=="checkbox")){return bv.handleObj.handler.apply(this,arguments)}},teardown:function(){b.event.remove(this,"._change");return bd.test(this.nodeName)}}}if(!b.support.focusinBubbles){b.each({focus:"focusin",blur:"focusout"},function(bx,e){var bv=0,bw=function(by){b.event.simulate(e,by.target,b.event.fix(by),true)};b.event.special[e]={setup:function(){if(bv++===0){av.addEventListener(bx,bw,true)}},teardown:function(){if(--bv===0){av.removeEventListener(bx,bw,true)}}}})}b.fn.extend({on:function(bw,e,bz,by,bv){var bA,bx;if(typeof bw==="object"){if(typeof e!=="string"){bz=e;e=L}for(bx in bw){this.on(bx,e,bz,bw[bx],bv)}return this}if(bz==null&&by==null){by=e;bz=e=L}else{if(by==null){if(typeof e==="string"){by=bz;bz=L}else{by=bz;bz=e;e=L}}}if(by===false){by=bk}else{if(!by){return this}}if(bv===1){bA=by;by=function(bB){b().off(bB);return bA.apply(this,arguments)};by.guid=bA.guid||(bA.guid=b.guid++)}return this.each(function(){b.event.add(this,bw,by,bz,e)})},one:function(bv,e,bx,bw){return this.on.call(this,bv,e,bx,bw,1)},off:function(bw,e,by){if(bw&&bw.preventDefault&&bw.handleObj){var bv=bw.handleObj;b(bw.delegateTarget).off(bv.namespace?bv.type+"."+bv.namespace:bv.type,bv.selector,bv.handler);return this}if(typeof bw==="object"){for(var bx in bw){this.off(bx,e,bw[bx])}return this}if(e===false||typeof e==="function"){by=e;e=L}if(by===false){by=bk}return this.each(function(){b.event.remove(this,bw,by,e)})},bind:function(e,bw,bv){return this.on(e,null,bw,bv)},unbind:function(e,bv){return this.off(e,null,bv)},live:function(e,bw,bv){b(this.context).on(e,this.selector,bw,bv);return this},die:function(e,bv){b(this.context).off(e,this.selector||"**",bv);return this},delegate:function(e,bv,bx,bw){return this.on(bv,e,bx,bw)},undelegate:function(e,bv,bw){return arguments.length==1?this.off(e,"**"):this.off(bv,e,bw)},trigger:function(e,bv){return this.each(function(){b.event.trigger(e,bv,this)})},triggerHandler:function(e,bv){if(this[0]){return b.event.trigger(e,bv,this[0],true)}},toggle:function(bx){var bv=arguments,e=bx.guid||b.guid++,bw=0,by=function(bz){var bA=(b._data(this,"lastToggle"+bx.guid)||0)%bw;b._data(this,"lastToggle"+bx.guid,bA+1);bz.preventDefault();return bv[bA].apply(this,arguments)||false};by.guid=e;while(bw<bv.length){bv[bw++].guid=e}return this.click(by)},hover:function(e,bv){return this.mouseenter(e).mouseleave(bv||e)}});b.each(("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu").split(" "),function(bv,e){b.fn[e]=function(bx,bw){if(bw==null){bw=bx;bx=null}return arguments.length>0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}});
+/*!
+ * Sizzle CSS Selector Engine
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ * More information: http://sizzlejs.com/
+ */
+(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e<bR.length;e++){if(bR[e]===bR[e-1]){bR.splice(e--,1)}}}}return bR};by.matches=function(e,bR){return by(e,null,null,bR)};by.matchesSelector=function(e,bR){return by(bR,null,null,[e]).length>0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS<bU;bS++){bV=bE.order[bS];if((bT=bE.leftMatch[bV].exec(bX))){bR=bT[1];bT.splice(1,1);if(bR.substr(bR.length-1)!=="\\"){bT[1]=(bT[1]||"").replace(bK,"");bW=bE.find[bV](bT,e,bY);if(bW!=null){bX=bX.replace(bE.match[bV],"");break}}}}if(!bW){bW=typeof e.getElementsByTagName!=="undefined"?e.getElementsByTagName("*"):[]}return{set:bW,expr:bX}};by.filter=function(b1,b0,b4,bU){var bW,e,bZ,b6,b3,bR,bT,bV,b2,bS=b1,b5=[],bY=b0,bX=b0&&b0[0]&&by.isXML(b0[0]);while(b1&&b0.length){for(bZ in bE.filter){if((bW=bE.leftMatch[bZ].exec(b1))!=null&&bW[2]){bR=bE.filter[bZ];bT=bW[1];e=false;bW.splice(1,1);if(bT.substr(bT.length-1)==="\\"){continue}if(bY===b5){b5=[]}if(bE.preFilter[bZ]){bW=bE.preFilter[bZ](bW,bY,b4,b5,bU,bX);if(!bW){e=b6=true}else{if(bW===true){continue}}}if(bW){for(bV=0;(b3=bY[bV])!=null;bV++){if(b3){b6=bR(b3,bW,bV,bY);b2=bU^b6;if(b4&&b6!=null){if(b2){e=true}else{bY[bV]=false}}else{if(b2){b5.push(b3);e=true}}}}}if(b6!==L){if(!b4){bY=b5}b1=b1.replace(bE.match[bZ],"");if(!e){return[]}break}}}if(b1===bS){if(e==null){by.error(b1)}else{break}}bS=b1}return bY};by.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};var bw=by.getText=function(bU){var bS,bT,e=bU.nodeType,bR="";if(e){if(e===1||e===9){if(typeof bU.textContent==="string"){return bU.textContent}else{if(typeof bU.innerText==="string"){return bU.innerText.replace(bO,"")}else{for(bU=bU.firstChild;bU;bU=bU.nextSibling){bR+=bw(bU)}}}}else{if(e===3||e===4){return bU.nodeValue}}}else{for(bS=0;(bT=bU[bS]);bS++){if(bT.nodeType!==8){bR+=bw(bT)}}}return bR};var bE=by.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")},type:function(e){return e.getAttribute("type")}},relative:{"+":function(bW,bR){var bT=typeof bR==="string",bV=bT&&!bQ.test(bR),bX=bT&&!bV;if(bV){bR=bR.toLowerCase()}for(var bS=0,e=bW.length,bU;bS<e;bS++){if((bU=bW[bS])){while((bU=bU.previousSibling)&&bU.nodeType!==1){}bW[bS]=bX||bU&&bU.nodeName.toLowerCase()===bR?bU||false:bU===bR}}if(bX){by.filter(bR,bW,true)}},">":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS<e;bS++){bV=bW[bS];if(bV){var bT=bV.parentNode;bW[bS]=bT.nodeName.toLowerCase()===bR?bT:false}}}else{for(;bS<e;bS++){bV=bW[bS];if(bV){bW[bS]=bU?bV.parentNode:bV.parentNode===bR}}if(bU){by.filter(bR,bW,true)}}},"":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("parentNode",bR,bS,bT,bU,bV)},"~":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("previousSibling",bR,bS,bT,bU,bV)}},find:{ID:function(bR,bS,bT){if(typeof bS.getElementById!=="undefined"&&!bT){var e=bS.getElementById(bR[1]);return e&&e.parentNode?[e]:[]}},NAME:function(bS,bV){if(typeof bV.getElementsByName!=="undefined"){var bR=[],bU=bV.getElementsByName(bS[1]);for(var bT=0,e=bU.length;bT<e;bT++){if(bU[bT].getAttribute("name")===bS[1]){bR.push(bU[bT])}}return bR.length===0?null:bR}},TAG:function(e,bR){if(typeof bR.getElementsByTagName!=="undefined"){return bR.getElementsByTagName(e[1])}}},preFilter:{CLASS:function(bT,bR,bS,e,bW,bX){bT=" "+bT[1].replace(bK,"")+" ";if(bX){return bT}for(var bU=0,bV;(bV=bR[bU])!=null;bU++){if(bV){if(bW^(bV.className&&(" "+bV.className+" ").replace(/[\t\n\r]/g," ").indexOf(bT)>=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bR<e[3]-0},gt:function(bS,bR,e){return bR>e[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV<bU;bV++){if(bT[bV]===bS){return false}}return true}else{by.error(e)}}}},CHILD:function(bS,bU){var bT,b0,bW,bZ,e,bV,bY,bX=bU[1],bR=bS;switch(bX){case"only":case"first":while((bR=bR.previousSibling)){if(bR.nodeType===1){return false}}if(bX==="first"){return true}bR=bS;case"last":while((bR=bR.nextSibling)){if(bR.nodeType===1){return false}}return true;case"nth":bT=bU[2];b0=bU[3];if(bT===1&&b0===0){return true}bW=bU[0];bZ=bS.parentNode;if(bZ&&(bZ[bC]!==bW||!bS.nodeIndex)){bV=0;for(bR=bZ.firstChild;bR;bR=bR.nextSibling){if(bR.nodeType===1){bR.nodeIndex=++bV}}bZ[bC]=bW}bY=bS.nodeIndex-b0;if(bT===0){return bY===0}else{return(bY%bT===0&&bY/bT>=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS<e;bS++){bR.push(bU[bS])}}else{for(;bU[bS];bS++){bR.push(bU[bS])}}}return bR}}var bJ,bG;if(av.documentElement.compareDocumentPosition){bJ=function(bR,e){if(bR===e){bB=true;return 0}if(!bR.compareDocumentPosition||!e.compareDocumentPosition){return bR.compareDocumentPosition?-1:1}return bR.compareDocumentPosition(e)&4?-1:1}}else{bJ=function(bY,bX){if(bY===bX){bB=true;return 0}else{if(bY.sourceIndex&&bX.sourceIndex){return bY.sourceIndex-bX.sourceIndex}}var bV,bR,bS=[],e=[],bU=bY.parentNode,bW=bX.parentNode,bZ=bU;if(bU===bW){return bG(bY,bX)}else{if(!bU){return -1}else{if(!bW){return 1}}}while(bZ){bS.unshift(bZ);bZ=bZ.parentNode}bZ=bW;while(bZ){e.unshift(bZ);bZ=bZ.parentNode}bV=bS.length;bR=e.length;for(var bT=0;bT<bV&&bT<bR;bT++){if(bS[bT]!==e[bT]){return bG(bS[bT],e[bT])}}return bT===bV?bG(bY,e[bT],-1):bG(bS[bT],bX,1)};bG=function(bR,e,bS){if(bR===e){return bS}var bT=bR.nextSibling;while(bT){if(bT===e){return -1}bT=bT.nextSibling}return 1}}(function(){var bR=av.createElement("div"),bS="script"+(new Date()).getTime(),e=av.documentElement;bR.innerHTML="<a name='"+bS+"'/>";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="<p class='TEST'></p>";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1&&!bY){e[bC]=bV;e.sizset=bT}if(e.nodeName.toLowerCase()===bW){bU=e;break}e=e[bR]}bZ[bT]=bU}}}function bN(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1){if(!bY){e[bC]=bV;e.sizset=bT}if(typeof bW!=="string"){if(e===bW){bU=true;break}}else{if(by.filter(bW,[e]).length>0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT<bR;bT++){by(bS,bY[bT],bX,bW)}return by.filter(bU,bX)};by.attr=b.attr;by.selectors.attrMap={};b.find=by;b.expr=by.selectors;b.expr[":"]=b.expr.filters;b.unique=by.uniqueSort;b.text=by.getText;b.isXMLDoc=by.isXML;b.contains=by.contains})();var ab=/Until$/,aq=/^(?:parents|prevUntil|prevAll)/,a9=/,/,bp=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,H=b.expr.match.POS,ay={children:true,contents:true,next:true,prev:true};b.fn.extend({find:function(e){var bw=this,by,bv;if(typeof e!=="string"){return b(e).filter(function(){for(by=0,bv=bw.length;by<bv;by++){if(b.contains(bw[by],this)){return true}}})}var bx=this.pushStack("","find",e),bA,bB,bz;for(by=0,bv=this.length;by<bv;by++){bA=bx.length;b.find(e,this[by],bx);if(by>0){for(bB=bA;bB<bx.length;bB++){for(bz=0;bz<bA;bz++){if(bx[bz]===bx[bB]){bx.splice(bB--,1);break}}}}}return bx},has:function(bv){var e=b(bv);return this.filter(function(){for(var bx=0,bw=e.length;bx<bw;bx++){if(b.contains(this,e[bx])){return true}}})},not:function(e){return this.pushStack(aG(this,e,false),"not",e)},filter:function(e){return this.pushStack(aG(this,e,true),"filter",e)},is:function(e){return !!e&&(typeof e==="string"?H.test(e)?b(e,this.context).index(this[0])>=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw<by.length;bw++){if(b(bz).is(by[bw])){bv.push({selector:by[bw],elem:bz,level:bB})}}bz=bz.parentNode;bB++}return bv}var bA=H.test(by)||typeof by!=="string"?b(by,bx||this.context):0;for(bw=0,e=this.length;bw<e;bw++){bz=this[bw];while(bz){if(bA?bA.index(bz)>-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/<tbody/i,W=/<|&#?\w+;/,ae=/<(?:script|style)/i,O=/<(?:script|object|embed|option|style)/i,ah=new RegExp("<(?:"+aR+")","i"),o=/checked\s*(?:[^=]|=\s*.checked.)/i,bm=/\/(java|ecma)script/i,aN=/^\s*<!(?:\[CDATA\[|\-\-)/,ax={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div<div>","</div>"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1></$2>");try{for(var bw=0,bv=this.length;bw<bv;bw++){if(this[bw].nodeType===1){b.cleanData(this[bw].getElementsByTagName("*"));this[bw].innerHTML=bx}}}catch(by){this.empty().append(bx)}}else{if(b.isFunction(bx)){this.each(function(bz){var e=b(this);e.html(bx.call(this,bz,e.html()))})}else{this.empty().append(bx)}}}return this},replaceWith:function(e){if(this[0]&&this[0].parentNode){if(b.isFunction(e)){return this.each(function(bx){var bw=b(this),bv=bw.html();bw.replaceWith(e.call(this,bx,bv))})}if(typeof e!=="string"){e=b(e).detach()}return this.each(function(){var bw=this.nextSibling,bv=this.parentNode;b(this).remove();if(bw){b(bw).before(e)}else{b(bv).append(e)}})}else{return this.length?this.pushStack(b(b.isFunction(e)?e():e),"replaceWith",e):this}},detach:function(e){return this.remove(e,true)},domManip:function(bB,bF,bE){var bx,by,bA,bD,bC=bB[0],bv=[];if(!b.support.checkClone&&arguments.length===3&&typeof bC==="string"&&o.test(bC)){return this.each(function(){b(this).domManip(bB,bF,bE,true)})}if(b.isFunction(bC)){return this.each(function(bH){var bG=b(this);bB[0]=bC.call(this,bH,bF?bG.html():L);bG.domManip(bB,bF,bE)})}if(this[0]){bD=bC&&bC.parentNode;if(b.support.parentNode&&bD&&bD.nodeType===11&&bD.childNodes.length===this.length){bx={fragment:bD}}else{bx=b.buildFragment(bB,this,bv)}bA=bx.fragment;if(bA.childNodes.length===1){by=bA=bA.firstChild}else{by=bA.firstChild}if(by){bF=bF&&b.nodeName(by,"tr");for(var bw=0,e=this.length,bz=e-1;bw<e;bw++){bE.call(bF?ba(this[bw],by):this[bw],bx.cacheable||(e>1&&bw<bz)?b.clone(bA,true,true):bA)}}if(bv.length){b.each(bv,bo)}}return this}});function ba(e,bv){return b.nodeName(e,"table")?(e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody"))):e}function t(bB,bv){if(bv.nodeType!==1||!b.hasData(bB)){return}var by,bx,e,bA=b._data(bB),bz=b._data(bv,bA),bw=bA.events;if(bw){delete bz.handle;bz.events={};for(by in bw){for(bx=0,e=bw[by].length;bx<e;bx++){b.event.add(bv,by+(bw[by][bx].namespace?".":"")+bw[by][bx].namespace,bw[by][bx],bw[by][bx].data)}}}if(bz.data){bz.data=b.extend({},bz.data)}}function ai(bv,e){var bw;if(e.nodeType!==1){return}if(e.clearAttributes){e.clearAttributes()}if(e.mergeAttributes){e.mergeAttributes(bv)}bw=e.nodeName.toLowerCase();if(bw==="object"){e.outerHTML=bv.outerHTML}else{if(bw==="input"&&(bv.type==="checkbox"||bv.type==="radio")){if(bv.checked){e.defaultChecked=e.checked=bv.checked}if(e.value!==bv.value){e.value=bv.value}}else{if(bw==="option"){e.selected=bv.defaultSelected}else{if(bw==="input"||bw==="textarea"){e.defaultValue=bv.defaultValue}}}}e.removeAttribute(b.expando)}b.buildFragment=function(bz,bx,bv){var by,e,bw,bA,bB=bz[0];if(bx&&bx[0]){bA=bx[0].ownerDocument||bx[0]}if(!bA.createDocumentFragment){bA=av}if(bz.length===1&&typeof bB==="string"&&bB.length<512&&bA===av&&bB.charAt(0)==="<"&&!O.test(bB)&&(b.support.checkClone||!o.test(bB))&&(b.support.html5Clone||!ah.test(bB))){e=true;bw=b.fragments[bB];if(bw&&bw!==1){by=bw}}if(!by){by=bA.createDocumentFragment();b.clean(bz,bA,by,bv)}if(e){b.fragments[bB]=bw?by:1}return{fragment:by,cacheable:e}};b.fragments={};b.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,bv){b.fn[e]=function(bw){var bz=[],bC=b(bw),bB=this.length===1&&this[0].parentNode;if(bB&&bB.nodeType===11&&bB.childNodes.length===1&&bC.length===1){bC[bv](this[0]);return this}else{for(var bA=0,bx=bC.length;bA<bx;bA++){var by=(bA>0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1></$2>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]==="<table>"&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB<bG;bB++){E(bz[bB])}}else{E(bz)}}if(bz.nodeType){bI.push(bz)}else{bI=b.merge(bI,bz)}}if(bH){bF=function(bL){return !bL.type||bm.test(bL.type)};for(bE=0;bI[bE];bE++){if(bA&&b.nodeName(bI[bE],"script")&&(!bI[bE].type||bI[bE].type.toLowerCase()==="text/javascript")){bA.push(bI[bE].parentNode?bI[bE].parentNode.removeChild(bI[bE]):bI[bE])}else{if(bI[bE].nodeType===1){var bJ=b.grep(bI[bE].getElementsByTagName("script"),bF);bI.splice.apply(bI,[bE+1,0].concat(bJ))}bH.appendChild(bI[bE])}}}return bI},cleanData:function(bv){var by,bw,e=b.cache,bB=b.event.special,bA=b.support.deleteExpando;for(var bz=0,bx;(bx=bv[bz])!=null;bz++){if(bx.nodeName&&b.noData[bx.nodeName.toLowerCase()]){continue}bw=bx[b.expando];if(bw){by=e[bw];if(by&&by.events){for(var bC in by.events){if(bB[bC]){b.event.remove(bx,bC)}else{b.removeEvent(bx,bC,by.handle)}}if(by.handle){by.handle.elem=null}}if(bA){delete bx[b.expando]}else{if(bx.removeAttribute){bx.removeAttribute(b.expando)}}delete e[bw]}}}});function bo(e,bv){if(bv.src){b.ajax({url:bv.src,async:false,dataType:"script"})}else{b.globalEval((bv.text||bv.textContent||bv.innerHTML||"").replace(aN,"/*$0*/"))}if(bv.parentNode){bv.parentNode.removeChild(bv)}}var ak=/alpha\([^)]*\)/i,au=/opacity=([^)]*)/,z=/([A-Z]|^ms)/g,bc=/^-?\d+(?:px)?$/i,bn=/^-?\d/,I=/^([\-+])=([\-+.\de]+)/,a7={position:"absolute",visibility:"hidden",display:"block"},an=["Left","Right"],a1=["Top","Bottom"],Z,aI,aX;b.fn.css=function(e,bv){if(arguments.length===2&&bv===L){return this}return b.access(this,e,bv,true,function(bx,bw,by){return by!==L?b.style(bx,bw,by):b.css(bx,bw)})};b.extend({cssHooks:{opacity:{get:function(bw,bv){if(bv){var e=Z(bw,"opacity","opacity");return e===""?"1":e}else{return bw.style.opacity}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":b.support.cssFloat?"cssFloat":"styleFloat"},style:function(bx,bw,bD,by){if(!bx||bx.nodeType===3||bx.nodeType===8||!bx.style){return}var bB,bC,bz=b.camelCase(bw),bv=bx.style,bE=b.cssHooks[bz];bw=b.cssProps[bz]||bz;if(bD!==L){bC=typeof bD;if(bC==="string"&&(bB=I.exec(bD))){bD=(+(bB[1]+1)*+bB[2])+parseFloat(b.css(bx,bw));bC="number"}if(bD==null||bC==="number"&&isNaN(bD)){return}if(bC==="number"&&!b.cssNumber[bz]){bD+="px"}if(!bE||!("set" in bE)||(bD=bE.set(bx,bD))!==L){try{bv[bw]=bD}catch(bA){}}}else{if(bE&&"get" in bE&&(bB=bE.get(bx,false,by))!==L){return bB}return bv[bw]}},css:function(by,bx,bv){var bw,e;bx=b.camelCase(bx);e=b.cssHooks[bx];bx=b.cssProps[bx]||bx;if(bx==="cssFloat"){bx="float"}if(e&&"get" in e&&(bw=e.get(by,true,bv))!==L){return bw}else{if(Z){return Z(by,bx)}}},swap:function(bx,bw,by){var e={};for(var bv in bw){e[bv]=bx.style[bv];bx.style[bv]=bw[bv]}by.call(bx);for(bv in bw){bx.style[bv]=e[bv]}}});b.curCSS=b.css;b.each(["height","width"],function(bv,e){b.cssHooks[e]={get:function(by,bx,bw){var bz;if(bx){if(by.offsetWidth!==0){return p(by,e,bw)}else{b.swap(by,a7,function(){bz=p(by,e,bw)})}return bz}},set:function(bw,bx){if(bc.test(bx)){bx=parseFloat(bx);if(bx>=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx<e;bx++){if(!bv){bA-=parseFloat(b.css(by,"padding"+bz[bx]))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}else{bA-=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}}}return bA+"px"}bA=Z(by,bw,bw);if(bA<0||bA==null){bA=by.style[bw]||0}bA=parseFloat(bA)||0;if(bv){for(;bx<e;bx++){bA+=parseFloat(b.css(by,"padding"+bz[bx]))||0;if(bv!=="padding"){bA+=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}}}return bA+"px"}if(b.expr&&b.expr.filters){b.expr.filters.hidden=function(bw){var bv=bw.offsetWidth,e=bw.offsetHeight;return(bv===0&&e===0)||(!b.support.reliableHiddenOffsets&&((bw.style&&bw.style.display)||b.css(bw,"display"))==="none")};b.expr.filters.visible=function(e){return !b.expr.filters.hidden(e)}}var k=/%20/g,ap=/\[\]$/,bs=/\r?\n/g,bq=/#.*$/,aD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,aZ=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aM=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,aQ=/^(?:GET|HEAD)$/,c=/^\/\//,M=/\?/,a6=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw<bz;bw++){bv=bx[bw];bC=/^\+/.test(bv);if(bC){bv=bv.substr(1)||"*"}bB=e[bv]=e[bv]||[];bB[bC?"unshift":"push"](bA)}}}}function aW(bv,bE,bz,bD,bB,bx){bB=bB||bE.dataTypes[0];bx=bx||{};bx[bB]=true;var bA=bv[bB],bw=0,e=bA?bA.length:0,by=(bv===aa),bC;for(;bw<e&&(by||!bC);bw++){bC=bA[bw](bE,bz,bD);if(typeof bC==="string"){if(!by||bx[bC]){bC=L}else{bE.dataTypes.unshift(bC);bC=aW(bv,bE,bz,bD,bC,bx)}}}if((by||!bC)&&!bx["*"]){bC=aW(bv,bE,bz,bD,"*",bx)}return bC}function am(bw,bx){var bv,e,by=b.ajaxSettings.flatOptions||{};for(bv in bx){if(bx[bv]!==L){(by[bv]?bw:(e||(e={})))[bv]=bx[bv]}}if(e){b.extend(true,bw,e)}}b.fn.extend({load:function(bw,bz,bA){if(typeof bw!=="string"&&A){return A.apply(this,arguments)}else{if(!this.length){return this}}var by=bw.indexOf(" ");if(by>=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("<div>").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA<bw;bA++){if(bA===1){for(bE in bH.converters){if(typeof bE==="string"){bG[bE.toLowerCase()]=bH.converters[bE]}}}bx=bC;bC=bD[bA];if(bC==="*"){bC=bx}else{if(bx!=="*"&&bx!==bC){by=bx+" "+bC;bF=bG[by]||bG["* "+bC];if(!bF){e=L;for(bv in bG){bB=bv.split(" ");if(bB[0]===bx||bB[0]==="*"){e=bG[bB[1]+" "+bC];if(e){bv=bG[bv];if(bv===true){bF=e}else{if(e===true){bF=bv}}break}}}}if(!(bF||e)){b.error("No conversion from "+by.replace(" "," to "))}if(bF!==true){bz=bF?bF(bz):e(bv(bz))}}}}return bz}var aC=b.now(),u=/(\=)\?(&|$)|\?\?/i;b.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return b.expando+"_"+(aC++)}});b.ajaxPrefilter("json jsonp",function(bD,bA,bC){var bx=bD.contentType==="application/x-www-form-urlencoded"&&(typeof bD.data==="string");if(bD.dataTypes[0]==="jsonp"||bD.jsonp!==false&&(u.test(bD.url)||bx&&u.test(bD.data))){var bB,bw=bD.jsonpCallback=b.isFunction(bD.jsonpCallback)?bD.jsonpCallback():bD.jsonpCallback,bz=bb[bw],e=bD.url,by=bD.data,bv="$1"+bw+"$2";if(bD.jsonp!==false){e=e.replace(u,bv);if(bD.url===e){if(bx){by=by.replace(u,bv)}if(bD.data===by){e+=(/\?/.test(e)?"&":"?")+bD.jsonp+"="+bw}}}bD.url=e;bD.data=by;bb[bw]=function(bE){bB=[bE]};bC.always(function(){bb[bw]=bz;if(bB&&b.isFunction(bz)){bb[bw](bB[0])}});bD.converters["script json"]=function(){if(!bB){b.error(bw+" was not called")}return bB[0]};bD.dataTypes[0]="json";return"script"}});b.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){b.globalEval(e);return e}}});b.ajaxPrefilter("script",function(e){if(e.cache===L){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});b.ajaxTransport("script",function(bw){if(bw.crossDomain){var e,bv=av.head||av.getElementsByTagName("head")[0]||av.documentElement;return{send:function(bx,by){e=av.createElement("script");e.async="async";if(bw.scriptCharset){e.charset=bw.scriptCharset}e.src=bw.url;e.onload=e.onreadystatechange=function(bA,bz){if(bz||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bv&&e.parentNode){bv.removeChild(e)}e=L;if(!bz){by(200,"success")}}};bv.insertBefore(e,bv.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var B=bb.ActiveXObject?function(){for(var e in N){N[e](0,1)}}:false,y=0,N;function aL(){try{return new bb.XMLHttpRequest()}catch(bv){}}function aj(){try{return new bb.ActiveXObject("Microsoft.XMLHTTP")}catch(bv){}}b.ajaxSettings.xhr=bb.ActiveXObject?function(){return !this.isLocal&&aL()||aj()}:aL;(function(e){b.extend(b.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(b.ajaxSettings.xhr());if(b.support.ajax){b.ajaxTransport(function(e){if(!e.crossDomain||b.support.cors){var bv;return{send:function(bB,bw){var bA=e.xhr(),bz,by;if(e.username){bA.open(e.type,e.url,e.async,e.username,e.password)}else{bA.open(e.type,e.url,e.async)}if(e.xhrFields){for(by in e.xhrFields){bA[by]=e.xhrFields[by]}}if(e.mimeType&&bA.overrideMimeType){bA.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!bB["X-Requested-With"]){bB["X-Requested-With"]="XMLHttpRequest"}try{for(by in bB){bA.setRequestHeader(by,bB[by])}}catch(bx){}bA.send((e.hasContent&&e.data)||null);bv=function(bK,bE){var bF,bD,bC,bI,bH;try{if(bv&&(bE||bA.readyState===4)){bv=L;if(bz){bA.onreadystatechange=b.noop;if(B){delete N[bz]}}if(bE){if(bA.readyState!==4){bA.abort()}}else{bF=bA.status;bC=bA.getAllResponseHeaders();bI={};bH=bA.responseXML;if(bH&&bH.documentElement){bI.xml=bH}bI.text=bA.responseText;try{bD=bA.statusText}catch(bJ){bD=""}if(!bF&&e.isLocal&&!e.crossDomain){bF=bI.text?200:404}else{if(bF===1223){bF=204}}}}}catch(bG){if(!bE){bw(-1,bG)}}if(bI){bw(bF,bD,bI,bC)}};if(!e.async||bA.readyState===4){bv()}else{bz=++y;if(B){if(!N){N={};b(bb).unload(B)}N[bz]=bv}bA.onreadystatechange=bv}},abort:function(){if(bv){bv(0,1)}}}}})}var Q={},a8,m,aB=/^(?:toggle|show|hide)$/,aT=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,a3,aH=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],a4;b.fn.extend({show:function(bx,bA,bz){var bw,by;if(bx||bx===0){return this.animate(a0("show",3),bx,bA,bz)}else{for(var bv=0,e=this.length;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(!b._data(bw,"olddisplay")&&by==="none"){by=bw.style.display=""}if(by===""&&b.css(bw,"display")==="none"){b._data(bw,"olddisplay",x(bw.nodeName))}}}for(bv=0;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(by===""||by==="none"){bw.style.display=b._data(bw,"olddisplay")||""}}}return this}},hide:function(bx,bA,bz){if(bx||bx===0){return this.animate(a0("hide",3),bx,bA,bz)}else{var bw,by,bv=0,e=this.length;for(;bv<e;bv++){bw=this[bv];if(bw.style){by=b.css(bw,"display");if(by!=="none"&&!b._data(bw,"olddisplay")){b._data(bw,"olddisplay",by)}}}for(bv=0;bv<e;bv++){if(this[bv].style){this[bv].style.display="none"}}return this}},_toggle:b.fn.toggle,toggle:function(bw,bv,bx){var e=typeof bw==="boolean";if(b.isFunction(bw)&&b.isFunction(bv)){this._toggle.apply(this,arguments)}else{if(bw==null||e){this.each(function(){var by=e?bw:b(this).is(":hidden");b(this)[by?"show":"hide"]()})}else{this.animate(a0("toggle",3),bw,bv,bx)}}return this},fadeTo:function(e,bx,bw,bv){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:bx},e,bw,bv)},animate:function(bz,bw,by,bx){var e=b.speed(bw,by,bx);if(b.isEmptyObject(bz)){return this.each(e.complete,[false])}bz=b.extend({},bz);function bv(){if(e.queue===false){b._mark(this)}var bE=b.extend({},e),bK=this.nodeType===1,bI=bK&&b(this).is(":hidden"),bB,bF,bD,bJ,bH,bC,bG,bL,bA;bE.animatedProperties={};for(bD in bz){bB=b.camelCase(bD);if(bD!==bB){bz[bB]=bz[bD];delete bz[bD]}bF=bz[bB];if(b.isArray(bF)){bE.animatedProperties[bB]=bF[1];bF=bz[bB]=bF[0]}else{bE.animatedProperties[bB]=bE.specialEasing&&bE.specialEasing[bB]||bE.easing||"swing"}if(bF==="hide"&&bI||bF==="show"&&!bI){return bE.complete.call(this)}if(bK&&(bB==="height"||bB==="width")){bE.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(b.css(this,"display")==="inline"&&b.css(this,"float")==="none"){if(!b.support.inlineBlockNeedsLayout||x(this.nodeName)==="inline"){this.style.display="inline-block"}else{this.style.zoom=1}}}}if(bE.overflow!=null){this.style.overflow="hidden"}for(bD in bz){bJ=new b.fx(this,bE,bD);bF=bz[bD];if(aB.test(bF)){bA=b._data(this,"toggle"+bD)||(bF==="toggle"?bI?"show":"hide":0);if(bA){b._data(this,"toggle"+bD,bA==="show"?"hide":"show");bJ[bA]()}else{bJ[bF]()}}else{bH=aT.exec(bF);bC=bJ.cur();if(bH){bG=parseFloat(bH[2]);bL=bH[3]||(b.cssNumber[bD]?"":"px");if(bL!=="px"){b.style(this,bD,(bG||1)+bL);bC=((bG||1)/bJ.cur())*bC;b.style(this,bD,bC+bL)}if(bH[1]){bG=((bH[1]==="-="?-1:1)*bG)+bC}bJ.custom(bC,bG,bL)}else{bJ.custom(bC,bF,"")}}}return true}return e.queue===false?this.each(bv):this.queue(e.queue,bv)},stop:function(bw,bv,e){if(typeof bw!=="string"){e=bv;bv=bw;bw=L}if(bv&&bw!==false){this.queue(bw||"fx",[])}return this.each(function(){var bx,by=false,bA=b.timers,bz=b._data(this);if(!e){b._unmark(true,this)}function bB(bE,bF,bD){var bC=bF[bD];b.removeData(bE,bD,true);bC.stop(e)}if(bw==null){for(bx in bz){if(bz[bx]&&bz[bx].stop&&bx.indexOf(".run")===bx.length-4){bB(this,bz,bx)}}}else{if(bz[bx=bw+".run"]&&bz[bx].stop){bB(this,bz,bx)}}for(bx=bA.length;bx--;){if(bA[bx].elem===this&&(bw==null||bA[bx].queue===bw)){if(e){bA[bx](true)}else{bA[bx].saveState()}by=true;bA.splice(bx,1)}}if(!(e&&by)){b.dequeue(this,bw)}})}});function bh(){setTimeout(at,0);return(a4=b.now())}function at(){a4=L}function a0(bv,e){var bw={};b.each(aH.concat.apply([],aH.slice(0,e)),function(){bw[this]=bv});return bw}b.each({slideDown:a0("show",1),slideUp:a0("hide",1),slideToggle:a0("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,bv){b.fn[e]=function(bw,by,bx){return this.animate(bv,bw,by,bx)}});b.extend({speed:function(bw,bx,bv){var e=bw&&typeof bw==="object"?b.extend({},bw):{complete:bv||!bv&&bx||b.isFunction(bw)&&bw,duration:bw,easing:bv&&bx||bx&&!b.isFunction(bx)&&bx};e.duration=b.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in b.fx.speeds?b.fx.speeds[e.duration]:b.fx.speeds._default;if(e.queue==null||e.queue===true){e.queue="fx"}e.old=e.complete;e.complete=function(by){if(b.isFunction(e.old)){e.old.call(this)}if(e.queue){b.dequeue(this,e.queue)}else{if(by!==false){b._unmark(this)}}};return e},easing:{linear:function(bw,bx,e,bv){return e+bv*bw},swing:function(bw,bx,e,bv){return((-Math.cos(bw*Math.PI)/2)+0.5)*bv+e}},timers:[],fx:function(bv,e,bw){this.options=e;this.elem=bv;this.prop=bw;e.orig=e.orig||{}}});b.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(b.fx.step[this.prop]||b.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var e,bv=b.css(this.elem,this.prop);return isNaN(e=parseFloat(bv))?!bv||bv==="auto"?0:bv:e},custom:function(bz,by,bx){var e=this,bw=b.fx;this.startTime=a4||bh();this.end=by;this.now=this.start=bz;this.pos=this.state=0;this.unit=bx||this.unit||(b.cssNumber[this.prop]?"":"px");function bv(bA){return e.step(bA)}bv.queue=this.options.queue;bv.elem=this.elem;bv.saveState=function(){if(e.options.hide&&b._data(e.elem,"fxshow"+e.prop)===L){b._data(e.elem,"fxshow"+e.prop,e.start)}};if(bv()&&b.timers.push(bv)&&!a3){a3=setInterval(bw.tick,bw.interval)}},show:function(){var e=b._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=e||b.style(this.elem,this.prop);this.options.show=true;if(e!==L){this.custom(this.cur(),e)}else{this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur())}b(this.elem).show()},hide:function(){this.options.orig[this.prop]=b._data(this.elem,"fxshow"+this.prop)||b.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(by){var bA,bB,bv,bx=a4||bh(),e=true,bz=this.elem,bw=this.options;if(by||bx>=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e<bv.length;e++){bw=bv[e];if(!bw()&&bv[e]===bw){bv.splice(e--,1)}}if(!bv.length){b.fx.stop()}},interval:13,stop:function(){clearInterval(a3);a3=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(e){b.style(e.elem,"opacity",e.now)},_default:function(e){if(e.elem.style&&e.elem.style[e.prop]!=null){e.elem.style[e.prop]=e.now+e.unit}else{e.elem[e.prop]=e.now}}}});b.each(["width","height"],function(e,bv){b.fx.step[bv]=function(bw){b.style(bw.elem,bv,Math.max(0,bw.now)+bw.unit)}});if(b.expr&&b.expr.filters){b.expr.filters.animated=function(e){return b.grep(b.timers,function(bv){return e===bv.elem}).length}}function x(bx){if(!Q[bx]){var e=av.body,bv=b("<"+bx+">").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*!
+ * jQuery UI 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI
+ */
+(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h<j.length;h++){if(e.options[j[h][0]]){j[h][1].apply(e.element,f)}}}},contains:function(f,e){return document.compareDocumentPosition?f.compareDocumentPosition(e)&16:f!==e&&f.contains(e)},hasScroll:function(h,f){if(a(h).css("overflow")==="hidden"){return false}var e=(f&&f==="left")?"scrollLeft":"scrollTop",g=false;if(h[e]>0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*!
+ * jQuery UI Widget 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Widget
+ */
+(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*!
+ * jQuery UI Mouse 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Mouse
+ *
+ * Depends:
+ * jquery.ui.widget.js
+ */
+(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g<l.length;g++){var j=c.trim(l[g]),e="ui-resizable-"+j;var h=c('<div class="ui-resizable-handle '+e+'"></div>');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(h<e.maxWidth){e.maxWidth=h}if(k<e.maxHeight){e.maxHeight=k}}this._vBoundaries=e},_updateCache:function(e){var f=this.options;this.offset=this.helper.offset();if(a(e.left)){this.position.left=e.left}if(a(e.top)){this.position.top=e.top}if(a(e.height)){this.size.height=e.height}if(a(e.width)){this.size.width=e.width}},_updateRatio:function(h,g){var i=this.options,j=this.position,f=this.size,e=this.axis;if(a(h.height)){h.width=(h.height*this.aspectRatio)}else{if(a(h.width)){h.height=(h.width/this.aspectRatio)}}if(e=="sw"){h.left=j.left+(f.width-h.width);h.top=null}if(e=="nw"){h.top=j.top+(f.height-h.height);h.left=j.left+(f.width-h.width)}return h},_respectSize:function(l,g){var j=this.helper,i=this._vBoundaries,r=this._aspectRatio||g.shiftKey,q=this.axis,t=a(l.width)&&i.maxWidth&&(i.maxWidth<l.width),m=a(l.height)&&i.maxHeight&&(i.maxHeight<l.height),h=a(l.width)&&i.minWidth&&(i.minWidth>l.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f<this._proportionallyResizeElements.length;f++){var h=this._proportionallyResizeElements[f];if(!this.borderDif){var e=[h.css("borderTopWidth"),h.css("borderRightWidth"),h.css("borderBottomWidth"),h.css("borderLeftWidth")],j=[h.css("paddingTop"),h.css("paddingRight"),h.css("paddingBottom"),h.css("paddingLeft")];this.borderDif=c.map(e,function(l,n){var m=parseInt(l,10)||0,o=parseInt(j[n],10)||0;return m+o})}if(c.browser.msie&&!(!(c(g).is(":hidden")||c(g).parents(":hidden").length))){continue}h.css({height:(g.height()-this.borderDif[0]-this.borderDif[2])||0,width:(g.width()-this.borderDif[1]-this.borderDif[3])||0})}},_renderProxy:function(){var f=this.element,i=this.options;this.elementOffset=f.offset();if(this._helper){this.helper=this.helper||c('<div style="overflow:hidden;"></div>');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*!
+ * jQuery hashchange event - v1.3 - 7/21/2010
+ * http://benalman.com/projects/jquery-hashchange-plugin/
+ *
+ * Copyright (c) 2010 "Cowboy" Ben Alman
+ * Dual licensed under the MIT and GPL licenses.
+ * http://benalman.com/about/license/
+ */
+(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){r||l(a());n()}).attr("src",r||"javascript:0").insertAfter("body")[0].contentWindow;h.onpropertychange=function(){try{if(event.propertyName==="title"){q.document.title=h.title}}catch(s){}}}};j.stop=k;o=function(){return a(q.location.href)};l=function(v,s){var u=q.document,t=$.fn[c].domain;if(v!==s){u.title=h.title;u.open();t&&u.write('<script>document.domain="'+t+'"<\/script>');u.close();q.location.hash=v}}})();return j})()})(jQuery,this);(function(c){var a=c.scrollTo=function(f,e,d){c(window).scrollTo(f,e,d)};a.defaults={axis:"xy",duration:parseFloat(c.fn.jquery)>=1.3?0:1};a.window=function(d){return c(window)._scrollable()};c.fn._scrollable=function(){return this.map(function(){var e=this,d=!e.nodeName||c.inArray(e.nodeName.toLowerCase(),["iframe","#document","html","body"])!=-1;if(!d){return e}var f=(e.contentWindow||e).document||e.ownerDocument||e;return c.browser.safari||f.compatMode=="BackCompat"?f.body:f.documentElement})};c.fn.scrollTo=function(f,e,d){if(typeof e=="object"){d=e;e=0}if(typeof d=="function"){d={onAfter:d}}if(f=="max"){f=9000000000}d=c.extend({},a.defaults,d);e=e||d.speed||d.duration;d.queue=d.queue&&d.axis.length>1;if(d.queue){e/=2}d.offset=b(d.offset);d.over=b(d.over);return this._scrollable().each(function(){var l=this,j=c(l),k=f,i,g={},m=j.is("html,body");switch(typeof k){case"number":case"string":if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(k)){k=b(k);break}k=c(k,this);case"object":if(k.is||k.style){i=(k=c(k)).offset()}}c.each(d.axis.split(""),function(q,r){var s=r=="x"?"Left":"Top",u=s.toLowerCase(),p="scroll"+s,o=l[p],n=a.max(l,r);if(i){g[p]=i[u]+(m?0:o-j.offset()[u]);if(d.margin){g[p]-=parseInt(k.css("margin"+s))||0;g[p]-=parseInt(k.css("border"+s+"Width"))||0}g[p]+=d.offset[u]||0;if(d.over[u]){g[p]+=k[r=="x"?"width":"height"]()*d.over[u]}}else{var t=k[u];g[p]=t.slice&&t.slice(-1)=="%"?parseFloat(t)/100*n:t}if(/^\d+$/.test(g[p])){g[p]=g[p]<=0?0:Math.min(g[p],n)}if(!q&&d.queue){if(o!=g[p]){h(d.onAfterFirst)}delete g[p]}});h(d.onAfter);function h(n){j.animate(g,e,d.easing,n&&function(){n.call(this,f,d)})}}).end()};a.max=function(j,i){var h=i=="x"?"Width":"Height",e="scroll"+h;if(!c(j).is("html,body")){return j[e]-c(j)[h.toLowerCase()]()}var g="client"+h,f=j.ownerDocument.documentElement,d=j.ownerDocument.body;return Math.max(f[e],d[e])-Math.min(f[g],d[g])};function b(d){return typeof d=="object"?d:{top:d,left:d}}})(jQuery);/*!
+ PowerTip - v1.2.0 - 2013-04-03
+ http://stevenbenner.github.com/jquery-powertip/
+ Copyright (c) 2013 Steven Benner (http://stevenbenner.com/).
+ Released under MIT license.
+ https://raw.github.com/stevenbenner/jquery-powertip/master/LICENSE.txt
+*/
+(function(a){if(typeof define==="function"&&define.amd){define(["jquery"],a)}else{a(jQuery)}}(function(k){var A=k(document),s=k(window),w=k("body");var n="displayController",e="hasActiveHover",d="forcedOpen",u="hasMouseMove",f="mouseOnToPopup",g="originalTitle",y="powertip",o="powertipjq",l="powertiptarget",E=180/Math.PI;var c={isTipOpen:false,isFixedTipOpen:false,isClosing:false,tipOpenImminent:false,activeHover:null,currentX:0,currentY:0,previousX:0,previousY:0,desyncTimeout:null,mouseTrackingActive:false,delayInProgress:false,windowWidth:0,windowHeight:0,scrollTop:0,scrollLeft:0};var p={none:0,top:1,bottom:2,left:4,right:8};k.fn.powerTip=function(F,N){if(!this.length){return this}if(k.type(F)==="string"&&k.powerTip[F]){return k.powerTip[F].call(this,this,N)}var O=k.extend({},k.fn.powerTip.defaults,F),G=new x(O);h();this.each(function M(){var R=k(this),Q=R.data(y),P=R.data(o),T=R.data(l),S;if(R.data(n)){k.powerTip.destroy(R)}S=R.attr("title");if(!Q&&!T&&!P&&S){R.data(y,S);R.data(g,S);R.removeAttr("title")}R.data(n,new t(R,O,G))});if(!O.manual){this.on({"mouseenter.powertip":function J(P){k.powerTip.show(this,P)},"mouseleave.powertip":function L(){k.powerTip.hide(this)},"focus.powertip":function K(){k.powerTip.show(this)},"blur.powertip":function H(){k.powerTip.hide(this,true)},"keydown.powertip":function I(P){if(P.keyCode===27){k.powerTip.hide(this,true)}}})}return this};k.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false};k.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};k.powerTip={show:function z(F,G){if(G){i(G);c.previousX=G.pageX;c.previousY=G.pageY;k(F).data(n).show()}else{k(F).first().data(n).show(true,true)}return F},reposition:function r(F){k(F).first().data(n).resetPosition();return F},hide:function D(G,F){if(G){k(G).first().data(n).hide(F)}else{if(c.activeHover){c.activeHover.data(n).hide(true)}}return G},destroy:function C(G){k(G).off(".powertip").each(function F(){var I=k(this),H=[g,n,e,d];if(I.data(g)){I.attr("title",I.data(g));H.push(y)}I.removeData(H)});return G}};k.powerTip.showTip=k.powerTip.show;k.powerTip.closeTip=k.powerTip.hide;function b(){var F=this;F.top="auto";F.left="auto";F.right="auto";F.bottom="auto";F.set=function(H,G){if(k.isNumeric(G)){F[H]=Math.round(G)}}}function t(K,N,F){var J=null;function L(P,Q){M();if(!K.data(e)){if(!P){c.tipOpenImminent=true;J=setTimeout(function O(){J=null;I()},N.intentPollInterval)}else{if(Q){K.data(d,true)}F.showTip(K)}}}function G(P){M();c.tipOpenImminent=false;if(K.data(e)){K.data(d,false);if(!P){c.delayInProgress=true;J=setTimeout(function O(){J=null;F.hideTip(K);c.delayInProgress=false},N.closeDelay)}else{F.hideTip(K)}}}function I(){var Q=Math.abs(c.previousX-c.currentX),O=Math.abs(c.previousY-c.currentY),P=Q+O;if(P<N.intentSensitivity){F.showTip(K)}else{c.previousX=c.currentX;c.previousY=c.currentY;L()}}function M(){J=clearTimeout(J);c.delayInProgress=false}function H(){F.resetPosition(K)}this.show=L;this.hide=G;this.cancel=M;this.resetPosition=H}function j(){function G(M,L,J,O,P){var K=L.split("-")[0],N=new b(),I;if(q(M)){I=H(M,K)}else{I=F(M,K)}switch(L){case"n":N.set("left",I.left-(J/2));N.set("bottom",c.windowHeight-I.top+P);break;case"e":N.set("left",I.left+P);N.set("top",I.top-(O/2));break;case"s":N.set("left",I.left-(J/2));N.set("top",I.top+P);break;case"w":N.set("top",I.top-(O/2));N.set("right",c.windowWidth-I.left+P);break;case"nw":N.set("bottom",c.windowHeight-I.top+P);N.set("right",c.windowWidth-I.left-20);break;case"nw-alt":N.set("left",I.left);N.set("bottom",c.windowHeight-I.top+P);break;case"ne":N.set("left",I.left-20);N.set("bottom",c.windowHeight-I.top+P);break;case"ne-alt":N.set("bottom",c.windowHeight-I.top+P);N.set("right",c.windowWidth-I.left);break;case"sw":N.set("top",I.top+P);N.set("right",c.windowWidth-I.left-20);break;case"sw-alt":N.set("left",I.left);N.set("top",I.top+P);break;case"se":N.set("left",I.left-20);N.set("top",I.top+P);break;case"se-alt":N.set("top",I.top+P);N.set("right",c.windowWidth-I.left);break}return N}function F(K,J){var O=K.offset(),N=K.outerWidth(),I=K.outerHeight(),M,L;switch(J){case"n":M=O.left+N/2;L=O.top;break;case"e":M=O.left+N;L=O.top+I/2;break;case"s":M=O.left+N/2;L=O.top+I;break;case"w":M=O.left;L=O.top+I/2;break;case"nw":M=O.left;L=O.top;break;case"ne":M=O.left+N;L=O.top;break;case"sw":M=O.left;L=O.top+I;break;case"se":M=O.left+N;L=O.top+I;break}return{top:L,left:M}}function H(O,K){var S=O.closest("svg")[0],N=O[0],W=S.createSVGPoint(),L=N.getBBox(),V=N.getScreenCTM(),M=L.width/2,Q=L.height/2,P=[],I=["nw","n","ne","e","se","s","sw","w"],U,X,R,T;function J(){P.push(W.matrixTransform(V))}W.x=L.x;W.y=L.y;J();W.x+=M;J();W.x+=M;J();W.y+=Q;J();W.y+=Q;J();W.x-=M;J();W.x-=M;J();W.y-=Q;J();if(P[0].y!==P[1].y||P[0].x!==P[7].x){X=Math.atan2(V.b,V.a)*E;R=Math.ceil(((X%360)-22.5)/45);if(R<1){R+=8}while(R--){I.push(I.shift())}}for(T=0;T<P.length;T++){if(I[T]===K){U=P[T];break}}return{top:U.y+c.scrollTop,left:U.x+c.scrollLeft}}this.compute=G}function x(Q){var P=new j(),O=k("#"+Q.popupId);if(O.length===0){O=k("<div/>",{id:Q.popupId});if(w.length===0){w=k("body")}w.append(O)}if(Q.followMouse){if(!O.data(u)){A.on("mousemove",M);s.on("scroll",M);O.data(u,true)}}if(Q.mouseOnToPopup){O.on({mouseenter:function L(){if(O.data(f)){if(c.activeHover){c.activeHover.data(n).cancel()}}},mouseleave:function N(){if(c.activeHover){c.activeHover.data(n).hide()}}})}function I(S){S.data(e,true);O.queue(function R(T){H(S);T()})}function H(S){var U;if(!S.data(e)){return}if(c.isTipOpen){if(!c.isClosing){K(c.activeHover)}O.delay(100).queue(function R(V){H(S);V()});return}S.trigger("powerTipPreRender");U=B(S);if(U){O.empty().append(U)}else{return}S.trigger("powerTipRender");c.activeHover=S;c.isTipOpen=true;O.data(f,Q.mouseOnToPopup);if(!Q.followMouse){G(S);c.isFixedTipOpen=true}else{M()}O.fadeIn(Q.fadeInTime,function T(){if(!c.desyncTimeout){c.desyncTimeout=setInterval(J,500)}S.trigger("powerTipOpen")})}function K(R){c.isClosing=true;c.activeHover=null;c.isTipOpen=false;c.desyncTimeout=clearInterval(c.desyncTimeout);R.data(e,false);R.data(d,false);O.fadeOut(Q.fadeOutTime,function S(){var T=new b();c.isClosing=false;c.isFixedTipOpen=false;O.removeClass();T.set("top",c.currentY+Q.offset);T.set("left",c.currentX+Q.offset);O.css(T);R.trigger("powerTipClose")})}function M(){if(!c.isFixedTipOpen&&(c.isTipOpen||(c.tipOpenImminent&&O.data(u)))){var R=O.outerWidth(),V=O.outerHeight(),U=new b(),S,T;U.set("top",c.currentY+Q.offset);U.set("left",c.currentX+Q.offset);S=m(U,R,V);if(S!==p.none){T=a(S);if(T===1){if(S===p.right){U.set("left",c.windowWidth-R)}else{if(S===p.bottom){U.set("top",c.scrollTop+c.windowHeight-V)}}}else{U.set("left",c.currentX-R-Q.offset);U.set("top",c.currentY-V-Q.offset)}}O.css(U)}}function G(S){var R,T;if(Q.smartPlacement){R=k.fn.powerTip.smartPlacementLists[Q.placement];k.each(R,function(U,W){var V=m(F(S,W),O.outerWidth(),O.outerHeight());T=W;if(V===p.none){return false}})}else{F(S,Q.placement);T=Q.placement}O.addClass(T)}function F(U,T){var R=0,S,W,V=new b();V.set("top",0);V.set("left",0);O.css(V);do{S=O.outerWidth();W=O.outerHeight();V=P.compute(U,T,S,W,Q.offset);O.css(V)}while(++R<=5&&(S!==O.outerWidth()||W!==O.outerHeight()));return V}function J(){var R=false;if(c.isTipOpen&&!c.isClosing&&!c.delayInProgress){if(c.activeHover.data(e)===false||c.activeHover.is(":disabled")){R=true}else{if(!v(c.activeHover)&&!c.activeHover.is(":focus")&&!c.activeHover.data(d)){if(O.data(f)){if(!v(O)){R=true}}else{R=true}}}if(R){K(c.activeHover)}}}this.showTip=I;this.hideTip=K;this.resetPosition=G}function q(F){return window.SVGElement&&F[0] instanceof SVGElement}function h(){if(!c.mouseTrackingActive){c.mouseTrackingActive=true;k(function H(){c.scrollLeft=s.scrollLeft();c.scrollTop=s.scrollTop();c.windowWidth=s.width();c.windowHeight=s.height()});A.on("mousemove",i);s.on({resize:function G(){c.windowWidth=s.width();c.windowHeight=s.height()},scroll:function F(){var I=s.scrollLeft(),J=s.scrollTop();if(I!==c.scrollLeft){c.currentX+=I-c.scrollLeft;c.scrollLeft=I}if(J!==c.scrollTop){c.currentY+=J-c.scrollTop;c.scrollTop=J}}})}}function i(F){c.currentX=F.pageX;c.currentY=F.pageY}function v(F){var H=F.offset(),J=F[0].getBoundingClientRect(),I=J.right-J.left,G=J.bottom-J.top;return c.currentX>=H.left&&c.currentX<=H.left+I&&c.currentY>=H.top&&c.currentY<=H.top+G}function B(I){var G=I.data(y),F=I.data(o),K=I.data(l),H,J;if(G){if(k.isFunction(G)){G=G.call(I[0])}J=G}else{if(F){if(k.isFunction(F)){F=F.call(I[0])}if(F.length>0){J=F.clone(true,true)}}else{if(K){H=k("#"+K);if(H.length>0){J=H.html()}}}}return J}function m(M,L,K){var G=c.scrollTop,J=c.scrollLeft,I=G+c.windowHeight,F=J+c.windowWidth,H=p.none;if(M.top<G||Math.abs(M.bottom-c.windowHeight)-K<G){H|=p.top}if(M.top+K>I||Math.abs(M.bottom-c.windowHeight)>I){H|=p.bottom}if(M.left<J||M.right+L>F){H|=p.left}if(M.left+L>F||M.right<J){H|=p.right}return H}function a(G){var F=0;while(G){G&=G-1;F++}return F}}));/*!
+ * jQuery UI Touch Punch 0.2.3
+ *
+ * Copyright 2011–2014, Dave Furfero
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ *
+ * Depends:
+ * jquery.ui.widget.js
+ * jquery.ui.mouse.js
+ */
+(function(b){b.support.touch="ontouchend" in document;if(!b.support.touch){return}var d=b.ui.mouse.prototype,f=d._mouseInit,c=d._mouseDestroy,a;function e(h,i){if(h.originalEvent.touches.length>1){return}h.preventDefault();var j=h.originalEvent.changedTouches[0],g=document.createEvent("MouseEvents");g.initMouseEvent(i,true,true,window,1,j.screenX,j.screenY,j.clientX,j.clientY,false,false,false,false,0,null);h.target.dispatchEvent(g)}d._touchStart=function(h){var g=this;if(a||!g._mouseCapture(h.originalEvent.changedTouches[0])){return}a=true;g._touchMoved=false;e(h,"mouseover");e(h,"mousemove");e(h,"mousedown")};d._touchMove=function(g){if(!a){return}this._touchMoved=true;e(g,"mousemove")};d._touchEnd=function(g){if(!a){return}e(g,"mouseup");e(g,"mouseout");if(!this._touchMoved){e(g,"click")}a=false};d._mouseInit=function(){var g=this;g.element.bind({touchstart:b.proxy(g,"_touchStart"),touchmove:b.proxy(g,"_touchMove"),touchend:b.proxy(g,"_touchEnd")});f.call(g)};d._mouseDestroy=function(){var g=this;g.element.unbind({touchstart:b.proxy(g,"_touchStart"),touchmove:b.proxy(g,"_touchMove"),touchend:b.proxy(g,"_touchEnd")});c.call(g)}})(jQuery);/*!
+ * SmartMenus jQuery Plugin - v1.0.0 - January 27, 2016
+ * http://www.smartmenus.org/
+ *
+ * Copyright Vasil Dinkov, Vadikom Web Ltd.
+ * http://vadikom.com
+ *
+ * Licensed MIT
+ */
+(function(a){if(typeof define==="function"&&define.amd){define(["jquery"],a)}else{if(typeof module==="object"&&typeof module.exports==="object"){module.exports=a(require("jquery"))}else{a(jQuery)}}}(function(a){var b=[],e=!!window.createPopup,f=false,d="ontouchstart" in window,h=false,g=window.requestAnimationFrame||function(l){return setTimeout(l,1000/60)},c=window.cancelAnimationFrame||function(l){clearTimeout(l)};function k(m){var n=".smartmenus_mouse";if(!h&&!m){var o=true,l=null;a(document).bind(i([["mousemove",function(s){var t={x:s.pageX,y:s.pageY,timeStamp:new Date().getTime()};if(l){var q=Math.abs(l.x-t.x),p=Math.abs(l.y-t.y);if((q>0||p>0)&&q<=2&&p<=2&&t.timeStamp-l.timeStamp<=300){f=true;if(o){var r=a(s.target).closest("a");if(r.is("a")){a.each(b,function(){if(a.contains(this.$root[0],r[0])){this.itemEnter({currentTarget:r[0]});return false}})}o=false}}}l=t}],[d?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut",function(p){if(j(p.originalEvent)){f=false}}]],n));h=true}else{if(h&&m){a(document).unbind(n);h=false}}}function j(l){return !/^(4|mouse)$/.test(l.pointerType)}function i(l,n){if(!n){n=""}var m={};a.each(l,function(o,p){m[p[0].split(" ").join(n+" ")+n]=p[1]});return m}a.SmartMenus=function(m,l){this.$root=a(m);this.opts=l;this.rootId="";this.accessIdPrefix="";this.$subArrow=null;this.activatedItems=[];this.visibleSubMenus=[];this.showTimeout=0;this.hideTimeout=0;this.scrollTimeout=0;this.clickActivated=false;this.focusActivated=false;this.zIndexInc=0;this.idInc=0;this.$firstLink=null;this.$firstSub=null;this.disabled=false;this.$disableOverlay=null;this.$touchScrollingSub=null;this.cssTransforms3d="perspective" in m.style||"webkitPerspective" in m.style;this.wasCollapsible=false;this.init()};a.extend(a.SmartMenus,{hideAll:function(){a.each(b,function(){this.menuHideAll()})},destroy:function(){while(b.length){b[0].destroy()}k(true)},prototype:{init:function(n){var l=this;if(!n){b.push(this);this.rootId=(new Date().getTime()+Math.random()+"").replace(/\D/g,"");this.accessIdPrefix="sm-"+this.rootId+"-";if(this.$root.hasClass("sm-rtl")){this.opts.rightToLeftSubMenus=true}var r=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).bind(i([["mouseover focusin",a.proxy(this.rootOver,this)],["mouseout focusout",a.proxy(this.rootOut,this)],["keydown",a.proxy(this.rootKeyDown,this)]],r)).delegate("a",i([["mouseenter",a.proxy(this.itemEnter,this)],["mouseleave",a.proxy(this.itemLeave,this)],["mousedown",a.proxy(this.itemDown,this)],["focus",a.proxy(this.itemFocus,this)],["blur",a.proxy(this.itemBlur,this)],["click",a.proxy(this.itemClick,this)]],r));r+=this.rootId;if(this.opts.hideOnClick){a(document).bind(i([["touchstart",a.proxy(this.docTouchStart,this)],["touchmove",a.proxy(this.docTouchMove,this)],["touchend",a.proxy(this.docTouchEnd,this)],["click",a.proxy(this.docClick,this)]],r))}a(window).bind(i([["resize orientationchange",a.proxy(this.winResize,this)]],r));if(this.opts.subIndicators){this.$subArrow=a("<span/>").addClass("sub-arrow");if(this.opts.subIndicatorsText){this.$subArrow.html(this.opts.subIndicatorsText)}}k()}this.$firstSub=this.$root.find("ul").each(function(){l.menuInit(a(this))}).eq(0);this.$firstLink=this.$root.find("a").eq(0);if(this.opts.markCurrentItem){var p=/(index|default)\.[^#\?\/]*/i,m=/#.*/,q=window.location.href.replace(p,""),o=q.replace(m,"");this.$root.find("a").each(function(){var s=this.href.replace(p,""),t=a(this);if(s==q||s==o){t.addClass("current");if(l.opts.markCurrentTree){t.parentsUntil("[data-smartmenus-id]","ul").each(function(){a(this).dataSM("parent-a").addClass("current")})}}})}this.wasCollapsible=this.isCollapsible()},destroy:function(m){if(!m){var n=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").unbind(n).undelegate(n);n+=this.rootId;a(document).unbind(n);a(window).unbind(n);if(this.opts.subIndicators){this.$subArrow=null}}this.menuHideAll();var l=this;this.$root.find("ul").each(function(){var o=a(this);if(o.dataSM("scroll-arrows")){o.dataSM("scroll-arrows").remove()}if(o.dataSM("shown-before")){if(l.opts.subMenusMinWidth||l.opts.subMenusMaxWidth){o.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap")}if(o.dataSM("scroll-arrows")){o.dataSM("scroll-arrows").remove()}o.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})}if((o.attr("id")||"").indexOf(l.accessIdPrefix)==0){o.removeAttr("id")}}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("ie-shim").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded");this.$root.find("a.has-submenu").each(function(){var o=a(this);if(o.attr("id").indexOf(l.accessIdPrefix)==0){o.removeAttr("id")}}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub");if(this.opts.subIndicators){this.$root.find("span.sub-arrow").remove()}if(this.opts.markCurrentItem){this.$root.find("a.current").removeClass("current")}if(!m){this.$root=null;this.$firstLink=null;this.$firstSub=null;if(this.$disableOverlay){this.$disableOverlay.remove();this.$disableOverlay=null}b.splice(a.inArray(this,b),1)}},disable:function(l){if(!this.disabled){this.menuHideAll();if(!l&&!this.opts.isPopup&&this.$root.is(":visible")){var m=this.$root.offset();this.$disableOverlay=a('<div class="sm-jquery-disable-overlay"/>').css({position:"absolute",top:m.top,left:m.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(true),opacity:0}).appendTo(document.body)}this.disabled=true}},docClick:function(l){if(this.$touchScrollingSub){this.$touchScrollingSub=null;return}if(this.visibleSubMenus.length&&!a.contains(this.$root[0],l.target)||a(l.target).is("a")){this.menuHideAll()}},docTouchEnd:function(m){if(!this.lastTouch){return}if(this.visibleSubMenus.length&&(this.lastTouch.x2===undefined||this.lastTouch.x1==this.lastTouch.x2)&&(this.lastTouch.y2===undefined||this.lastTouch.y1==this.lastTouch.y2)&&(!this.lastTouch.target||!a.contains(this.$root[0],this.lastTouch.target))){if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}var l=this;this.hideTimeout=setTimeout(function(){l.menuHideAll()},350)}this.lastTouch=null},docTouchMove:function(m){if(!this.lastTouch){return}var l=m.originalEvent.touches[0];this.lastTouch.x2=l.pageX;this.lastTouch.y2=l.pageY},docTouchStart:function(m){var l=m.originalEvent.touches[0];this.lastTouch={x1:l.pageX,y1:l.pageY,target:l.target}},enable:function(){if(this.disabled){if(this.$disableOverlay){this.$disableOverlay.remove();this.$disableOverlay=null}this.disabled=false}},getClosestMenu:function(m){var l=a(m).closest("ul");while(l.dataSM("in-mega")){l=l.parent().closest("ul")}return l[0]||null},getHeight:function(l){return this.getOffset(l,true)},getOffset:function(n,l){var m;if(n.css("display")=="none"){m={position:n[0].style.position,visibility:n[0].style.visibility};n.css({position:"absolute",visibility:"hidden"}).show()}var o=n[0].getBoundingClientRect&&n[0].getBoundingClientRect(),p=o&&(l?o.height||o.bottom-o.top:o.width||o.right-o.left);if(!p&&p!==0){p=l?n[0].offsetHeight:n[0].offsetWidth}if(m){n.hide().css(m)}return p},getStartZIndex:function(l){var m=parseInt(this[l?"$root":"$firstSub"].css("z-index"));if(!l&&isNaN(m)){m=parseInt(this.$root.css("z-index"))}return !isNaN(m)?m:1},getTouchPoint:function(l){return l.touches&&l.touches[0]||l.changedTouches&&l.changedTouches[0]||l},getViewport:function(l){var m=l?"Height":"Width",o=document.documentElement["client"+m],n=window["inner"+m];if(n){o=Math.min(o,n)}return o},getViewportHeight:function(){return this.getViewport(true)},getViewportWidth:function(){return this.getViewport()},getWidth:function(l){return this.getOffset(l)},handleEvents:function(){return !this.disabled&&this.isCSSOn()},handleItemEvents:function(l){return this.handleEvents()&&!this.isLinkInMegaMenu(l)},isCollapsible:function(){return this.$firstSub.css("position")=="static"},isCSSOn:function(){return this.$firstLink.css("display")=="block"},isFixed:function(){var l=this.$root.css("position")=="fixed";if(!l){this.$root.parentsUntil("body").each(function(){if(a(this).css("position")=="fixed"){l=true;return false}})}return l},isLinkInMegaMenu:function(l){return a(this.getClosestMenu(l[0])).hasClass("mega-menu")},isTouchMode:function(){return !f||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(p,l){var n=p.closest("ul"),q=n.dataSM("level");if(q>1&&(!this.activatedItems[q-2]||this.activatedItems[q-2][0]!=n.dataSM("parent-a")[0])){var m=this;a(n.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(n).each(function(){m.itemActivate(a(this).dataSM("parent-a"))})}if(!this.isCollapsible()||l){this.menuHideSubMenus(!this.activatedItems[q-1]||this.activatedItems[q-1][0]!=p[0]?q-1:q)}this.activatedItems[q-1]=p;if(this.$root.triggerHandler("activate.smapi",p[0])===false){return}var o=p.dataSM("sub");if(o&&(this.isTouchMode()||(!this.opts.showOnClick||this.clickActivated))){this.menuShow(o)}},itemBlur:function(m){var l=a(m.currentTarget);if(!this.handleItemEvents(l)){return}this.$root.triggerHandler("blur.smapi",l[0])},itemClick:function(o){var n=a(o.currentTarget);if(!this.handleItemEvents(n)){return}if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==n.closest("ul")[0]){this.$touchScrollingSub=null;o.stopPropagation();return false}if(this.$root.triggerHandler("click.smapi",n[0])===false){return false}var p=a(o.target).is("span.sub-arrow"),m=n.dataSM("sub"),l=m?m.dataSM("level")==2:false;if(m&&!m.is(":visible")){if(this.opts.showOnClick&&l){this.clickActivated=true}this.itemActivate(n);if(m.is(":visible")){this.focusActivated=true;return false}}else{if(this.isCollapsible()&&p){this.itemActivate(n);this.menuHide(m);return false}}if(this.opts.showOnClick&&l||n.hasClass("disabled")||this.$root.triggerHandler("select.smapi",n[0])===false){return false}},itemDown:function(m){var l=a(m.currentTarget);if(!this.handleItemEvents(l)){return}l.dataSM("mousedown",true)},itemEnter:function(n){var m=a(n.currentTarget);if(!this.handleItemEvents(m)){return}if(!this.isTouchMode()){if(this.showTimeout){clearTimeout(this.showTimeout);this.showTimeout=0}var l=this;this.showTimeout=setTimeout(function(){l.itemActivate(m)},this.opts.showOnClick&&m.closest("ul").dataSM("level")==1?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",m[0])},itemFocus:function(m){var l=a(m.currentTarget);if(!this.handleItemEvents(l)){return}if(this.focusActivated&&(!this.isTouchMode()||!l.dataSM("mousedown"))&&(!this.activatedItems.length||this.activatedItems[this.activatedItems.length-1][0]!=l[0])){this.itemActivate(l,true)}this.$root.triggerHandler("focus.smapi",l[0])},itemLeave:function(m){var l=a(m.currentTarget);if(!this.handleItemEvents(l)){return}if(!this.isTouchMode()){l[0].blur();if(this.showTimeout){clearTimeout(this.showTimeout);this.showTimeout=0}}l.removeDataSM("mousedown");this.$root.triggerHandler("mouseleave.smapi",l[0])},menuHide:function(m){if(this.$root.triggerHandler("beforehide.smapi",m[0])===false){return}m.stop(true,true);if(m.css("display")!="none"){var l=function(){m.css("z-index","")};if(this.isCollapsible()){if(this.opts.collapsibleHideFunction){this.opts.collapsibleHideFunction.call(this,m,l)}else{m.hide(this.opts.collapsibleHideDuration,l)}}else{if(this.opts.hideFunction){this.opts.hideFunction.call(this,m,l)}else{m.hide(this.opts.hideDuration,l)}}if(m.dataSM("ie-shim")){m.dataSM("ie-shim").remove().css({"-webkit-transform":"",transform:""})}if(m.dataSM("scroll")){this.menuScrollStop(m);m.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).unbind(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()}m.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false");m.attr({"aria-expanded":"false","aria-hidden":"true"});var n=m.dataSM("level");this.activatedItems.splice(n-1,1);this.visibleSubMenus.splice(a.inArray(m,this.visibleSubMenus),1);this.$root.triggerHandler("hide.smapi",m[0])}},menuHideAll:function(){if(this.showTimeout){clearTimeout(this.showTimeout);this.showTimeout=0}var m=this.opts.isPopup?1:0;for(var l=this.visibleSubMenus.length-1;l>=m;l--){this.menuHide(this.visibleSubMenus[l])}if(this.opts.isPopup){this.$root.stop(true,true);if(this.$root.is(":visible")){if(this.opts.hideFunction){this.opts.hideFunction.call(this,this.$root)}else{this.$root.hide(this.opts.hideDuration)}if(this.$root.dataSM("ie-shim")){this.$root.dataSM("ie-shim").remove()}}}this.activatedItems=[];this.visibleSubMenus=[];this.clickActivated=false;this.focusActivated=false;this.zIndexInc=0;this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(n){for(var l=this.activatedItems.length-1;l>=n;l--){var m=this.activatedItems[l].dataSM("sub");if(m){this.menuHide(m)}}},menuIframeShim:function(l){if(e&&this.opts.overlapControlsInIE&&!l.dataSM("ie-shim")){l.dataSM("ie-shim",a("<iframe/>").attr({src:"javascript:0",tabindex:-9}).css({position:"absolute",top:"auto",left:"0",opacity:0,border:"0"}))}},menuInit:function(l){if(!l.dataSM("in-mega")){if(l.hasClass("mega-menu")){l.find("ul").dataSM("in-mega",true)}var q=2,m=l[0];while((m=m.parentNode.parentNode)!=this.$root[0]){q++}var n=l.prevAll("a").eq(-1);if(!n.length){n=l.prevAll().find("a").eq(-1)}n.addClass("has-submenu").dataSM("sub",l);l.dataSM("parent-a",n).dataSM("level",q).parent().dataSM("sub",l);var o=n.attr("id")||this.accessIdPrefix+(++this.idInc),p=l.attr("id")||this.accessIdPrefix+(++this.idInc);n.attr({id:o,"aria-haspopup":"true","aria-controls":p,"aria-expanded":"false"});l.attr({id:p,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"});if(this.opts.subIndicators){n[this.opts.subIndicatorsPos](this.$subArrow.clone())}}},menuPosition:function(K){var r=K.dataSM("parent-a"),D=r.closest("li"),E=D.parent(),l=K.dataSM("level"),t=this.getWidth(K),J=this.getHeight(K),u=r.offset(),o=u.left,m=u.top,q=this.getWidth(r),F=this.getHeight(r),H=a(window),v=H.scrollLeft(),s=H.scrollTop(),z=this.getViewportWidth(),L=this.getViewportHeight(),w=E.parent().is("[data-sm-horizontal-sub]")||l==2&&!E.hasClass("sm-vertical"),B=this.opts.rightToLeftSubMenus&&!D.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&D.is("[data-sm-reverse]"),p=l==2?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,n=l==2?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY,C,A;if(w){C=B?q-t-p:p;A=this.opts.bottomToTopSubMenus?-J-n:F+n}else{C=B?p-t:q-p;A=this.opts.bottomToTopSubMenus?F-n-J:n}if(this.opts.keepInViewport){var N=o+C,M=m+A;if(B&&N<v){C=w?v-N+C:q-p}else{if(!B&&N+t>v+z){C=w?v+z-t-N+C:p-t}}if(!w){if(J<L&&M+J>s+L){A+=s+L-J-M}else{if(J>=L||M<s){A+=s-M}}}if(w&&(M+J>s+L+0.49||M<s)||!w&&J>L+0.49){var G=this;if(!K.dataSM("scroll-arrows")){K.dataSM("scroll-arrows",a([a('<span class="scroll-up"><span class="scroll-up-arrow"></span></span>')[0],a('<span class="scroll-down"><span class="scroll-down-arrow"></span></span>')[0]]).bind({mouseenter:function(){K.dataSM("scroll").up=a(this).hasClass("scroll-up");G.menuScroll(K)},mouseleave:function(x){G.menuScrollStop(K);G.menuScrollOut(K,x)},"mousewheel DOMMouseScroll":function(x){x.preventDefault()}}).insertAfter(K))}var I=".smartmenus_scroll";K.dataSM("scroll",{y:this.cssTransforms3d?0:A-F,step:1,itemH:F,subH:J,arrowDownH:this.getHeight(K.dataSM("scroll-arrows").eq(1))}).bind(i([["mouseover",function(x){G.menuScrollOver(K,x)}],["mouseout",function(x){G.menuScrollOut(K,x)}],["mousewheel DOMMouseScroll",function(x){G.menuScrollMousewheel(K,x)}]],I)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:C+(parseInt(K.css("border-left-width"))||0),width:t-(parseInt(K.css("border-left-width"))||0)-(parseInt(K.css("border-right-width"))||0),zIndex:K.css("z-index")}).eq(w&&this.opts.bottomToTopSubMenus?0:1).show();if(this.isFixed()){K.css({"touch-action":"none","-ms-touch-action":"none"}).bind(i([[d?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp",function(x){G.menuScrollTouch(K,x)}]],I))}}}K.css({top:"auto",left:"0",marginLeft:C,marginTop:A-F});this.menuIframeShim(K);if(K.dataSM("ie-shim")){K.dataSM("ie-shim").css({zIndex:K.css("z-index"),width:t,height:J,marginLeft:C,marginTop:A-F})}},menuScroll:function(r,m,n){var p=r.dataSM("scroll"),q=r.dataSM("scroll-arrows"),o=p.up?p.upEnd:p.downEnd,s;if(!m&&p.momentum){p.momentum*=0.92;s=p.momentum;if(s<0.5){this.menuScrollStop(r);return}}else{s=n||(m||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(p.step))}var l=r.dataSM("level");if(this.activatedItems[l-1]&&this.activatedItems[l-1].dataSM("sub")&&this.activatedItems[l-1].dataSM("sub").is(":visible")){this.menuHideSubMenus(l-1)}p.y=p.up&&o<=p.y||!p.up&&o>=p.y?p.y:(Math.abs(o-p.y)>s?p.y+(p.up?s:-s):o);r.add(r.dataSM("ie-shim")).css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+p.y+"px, 0)",transform:"translate3d(0, "+p.y+"px, 0)"}:{marginTop:p.y});if(f&&(p.up&&p.y>p.downEnd||!p.up&&p.y<p.upEnd)){q.eq(p.up?1:0).show()}if(p.y==o){if(f){q.eq(p.up?0:1).hide()}this.menuScrollStop(r)}else{if(!m){if(this.opts.scrollAccelerate&&p.step<this.opts.scrollStep){p.step+=0.2}var t=this;this.scrollTimeout=g(function(){t.menuScroll(r)})}}},menuScrollMousewheel:function(m,n){if(this.getClosestMenu(n.target)==m[0]){n=n.originalEvent;var l=(n.wheelDelta||-n.detail)>0;if(m.dataSM("scroll-arrows").eq(l?0:1).is(":visible")){m.dataSM("scroll").up=l;this.menuScroll(m,true)}}n.preventDefault()},menuScrollOut:function(l,m){if(f){if(!/^scroll-(up|down)/.test((m.relatedTarget||"").className)&&(l[0]!=m.relatedTarget&&!a.contains(l[0],m.relatedTarget)||this.getClosestMenu(m.relatedTarget)!=l[0])){l.dataSM("scroll-arrows").css("visibility","hidden")}}},menuScrollOver:function(n,o){if(f){if(!/^scroll-(up|down)/.test(o.target.className)&&this.getClosestMenu(o.target)==n[0]){this.menuScrollRefreshData(n);var m=n.dataSM("scroll"),l=a(window).scrollTop()-n.dataSM("parent-a").offset().top-m.itemH;n.dataSM("scroll-arrows").eq(0).css("margin-top",l).end().eq(1).css("margin-top",l+this.getViewportHeight()-m.arrowDownH).end().css("visibility","visible")}}},menuScrollRefreshData:function(n){var m=n.dataSM("scroll"),l=a(window).scrollTop()-n.dataSM("parent-a").offset().top-m.itemH;if(this.cssTransforms3d){l=-(parseFloat(n.css("margin-top"))-l)}a.extend(m,{upEnd:l,downEnd:l+this.getViewportHeight()-m.subH})},menuScrollStop:function(l){if(this.scrollTimeout){c(this.scrollTimeout);this.scrollTimeout=0;l.dataSM("scroll").step=1;return true}},menuScrollTouch:function(p,q){q=q.originalEvent;if(j(q)){var m=this.getTouchPoint(q);if(this.getClosestMenu(m.target)==p[0]){var o=p.dataSM("scroll");if(/(start|down)$/i.test(q.type)){if(this.menuScrollStop(p)){q.preventDefault();this.$touchScrollingSub=p}else{this.$touchScrollingSub=null}this.menuScrollRefreshData(p);a.extend(o,{touchStartY:m.pageY,touchStartTime:q.timeStamp})}else{if(/move$/i.test(q.type)){var n=o.touchY!==undefined?o.touchY:o.touchStartY;if(n!==undefined&&n!=m.pageY){this.$touchScrollingSub=p;var l=n<m.pageY;if(o.up!==undefined&&o.up!=l){a.extend(o,{touchStartY:m.pageY,touchStartTime:q.timeStamp})}a.extend(o,{up:l,touchY:m.pageY});this.menuScroll(p,true,Math.abs(m.pageY-n))}q.preventDefault()}else{if(o.touchY!==undefined){if(o.momentum=Math.pow(Math.abs(m.pageY-o.touchStartY)/(q.timeStamp-o.touchStartTime),2)*15){this.menuScrollStop(p);this.menuScroll(p);q.preventDefault()}delete o.touchY}}}}}},menuShow:function(n){if(!n.dataSM("beforefirstshowfired")){n.dataSM("beforefirstshowfired",true);if(this.$root.triggerHandler("beforefirstshow.smapi",n[0])===false){return}}if(this.$root.triggerHandler("beforeshow.smapi",n[0])===false){return}n.dataSM("shown-before",true).stop(true,true);if(!n.is(":visible")){var m=n.dataSM("parent-a");if(this.opts.keepHighlighted||this.isCollapsible()){m.addClass("highlighted")}if(this.isCollapsible()){n.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""})}else{n.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1);if(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth){n.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap");if(this.opts.subMenusMinWidth){n.css("min-width",this.opts.subMenusMinWidth)}if(this.opts.subMenusMaxWidth){var o=this.getWidth(n);n.css("max-width",this.opts.subMenusMaxWidth);if(o>this.getWidth(n)){n.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}}}this.menuPosition(n);if(n.dataSM("ie-shim")){n.dataSM("ie-shim").insertBefore(n)}}var l=function(){n.css("overflow","")};if(this.isCollapsible()){if(this.opts.collapsibleShowFunction){this.opts.collapsibleShowFunction.call(this,n,l)}else{n.show(this.opts.collapsibleShowDuration,l)}}else{if(this.opts.showFunction){this.opts.showFunction.call(this,n,l)}else{n.show(this.opts.showDuration,l)}}m.attr("aria-expanded","true");n.attr({"aria-expanded":"true","aria-hidden":"false"});this.visibleSubMenus.push(n);this.$root.triggerHandler("show.smapi",n[0])}},popupHide:function(l){if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}var m=this;this.hideTimeout=setTimeout(function(){m.menuHideAll()},l?1:this.opts.hideTimeout)},popupShow:function(o,n){if(!this.opts.isPopup){alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.');return}if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}this.$root.dataSM("shown-before",true).stop(true,true);if(!this.$root.is(":visible")){this.$root.css({left:o,top:n});this.menuIframeShim(this.$root);if(this.$root.dataSM("ie-shim")){this.$root.dataSM("ie-shim").css({zIndex:this.$root.css("z-index"),width:this.getWidth(this.$root),height:this.getHeight(this.$root),left:o,top:n}).insertBefore(this.$root)}var m=this,l=function(){m.$root.css("overflow","")};if(this.opts.showFunction){this.opts.showFunction.call(this,this.$root,l)}else{this.$root.show(this.opts.showDuration,l)}this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(true);this.init(true)},rootKeyDown:function(o){if(!this.handleEvents()){return}switch(o.keyCode){case 27:var m=this.activatedItems[0];if(m){this.menuHideAll();m[0].focus();var n=m.dataSM("sub");if(n){this.menuHide(n)}}break;case 32:var l=a(o.target);if(l.is("a")&&this.handleItemEvents(l)){var n=l.dataSM("sub");if(n&&!n.is(":visible")){this.itemClick({currentTarget:o.target});o.preventDefault()}}break}},rootOut:function(m){if(!this.handleEvents()||this.isTouchMode()||m.target==this.$root[0]){return}if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}if(!this.opts.showOnClick||!this.opts.hideOnClick){var l=this;this.hideTimeout=setTimeout(function(){l.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(l){if(!this.handleEvents()||this.isTouchMode()||l.target==this.$root[0]){return}if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}},winResize:function(m){if(!this.handleEvents()){if(this.$disableOverlay){var n=this.$root.offset();this.$disableOverlay.css({top:n.top,left:n.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}return}if(!("onorientationchange" in window)||m.type=="orientationchange"){var l=this.isCollapsible();if(!(this.wasCollapsible&&l)){if(this.activatedItems.length){this.activatedItems[this.activatedItems.length-1][0].blur()}this.menuHideAll()}this.wasCollapsible=l}}}});a.fn.dataSM=function(l,m){if(m){return this.data(l+"_smartmenus",m)}return this.data(l+"_smartmenus")};a.fn.removeDataSM=function(l){return this.removeData(l+"_smartmenus")};a.fn.smartmenus=function(m){if(typeof m=="string"){var l=arguments,o=m;Array.prototype.shift.call(l);return this.each(function(){var p=a(this).data("smartmenus");if(p&&p[o]){p[o].apply(p,l)}})}var n=a.extend({},a.fn.smartmenus.defaults,m);return this.each(function(){new a.SmartMenus(this,n)})};a.fn.smartmenus.defaults={isPopup:false,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:true,subIndicatorsPos:"prepend",subIndicatorsText:"+",scrollStep:30,scrollAccelerate:true,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(m,l){m.fadeOut(200,l)},collapsibleShowDuration:0,collapsibleShowFunction:function(m,l){m.slideDown(200,l)},collapsibleHideDuration:0,collapsibleHideFunction:function(m,l){m.slideUp(200,l)},showOnClick:false,hideOnClick:true,noMouseOver:false,keepInViewport:true,keepHighlighted:true,markCurrentItem:false,markCurrentTree:true,rightToLeftSubMenus:false,bottomToTopSubMenus:false,overlapControlsInIE:true};return a})); \ No newline at end of file
diff --git a/doc/doxyout/hx509/html/menu.js b/doc/doxyout/hx509/html/menu.js
new file mode 100644
index 000000000000..97db4c239227
--- /dev/null
+++ b/doc/doxyout/hx509/html/menu.js
@@ -0,0 +1,26 @@
+function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
+ function makeTree(data,relPath) {
+ var result='';
+ if ('children' in data) {
+ result+='<ul>';
+ for (var i in data.children) {
+ result+='<li><a href="'+relPath+data.children[i].url+'">'+
+ data.children[i].text+'</a>'+
+ makeTree(data.children[i],relPath)+'</li>';
+ }
+ result+='</ul>';
+ }
+ return result;
+ }
+
+ $('#main-nav').append(makeTree(menudata,relPath));
+ $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
+ if (searchEnabled) {
+ if (serverSide) {
+ $('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><div class="left"><form id="FSearchBox" action="'+searchPage+'" method="get"><img id="MSearchSelect" src="'+relPath+'search/mag.png" alt=""/><input type="text" id="MSearchField" name="query" value="'+search+'" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)"></form></div><div class="right"></div></div></li>');
+ } else {
+ $('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><span class="left"><img id="MSearchSelect" src="'+relPath+'search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/><input type="text" id="MSearchField" value="'+search+'" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/></span><span class="right"><a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="'+relPath+'search/close.png" alt=""/></a></span></div></li>');
+ }
+ }
+ $('#main-menu').smartmenus();
+}
diff --git a/doc/doxyout/hx509/html/menudata.js b/doc/doxyout/hx509/html/menudata.js
new file mode 100644
index 000000000000..6eb7a5d2e728
--- /dev/null
+++ b/doc/doxyout/hx509/html/menudata.js
@@ -0,0 +1,4 @@
+var menudata={children:[
+{text:"Main Page",url:"index.html"},
+{text:"Related Pages",url:"pages.html"},
+{text:"Modules",url:"modules.html"}]}
diff --git a/doc/doxyout/hx509/html/modules.html b/doc/doxyout/hx509/html/modules.html
index dfc4b3a09224..ef8a0484ecf9 100644
--- a/doc/doxyout/hx509/html/modules.html
+++ b/doc/doxyout/hx509/html/modules.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Module Index</title>
+<title>Modules</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,37 +8,43 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li class="current"><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Modules</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>Modules</h1>Here is a list of all modules:<ul>
-<li><a class="el" href="group__hx509.html">hx509 library</a>
-<li><a class="el" href="group__hx509__error.html">hx509 error functions</a>
-<li><a class="el" href="group__hx509__cert.html">hx509 certificate functions</a>
-<li><a class="el" href="group__hx509__keyset.html">hx509 certificate store functions</a>
-<li><a class="el" href="group__hx509__cms.html">hx509 CMS/pkcs7 functions</a>
-<li><a class="el" href="group__hx509__crypto.html">hx509 crypto functions</a>
-<li><a class="el" href="group__hx509__misc.html">hx509 misc functions</a>
-<li><a class="el" href="group__hx509__name.html">hx509 name functions</a>
-<li><a class="el" href="group__hx509__revoke.html">hx509 revokation checking functions</a>
-<li><a class="el" href="group__hx509__verify.html">hx509 verification functions</a>
-<li><a class="el" href="group__hx509__lock.html">hx509 lock functions</a>
-<li><a class="el" href="group__hx509__query.html">hx509 query functions</a>
-<li><a class="el" href="group__hx509__ca.html">hx509 CA functions</a>
-<li><a class="el" href="group__hx509__peer.html">hx509 certificate selecting functions</a>
-<li><a class="el" href="group__hx509__print.html">hx509 printing functions</a>
-<li><a class="el" href="group__hx509__env.html">hx509 enviroment functions</a>
-</ul>
-</div>
+<div class="textblock">Here is a list of all modules:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509.html" target="_self">hx509 library</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__error.html" target="_self">hx509 error functions</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__cert.html" target="_self">hx509 certificate functions</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__keyset.html" target="_self">hx509 certificate store functions</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__cms.html" target="_self">hx509 CMS/pkcs7 functions</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__crypto.html" target="_self">hx509 crypto functions</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__misc.html" target="_self">hx509 misc functions</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__name.html" target="_self">hx509 name functions</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__revoke.html" target="_self">hx509 revokation checking functions</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__verify.html" target="_self">hx509 verification functions</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__lock.html" target="_self">hx509 lock functions</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__query.html" target="_self">hx509 query functions</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__ca.html" target="_self">hx509 CA functions</a></td><td class="desc"></td></tr>
+<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__peer.html" target="_self">hx509 certificate selecting functions</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__print.html" target="_self">hx509 printing functions</a></td><td class="desc"></td></tr>
+<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="group__hx509__env.html" target="_self">hx509 environment functions</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:41 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/nav_f.png b/doc/doxyout/hx509/html/nav_f.png
new file mode 100644
index 000000000000..72a58a529ed3
--- /dev/null
+++ b/doc/doxyout/hx509/html/nav_f.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/nav_g.png b/doc/doxyout/hx509/html/nav_g.png
new file mode 100644
index 000000000000..2093a237a94f
--- /dev/null
+++ b/doc/doxyout/hx509/html/nav_g.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/nav_h.png b/doc/doxyout/hx509/html/nav_h.png
new file mode 100644
index 000000000000..33389b101d9c
--- /dev/null
+++ b/doc/doxyout/hx509/html/nav_h.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/open.png b/doc/doxyout/hx509/html/open.png
new file mode 100644
index 000000000000..30f75c7efe2d
--- /dev/null
+++ b/doc/doxyout/hx509/html/open.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/page_ca.html b/doc/doxyout/hx509/html/page_ca.html
index defb0e7ae864..ec5d7358c294 100644
--- a/doc/doxyout/hx509/html/page_ca.html
+++ b/doc/doxyout/hx509/html/page_ca.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Hx509 CA functions</title>
+<title>Hx509 CA functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,19 +8,24 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Hx509 CA functions </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_ca">Hx509 CA functions </a></h1>See the library functions here: <a class="el" href="group__hx509__ca.html">hx509 CA functions</a> </div>
+<div class="textblock"><p>See the library functions here: <a class="el" href="group__hx509__ca.html">hx509 CA functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_cert.html b/doc/doxyout/hx509/html/page_cert.html
index 599605b4d058..8525d7322c7e 100644
--- a/doc/doxyout/hx509/html/page_cert.html
+++ b/doc/doxyout/hx509/html/page_cert.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: The basic certificate</title>
+<title>The basic certificate</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,21 +8,26 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">The basic certificate </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_cert">The basic certificate </a></h1>The basic hx509 cerificate object in hx509 is hx509_cert. The hx509_cert object is representing one X509/PKIX certificate and associated attributes; like private key, friendly name, etc.<p>
-A hx509_cert object is usully found via the keyset interfaces (<a class="el" href="page_keyset.html">Certificate store operations</a>), but its also possible to create a certificate directly from a parsed object with <a class="el" href="group__hx509__cert.html#g1aa420f664ce5933f8af4cf6c37fd6f6">hx509_cert_init()</a> and <a class="el" href="group__hx509__cert.html#g479d8c1bf22aa8fdfa448bed1ec54d7b">hx509_cert_init_data()</a>.<p>
-See the library functions here: <a class="el" href="group__hx509__cert.html">hx509 certificate functions</a> </div>
+<div class="textblock"><p>The basic hx509 cerificate object in hx509 is hx509_cert. The hx509_cert object is representing one X509/PKIX certificate and associated attributes; like private key, friendly name, etc.</p>
+<p>A hx509_cert object is usully found via the keyset interfaces (<a class="el" href="page_keyset.html">Certificate store operations</a>), but its also possible to create a certificate directly from a parsed object with <a class="el" href="group__hx509__cert.html#ga31c3f5e9a6d7892729c56f0f86a76f4a">hx509_cert_init()</a> and <a class="el" href="group__hx509__cert.html#ga134b62e36ffcf09bbf866a88bc4c5010">hx509_cert_init_data()</a>.</p>
+<p>See the library functions here: <a class="el" href="group__hx509__cert.html">hx509 certificate functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_cms.html b/doc/doxyout/hx509/html/page_cms.html
index 92e72e2a8aa6..986756a0b5a5 100644
--- a/doc/doxyout/hx509/html/page_cms.html
+++ b/doc/doxyout/hx509/html/page_cms.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: CMS/PKCS7 message functions.</title>
+<title>CMS/PKCS7 message functions.</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,23 +8,31 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">CMS/PKCS7 message functions. </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_cms">CMS/PKCS7 message functions. </a></h1>CMS is defined in RFC 3369 and is an continuation of the RSA Labs standard PKCS7. The basic messages in CMS is<p>
+<div class="textblock"><p>CMS is defined in RFC 3369 and is an continuation of the RSA Labs standard PKCS7. The basic messages in CMS is</p>
<ul>
-<li>SignedData Data signed with private key (RSA, DSA, ECDSA) or secret (symmetric) key</li><li>EnvelopedData Data encrypted with private key (RSA)</li><li>EncryptedData Data encrypted with secret (symmetric) key.</li><li>ContentInfo Wrapper structure including type and data.</li></ul>
-<p>
-See the library functions here: <a class="el" href="group__hx509__cms.html">hx509 CMS/pkcs7 functions</a> </div>
+<li>SignedData Data signed with private key (RSA, DSA, ECDSA) or secret (symmetric) key</li>
+<li>EnvelopedData Data encrypted with private key (RSA)</li>
+<li>EncryptedData Data encrypted with secret (symmetric) key.</li>
+<li>ContentInfo Wrapper structure including type and data.</li>
+</ul>
+<p>See the library functions here: <a class="el" href="group__hx509__cms.html">hx509 CMS/pkcs7 functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_env.html b/doc/doxyout/hx509/html/page_env.html
index 8f4c9ff83e71..1aac8b0d5f51 100644
--- a/doc/doxyout/hx509/html/page_env.html
+++ b/doc/doxyout/hx509/html/page_env.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Hx509 enviroment functions</title>
+<title>Hx509 environment functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,19 +8,24 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Hx509 environment functions </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_env">Hx509 enviroment functions </a></h1>See the library functions here: <a class="el" href="group__hx509__env.html">hx509 enviroment functions</a> </div>
+<div class="textblock"><p>See the library functions here: <a class="el" href="group__hx509__env.html">hx509 environment functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_error.html b/doc/doxyout/hx509/html/page_error.html
index e9791043f4e1..748ba9dd0d20 100644
--- a/doc/doxyout/hx509/html/page_error.html
+++ b/doc/doxyout/hx509/html/page_error.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Hx509 error reporting functions</title>
+<title>Hx509 error reporting functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,19 +8,24 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Hx509 error reporting functions </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_error">Hx509 error reporting functions </a></h1>See the library functions here: <a class="el" href="group__hx509__error.html">hx509 error functions</a> </div>
+<div class="textblock"><p>See the library functions here: <a class="el" href="group__hx509__error.html">hx509 error functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_keyset.html b/doc/doxyout/hx509/html/page_keyset.html
index 2f2a27c34d35..70209227f46e 100644
--- a/doc/doxyout/hx509/html/page_keyset.html
+++ b/doc/doxyout/hx509/html/page_keyset.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Certificate store operations</title>
+<title>Certificate store operations</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,22 +8,34 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Certificate store operations </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_keyset">Certificate store operations </a></h1>Type of certificates store:<ul>
-<li>MEMORY In memory based format. Doesnt support storing.</li><li>FILE FILE supports raw DER certicates and PEM certicates. When PEM is used the file can contain may certificates and match private keys. Support storing the certificates. DER format only supports on certificate and no private key.</li><li>PEM-FILE Same as FILE, defaulting to PEM encoded certificates.</li><li>PEM-FILE Same as FILE, defaulting to DER encoded certificates.</li><li>PKCS11</li><li>PKCS12</li><li>DIR</li><li>KEYCHAIN Apple Mac OS X KeyChain backed keychain object.</li></ul>
-<p>
-See the library functions here: <a class="el" href="group__hx509__keyset.html">hx509 certificate store functions</a> </div>
+<div class="textblock"><p>Type of certificates store:</p><ul>
+<li>MEMORY In memory based format. Doesnt support storing.</li>
+<li>FILE FILE supports raw DER certicates and PEM certicates. When PEM is used the file can contain may certificates and match private keys. Support storing the certificates. DER format only supports on certificate and no private key.</li>
+<li>PEM-FILE Same as FILE, defaulting to PEM encoded certificates.</li>
+<li>PEM-FILE Same as FILE, defaulting to DER encoded certificates.</li>
+<li>PKCS11</li>
+<li>PKCS12</li>
+<li>DIR</li>
+<li>KEYCHAIN Apple Mac OS X KeyChain backed keychain object.</li>
+</ul>
+<p>See the library functions here: <a class="el" href="group__hx509__keyset.html">hx509 certificate store functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_lock.html b/doc/doxyout/hx509/html/page_lock.html
index 9ff4d2e7ecf3..5e38608217ae 100644
--- a/doc/doxyout/hx509/html/page_lock.html
+++ b/doc/doxyout/hx509/html/page_lock.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Locking and unlocking certificates and encrypted data.</title>
+<title>Locking and unlocking certificates and encrypted data.</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,19 +8,24 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Locking and unlocking certificates and encrypted data. </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_lock">Locking and unlocking certificates and encrypted data. </a></h1>See the library functions here: <a class="el" href="group__hx509__lock.html">hx509 lock functions</a> </div>
+<div class="textblock"><p>See the library functions here: <a class="el" href="group__hx509__lock.html">hx509 lock functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_name.html b/doc/doxyout/hx509/html/page_name.html
index a7b3cfb8bedf..e33567acf503 100644
--- a/doc/doxyout/hx509/html/page_name.html
+++ b/doc/doxyout/hx509/html/page_name.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: PKIX/X.509 Names</title>
+<title>PKIX/X.509 Names</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,25 +8,30 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">PKIX/X.509 Names </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_name">PKIX/X.509 Names </a></h1>There are several names in PKIX/X.509, GeneralName and Name.<p>
-A Name consists of an ordered list of Relative Distinguished Names (RDN). Each RDN consists of an unordered list of typed strings. The types are defined by OID and have long and short description. For example id-at-commonName (2.5.4.3) have the long name CommonName and short name CN. The string itself can be of several encoding, UTF8, UTF16, Teltex string, etc. The type limit what encoding should be used.<p>
-GeneralName is a broader nametype that can contains al kind of stuff like Name, IP addresses, partial Name, etc.<p>
-Name is mapped into a hx509_name object.<p>
-Parse and string name into a hx509_name object with <a class="el" href="group__hx509__name.html#g0565f607a4e57d0911ee7081ad9548c5">hx509_parse_name()</a>, make it back into string representation with <a class="el" href="group__hx509__name.html#g1bd74b34e0aa88b083678ba231d38718">hx509_name_to_string()</a>.<p>
-Name string are defined rfc2253, rfc1779 and X.501.<p>
-See the library functions here: <a class="el" href="group__hx509__name.html">hx509 name functions</a> </div>
+<div class="textblock"><p>There are several names in PKIX/X.509, GeneralName and Name.</p>
+<p>A Name consists of an ordered list of Relative Distinguished Names (RDN). Each RDN consists of an unordered list of typed strings. The types are defined by OID and have long and short description. For example id-at-commonName (2.5.4.3) have the long name CommonName and short name CN. The string itself can be of several encoding, UTF8, UTF16, Teltex string, etc. The type limit what encoding should be used.</p>
+<p>GeneralName is a broader nametype that can contains al kind of stuff like Name, IP addresses, partial Name, etc.</p>
+<p>Name is mapped into a hx509_name object.</p>
+<p>Parse and string name into a hx509_name object with <a class="el" href="group__hx509__name.html#ga0565f607a4e57d0911ee7081ad9548c5">hx509_parse_name()</a>, make it back into string representation with <a class="el" href="group__hx509__name.html#ga1bd74b34e0aa88b083678ba231d38718">hx509_name_to_string()</a>.</p>
+<p>Name string are defined rfc2253, rfc1779 and X.501.</p>
+<p>See the library functions here: <a class="el" href="group__hx509__name.html">hx509 name functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_peer.html b/doc/doxyout/hx509/html/page_peer.html
index a9803026f0aa..4a67ba640afd 100644
--- a/doc/doxyout/hx509/html/page_peer.html
+++ b/doc/doxyout/hx509/html/page_peer.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Hx509 crypto selecting functions</title>
+<title>Hx509 crypto selecting functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,20 +8,25 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Hx509 crypto selecting functions </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_peer">Hx509 crypto selecting functions </a></h1>Peer info structures are used togeter with hx509_crypto_select() to select the best avaible crypto algorithm to use.<p>
-See the library functions here: <a class="el" href="group__hx509__peer.html">hx509 certificate selecting functions</a> </div>
+<div class="textblock"><p>Peer info structures are used togeter with hx509_crypto_select() to select the best avaible crypto algorithm to use.</p>
+<p>See the library functions here: <a class="el" href="group__hx509__peer.html">hx509 certificate selecting functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_print.html b/doc/doxyout/hx509/html/page_print.html
index 873d980ee48d..3024cbdbc881 100644
--- a/doc/doxyout/hx509/html/page_print.html
+++ b/doc/doxyout/hx509/html/page_print.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Hx509 printing functions</title>
+<title>Hx509 printing functions</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,19 +8,24 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Hx509 printing functions </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_print">Hx509 printing functions </a></h1>See the library functions here: <a class="el" href="group__hx509__print.html">hx509 printing functions</a> </div>
+<div class="textblock"><p>See the library functions here: <a class="el" href="group__hx509__print.html">hx509 printing functions</a> </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/page_revoke.html b/doc/doxyout/hx509/html/page_revoke.html
index 5e5e5d0852d9..8cd7ca95170b 100644
--- a/doc/doxyout/hx509/html/page_revoke.html
+++ b/doc/doxyout/hx509/html/page_revoke.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Revocation methods</title>
+<title>Revocation methods</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,21 +8,26 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Revocation methods </div> </div>
+</div><!--header-->
<div class="contents">
-<h1><a class="anchor" name="page_revoke">Revocation methods </a></h1>There are two revocation method for PKIX/X.509: CRL and OCSP. Revocation is needed if the private key is lost and stolen. Depending on how picky you are, you might want to make revocation for destroyed private keys too (smartcard broken), but that should not be a problem.<p>
-CRL is a list of certifiates that have expired.<p>
-OCSP is an online checking method where the requestor sends a list of certificates to the OCSP server to return a signed reply if they are valid or not. Some services sends a OCSP reply as part of the hand-shake to make the revoktion decision simpler/faster for the client. </div>
+<div class="textblock"><p>There are two revocation method for PKIX/X.509: CRL and OCSP. Revocation is needed if the private key is lost and stolen. Depending on how picky you are, you might want to make revocation for destroyed private keys too (smartcard broken), but that should not be a problem.</p>
+<p>CRL is a list of certifiates that have expired.</p>
+<p>OCSP is an online checking method where the requestor sends a list of certificates to the OCSP server to return a signed reply if they are valid or not. Some services sends a OCSP reply as part of the hand-shake to make the revoktion decision simpler/faster for the client. </p>
+</div></div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/pages.html b/doc/doxyout/hx509/html/pages.html
index a015ae63c1b4..a96a80e2b539 100644
--- a/doc/doxyout/hx509/html/pages.html
+++ b/doc/doxyout/hx509/html/pages.html
@@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
-<title>Heimdalx509library: Page Index</title>
+<title>Related Pages</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
@@ -8,43 +8,38 @@
<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
</p>
<!-- end of header marker -->
-<!-- Generated by Doxygen 1.5.6 -->
-<div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
- <li class="current"><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- </ul>
- </div>
-</div>
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">Related Pages</div> </div>
+</div><!--header-->
<div class="contents">
-<h1>Related Pages</h1>Here is a list of all related documentation pages:<ul>
-<li><a class="el" href="page_ca.html">Hx509 CA functions</a>
-
-<li><a class="el" href="page_cert.html">The basic certificate</a>
-
-<li><a class="el" href="page_cms.html">CMS/PKCS7 message functions.</a>
-
-<li><a class="el" href="page_env.html">Hx509 enviroment functions</a>
-
-<li><a class="el" href="page_error.html">Hx509 error reporting functions</a>
-
-<li><a class="el" href="page_keyset.html">Certificate store operations</a>
-
-<li><a class="el" href="page_lock.html">Locking and unlocking certificates and encrypted data.</a>
-
-<li><a class="el" href="page_name.html">PKIX/X.509 Names</a>
-
-<li><a class="el" href="page_peer.html">Hx509 crypto selecting functions</a>
-
-<li><a class="el" href="page_print.html">Hx509 printing functions</a>
-
-<li><a class="el" href="page_revoke.html">Revocation methods</a>
-
-</ul>
-</div>
+<div class="textblock">Here is a list of all related documentation pages:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_ca.html" target="_self">Hx509 CA functions</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_cert.html" target="_self">The basic certificate</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_cms.html" target="_self">CMS/PKCS7 message functions.</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_env.html" target="_self">Hx509 environment functions</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_error.html" target="_self">Hx509 error reporting functions</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_keyset.html" target="_self">Certificate store operations</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_lock.html" target="_self">Locking and unlocking certificates and encrypted data.</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_name.html" target="_self">PKIX/X.509 Names</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_peer.html" target="_self">Hx509 crypto selecting functions</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_print.html" target="_self">Hx509 printing functions</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="page_revoke.html" target="_self">Revocation methods</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
<hr size="1"><address style="text-align: right;"><small>
-Generated on Wed Jan 11 14:07:40 2012 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
+Generated on Fri Dec 8 2017 03:48:58 for Heimdalx509library by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.8.13</small></address>
</body>
</html>
diff --git a/doc/doxyout/hx509/html/splitbar.png b/doc/doxyout/hx509/html/splitbar.png
new file mode 100644
index 000000000000..fe895f2c5817
--- /dev/null
+++ b/doc/doxyout/hx509/html/splitbar.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/sync_off.png b/doc/doxyout/hx509/html/sync_off.png
new file mode 100644
index 000000000000..3b443fc62892
--- /dev/null
+++ b/doc/doxyout/hx509/html/sync_off.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/sync_on.png b/doc/doxyout/hx509/html/sync_on.png
new file mode 100644
index 000000000000..e08320fb64e6
--- /dev/null
+++ b/doc/doxyout/hx509/html/sync_on.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/tab_a.png b/doc/doxyout/hx509/html/tab_a.png
new file mode 100644
index 000000000000..3b725c41c5a5
--- /dev/null
+++ b/doc/doxyout/hx509/html/tab_a.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/tab_b.gif b/doc/doxyout/hx509/html/tab_b.gif
deleted file mode 100644
index 0d623483ffdf..000000000000
--- a/doc/doxyout/hx509/html/tab_b.gif
+++ /dev/null
Binary files differ
diff --git a/doc/doxyout/hx509/html/tab_b.png b/doc/doxyout/hx509/html/tab_b.png
new file mode 100644
index 000000000000..e2b4a8638cb3
--- /dev/null
+++ b/doc/doxyout/hx509/html/tab_b.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/tab_h.png b/doc/doxyout/hx509/html/tab_h.png
new file mode 100644
index 000000000000..fd5cb705488e
--- /dev/null
+++ b/doc/doxyout/hx509/html/tab_h.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/tab_l.gif b/doc/doxyout/hx509/html/tab_l.gif
deleted file mode 100644
index 9b1e6337c929..000000000000
--- a/doc/doxyout/hx509/html/tab_l.gif
+++ /dev/null
Binary files differ
diff --git a/doc/doxyout/hx509/html/tab_r.gif b/doc/doxyout/hx509/html/tab_r.gif
deleted file mode 100644
index ce9dd9f533cb..000000000000
--- a/doc/doxyout/hx509/html/tab_r.gif
+++ /dev/null
Binary files differ
diff --git a/doc/doxyout/hx509/html/tab_s.png b/doc/doxyout/hx509/html/tab_s.png
new file mode 100644
index 000000000000..ab478c95b673
--- /dev/null
+++ b/doc/doxyout/hx509/html/tab_s.png
Binary files differ
diff --git a/doc/doxyout/hx509/html/tabs.css b/doc/doxyout/hx509/html/tabs.css
index 95f00a91da30..a28614b8e3d0 100644
--- a/doc/doxyout/hx509/html/tabs.css
+++ b/doc/doxyout/hx509/html/tabs.css
@@ -1,102 +1 @@
-/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */
-
-DIV.tabs
-{
- float : left;
- width : 100%;
- background : url("tab_b.gif") repeat-x bottom;
- margin-bottom : 4px;
-}
-
-DIV.tabs UL
-{
- margin : 0px;
- padding-left : 10px;
- list-style : none;
-}
-
-DIV.tabs LI, DIV.tabs FORM
-{
- display : inline;
- margin : 0px;
- padding : 0px;
-}
-
-DIV.tabs FORM
-{
- float : right;
-}
-
-DIV.tabs A
-{
- float : left;
- background : url("tab_r.gif") no-repeat right top;
- border-bottom : 1px solid #84B0C7;
- font-size : x-small;
- font-weight : bold;
- text-decoration : none;
-}
-
-DIV.tabs A:hover
-{
- background-position: 100% -150px;
-}
-
-DIV.tabs A:link, DIV.tabs A:visited,
-DIV.tabs A:active, DIV.tabs A:hover
-{
- color: #1A419D;
-}
-
-DIV.tabs SPAN
-{
- float : left;
- display : block;
- background : url("tab_l.gif") no-repeat left top;
- padding : 5px 9px;
- white-space : nowrap;
-}
-
-DIV.tabs INPUT
-{
- float : right;
- display : inline;
- font-size : 1em;
-}
-
-DIV.tabs TD
-{
- font-size : x-small;
- font-weight : bold;
- text-decoration : none;
-}
-
-
-
-/* Commented Backslash Hack hides rule from IE5-Mac \*/
-DIV.tabs SPAN {float : none;}
-/* End IE5-Mac hack */
-
-DIV.tabs A:hover SPAN
-{
- background-position: 0% -150px;
-}
-
-DIV.tabs LI.current A
-{
- background-position: 100% -150px;
- border-width : 0px;
-}
-
-DIV.tabs LI.current SPAN
-{
- background-position: 0% -150px;
- padding-bottom : 6px;
-}
-
-DIV.navpath
-{
- background : none;
- border : none;
- border-bottom : 1px solid #84B0C7;
-}
+.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}#doc-content{overflow:auto;display:block;padding:0;margin:0;-webkit-overflow-scrolling:touch}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0 1px 1px rgba(255,255,255,0.9);color:#283a5d;outline:0}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace!important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283a5d transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;-moz-border-radius:0!important;-webkit-border-radius:0;border-radius:0!important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a:hover span.sub-arrow{border-color:white transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;-moz-border-radius:5px!important;-webkit-border-radius:5px;border-radius:5px!important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0!important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent white}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px!important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}} \ No newline at end of file
diff --git a/doc/doxyout/hx509/man/man3/hx509.3 b/doc/doxyout/hx509/man/man3/hx509.3
index b8f6993f1476..0c11eaf222b8 100644
--- a/doc/doxyout/hx509/man/man3/hx509.3
+++ b/doc/doxyout/hx509/man/man3/hx509.3
@@ -1,8 +1,11 @@
-.TH "hx509 library" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 library \-
+hx509
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -19,27 +22,28 @@ hx509 library \-
.SH "Function Documentation"
.PP
.SS "void hx509_context_free (hx509_context * context)"
-.PP
-Free the context allocated by \fBhx509_context_init()\fP.
+Free the context allocated by \fBhx509_context_init()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP context to be freed.
+\fIcontext\fP context to be freed\&.
.RE
.PP
.SS "int hx509_context_init (hx509_context * context)"
-.PP
-Creates a hx509 context that most functions in the library uses. The context is only allowed to be used by one thread at each moment. Free the context with \fBhx509_context_free()\fP.
+Creates a hx509 context that most functions in the library uses\&. The context is only allowed to be used by one thread at each moment\&. Free the context with \fBhx509_context_free()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP Returns a pointer to new hx509 context.
+\fIcontext\fP Returns a pointer to new hx509 context\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_ca.3 b/doc/doxyout/hx509/man/man3/hx509_ca.3
index d6de5e226bca..d3414f0977e8 100644
--- a/doc/doxyout/hx509/man/man3/hx509_ca.3
+++ b/doc/doxyout/hx509/man/man3/hx509_ca.3
@@ -1,8 +1,11 @@
-.TH "hx509 CA functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_ca" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 CA functions \-
+hx509_ca
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -22,7 +25,7 @@ hx509 CA functions \-
.RI "int \fBhx509_ca_tbs_set_notAfter_lifetime\fP (hx509_context context, hx509_ca_tbs tbs, time_t delta)"
.br
.ti -1c
-.RI "struct units * \fBhx509_ca_tbs_template_units\fP (void)"
+.RI "const struct units * \fBhx509_ca_tbs_template_units\fP (void)"
.br
.ti -1c
.RI "int \fBhx509_ca_tbs_set_template\fP (hx509_context context, hx509_ca_tbs tbs, int flags, hx509_cert cert)"
@@ -76,6 +79,9 @@ hx509 CA functions \-
.RI "int \fBhx509_ca_tbs_subject_expand\fP (hx509_context context, hx509_ca_tbs tbs, hx509_env env)"
.br
.ti -1c
+.RI "int \fBhx509_ca_tbs_set_signature_algorithm\fP (hx509_context context, hx509_ca_tbs tbs, const AlgorithmIdentifier *sigalg)"
+.br
+.ti -1c
.RI "int \fBhx509_ca_sign\fP (hx509_context context, hx509_ca_tbs tbs, hx509_cert signer, hx509_cert *certificate)"
.br
.ti -1c
@@ -84,12 +90,11 @@ hx509 CA functions \-
.in -1c
.SH "Detailed Description"
.PP
-See the \fBHx509 CA functions\fP for description and examples.
+See the \fBHx509 CA functions\fP for description and examples\&.
.SH "Function Documentation"
.PP
.SS "int hx509_ca_sign (hx509_context context, hx509_ca_tbs tbs, hx509_cert signer, hx509_cert * certificate)"
-.PP
-Sign a to-be-signed certificate object with a issuer certificate.
+Sign a to-be-signed certificate object with a issuer certificate\&.
.PP
The caller needs to at least have called the following functions on the to-be-signed certificate object:
.IP "\(bu" 2
@@ -100,436 +105,430 @@ The caller needs to at least have called the following functions on the to-be-si
\fBhx509_ca_tbs_set_spki()\fP
.PP
.PP
-When done the to-be-signed certificate object should be freed with \fBhx509_ca_tbs_free()\fP.
+When done the to-be-signed certificate object should be freed with \fBhx509_ca_tbs_free()\fP\&.
.PP
-When creating self-signed certificate use \fBhx509_ca_sign_self()\fP instead.
+When creating self-signed certificate use \fBhx509_ca_sign_self()\fP instead\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIsigner\fP the CA certificate object to sign with (need private key).
+\fIsigner\fP the CA certificate object to sign with (need private key)\&.
.br
-\fIcertificate\fP return cerificate, free with \fBhx509_cert_free()\fP.
+\fIcertificate\fP return cerificate, free with \fBhx509_cert_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_sign_self (hx509_context context, hx509_ca_tbs tbs, hx509_private_key signer, hx509_cert * certificate)"
-.PP
-Work just like \fBhx509_ca_sign()\fP but signs it-self.
+Work just like \fBhx509_ca_sign()\fP but signs it-self\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIsigner\fP private key to sign with.
+\fIsigner\fP private key to sign with\&.
.br
-\fIcertificate\fP return cerificate, free with \fBhx509_cert_free()\fP.
+\fIcertificate\fP return cerificate, free with \fBhx509_cert_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_add_crl_dp_uri (hx509_context context, hx509_ca_tbs tbs, const char * uri, hx509_name issuername)"
-.PP
-Add CRL distribution point URI to the to-be-signed certificate object.
+Add CRL distribution point URI to the to-be-signed certificate object\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIuri\fP uri to the CRL.
+\fIuri\fP uri to the CRL\&.
.br
-\fIissuername\fP name of the issuer.
+\fIissuername\fP name of the issuer\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
-
-.PP
-issuername not supported
+issuername not supported
.SS "int hx509_ca_tbs_add_eku (hx509_context context, hx509_ca_tbs tbs, const heim_oid * oid)"
-.PP
-An an extended key usage to the to-be-signed certificate object. Duplicates will detected and not added.
+An an extended key usage to the to-be-signed certificate object\&. Duplicates will detected and not added\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIoid\fP extended key usage to add.
+\fIoid\fP extended key usage to add\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_add_san_hostname (hx509_context context, hx509_ca_tbs tbs, const char * dnsname)"
+Add a Subject Alternative Name hostname to to-be-signed certificate object\&. A domain match starts with \&., an exact match does not\&.
.PP
-Add a Subject Alternative Name hostname to to-be-signed certificate object. A domain match starts with ., an exact match does not.
-.PP
-Example of a an domain match: .domain.se matches the hostname host.domain.se.
+Example of a an domain match: \&.domain\&.se matches the hostname host\&.domain\&.se\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIdnsname\fP a hostame.
+\fIdnsname\fP a hostame\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_add_san_jid (hx509_context context, hx509_ca_tbs tbs, const char * jid)"
-.PP
-Add a Jabber/XMPP jid Subject Alternative Name to the to-be-signed certificate object. The jid is an UTF8 string.
+Add a Jabber/XMPP jid Subject Alternative Name to the to-be-signed certificate object\&. The jid is an UTF8 string\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIjid\fP string of an a jabber id in UTF8.
+\fIjid\fP string of an a jabber id in UTF8\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_add_san_ms_upn (hx509_context context, hx509_ca_tbs tbs, const char * principal)"
-.PP
-Add Microsoft UPN Subject Alternative Name to the to-be-signed certificate object. The principal string is a UTF8 string.
+Add Microsoft UPN Subject Alternative Name to the to-be-signed certificate object\&. The principal string is a UTF8 string\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIprincipal\fP Microsoft UPN string.
+\fIprincipal\fP Microsoft UPN string\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_add_san_otherName (hx509_context context, hx509_ca_tbs tbs, const heim_oid * oid, const heim_octet_string * os)"
-.PP
-Add Subject Alternative Name otherName to the to-be-signed certificate object.
+Add Subject Alternative Name otherName to the to-be-signed certificate object\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIoid\fP the oid of the OtherName.
+\fIoid\fP the oid of the OtherName\&.
.br
-\fIos\fP data in the other name.
+\fIos\fP data in the other name\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_add_san_pkinit (hx509_context context, hx509_ca_tbs tbs, const char * principal)"
-.PP
-Add Kerberos Subject Alternative Name to the to-be-signed certificate object. The principal string is a UTF8 string.
+Add Kerberos Subject Alternative Name to the to-be-signed certificate object\&. The principal string is a UTF8 string\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIprincipal\fP Kerberos principal to add to the certificate.
+\fIprincipal\fP Kerberos principal to add to the certificate\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_add_san_rfc822name (hx509_context context, hx509_ca_tbs tbs, const char * rfc822Name)"
-.PP
-Add a Subject Alternative Name rfc822 (email address) to to-be-signed certificate object.
+Add a Subject Alternative Name rfc822 (email address) to to-be-signed certificate object\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIrfc822Name\fP a string to a email address.
+\fIrfc822Name\fP a string to a email address\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_ca_tbs_free (hx509_ca_tbs * tbs)"
-.PP
-Free an To Be Signed object.
+Free an To Be Signed object\&.
.PP
\fBParameters:\fP
.RS 4
-\fItbs\fP object to free.
+\fItbs\fP object to free\&.
.RE
.PP
.SS "int hx509_ca_tbs_init (hx509_context context, hx509_ca_tbs * tbs)"
-.PP
-Allocate an to-be-signed certificate object that will be converted into an certificate.
+Allocate an to-be-signed certificate object that will be converted into an certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP returned to-be-signed certicate object, free with \fBhx509_ca_tbs_free()\fP.
+\fItbs\fP returned to-be-signed certicate object, free with \fBhx509_ca_tbs_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_ca (hx509_context context, hx509_ca_tbs tbs, int pathLenConstraint)"
-.PP
-Make the to-be-signed certificate object a CA certificate. If the pathLenConstraint is negative path length constraint is used.
+Make the to-be-signed certificate object a CA certificate\&. If the pathLenConstraint is negative path length constraint is used\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIpathLenConstraint\fP path length constraint, negative, no constraint.
+\fIpathLenConstraint\fP path length constraint, negative, no constraint\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_domaincontroller (hx509_context context, hx509_ca_tbs tbs)"
-.PP
-Make the to-be-signed certificate object a windows domain controller certificate.
+Make the to-be-signed certificate object a windows domain controller certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_notAfter (hx509_context context, hx509_ca_tbs tbs, time_t t)"
-.PP
-Set the absolute time when the certificate is valid to.
+Set the absolute time when the certificate is valid to\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
\fIt\fP time when the certificate will expire
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_notAfter_lifetime (hx509_context context, hx509_ca_tbs tbs, time_t delta)"
-.PP
-Set the relative time when the certificiate is going to expire.
+Set the relative time when the certificiate is going to expire\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIdelta\fP seconds to the certificate is going to expire.
+\fIdelta\fP seconds to the certificate is going to expire\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_notBefore (hx509_context context, hx509_ca_tbs tbs, time_t t)"
-.PP
-Set the absolute time when the certificate is valid from. If not set the current time will be used.
+Set the absolute time when the certificate is valid from\&. If not set the current time will be used\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
\fIt\fP time the certificated will start to be valid
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_proxy (hx509_context context, hx509_ca_tbs tbs, int pathLenConstraint)"
-.PP
-Make the to-be-signed certificate object a proxy certificate. If the pathLenConstraint is negative path length constraint is used.
+Make the to-be-signed certificate object a proxy certificate\&. If the pathLenConstraint is negative path length constraint is used\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIpathLenConstraint\fP path length constraint, negative, no constraint.
+\fIpathLenConstraint\fP path length constraint, negative, no constraint\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_serialnumber (hx509_context context, hx509_ca_tbs tbs, const heim_integer * serialNumber)"
+Set the serial number to use for to-be-signed certificate object\&.
.PP
-Set the serial number to use for to-be-signed certificate object.
+\fBParameters:\fP
+.RS 4
+\fIcontext\fP A hx509 context\&.
+.br
+\fItbs\fP object to be signed\&.
+.br
+\fIserialNumber\fP serial number to use for the to-be-signed certificate object\&.
+.RE
+.PP
+\fBReturns:\fP
+.RS 4
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
+.RE
+.PP
+
+.SS "int hx509_ca_tbs_set_signature_algorithm (hx509_context context, hx509_ca_tbs tbs, const AlgorithmIdentifier * sigalg)"
+Set signature algorithm on the to be signed certificate
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIserialNumber\fP serial number to use for the to-be-signed certificate object.
+\fIsigalg\fP signature algorithm to use
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_spki (hx509_context context, hx509_ca_tbs tbs, const SubjectPublicKeyInfo * spki)"
-.PP
-Set the subject public key info (SPKI) in the to-be-signed certificate object. SPKI is the public key and key related parameters in the certificate.
+Set the subject public key info (SPKI) in the to-be-signed certificate object\&. SPKI is the public key and key related parameters in the certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIspki\fP subject public key info to use for the to-be-signed certificate object.
+\fIspki\fP subject public key info to use for the to-be-signed certificate object\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_subject (hx509_context context, hx509_ca_tbs tbs, hx509_name subject)"
-.PP
-Set the subject name of a to-be-signed certificate object.
+Set the subject name of a to-be-signed certificate object\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIsubject\fP the name to set a subject.
+\fIsubject\fP the name to set a subject\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_template (hx509_context context, hx509_ca_tbs tbs, int flags, hx509_cert cert)"
-.PP
-Initialize the to-be-signed certificate object from a template certifiate.
+Initialize the to-be-signed certificate object from a template certifiate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIflags\fP bit field selecting what to copy from the template certifiate.
+\fIflags\fP bit field selecting what to copy from the template certifiate\&.
.br
-\fIcert\fP template certificate.
+\fIcert\fP template certificate\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_set_unique (hx509_context context, hx509_ca_tbs tbs, const heim_bit_string * subjectUniqueID, const heim_bit_string * issuerUniqueID)"
-.PP
Set the issuerUniqueID and subjectUniqueID
.PP
-These are only supposed to be used considered with version 2 certificates, replaced by the two extensions SubjectKeyIdentifier and IssuerKeyIdentifier. This function is to allow application using legacy protocol to issue them.
+These are only supposed to be used considered with version 2 certificates, replaced by the two extensions SubjectKeyIdentifier and IssuerKeyIdentifier\&. This function is to allow application using legacy protocol to issue them\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
\fIissuerUniqueID\fP to be set
.br
@@ -538,36 +537,37 @@ These are only supposed to be used considered with version 2 certificates, repla
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ca_tbs_subject_expand (hx509_context context, hx509_ca_tbs tbs, hx509_env env)"
-.PP
-Expand the the subject name in the to-be-signed certificate object using \fBhx509_name_expand()\fP.
+Expand the the subject name in the to-be-signed certificate object using \fBhx509_name_expand()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fItbs\fP object to be signed.
+\fItbs\fP object to be signed\&.
.br
-\fIenv\fP enviroment variable to expand variables in the subject name, see hx509_env_init().
+\fIenv\fP environment variable to expand variables in the subject name, see hx509_env_init()\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
-.SS "struct units* hx509_ca_tbs_template_units (void)\fC [read]\fP"
-.PP
-Make of template units, use to build flags argument to \fBhx509_ca_tbs_set_template()\fP with parse_units().
+.SS "const struct units* hx509_ca_tbs_template_units (void)"
+Make of template units, use to build flags argument to \fBhx509_ca_tbs_set_template()\fP with parse_units()\&.
.PP
\fBReturns:\fP
.RS 4
-an units structure.
+an units structure\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_ca_tbs_set_signature_algorithm.3 b/doc/doxyout/hx509/man/man3/hx509_ca_tbs_set_signature_algorithm.3
new file mode 100644
index 000000000000..8b46f5ce9b89
--- /dev/null
+++ b/doc/doxyout/hx509/man/man3/hx509_ca_tbs_set_signature_algorithm.3
@@ -0,0 +1 @@
+.so man3/hx509_ca.3
diff --git a/doc/doxyout/hx509/man/man3/hx509_cert.3 b/doc/doxyout/hx509/man/man3/hx509_cert.3
index 2b1b17070025..3e647aeb6af2 100644
--- a/doc/doxyout/hx509/man/man3/hx509_cert.3
+++ b/doc/doxyout/hx509/man/man3/hx509_cert.3
@@ -1,16 +1,19 @@
-.TH "hx509 certificate functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_cert" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 certificate functions \-
+hx509_cert
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
.ti -1c
-.RI "int \fBhx509_cert_init\fP (hx509_context context, const Certificate *c, hx509_cert *cert)"
+.RI "hx509_cert \fBhx509_cert_init\fP (hx509_context context, const Certificate *c, heim_error_t *error)"
.br
.ti -1c
-.RI "int \fBhx509_cert_init_data\fP (hx509_context context, const void *ptr, size_t len, hx509_cert *cert)"
+.RI "hx509_cert \fBhx509_cert_init_data\fP (hx509_context context, const void *ptr, size_t len, heim_error_t *error)"
.br
.ti -1c
.RI "void \fBhx509_cert_free\fP (hx509_cert cert)"
@@ -108,169 +111,159 @@ hx509 certificate functions \-
.in -1c
.SH "Detailed Description"
.PP
-See the \fBThe basic certificate\fP for description and examples.
+See the \fBThe basic certificate\fP for description and examples\&.
.SH "Function Documentation"
.PP
.SS "int hx509_cert_binary (hx509_context context, hx509_cert c, heim_octet_string * os)"
-.PP
-Encodes the hx509 certificate as a DER encode binary.
+Encodes the hx509 certificate as a DER encode binary\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIc\fP the certificate to encode.
+\fIc\fP the certificate to encode\&.
.br
-\fIos\fP the encode certificate, set to NULL, 0 on case of error. Free the os->data with \fBhx509_xfree()\fP.
+\fIos\fP the encode certificate, set to NULL, 0 on case of error\&. Free the os->data with \fBhx509_xfree()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_cert_check_eku (hx509_context context, hx509_cert cert, const heim_oid * eku, int allow_any_eku)"
-.PP
-Check the extended key usage on the hx509 certificate.
+Check the extended key usage on the hx509 certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIcert\fP A hx509 context.
+\fIcert\fP A hx509 context\&.
.br
\fIeku\fP the EKU to check for
.br
-\fIallow_any_eku\fP if the any EKU is set, allow that to be a substitute.
+\fIallow_any_eku\fP if the any EKU is set, allow that to be a substitute\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_cert_cmp (hx509_cert p, hx509_cert q)"
-.PP
-Compare to hx509 certificate object, useful for sorting.
+Compare to hx509 certificate object, useful for sorting\&.
.PP
\fBParameters:\fP
.RS 4
-\fIp\fP a hx509 certificate object.
+\fIp\fP a hx509 certificate object\&.
.br
-\fIq\fP a hx509 certificate object.
+\fIq\fP a hx509 certificate object\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-0 the objects are the same, returns > 0 is p is 'larger' then q, < 0 if p is 'smaller' then q.
+0 the objects are the same, returns > 0 is p is 'larger' then q, < 0 if p is 'smaller' then q\&.
.RE
.PP
.SS "int hx509_cert_find_subjectAltName_otherName (hx509_context context, hx509_cert cert, const heim_oid * oid, hx509_octet_string_list * list)"
+Return a list of subjectAltNames specified by oid in the certificate\&. On error the
.PP
-Return a list of subjectAltNames specified by oid in the certificate. On error the
-.PP
-The returned list of octet string should be freed with \fBhx509_free_octet_string_list()\fP.
+The returned list of octet string should be freed with \fBhx509_free_octet_string_list()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIcert\fP a hx509 certificate object.
+\fIcert\fP a hx509 certificate object\&.
.br
-\fIoid\fP an oid to for SubjectAltName.
+\fIoid\fP an oid to for SubjectAltName\&.
.br
-\fIlist\fP list of matching SubjectAltName.
+\fIlist\fP list of matching SubjectAltName\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_cert_free (hx509_cert cert)"
-.PP
-Free reference to the hx509 certificate object, if the refcounter reaches 0, the object if freed. Its allowed to pass in NULL.
+Free reference to the hx509 certificate object, if the refcounter reaches 0, the object if freed\&. Its allowed to pass in NULL\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcert\fP the cert to free.
+\fIcert\fP the cert to free\&.
.RE
.PP
.SS "hx509_cert_attribute hx509_cert_get_attribute (hx509_cert cert, const heim_oid * oid)"
-.PP
-Get an external attribute for the certificate, examples are friendly name and id.
+Get an external attribute for the certificate, examples are friendly name and id\&.
.PP
\fBParameters:\fP
.RS 4
\fIcert\fP hx509 certificate object to search
.br
-\fIoid\fP an oid to search for.
+\fIoid\fP an oid to search for\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-an hx509_cert_attribute, only valid as long as the certificate is referenced.
+an hx509_cert_attribute, only valid as long as the certificate is referenced\&.
.RE
.PP
.SS "int hx509_cert_get_base_subject (hx509_context context, hx509_cert c, hx509_name * name)"
-.PP
-Return the name of the base subject of the hx509 certificate. If the certiicate is a verified proxy certificate, the this function return the base certificate (root of the proxy chain). If the proxy certificate is not verified with the base certificate HX509_PROXY_CERTIFICATE_NOT_CANONICALIZED is returned.
+Return the name of the base subject of the hx509 certificate\&. If the certiicate is a verified proxy certificate, the this function return the base certificate (root of the proxy chain)\&. If the proxy certificate is not verified with the base certificate HX509_PROXY_CERTIFICATE_NOT_CANONICALIZED is returned\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIc\fP a hx509 certificate object.
+\fIc\fP a hx509 certificate object\&.
.br
-\fIname\fP a pointer to a hx509 name, should be freed by \fBhx509_name_free()\fP. See also \fBhx509_cert_get_subject()\fP.
+\fIname\fP a pointer to a hx509 name, should be freed by \fBhx509_name_free()\fP\&. See also \fBhx509_cert_get_subject()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "const char* hx509_cert_get_friendly_name (hx509_cert cert)"
-.PP
-Get friendly name of the certificate.
+Get friendly name of the certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcert\fP cert to get the friendly name from.
+\fIcert\fP cert to get the friendly name from\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-an friendly name or NULL if there is. The friendly name is only valid as long as the certificate is referenced.
+an friendly name or NULL if there is\&. The friendly name is only valid as long as the certificate is referenced\&.
.RE
.PP
.SS "int hx509_cert_get_issuer (hx509_cert p, hx509_name * name)"
-.PP
-Return the name of the issuer of the hx509 certificate.
+Return the name of the issuer of the hx509 certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIp\fP a hx509 certificate object.
+\fIp\fP a hx509 certificate object\&.
.br
-\fIname\fP a pointer to a hx509 name, should be freed by \fBhx509_name_free()\fP.
+\fIname\fP a pointer to a hx509 name, should be freed by \fBhx509_name_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_cert_get_issuer_unique_id (hx509_context context, hx509_cert p, heim_bit_string * issuer)"
-.PP
Get a copy of the Issuer Unique ID
.PP
\fBParameters:\fP
@@ -284,32 +277,30 @@ Get a copy of the Issuer Unique ID
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP. The error code HX509_EXTENSION_NOT_FOUND is returned if the certificate doesn't have a issuerUniqueID
+An hx509 error code, see \fBhx509_get_error_string()\fP\&. The error code HX509_EXTENSION_NOT_FOUND is returned if the certificate doesn't have a issuerUniqueID
.RE
.PP
.SS "time_t hx509_cert_get_notAfter (hx509_cert p)"
-.PP
-Get notAfter time of the certificate.
+Get notAfter time of the certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIp\fP a hx509 certificate object.
+\fIp\fP a hx509 certificate object\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-return not after time.
+return not after time\&.
.RE
.PP
.SS "time_t hx509_cert_get_notBefore (hx509_cert p)"
-.PP
-Get notBefore time of the certificate.
+Get notBefore time of the certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIp\fP a hx509 certificate object.
+\fIp\fP a hx509 certificate object\&.
.RE
.PP
\fBReturns:\fP
@@ -319,79 +310,74 @@ return not before time
.PP
.SS "int hx509_cert_get_serialnumber (hx509_cert p, heim_integer * i)"
-.PP
-Get serial number of the certificate.
+Get serial number of the certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIp\fP a hx509 certificate object.
+\fIp\fP a hx509 certificate object\&.
.br
-\fIi\fP serial number, should be freed ith der_free_heim_integer().
+\fIi\fP serial number, should be freed ith der_free_heim_integer()\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_cert_get_SPKI (hx509_context context, hx509_cert p, SubjectPublicKeyInfo * spki)"
-.PP
-Get the SubjectPublicKeyInfo structure from the hx509 certificate.
+Get the SubjectPublicKeyInfo structure from the hx509 certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIp\fP a hx509 certificate object.
+\fIp\fP a hx509 certificate object\&.
.br
-\fIspki\fP SubjectPublicKeyInfo, should be freed with free_SubjectPublicKeyInfo().
+\fIspki\fP SubjectPublicKeyInfo, should be freed with free_SubjectPublicKeyInfo()\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_cert_get_SPKI_AlgorithmIdentifier (hx509_context context, hx509_cert p, AlgorithmIdentifier * alg)"
-.PP
-Get the AlgorithmIdentifier from the hx509 certificate.
+Get the AlgorithmIdentifier from the hx509 certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIp\fP a hx509 certificate object.
+\fIp\fP a hx509 certificate object\&.
.br
-\fIalg\fP AlgorithmIdentifier, should be freed with free_AlgorithmIdentifier(). The algorithmidentifier is typicly rsaEncryption, or id-ecPublicKey, or some other public key mechanism.
+\fIalg\fP AlgorithmIdentifier, should be freed with free_AlgorithmIdentifier()\&. The algorithmidentifier is typicly rsaEncryption, or id-ecPublicKey, or some other public key mechanism\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_cert_get_subject (hx509_cert p, hx509_name * name)"
-.PP
-Return the name of the subject of the hx509 certificate.
+Return the name of the subject of the hx509 certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIp\fP a hx509 certificate object.
+\fIp\fP a hx509 certificate object\&.
.br
-\fIname\fP a pointer to a hx509 name, should be freed by \fBhx509_name_free()\fP. See also \fBhx509_cert_get_base_subject()\fP.
+\fIname\fP a pointer to a hx509 name, should be freed by \fBhx509_name_free()\fP\&. See also \fBhx509_cert_get_base_subject()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_cert_get_subject_unique_id (hx509_context context, hx509_cert p, heim_bit_string * subject)"
-.PP
Get a copy of the Subect Unique ID
.PP
\fBParameters:\fP
@@ -405,86 +391,81 @@ Get a copy of the Subect Unique ID
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP. The error code HX509_EXTENSION_NOT_FOUND is returned if the certificate doesn't have a subjectUniqueID
+An hx509 error code, see \fBhx509_get_error_string()\fP\&. The error code HX509_EXTENSION_NOT_FOUND is returned if the certificate doesn't have a subjectUniqueID
.RE
.PP
-.SS "int hx509_cert_init (hx509_context context, const Certificate * c, hx509_cert * cert)"
-.PP
-Allocate and init an hx509 certificate object from the decoded certificate `c´.
+.SS "hx509_cert hx509_cert_init (hx509_context context, const Certificate * c, heim_error_t * error)"
+Allocate and init an hx509 certificate object from the decoded certificate `c´\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIc\fP
.br
-\fIcert\fP
+\fIerror\fP
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 certificate
.RE
.PP
-.SS "int hx509_cert_init_data (hx509_context context, const void * ptr, size_t len, hx509_cert * cert)"
-.PP
-Just like \fBhx509_cert_init()\fP, but instead of a decode certificate takes an pointer and length to a memory region that contains a DER/BER encoded certificate.
+.SS "hx509_cert hx509_cert_init_data (hx509_context context, const void * ptr, size_t len, heim_error_t * error)"
+Just like \fBhx509_cert_init()\fP, but instead of a decode certificate takes an pointer and length to a memory region that contains a DER/BER encoded certificate\&.
.PP
-If the memory region doesn't contain just the certificate and nothing more the function will fail with HX509_EXTRA_DATA_AFTER_STRUCTURE.
+If the memory region doesn't contain just the certificate and nothing more the function will fail with HX509_EXTRA_DATA_AFTER_STRUCTURE\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIptr\fP pointer to memory region containing encoded certificate.
+\fIptr\fP pointer to memory region containing encoded certificate\&.
.br
-\fIlen\fP length of memory region.
+\fIlen\fP length of memory region\&.
.br
-\fIcert\fP a return pointer to a hx509 certificate object, will contain NULL on error.
+\fIerror\fP possibly returns an error
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 certificate
.RE
.PP
.SS "hx509_cert hx509_cert_ref (hx509_cert cert)"
-.PP
-Add a reference to a hx509 certificate object.
+Add a reference to a hx509 certificate object\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcert\fP a pointer to an hx509 certificate object.
+\fIcert\fP a pointer to an hx509 certificate object\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-the same object as is passed in.
+the same object as is passed in\&.
.RE
.PP
.SS "int hx509_cert_set_friendly_name (hx509_cert cert, const char * name)"
-.PP
-Set the friendly name on the certificate.
+Set the friendly name on the certificate\&.
.PP
\fBParameters:\fP
.RS 4
\fIcert\fP The certificate to set the friendly name on
.br
-\fIname\fP Friendly name.
+\fIname\fP Friendly name\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_print_cert (hx509_context context, hx509_cert cert, FILE * out)"
-.PP
Print a simple representation of a certificate
.PP
\fBParameters:\fP
@@ -503,90 +484,84 @@ An hx509 error code
.PP
.SS "int hx509_query_alloc (hx509_context context, hx509_query ** q)"
-.PP
-Allocate an query controller. Free using \fBhx509_query_free()\fP.
+Allocate an query controller\&. Free using \fBhx509_query_free()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIq\fP return pointer to a hx509_query.
+\fIq\fP return pointer to a hx509_query\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_query_free (hx509_context context, hx509_query * q)"
-.PP
-Free the query controller.
+Free the query controller\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIq\fP a pointer to the query controller.
+\fIq\fP a pointer to the query controller\&.
.RE
.PP
.SS "int hx509_query_match_cmp_func (hx509_query * q, int(*)(hx509_context, hx509_cert, void *) func, void * ctx)"
-.PP
-Set the query controller to match using a specific match function.
+Set the query controller to match using a specific match function\&.
.PP
\fBParameters:\fP
.RS 4
-\fIq\fP a hx509 query controller.
+\fIq\fP a hx509 query controller\&.
.br
-\fIfunc\fP function to use for matching, if the argument is NULL, the match function is removed.
+\fIfunc\fP function to use for matching, if the argument is NULL, the match function is removed\&.
.br
-\fIctx\fP context passed to the function.
+\fIctx\fP context passed to the function\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_query_match_eku (hx509_query * q, const heim_oid * eku)"
-.PP
-Set the query controller to require an one specific EKU (extended key usage). Any previous EKU matching is overwitten. If NULL is passed in as the eku, the EKU requirement is reset.
+Set the query controller to require an one specific EKU (extended key usage)\&. Any previous EKU matching is overwitten\&. If NULL is passed in as the eku, the EKU requirement is reset\&.
.PP
\fBParameters:\fP
.RS 4
-\fIq\fP a hx509 query controller.
+\fIq\fP a hx509 query controller\&.
.br
-\fIeku\fP an EKU to match on.
+\fIeku\fP an EKU to match on\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_query_match_friendly_name (hx509_query * q, const char * name)"
-.PP
Set the query controller to match on a friendly name
.PP
\fBParameters:\fP
.RS 4
-\fIq\fP a hx509 query controller.
+\fIq\fP a hx509 query controller\&.
.br
\fIname\fP a friendly name to match on
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_query_match_issuer_serial (hx509_query * q, const Name * issuer, const heim_integer * serialNumber)"
-.PP
-Set the issuer and serial number of match in the query controller. The function make copies of the isser and serial number.
+Set the issuer and serial number of match in the query controller\&. The function make copies of the isser and serial number\&.
.PP
\fBParameters:\fP
.RS 4
@@ -594,82 +569,77 @@ Set the issuer and serial number of match in the query controller. The function
.br
\fIissuer\fP issuer to search for
.br
-\fIserialNumber\fP the serialNumber of the issuer.
+\fIserialNumber\fP the serialNumber of the issuer\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_query_match_option (hx509_query * q, hx509_query_option option)"
-.PP
-Set match options for the hx509 query controller.
+Set match options for the hx509 query controller\&.
.PP
\fBParameters:\fP
.RS 4
-\fIq\fP query controller.
+\fIq\fP query controller\&.
.br
-\fIoption\fP options to control the query controller.
+\fIoption\fP options to control the query controller\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_query_statistic_file (hx509_context context, const char * fn)"
-.PP
-Set a statistic file for the query statistics.
+Set a statistic file for the query statistics\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIfn\fP statistics file name
.RE
.PP
.SS "void hx509_query_unparse_stats (hx509_context context, int printtype, FILE * out)"
-.PP
-Unparse the statistics file and print the result on a FILE descriptor.
+Unparse the statistics file and print the result on a FILE descriptor\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIprinttype\fP tyep to print
.br
-\fIout\fP the FILE to write the data on.
+\fIout\fP the FILE to write the data on\&.
.RE
.PP
.SS "void hx509_verify_ctx_f_allow_default_trustanchors (hx509_verify_ctx ctx, int boolean)"
-.PP
-Allow using the operating system builtin trust anchors if no other trust anchors are configured.
+Allow using the operating system builtin trust anchors if no other trust anchors are configured\&.
.PP
\fBParameters:\fP
.RS 4
\fIctx\fP a verification context
.br
-\fIboolean\fP if non zero, useing the operating systems builtin trust anchors.
+\fIboolean\fP if non zero, useing the operating systems builtin trust anchors\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_verify_hostname (hx509_context context, const hx509_cert cert, int flags, hx509_hostname_type type, const char * hostname, const struct sockaddr * sa, int sa_size)"
-.PP
-Verify that the certificate is allowed to be used for the hostname and address.
+Verify that the certificate is allowed to be used for the hostname and address\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIcert\fP the certificate to match with
.br
@@ -680,9 +650,9 @@ HX509_VHN_F_ALLOW_NO_MATCH no match is ok
.br
\fItype\fP type of hostname:
.IP "\(bu" 2
-HX509_HN_HOSTNAME for plain hostname.
+HX509_HN_HOSTNAME for plain hostname\&.
.IP "\(bu" 2
-HX509_HN_DNSSRV for DNS SRV names.
+HX509_HN_DNSSRV for DNS SRV names\&.
.PP
.br
\fIhostname\fP the hostname to check
@@ -694,7 +664,10 @@ HX509_HN_DNSSRV for DNS SRV names.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_cms.3 b/doc/doxyout/hx509/man/man3/hx509_cms.3
index bf96792280a3..764ed9fca7b5 100644
--- a/doc/doxyout/hx509/man/man3/hx509_cms.3
+++ b/doc/doxyout/hx509/man/man3/hx509_cms.3
@@ -1,8 +1,11 @@
-.TH "hx509 CMS/pkcs7 functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_cms" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 CMS/pkcs7 functions \-
+hx509_cms
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -27,50 +30,53 @@ hx509 CMS/pkcs7 functions \-
.in -1c
.SH "Detailed Description"
.PP
-See the \fBCMS/PKCS7 message functions.\fP for description and examples.
+See the \fBCMS/PKCS7 message functions\&.\fP for description and examples\&.
.SH "Function Documentation"
.PP
.SS "int hx509_cms_create_signed_1 (hx509_context context, int flags, const heim_oid * eContentType, const void * data, size_t length, const AlgorithmIdentifier * digest_alg, hx509_cert cert, hx509_peer_info peer, hx509_certs anchors, hx509_certs pool, heim_octet_string * signed_data)"
-.PP
-Decode SignedData and verify that the signature is correct.
+Decode SignedData and verify that the signature is correct\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIflags\fP
.br
-\fIeContentType\fP the type of the data.
+\fIeContentType\fP the type of the data\&.
.br
\fIdata\fP data to sign
.br
-\fIlength\fP length of the data that data point to.
+\fIlength\fP length of the data that data point to\&.
.br
-\fIdigest_alg\fP digest algorithm to use, use NULL to get the default or the peer determined algorithm.
+\fIdigest_alg\fP digest algorithm to use, use NULL to get the default or the peer determined algorithm\&.
.br
-\fIcert\fP certificate to use for sign the data.
+\fIcert\fP certificate to use for sign the data\&.
.br
-\fIpeer\fP info about the peer the message to send the message to, like what digest algorithm to use.
+\fIpeer\fP info about the peer the message to send the message to, like what digest algorithm to use\&.
.br
\fIanchors\fP trust anchors that the client will use, used to polulate the certificates included in the message
.br
-\fIpool\fP certificates to use in try to build the path to the trust anchors.
+\fIpool\fP certificates to use in try to build the path to the trust anchors\&.
.br
-\fIsigned_data\fP the output of the function, free with der_free_octet_string().
+\fIsigned_data\fP the output of the function, free with der_free_octet_string()\&.
+.RE
+.PP
+\fBReturns:\fP
+.RS 4
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_cms_envelope_1 (hx509_context context, int flags, hx509_cert cert, const void * data, size_t length, const heim_oid * encryption_type, const heim_oid * contentType, heim_octet_string * content)"
+Encrypt end encode EnvelopedData\&.
.PP
-Encrypt end encode EnvelopedData.
-.PP
-Encrypt and encode EnvelopedData. The data is encrypted with a random key and the the random key is encrypted with the certificates private key. This limits what private key type can be used to RSA.
+Encrypt and encode EnvelopedData\&. The data is encrypted with a random key and the the random key is encrypted with the certificates private key\&. This limits what private key type can be used to RSA\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIflags\fP flags to control the behavior.
+\fIflags\fP flags to control the behavior\&.
.IP "\(bu" 2
HX509_CMS_EV_NO_KU_CHECK - Dont check KU on certificate
.IP "\(bu" 2
@@ -79,128 +85,140 @@ HX509_CMS_EV_ALLOW_WEAK - Allow weak crytpo
HX509_CMS_EV_ID_NAME - prefer issuer name and serial number
.PP
.br
-\fIcert\fP Certificate to encrypt the EnvelopedData encryption key with.
+\fIcert\fP Certificate to encrypt the EnvelopedData encryption key with\&.
.br
-\fIdata\fP pointer the data to encrypt.
+\fIdata\fP pointer the data to encrypt\&.
.br
-\fIlength\fP length of the data that data point to.
+\fIlength\fP length of the data that data point to\&.
.br
-\fIencryption_type\fP Encryption cipher to use for the bulk data, use NULL to get default.
+\fIencryption_type\fP Encryption cipher to use for the bulk data, use NULL to get default\&.
.br
\fIcontentType\fP type of the data that is encrypted
.br
-\fIcontent\fP the output of the function, free with der_free_octet_string().
+\fIcontent\fP the output of the function, free with der_free_octet_string()\&.
+.RE
+.PP
+\fBReturns:\fP
+.RS 4
+an hx509 error code\&.
.RE
.PP
.SS "int hx509_cms_unenvelope (hx509_context context, hx509_certs certs, int flags, const void * data, size_t length, const heim_octet_string * encryptedContent, time_t time_now, heim_oid * contentType, heim_octet_string * content)"
+Decode and unencrypt EnvelopedData\&.
.PP
-Decode and unencrypt EnvelopedData.
-.PP
-Extract data and parameteres from from the EnvelopedData. Also supports using detached EnvelopedData.
+Extract data and parameteres from from the EnvelopedData\&. Also supports using detached EnvelopedData\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIcerts\fP Certificate that can decrypt the EnvelopedData encryption key.
+\fIcerts\fP Certificate that can decrypt the EnvelopedData encryption key\&.
.br
-\fIflags\fP HX509_CMS_UE flags to control the behavior.
+\fIflags\fP HX509_CMS_UE flags to control the behavior\&.
.br
-\fIdata\fP pointer the structure the contains the DER/BER encoded EnvelopedData stucture.
+\fIdata\fP pointer the structure the contains the DER/BER encoded EnvelopedData stucture\&.
.br
-\fIlength\fP length of the data that data point to.
+\fIlength\fP length of the data that data point to\&.
.br
-\fIencryptedContent\fP in case of detached signature, this contains the actual encrypted data, othersize its should be NULL.
+\fIencryptedContent\fP in case of detached signature, this contains the actual encrypted data, othersize its should be NULL\&.
.br
-\fItime_now\fP set the current time, if zero the library uses now as the date.
+\fItime_now\fP set the current time, if zero the library uses now as the date\&.
.br
-\fIcontentType\fP output type oid, should be freed with der_free_oid().
+\fIcontentType\fP output type oid, should be freed with der_free_oid()\&.
.br
-\fIcontent\fP the data, free with der_free_octet_string().
+\fIcontent\fP the data, free with der_free_octet_string()\&.
+.RE
+.PP
+\fBReturns:\fP
+.RS 4
+an hx509 error code\&.
.RE
.PP
.SS "int hx509_cms_unwrap_ContentInfo (const heim_octet_string * in, heim_oid * oid, heim_octet_string * out, int * have_data)"
-.PP
-Decode an ContentInfo and unwrap data and oid it.
+Decode an ContentInfo and unwrap data and oid it\&.
.PP
\fBParameters:\fP
.RS 4
-\fIin\fP the encoded buffer.
+\fIin\fP the encoded buffer\&.
.br
-\fIoid\fP type of the content.
+\fIoid\fP type of the content\&.
.br
-\fIout\fP data to be wrapped.
+\fIout\fP data to be wrapped\&.
.br
-\fIhave_data\fP since the data is optional, this flags show dthe diffrence between no data and the zero length data.
+\fIhave_data\fP since the data is optional, this flags show dthe diffrence between no data and the zero length data\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_cms_verify_signed (hx509_context context, hx509_verify_ctx ctx, unsigned int flags, const void * data, size_t length, const heim_octet_string * signedContent, hx509_certs pool, heim_oid * contentType, heim_octet_string * content, hx509_certs * signer_certs)"
-.PP
-Decode SignedData and verify that the signature is correct.
+Decode SignedData and verify that the signature is correct\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIctx\fP a hx509 verify context.
+\fIctx\fP a hx509 verify context\&.
.br
-\fIflags\fP to control the behaivor of the function.
+\fIflags\fP to control the behaivor of the function\&.
.IP "\(bu" 2
HX509_CMS_VS_NO_KU_CHECK - Don't check KeyUsage
.IP "\(bu" 2
HX509_CMS_VS_ALLOW_DATA_OID_MISMATCH - allow oid mismatch
.IP "\(bu" 2
-HX509_CMS_VS_ALLOW_ZERO_SIGNER - no signer, see below.
+HX509_CMS_VS_ALLOW_ZERO_SIGNER - no signer, see below\&.
.PP
.br
-\fIdata\fP pointer to CMS SignedData encoded data.
+\fIdata\fP pointer to CMS SignedData encoded data\&.
.br
-\fIlength\fP length of the data that data point to.
+\fIlength\fP length of the data that data point to\&.
.br
-\fIsignedContent\fP external data used for signature.
+\fIsignedContent\fP external data used for signature\&.
.br
-\fIpool\fP certificate pool to build certificates paths.
+\fIpool\fP certificate pool to build certificates paths\&.
.br
-\fIcontentType\fP free with der_free_oid().
+\fIcontentType\fP free with der_free_oid()\&.
.br
-\fIcontent\fP the output of the function, free with der_free_octet_string().
+\fIcontent\fP the output of the function, free with der_free_octet_string()\&.
.br
-\fIsigner_certs\fP list of the cerficates used to sign this request, free with \fBhx509_certs_free()\fP.
+\fIsigner_certs\fP list of the cerficates used to sign this request, free with \fBhx509_certs_free()\fP\&.
.RE
.PP
-
+\fBReturns:\fP
+.RS 4
+an hx509 error code\&.
+.RE
.PP
-If HX509_CMS_VS_NO_KU_CHECK is set, allow more liberal search for matching certificates by not considering KeyUsage bits on the certificates.
+If HX509_CMS_VS_NO_KU_CHECK is set, allow more liberal search for matching certificates by not considering KeyUsage bits on the certificates\&.
.PP
-If HX509_CMS_VS_ALLOW_DATA_OID_MISMATCH, allow encapContentInfo mismatch with the oid in signedAttributes (or if no signedAttributes where use, pkcs7-data oid). This is only needed to work with broken CMS implementations that doesn't follow CMS signedAttributes rules.
+If HX509_CMS_VS_ALLOW_DATA_OID_MISMATCH, allow encapContentInfo mismatch with the oid in signedAttributes (or if no signedAttributes where use, pkcs7-data oid)\&. This is only needed to work with broken CMS implementations that doesn't follow CMS signedAttributes rules\&.
.PP
-If HX509_CMS_VS_NO_VALIDATE flags is set, do not verify the signing certificates and leave that up to the caller.
+If HX509_CMS_VS_NO_VALIDATE flags is set, do not verify the signing certificates and leave that up to the caller\&.
.PP
-If HX509_CMS_VS_ALLOW_ZERO_SIGNER is set, allow empty SignerInfo (no signatures). If SignedData have no signatures, the function will return 0 with signer_certs set to NULL. Zero signers is allowed by the standard, but since its only useful in corner cases, it make into a flag that the caller have to turn on.
+If HX509_CMS_VS_ALLOW_ZERO_SIGNER is set, allow empty SignerInfo (no signatures)\&. If SignedData have no signatures, the function will return 0 with signer_certs set to NULL\&. Zero signers is allowed by the standard, but since its only useful in corner cases, it make into a flag that the caller have to turn on\&.
.SS "int hx509_cms_wrap_ContentInfo (const heim_oid * oid, const heim_octet_string * buf, heim_octet_string * res)"
-.PP
-Wrap data and oid in a ContentInfo and encode it.
+Wrap data and oid in a ContentInfo and encode it\&.
.PP
\fBParameters:\fP
.RS 4
-\fIoid\fP type of the content.
+\fIoid\fP type of the content\&.
.br
-\fIbuf\fP data to be wrapped. If a NULL pointer is passed in, the optional content field in the ContentInfo is not going be filled in.
+\fIbuf\fP data to be wrapped\&. If a NULL pointer is passed in, the optional content field in the ContentInfo is not going be filled in\&.
.br
-\fIres\fP the encoded buffer, the result should be freed with der_free_octet_string().
+\fIres\fP the encoded buffer, the result should be freed with der_free_octet_string()\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_crypto.3 b/doc/doxyout/hx509/man/man3/hx509_crypto.3
index f37fa946868a..29e28bdca055 100644
--- a/doc/doxyout/hx509/man/man3/hx509_crypto.3
+++ b/doc/doxyout/hx509/man/man3/hx509_crypto.3
@@ -1,8 +1,11 @@
-.TH "hx509 crypto functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_crypto" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 crypto functions \-
+hx509_crypto
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -16,25 +19,27 @@ hx509 crypto functions \-
.SH "Function Documentation"
.PP
.SS "int hx509_verify_signature (hx509_context context, const hx509_cert signer, const AlgorithmIdentifier * alg, const heim_octet_string * data, const heim_octet_string * sig)"
-.PP
-Verify a signature made using the private key of an certificate.
+Verify a signature made using the private key of an certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIsigner\fP the certificate that made the signature.
+\fIsigner\fP the certificate that made the signature\&.
.br
-\fIalg\fP algorthm that was used to sign the data.
+\fIalg\fP algorthm that was used to sign the data\&.
.br
-\fIdata\fP the data that was signed.
+\fIdata\fP the data that was signed\&.
.br
-\fIsig\fP the sigature to verify.
+\fIsig\fP the sigature to verify\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_env.3 b/doc/doxyout/hx509/man/man3/hx509_env.3
index e834fddcf8c8..c86bf946f854 100644
--- a/doc/doxyout/hx509/man/man3/hx509_env.3
+++ b/doc/doxyout/hx509/man/man3/hx509_env.3
@@ -1,8 +1,11 @@
-.TH "hx509 enviroment functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_env" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 enviroment functions \-
+hx509_env
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -31,14 +34,13 @@ hx509 enviroment functions \-
.SH "Function Documentation"
.PP
.SS "int hx509_env_add (hx509_context context, hx509_env * env, const char * key, const char * value)"
-.PP
-Add a new key/value pair to the hx509_env.
+Add a new key/value pair to the hx509_env\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIenv\fP enviroment to add the enviroment variable too.
+\fIenv\fP environment to add the environment variable too\&.
.br
\fIkey\fP key to add
.br
@@ -47,19 +49,18 @@ Add a new key/value pair to the hx509_env.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_env_add_binding (hx509_context context, hx509_env * env, const char * key, hx509_env list)"
-.PP
-Add a new key/binding pair to the hx509_env.
+Add a new key/binding pair to the hx509_env\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIenv\fP enviroment to add the enviroment variable too.
+\fIenv\fP environment to add the environment variable too\&.
.br
\fIkey\fP key to add
.br
@@ -68,76 +69,75 @@ Add a new key/binding pair to the hx509_env.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "const char* hx509_env_find (hx509_context context, hx509_env env, const char * key)"
-.PP
-Search the hx509_env for a key.
+Search the hx509_env for a key\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIenv\fP enviroment to add the enviroment variable too.
+\fIenv\fP environment to add the environment variable too\&.
.br
-\fIkey\fP key to search for.
+\fIkey\fP key to search for\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-the value if the key is found, NULL otherwise.
+the value if the key is found, NULL otherwise\&.
.RE
.PP
.SS "hx509_env hx509_env_find_binding (hx509_context context, hx509_env env, const char * key)"
-.PP
-Search the hx509_env for a binding.
+Search the hx509_env for a binding\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIenv\fP enviroment to add the enviroment variable too.
+\fIenv\fP environment to add the environment variable too\&.
.br
-\fIkey\fP key to search for.
+\fIkey\fP key to search for\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-the binding if the key is found, NULL if not found.
+the binding if the key is found, NULL if not found\&.
.RE
.PP
.SS "void hx509_env_free (hx509_env * env)"
-.PP
-Free an hx509_env enviroment context.
+Free an hx509_env environment context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIenv\fP the enviroment to free.
+\fIenv\fP the environment to free\&.
.RE
.PP
.SS "const char* hx509_env_lfind (hx509_context context, hx509_env env, const char * key, size_t len)"
-.PP
-Search the hx509_env for a length based key.
+Search the hx509_env for a length based key\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIenv\fP enviroment to add the enviroment variable too.
+\fIenv\fP environment to add the environment variable too\&.
.br
-\fIkey\fP key to search for.
+\fIkey\fP key to search for\&.
.br
-\fIlen\fP length of key.
+\fIlen\fP length of key\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-the value if the key is found, NULL otherwise.
+the value if the key is found, NULL otherwise\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_error.3 b/doc/doxyout/hx509/man/man3/hx509_error.3
index 0e5928e9d4e1..74721de71b3b 100644
--- a/doc/doxyout/hx509/man/man3/hx509_error.3
+++ b/doc/doxyout/hx509/man/man3/hx509_error.3
@@ -1,8 +1,11 @@
-.TH "hx509 error functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_error" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 error functions \-
+hx509_error
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -13,7 +16,7 @@ hx509 error functions \-
.RI "void \fBhx509_set_error_stringv\fP (hx509_context context, int flags, int code, const char *fmt, va_list ap)"
.br
.ti -1c
-.RI "void \fBhx509_set_error_string\fP (hx509_context context, int flags, int code, const char *fmt,...)"
+.RI "void \fBhx509_set_error_string\fP (hx509_context context, int flags, int code, const char *fmt,\&.\&.\&.)"
.br
.ti -1c
.RI "char * \fBhx509_get_error_string\fP (hx509_context context, int error_code)"
@@ -22,101 +25,95 @@ hx509 error functions \-
.RI "void \fBhx509_free_error_string\fP (char *str)"
.br
.ti -1c
-.RI "void \fBhx509_err\fP (hx509_context context, int exit_code, int error_code, const char *fmt,...)"
+.RI "void \fBhx509_err\fP (hx509_context context, int exit_code, int error_code, const char *fmt,\&.\&.\&.)"
.br
.in -1c
.SH "Detailed Description"
.PP
-See the \fBHx509 error reporting functions\fP for description and examples.
+See the \fBHx509 error reporting functions\fP for description and examples\&.
.SH "Function Documentation"
.PP
.SS "void hx509_clear_error_string (hx509_context context)"
-.PP
-Resets the error strings the hx509 context.
+Resets the error strings the hx509 context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.RE
.PP
-.SS "void hx509_err (hx509_context context, int exit_code, int error_code, const char * fmt, ...)"
-.PP
+.SS "void hx509_err (hx509_context context, int exit_code, int error_code, const char * fmt, \&.\&.\&.)"
Print error message and fatally exit from error code
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIexit_code\fP exit() code from process.
+\fIexit_code\fP exit() code from process\&.
.br
-\fIerror_code\fP Error code for the reason to exit.
+\fIerror_code\fP Error code for the reason to exit\&.
.br
-\fIfmt\fP format string with the exit message.
+\fIfmt\fP format string with the exit message\&.
.br
-\fI...\fP argument to format string.
+\fI\&.\&.\&.\fP argument to format string\&.
.RE
.PP
.SS "void hx509_free_error_string (char * str)"
-.PP
-Free error string returned by \fBhx509_get_error_string()\fP.
+Free error string returned by \fBhx509_get_error_string()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIstr\fP error string to free.
+\fIstr\fP error string to free\&.
.RE
.PP
.SS "char* hx509_get_error_string (hx509_context context, int error_code)"
-.PP
-Get an error string from context associated with error_code.
+Get an error string from context associated with error_code\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIerror_code\fP Get error message for this error code.
+\fIerror_code\fP Get error message for this error code\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-error string, free with \fBhx509_free_error_string()\fP.
+error string, free with \fBhx509_free_error_string()\fP\&.
.RE
.PP
-.SS "void hx509_set_error_string (hx509_context context, int flags, int code, const char * fmt, ...)"
-.PP
-See \fBhx509_set_error_stringv()\fP.
+.SS "void hx509_set_error_string (hx509_context context, int flags, int code, const char * fmt, \&.\&.\&.)"
+See \fBhx509_set_error_stringv()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIflags\fP
.IP "\(bu" 2
-HX509_ERROR_APPEND appends the error string to the old messages (code is updated).
+HX509_ERROR_APPEND appends the error string to the old messages (code is updated)\&.
.PP
.br
\fIcode\fP error code related to error message
.br
\fIfmt\fP error message format
.br
-\fI...\fP arguments to error message format
+\fI\&.\&.\&.\fP arguments to error message format
.RE
.PP
.SS "void hx509_set_error_stringv (hx509_context context, int flags, int code, const char * fmt, va_list ap)"
-.PP
-Add an error message to the hx509 context.
+Add an error message to the hx509 context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIflags\fP
.IP "\(bu" 2
-HX509_ERROR_APPEND appends the error string to the old messages (code is updated).
+HX509_ERROR_APPEND appends the error string to the old messages (code is updated)\&.
.PP
.br
\fIcode\fP error code related to error message
@@ -127,3 +124,6 @@ HX509_ERROR_APPEND appends the error string to the old messages (code is updated
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_keyset.3 b/doc/doxyout/hx509/man/man3/hx509_keyset.3
index 72c3f713d18c..4b8495d9bfbe 100644
--- a/doc/doxyout/hx509/man/man3/hx509_keyset.3
+++ b/doc/doxyout/hx509/man/man3/hx509_keyset.3
@@ -1,8 +1,11 @@
-.TH "hx509 certificate store functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_keyset" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 certificate store functions \-
+hx509_keyset
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -54,320 +57,295 @@ hx509 certificate store functions \-
.in -1c
.SH "Detailed Description"
.PP
-See the \fBCertificate store operations\fP for description and examples.
+See the \fBCertificate store operations\fP for description and examples\&.
.SH "Function Documentation"
.PP
.SS "int hx509_certs_add (hx509_context context, hx509_certs certs, hx509_cert cert)"
+Add a certificate to the certificiate store\&.
.PP
-Add a certificate to the certificiate store.
-.PP
-The receiving keyset certs will either increase reference counter of the cert or make a deep copy, either way, the caller needs to free the cert itself.
+The receiving keyset certs will either increase reference counter of the cert or make a deep copy, either way, the caller needs to free the cert itself\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcerts\fP certificate store to add the certificate to.
+\fIcerts\fP certificate store to add the certificate to\&.
.br
-\fIcert\fP certificate to add.
+\fIcert\fP certificate to add\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_certs_append (hx509_context context, hx509_certs to, hx509_lock lock, const char * name)"
-.PP
-Same a \fBhx509_certs_merge()\fP but use a lock and name to describe the from source.
+Same a \fBhx509_certs_merge()\fP but use a lock and name to describe the from source\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIto\fP the store to merge into.
+\fIto\fP the store to merge into\&.
.br
-\fIlock\fP a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see \fBLocking and unlocking certificates and encrypted data.\fP).
+\fIlock\fP a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see \fBLocking and unlocking certificates and encrypted data\&.\fP)\&.
.br
\fIname\fP name of the source store
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_certs_end_seq (hx509_context context, hx509_certs certs, hx509_cursor cursor)"
-.PP
-End the iteration over certificates.
+End the iteration over certificates\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcerts\fP certificate store to iterate over.
+\fIcerts\fP certificate store to iterate over\&.
.br
-\fIcursor\fP cursor that will keep track of progress, freed.
+\fIcursor\fP cursor that will keep track of progress, freed\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_certs_filter (hx509_context context, hx509_certs certs, const hx509_query * q, hx509_certs * result)"
-.PP
-Filter certificate matching the query.
+Filter certificate matching the query\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcerts\fP certificate store to search.
+\fIcerts\fP certificate store to search\&.
.br
-\fIq\fP query allocated with \fBhx509 query functions\fP functions.
+\fIq\fP query allocated with \fBhx509 query functions\fP functions\&.
.br
-\fIresult\fP the filtered certificate store, caller must free with \fBhx509_certs_free()\fP.
+\fIresult\fP the filtered certificate store, caller must free with \fBhx509_certs_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
-
-.PP
-Return HX509_CERT_NOT_FOUND if no certificate in certs matched the query.
+Return HX509_CERT_NOT_FOUND if no certificate in certs matched the query\&.
.SS "int hx509_certs_find (hx509_context context, hx509_certs certs, const hx509_query * q, hx509_cert * r)"
-.PP
-Find a certificate matching the query.
+Find a certificate matching the query\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcerts\fP certificate store to search.
+\fIcerts\fP certificate store to search\&.
.br
-\fIq\fP query allocated with \fBhx509 query functions\fP functions.
+\fIq\fP query allocated with \fBhx509 query functions\fP functions\&.
.br
-\fIr\fP return certificate (or NULL on error), should be freed with \fBhx509_cert_free()\fP.
+\fIr\fP return certificate (or NULL on error), should be freed with \fBhx509_cert_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
-
-.PP
-Return HX509_CERT_NOT_FOUND if no certificate in certs matched the query.
+Return HX509_CERT_NOT_FOUND if no certificate in certs matched the query\&.
.SS "void hx509_certs_free (hx509_certs * certs)"
-.PP
-Free a certificate store.
+Free a certificate store\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcerts\fP certificate store to free.
+\fIcerts\fP certificate store to free\&.
.RE
.PP
.SS "int hx509_certs_info (hx509_context context, hx509_certs certs, int(*)(void *, const char *) func, void * ctx)"
-.PP
-Print some info about the certificate store.
+Print some info about the certificate store\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcerts\fP certificate store to print information about.
+\fIcerts\fP certificate store to print information about\&.
.br
-\fIfunc\fP function that will get each line of the information, if NULL is used the data is printed on a FILE descriptor that should be passed in ctx, if ctx also is NULL, stdout is used.
+\fIfunc\fP function that will get each line of the information, if NULL is used the data is printed on a FILE descriptor that should be passed in ctx, if ctx also is NULL, stdout is used\&.
.br
-\fIctx\fP parameter to func.
+\fIctx\fP parameter to func\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_certs_init (hx509_context context, const char * name, int flags, hx509_lock lock, hx509_certs * certs)"
-.PP
-Open or creates a new hx509 certificate store.
+Open or creates a new hx509 certificate store\&.
.PP
\fBParameters:\fP
.RS 4
\fIcontext\fP A hx509 context
.br
-\fIname\fP name of the store, format is TYPE:type-specific-string, if NULL is used the MEMORY store is used.
+\fIname\fP name of the store, format is TYPE:type-specific-string, if NULL is used the MEMORY store is used\&.
.br
\fIflags\fP list of flags:
.IP "\(bu" 2
-HX509_CERTS_CREATE create a new keystore of the specific TYPE.
+HX509_CERTS_CREATE create a new keystore of the specific TYPE\&.
.IP "\(bu" 2
-HX509_CERTS_UNPROTECT_ALL fails if any private key failed to be extracted.
+HX509_CERTS_UNPROTECT_ALL fails if any private key failed to be extracted\&.
.PP
.br
-\fIlock\fP a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see \fBLocking and unlocking certificates and encrypted data.\fP).
+\fIlock\fP a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see \fBLocking and unlocking certificates and encrypted data\&.\fP)\&.
.br
-\fIcerts\fP return pointer, free with \fBhx509_certs_free()\fP.
+\fIcerts\fP return pointer, free with \fBhx509_certs_free()\fP\&.
+.RE
+.PP
+\fBReturns:\fP
+.RS 4
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_certs_iter_f (hx509_context context, hx509_certs certs, int(*)(hx509_context, void *, hx509_cert) func, void * ctx)"
-.PP
-Iterate over all certificates in a keystore and call an function for each fo them.
+Iterate over all certificates in a keystore and call a function for each of them\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcerts\fP certificate store to iterate over.
+\fIcerts\fP certificate store to iterate over\&.
.br
-\fIfunc\fP function to call for each certificate. The function should return non-zero to abort the iteration, that value is passed back to the caller of \fBhx509_certs_iter_f()\fP.
+\fIfunc\fP function to call for each certificate\&. The function should return non-zero to abort the iteration, that value is passed back to the caller of \fBhx509_certs_iter_f()\fP\&.
.br
-\fIctx\fP context variable that will passed to the function.
+\fIctx\fP context variable that will passed to the function\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_certs_merge (hx509_context context, hx509_certs to, hx509_certs from)"
-.PP
-Merge a certificate store into another. The from store is keep intact.
+Merge a certificate store into another\&. The from store is keep intact\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIto\fP the store to merge into.
+\fIto\fP the store to merge into\&.
.br
-\fIfrom\fP the store to copy the object from.
+\fIfrom\fP the store to copy the object from\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_certs_next_cert (hx509_context context, hx509_certs certs, hx509_cursor cursor, hx509_cert * cert)"
-.PP
-Get next ceritificate from the certificate keystore pointed out by cursor.
+Get next ceritificate from the certificate keystore pointed out by cursor\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcerts\fP certificate store to iterate over.
+\fIcerts\fP certificate store to iterate over\&.
.br
-\fIcursor\fP cursor that keeps track of progress.
+\fIcursor\fP cursor that keeps track of progress\&.
.br
-\fIcert\fP return certificate next in store, NULL if the store contains no more certificates. Free with \fBhx509_cert_free()\fP.
+\fIcert\fP return certificate next in store, NULL if the store contains no more certificates\&. Free with \fBhx509_cert_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_certs_start_seq (hx509_context context, hx509_certs certs, hx509_cursor * cursor)"
-.PP
Start the integration
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
\fIcerts\fP certificate store to iterate over
.br
-\fIcursor\fP cursor that will keep track of progress, free with \fBhx509_certs_end_seq()\fP.
+\fIcursor\fP cursor that will keep track of progress, free with \fBhx509_certs_end_seq()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code. HX509_UNSUPPORTED_OPERATION is returned if the certificate store doesn't support the iteration operation.
+Returns an hx509 error code\&. HX509_UNSUPPORTED_OPERATION is returned if the certificate store doesn't support the iteration operation\&.
.RE
.PP
.SS "int hx509_certs_store (hx509_context context, hx509_certs certs, int flags, hx509_lock lock)"
-.PP
-Write the certificate store to stable storage.
+Write the certificate store to stable storage\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIcerts\fP a certificate store to store.
+\fIcerts\fP a certificate store to store\&.
.br
-\fIflags\fP currently unused, use 0.
+\fIflags\fP currently unused, use 0\&.
.br
-\fIlock\fP a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see \fBLocking and unlocking certificates and encrypted data.\fP).
+\fIlock\fP a lock that unlocks the certificates store, use NULL to select no password/certifictes/prompt lock (see \fBLocking and unlocking certificates and encrypted data\&.\fP)\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code. HX509_UNSUPPORTED_OPERATION if the certificate store doesn't support the store operation.
+Returns an hx509 error code\&. HX509_UNSUPPORTED_OPERATION if the certificate store doesn't support the store operation\&.
.RE
.PP
.SS "int hx509_ci_print_names (hx509_context context, void * ctx, hx509_cert c)"
-.PP
-Iterate over all certificates in a keystore and call an function for each fo them.
-.PP
-\fBParameters:\fP
-.RS 4
-\fIcontext\fP a hx509 context.
-.br
-\fIcerts\fP certificate store to iterate over.
-.br
-\fIfunc\fP function to call for each certificate. The function should return non-zero to abort the iteration, that value is passed back to the caller of hx509_certs_iter().
-.RE
-.PP
-\fBReturns:\fP
-.RS 4
-Returns an hx509 error code. Function to use to \fBhx509_certs_iter_f()\fP as a function argument, the ctx variable to \fBhx509_certs_iter_f()\fP should be a FILE file descriptor.
-.RE
+Function to use to \fBhx509_certs_iter_f()\fP as a function argument, the ctx variable to \fBhx509_certs_iter_f()\fP should be a FILE file descriptor\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIctx\fP used by \fBhx509_certs_iter_f()\fP.
+\fIctx\fP used by \fBhx509_certs_iter_f()\fP\&.
.br
\fIc\fP a certificate
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
.SS "int hx509_get_one_cert (hx509_context context, hx509_certs certs, hx509_cert * c)"
-.PP
-Get one random certificate from the certificate store.
+Get one random certificate from the certificate store\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcerts\fP a certificate store to get the certificate from.
+\fIcerts\fP a certificate store to get the certificate from\&.
.br
-\fIc\fP return certificate, should be freed with \fBhx509_cert_free()\fP.
+\fIc\fP return certificate, should be freed with \fBhx509_cert_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-Returns an hx509 error code.
+Returns an hx509 error code\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_lock.3 b/doc/doxyout/hx509/man/man3/hx509_lock.3
index ca1283c0eefe..2f7498acca09 100644
--- a/doc/doxyout/hx509/man/man3/hx509_lock.3
+++ b/doc/doxyout/hx509/man/man3/hx509_lock.3
@@ -1,5 +1,14 @@
-.TH "hx509 lock functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_lock" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 lock functions \- See the \fBLocking and unlocking certificates and encrypted data.\fP for description and examples.
+hx509_lock
+.SH SYNOPSIS
+.br
+.PP
+.SH "Detailed Description"
+.PP
+See the \fBLocking and unlocking certificates and encrypted data\&.\fP for description and examples\&.
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_misc.3 b/doc/doxyout/hx509/man/man3/hx509_misc.3
index 3abdd195b11c..b8c9f076a77d 100644
--- a/doc/doxyout/hx509/man/man3/hx509_misc.3
+++ b/doc/doxyout/hx509/man/man3/hx509_misc.3
@@ -1,8 +1,11 @@
-.TH "hx509 misc functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_misc" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 misc functions \-
+hx509_misc
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -19,22 +22,23 @@ hx509 misc functions \-
.SH "Function Documentation"
.PP
.SS "void hx509_free_octet_string_list (hx509_octet_string_list * list)"
-.PP
-Free a list of octet strings returned by another hx509 library function.
+Free a list of octet strings returned by another hx509 library function\&.
.PP
\fBParameters:\fP
.RS 4
-\fIlist\fP list to be freed.
+\fIlist\fP list to be freed\&.
.RE
.PP
.SS "void hx509_xfree (void * ptr)"
-.PP
-Free a data element allocated in the library.
+Free a data element allocated in the library\&.
.PP
\fBParameters:\fP
.RS 4
-\fIptr\fP data to be freed.
+\fIptr\fP data to be freed\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_name.3 b/doc/doxyout/hx509/man/man3/hx509_name.3
index d484db0d700e..ea62b3ed3147 100644
--- a/doc/doxyout/hx509/man/man3/hx509_name.3
+++ b/doc/doxyout/hx509/man/man3/hx509_name.3
@@ -1,8 +1,11 @@
-.TH "hx509 name functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_name" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 name functions \-
+hx509_name
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -42,12 +45,11 @@ hx509 name functions \-
.in -1c
.SH "Detailed Description"
.PP
-See the \fBPKIX/X.509 Names\fP for description and examples.
+See the \fBPKIX/X\&.509 Names\fP for description and examples\&.
.SH "Function Documentation"
.PP
.SS "int hx509_general_name_unparse (GeneralName * name, char ** str)"
-.PP
-Unparse the hx509 name in name into a string.
+Unparse the hx509 name in name into a string\&.
.PP
\fBParameters:\fP
.RS 4
@@ -58,51 +60,48 @@ Unparse the hx509 name in name into a string.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_name_binary (const hx509_name name, heim_octet_string * os)"
-.PP
-Convert a hx509_name object to DER encoded name.
+Convert a hx509_name object to DER encoded name\&.
.PP
\fBParameters:\fP
.RS 4
\fIname\fP name to concert
.br
-\fIos\fP data to a DER encoded name, free the resulting octet string with hx509_xfree(os->data).
+\fIos\fP data to a DER encoded name, free the resulting octet string with hx509_xfree(os->data)\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_name_cmp (hx509_name n1, hx509_name n2)"
-.PP
-Compare to hx509 name object, useful for sorting.
+Compare to hx509 name object, useful for sorting\&.
.PP
\fBParameters:\fP
.RS 4
-\fIn1\fP a hx509 name object.
+\fIn1\fP a hx509 name object\&.
.br
-\fIn2\fP a hx509 name object.
+\fIn2\fP a hx509 name object\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-0 the objects are the same, returns > 0 is n2 is 'larger' then n2, < 0 if n1 is 'smaller' then n2.
+0 the objects are the same, returns > 0 is n2 is 'larger' then n2, < 0 if n1 is 'smaller' then n2\&.
.RE
.PP
.SS "int hx509_name_copy (hx509_context context, const hx509_name from, hx509_name * to)"
-.PP
-Copy a hx509 name object.
+Copy a hx509 name object\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 cotext.
+\fIcontext\fP A hx509 cotext\&.
.br
\fIfrom\fP the name to copy from
.br
@@ -111,59 +110,53 @@ Copy a hx509 name object.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_name_expand (hx509_context context, hx509_name name, hx509_env env)"
-.PP
-Expands variables in the name using env. Variables are on the form ${name}. Useful when dealing with certificate templates.
+Expands variables in the name using env\&. Variables are on the form ${name}\&. Useful when dealing with certificate templates\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 cotext.
+\fIcontext\fP A hx509 cotext\&.
.br
-\fIname\fP the name to expand.
+\fIname\fP the name to expand\&.
.br
-\fIenv\fP environment variable to expand.
+\fIenv\fP environment variable to expand\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
-
-.PP
Only UTF8String rdnSequence names are allowed
.SS "void hx509_name_free (hx509_name * name)"
-.PP
-Free a hx509 name object, upond return *name will be NULL.
+Free a hx509 name object, upond return *name will be NULL\&.
.PP
\fBParameters:\fP
.RS 4
-\fIname\fP a hx509 name object to be freed.
+\fIname\fP a hx509 name object to be freed\&.
.RE
.PP
.SS "int hx509_name_is_null_p (const hx509_name name)"
-.PP
-Unparse the hx509 name in name into a string.
+Unparse the hx509 name in name into a string\&.
.PP
\fBParameters:\fP
.RS 4
-\fIname\fP the name to check if its empty/null.
+\fIname\fP the name to check if its empty/null\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-non zero if the name is empty/null.
+non zero if the name is empty/null\&.
.RE
.PP
.SS "int hx509_name_to_Name (const hx509_name from, Name * to)"
-.PP
-Convert a hx509_name into a Name.
+Convert a hx509_name into a Name\&.
.PP
\fBParameters:\fP
.RS 4
@@ -174,13 +167,12 @@ Convert a hx509_name into a Name.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_name_to_string (const hx509_name name, char ** str)"
-.PP
-Convert the hx509 name object into a printable string. The resulting string should be freed with free().
+Convert the hx509 name object into a printable string\&. The resulting string should be freed with free()\&.
.PP
\fBParameters:\fP
.RS 4
@@ -191,32 +183,30 @@ Convert the hx509 name object into a printable string. The resulting string shou
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_parse_name (hx509_context context, const char * str, hx509_name * name)"
-.PP
-Parse a string into a hx509 name object.
+Parse a string into a hx509 name object\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIstr\fP a string to parse.
+\fIstr\fP a string to parse\&.
.br
-\fIname\fP the resulting object, NULL in case of error.
+\fIname\fP the resulting object, NULL in case of error\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_unparse_der_name (const void * data, size_t length, char ** str)"
-.PP
-Convert a DER encoded name info a string.
+Convert a DER encoded name info a string\&.
.PP
\fBParameters:\fP
.RS 4
@@ -224,12 +214,15 @@ Convert a DER encoded name info a string.
.br
\fIlength\fP length of data
.br
-\fIstr\fP the resulting string, is NULL on failure.
+\fIstr\fP the resulting string, is NULL on failure\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_peer.3 b/doc/doxyout/hx509/man/man3/hx509_peer.3
index b5e9acd8f242..ca1347e6a852 100644
--- a/doc/doxyout/hx509/man/man3/hx509_peer.3
+++ b/doc/doxyout/hx509/man/man3/hx509_peer.3
@@ -1,8 +1,11 @@
-.TH "hx509 certificate selecting functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_peer" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 certificate selecting functions \-
+hx509_peer
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -28,12 +31,11 @@ hx509 certificate selecting functions \-
.SH "Function Documentation"
.PP
.SS "int hx509_peer_info_add_cms_alg (hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier * val)"
-.PP
-Add an additional algorithm that the peer supports.
+Add an additional algorithm that the peer supports\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIpeer\fP the peer to set the new algorithms for
.br
@@ -42,72 +44,71 @@ Add an additional algorithm that the peer supports.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_peer_info_alloc (hx509_context context, hx509_peer_info * peer)"
-.PP
-Allocate a new peer info structure an init it to default values.
+Allocate a new peer info structure an init it to default values\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIpeer\fP return an allocated peer, free with \fBhx509_peer_info_free()\fP.
+\fIpeer\fP return an allocated peer, free with \fBhx509_peer_info_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_peer_info_free (hx509_peer_info peer)"
-.PP
-Free a peer info structure.
+Free a peer info structure\&.
.PP
\fBParameters:\fP
.RS 4
-\fIpeer\fP peer info to be freed.
+\fIpeer\fP peer info to be freed\&.
.RE
.PP
.SS "int hx509_peer_info_set_cert (hx509_peer_info peer, hx509_cert cert)"
-.PP
-Set the certificate that remote peer is using.
+Set the certificate that remote peer is using\&.
.PP
\fBParameters:\fP
.RS 4
\fIpeer\fP peer info to update
.br
-\fIcert\fP cerificate of the remote peer.
+\fIcert\fP cerificate of the remote peer\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_peer_info_set_cms_algs (hx509_context context, hx509_peer_info peer, const AlgorithmIdentifier * val, size_t len)"
-.PP
-Set the algorithms that the peer supports.
+Set the algorithms that the peer supports\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
\fIpeer\fP the peer to set the new algorithms for
.br
\fIval\fP array of supported AlgorithmsIdentiers
.br
-\fIlen\fP length of array val.
+\fIlen\fP length of array val\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_print.3 b/doc/doxyout/hx509/man/man3/hx509_print.3
index 49945e3c288e..ce82df7dae98 100644
--- a/doc/doxyout/hx509/man/man3/hx509_print.3
+++ b/doc/doxyout/hx509/man/man3/hx509_print.3
@@ -1,8 +1,11 @@
-.TH "hx509 printing functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_print" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 printing functions \-
+hx509_print
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -43,169 +46,162 @@ hx509 printing functions \-
.SH "Function Documentation"
.PP
.SS "void hx509_bitstring_print (const heim_bit_string * b, hx509_vprint_func func, void * ctx)"
-.PP
-Print a bitstring using a hx509_vprint_func function. To print to stdout use \fBhx509_print_stdout()\fP.
+Print a bitstring using a hx509_vprint_func function\&. To print to stdout use \fBhx509_print_stdout()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIb\fP bit string to print.
+\fIb\fP bit string to print\&.
.br
-\fIfunc\fP hx509_vprint_func to print with.
+\fIfunc\fP hx509_vprint_func to print with\&.
.br
-\fIctx\fP context variable to hx509_vprint_func function.
+\fIctx\fP context variable to hx509_vprint_func function\&.
.RE
.PP
.SS "int hx509_cert_keyusage_print (hx509_context context, hx509_cert c, char ** s)"
-.PP
-Print certificate usage for a certificate to a string.
+Print certificate usage for a certificate to a string\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIc\fP a certificate print the keyusage for.
+\fIc\fP a certificate print the keyusage for\&.
.br
-\fIs\fP the return string with the keysage printed in to, free with \fBhx509_xfree()\fP.
+\fIs\fP the return string with the keysage printed in to, free with \fBhx509_xfree()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_oid_print (const heim_oid * oid, hx509_vprint_func func, void * ctx)"
-.PP
-Print a oid using a hx509_vprint_func function. To print to stdout use \fBhx509_print_stdout()\fP.
+Print a oid using a hx509_vprint_func function\&. To print to stdout use \fBhx509_print_stdout()\fP\&.
.PP
\fBParameters:\fP
.RS 4
\fIoid\fP oid to print
.br
-\fIfunc\fP hx509_vprint_func to print with.
+\fIfunc\fP hx509_vprint_func to print with\&.
.br
-\fIctx\fP context variable to hx509_vprint_func function.
+\fIctx\fP context variable to hx509_vprint_func function\&.
.RE
.PP
.SS "int hx509_oid_sprint (const heim_oid * oid, char ** str)"
-.PP
-Print a oid to a string.
+Print a oid to a string\&.
.PP
\fBParameters:\fP
.RS 4
\fIoid\fP oid to print
.br
-\fIstr\fP allocated string, free with \fBhx509_xfree()\fP.
+\fIstr\fP allocated string, free with \fBhx509_xfree()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_print_stdout (void * ctx, const char * fmt, va_list va)"
-.PP
Helper function to print on stdout for:
.IP "\(bu" 2
\fBhx509_oid_print()\fP,
.IP "\(bu" 2
\fBhx509_bitstring_print()\fP,
.IP "\(bu" 2
-\fBhx509_validate_ctx_set_print()\fP.
+\fBhx509_validate_ctx_set_print()\fP\&.
.PP
.PP
\fBParameters:\fP
.RS 4
-\fIctx\fP the context to the print function. If the ctx is NULL, stdout is used.
+\fIctx\fP the context to the print function\&. If the ctx is NULL, stdout is used\&.
.br
-\fIfmt\fP the printing format.
+\fIfmt\fP the printing format\&.
.br
-\fIva\fP the argumet list.
+\fIva\fP the argumet list\&.
.RE
.PP
.SS "int hx509_validate_cert (hx509_context context, hx509_validate_ctx ctx, hx509_cert cert)"
-.PP
-Validate/Print the status of the certificate.
+Validate/Print the status of the certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIctx\fP A hx509 validation context.
+\fIctx\fP A hx509 validation context\&.
.br
-\fIcert\fP the cerificate to validate/print.
+\fIcert\fP the cerificate to validate/print\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_validate_ctx_add_flags (hx509_validate_ctx ctx, int flags)"
-.PP
-Add flags to control the behaivor of the \fBhx509_validate_cert()\fP function.
+Add flags to control the behaivor of the \fBhx509_validate_cert()\fP function\&.
.PP
\fBParameters:\fP
.RS 4
-\fIctx\fP A hx509 validation context.
+\fIctx\fP A hx509 validation context\&.
.br
-\fIflags\fP flags to add to the validation context.
+\fIflags\fP flags to add to the validation context\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_validate_ctx_free (hx509_validate_ctx ctx)"
-.PP
-Free an hx509 validate context.
+Free an hx509 validate context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIctx\fP the hx509 validate context to free.
+\fIctx\fP the hx509 validate context to free\&.
.RE
.PP
.SS "int hx509_validate_ctx_init (hx509_context context, hx509_validate_ctx * ctx)"
-.PP
-Allocate a hx509 validation/printing context.
+Allocate a hx509 validation/printing context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIctx\fP a new allocated hx509 validation context, free with \fBhx509_validate_ctx_free()\fP.
+\fIctx\fP a new allocated hx509 validation context, free with \fBhx509_validate_ctx_free()\fP\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_validate_ctx_set_print (hx509_validate_ctx ctx, hx509_vprint_func func, void * c)"
-.PP
-Set the printing functions for the validation context.
+Set the printing functions for the validation context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIctx\fP a hx509 valication context.
+\fIctx\fP a hx509 valication context\&.
.br
-\fIfunc\fP the printing function to usea.
+\fIfunc\fP the printing function to usea\&.
.br
-\fIc\fP the context variable to the printing function.
+\fIc\fP the context variable to the printing function\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_query.3 b/doc/doxyout/hx509/man/man3/hx509_query.3
index 259253fa16d6..7f79ddd30af3 100644
--- a/doc/doxyout/hx509/man/man3/hx509_query.3
+++ b/doc/doxyout/hx509/man/man3/hx509_query.3
@@ -1,5 +1,14 @@
-.TH "hx509 query functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_query" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 query functions \-
+hx509_query
+.SH SYNOPSIS
+.br
+.PP
+.SH "Detailed Description"
+.PP
+
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_revoke.3 b/doc/doxyout/hx509/man/man3/hx509_revoke.3
index 54ac6a0944c4..b437ea952e0c 100644
--- a/doc/doxyout/hx509/man/man3/hx509_revoke.3
+++ b/doc/doxyout/hx509/man/man3/hx509_revoke.3
@@ -1,8 +1,11 @@
-.TH "hx509 revokation checking functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_revoke" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 revokation checking functions \-
+hx509_revoke
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -30,12 +33,11 @@ hx509 revokation checking functions \-
.in -1c
.SH "Detailed Description"
.PP
-See the \fBRevocation methods\fP for description and examples.
+See the \fBRevocation methods\fP for description and examples\&.
.SH "Function Documentation"
.PP
.SS "int hx509_ocsp_request (hx509_context context, hx509_certs reqcerts, hx509_certs pool, hx509_cert signer, const AlgorithmIdentifier * digest, heim_octet_string * request, heim_octet_string * nonce)"
-.PP
-Create an OCSP request for a set of certificates.
+Create an OCSP request for a set of certificates\&.
.PP
\fBParameters:\fP
.RS 4
@@ -49,20 +51,19 @@ Create an OCSP request for a set of certificates.
.br
\fIdigest\fP the signing algorithm in the request, if NULL use the default signature algorithm,
.br
-\fIrequest\fP the encoded request, free with free_heim_octet_string().
+\fIrequest\fP the encoded request, free with free_heim_octet_string()\&.
.br
-\fInonce\fP nonce in the request, free with free_heim_octet_string().
+\fInonce\fP nonce in the request, free with free_heim_octet_string()\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_revoke_add_crl (hx509_context context, hx509_revoke_ctx ctx, const char * path)"
-.PP
-Add a CRL file to the revokation context.
+Add a CRL file to the revokation context\&.
.PP
\fBParameters:\fP
.RS 4
@@ -70,18 +71,17 @@ Add a CRL file to the revokation context.
.br
\fIctx\fP hx509 revokation context
.br
-\fIpath\fP path to file that is going to be added to the context.
+\fIpath\fP path to file that is going to be added to the context\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_revoke_add_ocsp (hx509_context context, hx509_revoke_ctx ctx, const char * path)"
-.PP
-Add a OCSP file to the revokation context.
+Add a OCSP file to the revokation context\&.
.PP
\fBParameters:\fP
.RS 4
@@ -89,18 +89,17 @@ Add a OCSP file to the revokation context.
.br
\fIctx\fP hx509 revokation context
.br
-\fIpath\fP path to file that is going to be added to the context.
+\fIpath\fP path to file that is going to be added to the context\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_revoke_free (hx509_revoke_ctx * ctx)"
-.PP
-Free a hx509 revokation context.
+Free a hx509 revokation context\&.
.PP
\fBParameters:\fP
.RS 4
@@ -109,25 +108,23 @@ Free a hx509 revokation context.
.PP
.SS "int hx509_revoke_init (hx509_context context, hx509_revoke_ctx * ctx)"
-.PP
-Allocate a revokation context. Free with \fBhx509_revoke_free()\fP.
+Allocate a revokation context\&. Free with \fBhx509_revoke_free()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIctx\fP returns a newly allocated revokation context.
+\fIctx\fP returns a newly allocated revokation context\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_revoke_ocsp_print (hx509_context context, const char * path, FILE * out)"
-.PP
-Print the OCSP reply stored in a file.
+Print the OCSP reply stored in a file\&.
.PP
\fBParameters:\fP
.RS 4
@@ -140,13 +137,12 @@ Print the OCSP reply stored in a file.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_revoke_verify (hx509_context context, hx509_revoke_ctx ctx, hx509_certs certs, time_t now, hx509_cert cert, hx509_cert parent_cert)"
-.PP
-Check that a certificate is not expired according to a revokation context. Also need the parent certificte to the check OCSP parent identifier.
+Check that a certificate is not expired according to a revokation context\&. Also need the parent certificte to the check OCSP parent identifier\&.
.PP
\fBParameters:\fP
.RS 4
@@ -165,7 +161,10 @@ Check that a certificate is not expired according to a revokation context. Also
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/hx509_verify.3 b/doc/doxyout/hx509/man/man3/hx509_verify.3
index 6f0b86673e31..f683437acda8 100644
--- a/doc/doxyout/hx509/man/man3/hx509_verify.3
+++ b/doc/doxyout/hx509/man/man3/hx509_verify.3
@@ -1,8 +1,11 @@
-.TH "hx509 verification functions" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "hx509_verify" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-hx509 verification functions \-
+hx509_verify
+.SH SYNOPSIS
+.br
+.PP
.SS "Functions"
.in +1c
@@ -61,91 +64,85 @@ hx509 verification functions \-
.SH "Function Documentation"
.PP
.SS "void hx509_context_set_missing_revoke (hx509_context context, int flag)"
-.PP
-Selects if the \fBhx509_revoke_verify()\fP function is going to require the existans of a revokation method (OCSP, CRL) or not. Note that \fBhx509_verify_path()\fP, \fBhx509_cms_verify_signed()\fP, and other function call \fBhx509_revoke_verify()\fP.
+Selects if the \fBhx509_revoke_verify()\fP function is going to require the existans of a revokation method (OCSP, CRL) or not\&. Note that \fBhx509_verify_path()\fP, \fBhx509_cms_verify_signed()\fP, and other function call \fBhx509_revoke_verify()\fP\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP hx509 context to change the flag for.
+\fIcontext\fP hx509 context to change the flag for\&.
.br
\fIflag\fP zero, revokation method required, non zero missing revokation method ok
.RE
.PP
.SS "int hx509_crl_add_revoked_certs (hx509_context context, hx509_crl crl, hx509_certs certs)"
-.PP
-Add revoked certificate to an CRL context.
+Add revoked certificate to an CRL context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcrl\fP the CRL to add the revoked certificate to.
+\fIcrl\fP the CRL to add the revoked certificate to\&.
.br
-\fIcerts\fP keyset of certificate to revoke.
+\fIcerts\fP keyset of certificate to revoke\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_crl_alloc (hx509_context context, hx509_crl * crl)"
-.PP
-Create a CRL context. Use \fBhx509_crl_free()\fP to free the CRL context.
+Create a CRL context\&. Use \fBhx509_crl_free()\fP to free the CRL context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcrl\fP return pointer to a newly allocated CRL context.
+\fIcrl\fP return pointer to a newly allocated CRL context\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_crl_free (hx509_context context, hx509_crl * crl)"
-.PP
-Free a CRL context.
+Free a CRL context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
-\fIcrl\fP a CRL context to free.
+\fIcrl\fP a CRL context to free\&.
.RE
.PP
.SS "int hx509_crl_lifetime (hx509_context context, hx509_crl crl, int delta)"
-.PP
-Set the lifetime of a CRL context.
+Set the lifetime of a CRL context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
\fIcrl\fP a CRL context
.br
-\fIdelta\fP delta time the certificate is valid, library adds the current time to this.
+\fIdelta\fP delta time the certificate is valid, library adds the current time to this\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_crl_sign (hx509_context context, hx509_cert signer, hx509_crl crl, heim_octet_string * os)"
-.PP
-Sign a CRL and return an encode certificate.
+Sign a CRL and return an encode certificate\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP a hx509 context.
+\fIcontext\fP a hx509 context\&.
.br
\fIsigner\fP certificate to sign the CRL with
.br
@@ -156,19 +153,18 @@ Sign a CRL and return an encode certificate.
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_ocsp_verify (hx509_context context, time_t now, hx509_cert cert, int flags, const void * data, size_t length, time_t * expiration)"
-.PP
-Verify that the certificate is part of the OCSP reply and it's not expired. Doesn't verify signature the OCSP reply or it's done by a authorized sender, that is assumed to be already done.
+Verify that the certificate is part of the OCSP reply and it's not expired\&. Doesn't verify signature the OCSP reply or it's done by a authorized sender, that is assumed to be already done\&.
.PP
\fBParameters:\fP
.RS 4
\fIcontext\fP a hx509 context
.br
-\fInow\fP the time right now, if 0, use the current time.
+\fInow\fP the time right now, if 0, use the current time\&.
.br
\fIcert\fP the certificate to verify
.br
@@ -178,132 +174,126 @@ Verify that the certificate is part of the OCSP reply and it's not expired. Does
.br
\fIlength\fP the length of the encode ocsp reply
.br
-\fIexpiration\fP return the time the OCSP will expire and need to be rechecked.
+\fIexpiration\fP return the time the OCSP will expire and need to be rechecked\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_verify_attach_anchors (hx509_verify_ctx ctx, hx509_certs set)"
-.PP
-Set the trust anchors in the verification context, makes an reference to the keyset, so the consumer can free the keyset independent of the destruction of the verification context (ctx). If there already is a keyset attached, it's released.
+Set the trust anchors in the verification context, makes an reference to the keyset, so the consumer can free the keyset independent of the destruction of the verification context (ctx)\&. If there already is a keyset attached, it's released\&.
.PP
\fBParameters:\fP
.RS 4
\fIctx\fP a verification context
.br
-\fIset\fP a keyset containing the trust anchors.
+\fIset\fP a keyset containing the trust anchors\&.
.RE
.PP
.SS "void hx509_verify_attach_revoke (hx509_verify_ctx ctx, hx509_revoke_ctx revoke_ctx)"
-.PP
-Attach an revocation context to the verfication context, , makes an reference to the revoke context, so the consumer can free the revoke context independent of the destruction of the verification context. If there is no revoke context, the verification process is NOT going to check any verification status.
+Attach an revocation context to the verfication context, , makes an reference to the revoke context, so the consumer can free the revoke context independent of the destruction of the verification context\&. If there is no revoke context, the verification process is NOT going to check any verification status\&.
.PP
\fBParameters:\fP
.RS 4
-\fIctx\fP a verification context.
+\fIctx\fP a verification context\&.
.br
-\fIrevoke_ctx\fP a revoke context.
+\fIrevoke_ctx\fP a revoke context\&.
.RE
.PP
.SS "void hx509_verify_destroy_ctx (hx509_verify_ctx ctx)"
-.PP
-Free an hx509 verification context.
+Free an hx509 verification context\&.
.PP
\fBParameters:\fP
.RS 4
-\fIctx\fP the context to be freed.
+\fIctx\fP the context to be freed\&.
.RE
.PP
.SS "int hx509_verify_init_ctx (hx509_context context, hx509_verify_ctx * ctx)"
-.PP
-Allocate an verification context that is used fo control the verification process.
+Allocate an verification context that is used fo control the verification process\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIctx\fP returns a pointer to a hx509_verify_ctx object.
+\fIctx\fP returns a pointer to a hx509_verify_ctx object\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "int hx509_verify_path (hx509_context context, hx509_verify_ctx ctx, hx509_cert cert, hx509_certs pool)"
-.PP
-Build and verify the path for the certificate to the trust anchor specified in the verify context. The path is constructed from the certificate, the pool and the trust anchors.
+Build and verify the path for the certificate to the trust anchor specified in the verify context\&. The path is constructed from the certificate, the pool and the trust anchors\&.
.PP
\fBParameters:\fP
.RS 4
-\fIcontext\fP A hx509 context.
+\fIcontext\fP A hx509 context\&.
.br
-\fIctx\fP A hx509 verification context.
+\fIctx\fP A hx509 verification context\&.
.br
-\fIcert\fP the certificate to build the path from.
+\fIcert\fP the certificate to build the path from\&.
.br
-\fIpool\fP A keyset of certificates to build the chain from.
+\fIpool\fP A keyset of certificates to build the chain from\&.
.RE
.PP
\fBReturns:\fP
.RS 4
-An hx509 error code, see \fBhx509_get_error_string()\fP.
+An hx509 error code, see \fBhx509_get_error_string()\fP\&.
.RE
.PP
.SS "void hx509_verify_set_max_depth (hx509_verify_ctx ctx, unsigned int max_depth)"
-.PP
-Set the maximum depth of the certificate chain that the path builder is going to try.
+Set the maximum depth of the certificate chain that the path builder is going to try\&.
.PP
\fBParameters:\fP
.RS 4
\fIctx\fP a verification context
.br
-\fImax_depth\fP maxium depth of the certificate chain, include trust anchor.
+\fImax_depth\fP maxium depth of the certificate chain, include trust anchor\&.
.RE
.PP
.SS "void hx509_verify_set_proxy_certificate (hx509_verify_ctx ctx, int boolean)"
-.PP
Allow or deny the use of proxy certificates
.PP
\fBParameters:\fP
.RS 4
\fIctx\fP a verification context
.br
-\fIboolean\fP if non zero, allow proxy certificates.
+\fIboolean\fP if non zero, allow proxy certificates\&.
.RE
.PP
.SS "void hx509_verify_set_strict_rfc3280_verification (hx509_verify_ctx ctx, int boolean)"
-.PP
-Select strict RFC3280 verification of certificiates. This means checking key usage on CA certificates, this will make version 1 certificiates unuseable.
+Select strict RFC3280 verification of certificiates\&. This means checking key usage on CA certificates, this will make version 1 certificiates unuseable\&.
.PP
\fBParameters:\fP
.RS 4
\fIctx\fP a verification context
.br
-\fIboolean\fP if non zero, use strict verification.
+\fIboolean\fP if non zero, use strict verification\&.
.RE
.PP
.SS "void hx509_verify_set_time (hx509_verify_ctx ctx, time_t t)"
-.PP
-Set the clock time the the verification process is going to use. Used to check certificate in the past and future time. If not set the current time will be used.
+Set the clock time the the verification process is going to use\&. Used to check certificate in the past and future time\&. If not set the current time will be used\&.
.PP
\fBParameters:\fP
.RS 4
-\fIctx\fP a verification context.
+\fIctx\fP a verification context\&.
.br
-\fIt\fP the time the verifiation is using.
+\fIt\fP the time the verifiation is using\&.
.RE
.PP
+.SH "Author"
+.PP
+Generated automatically by Doxygen for Heimdalx509library from the source code\&.
diff --git a/doc/doxyout/hx509/man/man3/page_ca.3 b/doc/doxyout/hx509/man/man3/page_ca.3
index 3e95714fa174..55dbbf4c88a3 100644
--- a/doc/doxyout/hx509/man/man3/page_ca.3
+++ b/doc/doxyout/hx509/man/man3/page_ca.3
@@ -1,6 +1,6 @@
-.TH "page_ca" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_ca" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_ca \- Hx509 CA functions
-See the library functions here: \fBhx509 CA functions\fP
+page_caHx509 CA functions
+ \- See the library functions here: \fBhx509 CA functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_cert.3 b/doc/doxyout/hx509/man/man3/page_cert.3
index e0b1b345b196..965b541bfa09 100644
--- a/doc/doxyout/hx509/man/man3/page_cert.3
+++ b/doc/doxyout/hx509/man/man3/page_cert.3
@@ -1,10 +1,10 @@
-.TH "page_cert" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_cert" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_cert \- The basic certificate
-The basic hx509 cerificate object in hx509 is hx509_cert. The hx509_cert object is representing one X509/PKIX certificate and associated attributes; like private key, friendly name, etc.
+page_certThe basic certificate
+ \- The basic hx509 cerificate object in hx509 is hx509_cert\&. The hx509_cert object is representing one X509/PKIX certificate and associated attributes; like private key, friendly name, etc\&.
.PP
-A hx509_cert object is usully found via the keyset interfaces (\fBCertificate store operations\fP), but its also possible to create a certificate directly from a parsed object with \fBhx509_cert_init()\fP and \fBhx509_cert_init_data()\fP.
+A hx509_cert object is usully found via the keyset interfaces (\fBCertificate store operations\fP), but its also possible to create a certificate directly from a parsed object with \fBhx509_cert_init()\fP and \fBhx509_cert_init_data()\fP\&.
.PP
See the library functions here: \fBhx509 certificate functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_cms.3 b/doc/doxyout/hx509/man/man3/page_cms.3
index c8090e03cf4b..00050995d35d 100644
--- a/doc/doxyout/hx509/man/man3/page_cms.3
+++ b/doc/doxyout/hx509/man/man3/page_cms.3
@@ -1,18 +1,18 @@
-.TH "page_cms" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_cms" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_cms \- CMS/PKCS7 message functions.
-CMS is defined in RFC 3369 and is an continuation of the RSA Labs standard PKCS7. The basic messages in CMS is
+page_cmsCMS/PKCS7 message functions\&.
+ \- CMS is defined in RFC 3369 and is an continuation of the RSA Labs standard PKCS7\&. The basic messages in CMS is
.PP
.IP "\(bu" 2
SignedData Data signed with private key (RSA, DSA, ECDSA) or secret (symmetric) key
.IP "\(bu" 2
EnvelopedData Data encrypted with private key (RSA)
.IP "\(bu" 2
-EncryptedData Data encrypted with secret (symmetric) key.
+EncryptedData Data encrypted with secret (symmetric) key\&.
.IP "\(bu" 2
-ContentInfo Wrapper structure including type and data.
+ContentInfo Wrapper structure including type and data\&.
.PP
.PP
See the library functions here: \fBhx509 CMS/pkcs7 functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_env.3 b/doc/doxyout/hx509/man/man3/page_env.3
index 5b323242c9a4..e56ed7b6af71 100644
--- a/doc/doxyout/hx509/man/man3/page_env.3
+++ b/doc/doxyout/hx509/man/man3/page_env.3
@@ -1,6 +1,6 @@
-.TH "page_env" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_env" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_env \- Hx509 enviroment functions
-See the library functions here: \fBhx509 enviroment functions\fP
+page_envHx509 environment functions
+ \- See the library functions here: \fBhx509 environment functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_error.3 b/doc/doxyout/hx509/man/man3/page_error.3
index f4381c77e70d..0c73d7777a74 100644
--- a/doc/doxyout/hx509/man/man3/page_error.3
+++ b/doc/doxyout/hx509/man/man3/page_error.3
@@ -1,6 +1,6 @@
-.TH "page_error" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_error" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_error \- Hx509 error reporting functions
-See the library functions here: \fBhx509 error functions\fP
+page_errorHx509 error reporting functions
+ \- See the library functions here: \fBhx509 error functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_keyset.3 b/doc/doxyout/hx509/man/man3/page_keyset.3
index c1d78ee2dce1..8156a2d94e20 100644
--- a/doc/doxyout/hx509/man/man3/page_keyset.3
+++ b/doc/doxyout/hx509/man/man3/page_keyset.3
@@ -1,17 +1,17 @@
-.TH "page_keyset" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_keyset" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_keyset \- Certificate store operations
-Type of certificates store:
+page_keysetCertificate store operations
+ \- Type of certificates store:
.IP "\(bu" 2
-MEMORY In memory based format. Doesnt support storing.
+MEMORY In memory based format\&. Doesnt support storing\&.
.IP "\(bu" 2
-FILE FILE supports raw DER certicates and PEM certicates. When PEM is used the file can contain may certificates and match private keys. Support storing the certificates. DER format only supports on certificate and no private key.
+FILE FILE supports raw DER certicates and PEM certicates\&. When PEM is used the file can contain may certificates and match private keys\&. Support storing the certificates\&. DER format only supports on certificate and no private key\&.
.IP "\(bu" 2
-PEM-FILE Same as FILE, defaulting to PEM encoded certificates.
+PEM-FILE Same as FILE, defaulting to PEM encoded certificates\&.
.IP "\(bu" 2
-PEM-FILE Same as FILE, defaulting to DER encoded certificates.
+PEM-FILE Same as FILE, defaulting to DER encoded certificates\&.
.IP "\(bu" 2
PKCS11
.IP "\(bu" 2
@@ -19,7 +19,7 @@ PKCS12
.IP "\(bu" 2
DIR
.IP "\(bu" 2
-KEYCHAIN Apple Mac OS X KeyChain backed keychain object.
+KEYCHAIN Apple Mac OS X KeyChain backed keychain object\&.
.PP
.PP
See the library functions here: \fBhx509 certificate store functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_lock.3 b/doc/doxyout/hx509/man/man3/page_lock.3
index bdc7f5bc9934..bd81a8f3135a 100644
--- a/doc/doxyout/hx509/man/man3/page_lock.3
+++ b/doc/doxyout/hx509/man/man3/page_lock.3
@@ -1,6 +1,6 @@
-.TH "page_lock" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_lock" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_lock \- Locking and unlocking certificates and encrypted data.
-See the library functions here: \fBhx509 lock functions\fP
+page_lockLocking and unlocking certificates and encrypted data\&.
+ \- See the library functions here: \fBhx509 lock functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_name.3 b/doc/doxyout/hx509/man/man3/page_name.3
index 7a8aaad92e1d..a43eeb17ffb9 100644
--- a/doc/doxyout/hx509/man/man3/page_name.3
+++ b/doc/doxyout/hx509/man/man3/page_name.3
@@ -1,18 +1,18 @@
-.TH "page_name" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_name" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_name \- PKIX/X.509 Names
-There are several names in PKIX/X.509, GeneralName and Name.
+page_namePKIX/X\&.509 Names
+ \- There are several names in PKIX/X\&.509, GeneralName and Name\&.
.PP
-A Name consists of an ordered list of Relative Distinguished Names (RDN). Each RDN consists of an unordered list of typed strings. The types are defined by OID and have long and short description. For example id-at-commonName (2.5.4.3) have the long name CommonName and short name CN. The string itself can be of several encoding, UTF8, UTF16, Teltex string, etc. The type limit what encoding should be used.
+A Name consists of an ordered list of Relative Distinguished Names (RDN)\&. Each RDN consists of an unordered list of typed strings\&. The types are defined by OID and have long and short description\&. For example id-at-commonName (2\&.5\&.4\&.3) have the long name CommonName and short name CN\&. The string itself can be of several encoding, UTF8, UTF16, Teltex string, etc\&. The type limit what encoding should be used\&.
.PP
-GeneralName is a broader nametype that can contains al kind of stuff like Name, IP addresses, partial Name, etc.
+GeneralName is a broader nametype that can contains al kind of stuff like Name, IP addresses, partial Name, etc\&.
.PP
-Name is mapped into a hx509_name object.
+Name is mapped into a hx509_name object\&.
.PP
-Parse and string name into a hx509_name object with \fBhx509_parse_name()\fP, make it back into string representation with \fBhx509_name_to_string()\fP.
+Parse and string name into a hx509_name object with \fBhx509_parse_name()\fP, make it back into string representation with \fBhx509_name_to_string()\fP\&.
.PP
-Name string are defined rfc2253, rfc1779 and X.501.
+Name string are defined rfc2253, rfc1779 and X\&.501\&.
.PP
See the library functions here: \fBhx509 name functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_peer.3 b/doc/doxyout/hx509/man/man3/page_peer.3
index 555f8c6e5f66..0c9ff824273d 100644
--- a/doc/doxyout/hx509/man/man3/page_peer.3
+++ b/doc/doxyout/hx509/man/man3/page_peer.3
@@ -1,8 +1,8 @@
-.TH "page_peer" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_peer" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_peer \- Hx509 crypto selecting functions
-Peer info structures are used togeter with hx509_crypto_select() to select the best avaible crypto algorithm to use.
+page_peerHx509 crypto selecting functions
+ \- Peer info structures are used togeter with hx509_crypto_select() to select the best avaible crypto algorithm to use\&.
.PP
See the library functions here: \fBhx509 certificate selecting functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_print.3 b/doc/doxyout/hx509/man/man3/page_print.3
index 4827596576bf..3f1a5f2cb990 100644
--- a/doc/doxyout/hx509/man/man3/page_print.3
+++ b/doc/doxyout/hx509/man/man3/page_print.3
@@ -1,6 +1,6 @@
-.TH "page_print" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_print" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_print \- Hx509 printing functions
-See the library functions here: \fBhx509 printing functions\fP
+page_printHx509 printing functions
+ \- See the library functions here: \fBhx509 printing functions\fP
diff --git a/doc/doxyout/hx509/man/man3/page_revoke.3 b/doc/doxyout/hx509/man/man3/page_revoke.3
index 62236acfefc8..33dd9a9d1821 100644
--- a/doc/doxyout/hx509/man/man3/page_revoke.3
+++ b/doc/doxyout/hx509/man/man3/page_revoke.3
@@ -1,10 +1,10 @@
-.TH "page_revoke" 3 "11 Jan 2012" "Version 1.5.2" "Heimdalx509library" \" -*- nroff -*-
+.TH "page_revoke" 3 "Fri Dec 8 2017" "Version 7.5.0" "Heimdalx509library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
-page_revoke \- Revocation methods
-There are two revocation method for PKIX/X.509: CRL and OCSP. Revocation is needed if the private key is lost and stolen. Depending on how picky you are, you might want to make revocation for destroyed private keys too (smartcard broken), but that should not be a problem.
+page_revokeRevocation methods
+ \- There are two revocation method for PKIX/X\&.509: CRL and OCSP\&. Revocation is needed if the private key is lost and stolen\&. Depending on how picky you are, you might want to make revocation for destroyed private keys too (smartcard broken), but that should not be a problem\&.
.PP
-CRL is a list of certifiates that have expired.
+CRL is a list of certifiates that have expired\&.
.PP
-OCSP is an online checking method where the requestor sends a list of certificates to the OCSP server to return a signed reply if they are valid or not. Some services sends a OCSP reply as part of the hand-shake to make the revoktion decision simpler/faster for the client.
+OCSP is an online checking method where the requestor sends a list of certificates to the OCSP server to return a signed reply if they are valid or not\&. Some services sends a OCSP reply as part of the hand-shake to make the revoktion decision simpler/faster for the client\&.
diff --git a/doc/doxyout/hx509/manpages b/doc/doxyout/hx509/manpages
index 6c621d2482a2..9bbb49a96237 100644
--- a/doc/doxyout/hx509/manpages
+++ b/doc/doxyout/hx509/manpages
@@ -1,172 +1,173 @@
-hx509/man/man3/hx509.3
-hx509/man/man3/hx509_bitstring_print.3
-hx509/man/man3/hx509_ca.3
-hx509/man/man3/hx509_ca_sign.3
-hx509/man/man3/hx509_ca_sign_self.3
-hx509/man/man3/hx509_ca_tbs_add_crl_dp_uri.3
-hx509/man/man3/hx509_ca_tbs_add_eku.3
-hx509/man/man3/hx509_ca_tbs_add_san_hostname.3
-hx509/man/man3/hx509_ca_tbs_add_san_jid.3
-hx509/man/man3/hx509_ca_tbs_add_san_ms_upn.3
-hx509/man/man3/hx509_ca_tbs_add_san_otherName.3
-hx509/man/man3/hx509_ca_tbs_add_san_pkinit.3
-hx509/man/man3/hx509_ca_tbs_add_san_rfc822name.3
-hx509/man/man3/hx509_ca_tbs_free.3
-hx509/man/man3/hx509_ca_tbs_init.3
-hx509/man/man3/hx509_ca_tbs_set_ca.3
-hx509/man/man3/hx509_ca_tbs_set_domaincontroller.3
-hx509/man/man3/hx509_ca_tbs_set_notAfter.3
-hx509/man/man3/hx509_ca_tbs_set_notAfter_lifetime.3
-hx509/man/man3/hx509_ca_tbs_set_notBefore.3
+hx509/man/man3/hx509_clear_error_string.3
hx509/man/man3/hx509_ca_tbs_set_proxy.3
-hx509/man/man3/hx509_ca_tbs_set_serialnumber.3
-hx509/man/man3/hx509_ca_tbs_set_spki.3
-hx509/man/man3/hx509_ca_tbs_set_subject.3
-hx509/man/man3/hx509_ca_tbs_set_template.3
-hx509/man/man3/hx509_ca_tbs_set_unique.3
-hx509/man/man3/hx509_ca_tbs_subject_expand.3
-hx509/man/man3/hx509_ca_tbs_template_units.3
-hx509/man/man3/hx509_cert.3
-hx509/man/man3/hx509_cert_binary.3
-hx509/man/man3/hx509_cert_check_eku.3
-hx509/man/man3/hx509_cert_cmp.3
hx509/man/man3/hx509_cert_find_subjectAltName_otherName.3
-hx509/man/man3/hx509_cert_free.3
+hx509/man/man3/hx509_env_free.3
+hx509/man/man3/hx509_validate_cert.3
+hx509/man/man3/hx509_get_error_string.3
+hx509/man/man3/hx509_xfree.3
+hx509/man/man3/hx509_set_error_string.3
+hx509/man/man3/hx509_env_lfind.3
+hx509/man/man3/hx509_crl_lifetime.3
+hx509/man/man3/hx509_cert_init.3
+hx509/man/man3/hx509_verify_attach_anchors.3
+hx509/man/man3/hx509_revoke.3
+hx509/man/man3/hx509_certs_add.3
+hx509/man/man3/hx509_cert_get_notAfter.3
+hx509/man/man3/hx509_set_error_stringv.3
hx509/man/man3/hx509_cert_get_attribute.3
+hx509/man/man3/hx509_print.3
+hx509/man/man3/hx509_ca_tbs_set_signature_algorithm.3
hx509/man/man3/hx509_cert_get_base_subject.3
-hx509/man/man3/hx509_cert_get_friendly_name.3
-hx509/man/man3/hx509_cert_get_issuer.3
-hx509/man/man3/hx509_cert_get_issuer_unique_id.3
-hx509/man/man3/hx509_cert_get_notAfter.3
-hx509/man/man3/hx509_cert_get_notBefore.3
-hx509/man/man3/hx509_cert_get_serialnumber.3
-hx509/man/man3/hx509_cert_get_SPKI.3
-hx509/man/man3/hx509_cert_get_SPKI_AlgorithmIdentifier.3
-hx509/man/man3/hx509_cert_get_subject.3
-hx509/man/man3/hx509_cert_get_subject_unique_id.3
-hx509/man/man3/hx509_cert_init.3
+hx509/man/man3/hx509_query_match_cmp_func.3
+hx509/man/man3/hx509_context_free.3
+hx509/man/man3/page_revoke.3
+hx509/man/man3/hx509_ci_print_names.3
+hx509/man/man3/hx509_cms_unenvelope.3
+hx509/man/man3/hx509_env_find_binding.3
+hx509/man/man3/page_lock.3
+hx509/man/man3/hx509_context_set_missing_revoke.3
+hx509/man/man3/hx509_verify_set_strict_rfc3280_verification.3
+hx509/man/man3/hx509_verify_hostname.3
hx509/man/man3/hx509_cert_init_data.3
-hx509/man/man3/hx509_cert_keyusage_print.3
-hx509/man/man3/hx509_cert_ref.3
-hx509/man/man3/hx509_cert_set_friendly_name.3
-hx509/man/man3/hx509_certs_add.3
-hx509/man/man3/hx509_certs_append.3
-hx509/man/man3/hx509_certs_end_seq.3
-hx509/man/man3/hx509_certs_filter.3
-hx509/man/man3/hx509_certs_find.3
-hx509/man/man3/hx509_certs_free.3
+hx509/man/man3/hx509_cert_get_notBefore.3
+hx509/man/man3/hx509_cms_envelope_1.3
+hx509/man/man3/hx509_peer_info_alloc.3
+hx509/man/man3/hx509_ca_tbs_set_notAfter.3
+hx509/man/man3/hx509_name_is_null_p.3
hx509/man/man3/hx509_certs_info.3
+hx509/man/man3/hx509_cert_get_issuer_unique_id.3
hx509/man/man3/hx509_certs_init.3
-hx509/man/man3/hx509_certs_iter_f.3
-hx509/man/man3/hx509_certs_merge.3
-hx509/man/man3/hx509_certs_next_cert.3
+hx509/man/man3/hx509_name_binary.3
+hx509/man/man3/hx509_peer_info_set_cert.3
+hx509/man/man3/hx509_ca_tbs_add_san_pkinit.3
+hx509/man/man3/hx509_cert_keyusage_print.3
+hx509/man/man3/hx509_revoke_add_ocsp.3
+hx509/man/man3/hx509_cms_wrap_ContentInfo.3
+hx509/man/man3/hx509_env_find.3
+hx509/man/man3/hx509_unparse_der_name.3
+hx509/man/man3/hx509_ca_tbs_init.3
+hx509/man/man3/hx509_cert_get_subject.3
hx509/man/man3/hx509_certs_start_seq.3
-hx509/man/man3/hx509_certs_store.3
-hx509/man/man3/hx509_ci_print_names.3
-hx509/man/man3/hx509_clear_error_string.3
-hx509/man/man3/hx509_cms.3
-hx509/man/man3/hx509_cms_create_signed_1.3
-hx509/man/man3/hx509_cms_envelope_1.3
-hx509/man/man3/hx509_cms_unenvelope.3
-hx509/man/man3/hx509_cms_unwrap_ContentInfo.3
+hx509/man/man3/hx509_print_cert.3
hx509/man/man3/hx509_cms_verify_signed.3
-hx509/man/man3/hx509_cms_wrap_ContentInfo.3
-hx509/man/man3/hx509_context_free.3
-hx509/man/man3/hx509_context_init.3
-hx509/man/man3/hx509_context_set_missing_revoke.3
-hx509/man/man3/hx509_crl_add_revoked_certs.3
-hx509/man/man3/hx509_crl_alloc.3
+hx509/man/man3/hx509_ca_tbs_set_notBefore.3
hx509/man/man3/hx509_crl_free.3
-hx509/man/man3/hx509_crl_lifetime.3
-hx509/man/man3/hx509_crl_sign.3
-hx509/man/man3/hx509_crypto.3
-hx509/man/man3/hx509_env.3
-hx509/man/man3/hx509_env_add.3
-hx509/man/man3/hx509_env_add_binding.3
-hx509/man/man3/hx509_env_find.3
-hx509/man/man3/hx509_env_find_binding.3
-hx509/man/man3/hx509_env_free.3
-hx509/man/man3/hx509_env_lfind.3
-hx509/man/man3/hx509_err.3
-hx509/man/man3/hx509_error.3
-hx509/man/man3/hx509_free_error_string.3
-hx509/man/man3/hx509_free_octet_string_list.3
-hx509/man/man3/hx509_general_name_unparse.3
-hx509/man/man3/hx509_get_error_string.3
-hx509/man/man3/hx509_get_one_cert.3
-hx509/man/man3/hx509_keyset.3
-hx509/man/man3/hx509_lock.3
-hx509/man/man3/hx509_misc.3
-hx509/man/man3/hx509_name.3
-hx509/man/man3/hx509_name_binary.3
-hx509/man/man3/hx509_name_cmp.3
+hx509/man/man3/hx509_cms_create_signed_1.3
+hx509/man/man3/hx509_certs_store.3
+hx509/man/man3/hx509_validate_ctx_init.3
+hx509/man/man3/hx509_verify_destroy_ctx.3
+hx509/man/man3/page_name.3
+hx509/man/man3/hx509_cert_get_friendly_name.3
+hx509/man/man3/hx509_cert_get_issuer.3
+hx509/man/man3/hx509_revoke_free.3
hx509/man/man3/hx509_name_copy.3
-hx509/man/man3/hx509_name_expand.3
-hx509/man/man3/hx509_name_free.3
-hx509/man/man3/hx509_name_is_null_p.3
-hx509/man/man3/hx509_name_to_Name.3
-hx509/man/man3/hx509_name_to_string.3
-hx509/man/man3/hx509_ocsp_request.3
-hx509/man/man3/hx509_ocsp_verify.3
-hx509/man/man3/hx509_oid_print.3
-hx509/man/man3/hx509_oid_sprint.3
-hx509/man/man3/hx509_parse_name.3
-hx509/man/man3/hx509_peer.3
-hx509/man/man3/hx509_peer_info_add_cms_alg.3
-hx509/man/man3/hx509_peer_info_alloc.3
-hx509/man/man3/hx509_peer_info_free.3
-hx509/man/man3/hx509_peer_info_set_cert.3
-hx509/man/man3/hx509_peer_info_set_cms_algs.3
-hx509/man/man3/hx509_print.3
-hx509/man/man3/hx509_print_cert.3
+hx509/man/man3/hx509_verify_set_proxy_certificate.3
hx509/man/man3/hx509_print_stdout.3
-hx509/man/man3/hx509_query.3
-hx509/man/man3/hx509_query_alloc.3
-hx509/man/man3/hx509_query_free.3
-hx509/man/man3/hx509_query_match_cmp_func.3
-hx509/man/man3/hx509_query_match_eku.3
+hx509/man/man3/hx509_cert_ref.3
+hx509/man/man3/hx509_ca_tbs_set_ca.3
+hx509/man/man3/hx509_verify.3
+hx509/man/man3/hx509_peer_info_free.3
+hx509/man/man3/hx509_cert_get_SPKI_AlgorithmIdentifier.3
hx509/man/man3/hx509_query_match_friendly_name.3
-hx509/man/man3/hx509_query_match_issuer_serial.3
-hx509/man/man3/hx509_query_match_option.3
+hx509/man/man3/page_cms.3
+hx509/man/man3/hx509_oid_sprint.3
+hx509/man/man3/page_ca.3
+hx509/man/man3/hx509_oid_print.3
+hx509/man/man3/page_peer.3
+hx509/man/man3/hx509_cert_get_SPKI.3
hx509/man/man3/hx509_query_statistic_file.3
-hx509/man/man3/hx509_query_unparse_stats.3
-hx509/man/man3/hx509_revoke.3
-hx509/man/man3/hx509_revoke_add_crl.3
-hx509/man/man3/hx509_revoke_add_ocsp.3
-hx509/man/man3/hx509_revoke_free.3
-hx509/man/man3/hx509_revoke_init.3
+hx509/man/man3/hx509_cert.3
+hx509/man/man3/hx509_ca_tbs_add_eku.3
+hx509/man/man3/hx509_ca_sign_self.3
+hx509/man/man3/hx509_ca_tbs_set_notAfter_lifetime.3
+hx509/man/man3/page_error.3
+hx509/man/man3/hx509_ca_tbs_set_unique.3
+hx509/man/man3/hx509_free_error_string.3
+hx509/man/man3/hx509_name_cmp.3
+hx509/man/man3/hx509_query_match_issuer_serial.3
+hx509/man/man3/hx509_ca_tbs_set_domaincontroller.3
+hx509/man/man3/page_env.3
+hx509/man/man3/hx509_ca_tbs_set_subject.3
+hx509/man/man3/hx509_peer_info_set_cms_algs.3
hx509/man/man3/hx509_revoke_ocsp_print.3
-hx509/man/man3/hx509_revoke_verify.3
-hx509/man/man3/hx509_set_error_string.3
-hx509/man/man3/hx509_set_error_stringv.3
-hx509/man/man3/hx509_unparse_der_name.3
-hx509/man/man3/hx509_validate_cert.3
-hx509/man/man3/hx509_validate_ctx_add_flags.3
-hx509/man/man3/hx509_validate_ctx_free.3
-hx509/man/man3/hx509_validate_ctx_init.3
-hx509/man/man3/hx509_validate_ctx_set_print.3
-hx509/man/man3/hx509_verify.3
-hx509/man/man3/hx509_verify_attach_anchors.3
+hx509/man/man3/hx509_ca.3
hx509/man/man3/hx509_verify_attach_revoke.3
-hx509/man/man3/hx509_verify_ctx_f_allow_default_trustanchors.3
-hx509/man/man3/hx509_verify_destroy_ctx.3
-hx509/man/man3/hx509_verify_hostname.3
+hx509/man/man3/hx509_free_octet_string_list.3
hx509/man/man3/hx509_verify_init_ctx.3
+hx509/man/man3/hx509_misc.3
+hx509/man/man3/hx509_certs_next_cert.3
+hx509/man/man3/page_keyset.3
+hx509/man/man3/hx509_query_match_eku.3
hx509/man/man3/hx509_verify_path.3
-hx509/man/man3/hx509_verify_set_max_depth.3
-hx509/man/man3/hx509_verify_set_proxy_certificate.3
-hx509/man/man3/hx509_verify_set_strict_rfc3280_verification.3
-hx509/man/man3/hx509_verify_set_time.3
+hx509/man/man3/hx509_ca_tbs_set_serialnumber.3
+hx509/man/man3/hx509_bitstring_print.3
+hx509/man/man3/hx509_certs_end_seq.3
+hx509/man/man3/hx509_lock.3
+hx509/man/man3/hx509_verify_ctx_f_allow_default_trustanchors.3
+hx509/man/man3/hx509_validate_ctx_free.3
+hx509/man/man3/hx509_keyset.3
+hx509/man/man3/hx509_query_alloc.3
+hx509/man/man3/hx509_query.3
+hx509/man/man3/hx509_revoke_init.3
+hx509/man/man3/hx509_cert_check_eku.3
+hx509/man/man3/hx509.3
+hx509/man/man3/hx509_ca_tbs_free.3
+hx509/man/man3/hx509_query_match_option.3
+hx509/man/man3/hx509_env_add_binding.3
+hx509/man/man3/hx509_cert_get_subject_unique_id.3
+hx509/man/man3/hx509_error.3
+hx509/man/man3/hx509_crl_alloc.3
+hx509/man/man3/hx509_peer_info_add_cms_alg.3
+hx509/man/man3/hx509_crl_sign.3
+hx509/man/man3/hx509_ca_tbs_subject_expand.3
+hx509/man/man3/hx509_cms_unwrap_ContentInfo.3
+hx509/man/man3/hx509_ocsp_request.3
+hx509/man/man3/hx509_validate_ctx_add_flags.3
+hx509/man/man3/hx509_name_free.3
hx509/man/man3/hx509_verify_signature.3
-hx509/man/man3/hx509_xfree.3
-hx509/man/man3/page_ca.3
-hx509/man/man3/page_cert.3
-hx509/man/man3/page_cms.3
-hx509/man/man3/page_env.3
-hx509/man/man3/page_error.3
-hx509/man/man3/page_keyset.3
-hx509/man/man3/page_lock.3
-hx509/man/man3/page_name.3
-hx509/man/man3/page_peer.3
+hx509/man/man3/hx509_ca_tbs_add_crl_dp_uri.3
+hx509/man/man3/hx509_certs_find.3
+hx509/man/man3/hx509_cert_get_serialnumber.3
+hx509/man/man3/hx509_ca_tbs_add_san_jid.3
+hx509/man/man3/hx509_name_expand.3
+hx509/man/man3/hx509_env_add.3
+hx509/man/man3/hx509_certs_append.3
+hx509/man/man3/hx509_certs_filter.3
+hx509/man/man3/hx509_cert_binary.3
hx509/man/man3/page_print.3
-hx509/man/man3/page_revoke.3
+hx509/man/man3/hx509_context_init.3
+hx509/man/man3/page_cert.3
+hx509/man/man3/hx509_name_to_string.3
+hx509/man/man3/hx509_verify_set_max_depth.3
+hx509/man/man3/hx509_peer.3
+hx509/man/man3/hx509_revoke_add_crl.3
+hx509/man/man3/hx509_query_free.3
+hx509/man/man3/hx509_ca_tbs_template_units.3
+hx509/man/man3/hx509_ca_tbs_set_template.3
+hx509/man/man3/hx509_cert_free.3
+hx509/man/man3/hx509_parse_name.3
+hx509/man/man3/hx509_cert_cmp.3
+hx509/man/man3/hx509_get_one_cert.3
+hx509/man/man3/hx509_cert_set_friendly_name.3
+hx509/man/man3/hx509_ca_tbs_set_spki.3
+hx509/man/man3/hx509_validate_ctx_set_print.3
+hx509/man/man3/hx509_crypto.3
+hx509/man/man3/hx509_ocsp_verify.3
+hx509/man/man3/hx509_revoke_verify.3
+hx509/man/man3/hx509_certs_merge.3
+hx509/man/man3/hx509_general_name_unparse.3
+hx509/man/man3/hx509_ca_tbs_add_san_hostname.3
+hx509/man/man3/hx509_name.3
+hx509/man/man3/hx509_ca_sign.3
+hx509/man/man3/hx509_name_to_Name.3
+hx509/man/man3/hx509_cms.3
+hx509/man/man3/hx509_certs_free.3
+hx509/man/man3/hx509_env.3
+hx509/man/man3/hx509_query_unparse_stats.3
+hx509/man/man3/hx509_err.3
+hx509/man/man3/hx509_ca_tbs_add_san_ms_upn.3
+hx509/man/man3/hx509_ca_tbs_add_san_rfc822name.3
+hx509/man/man3/hx509_certs_iter_f.3
+hx509/man/man3/hx509_verify_set_time.3
+hx509/man/man3/hx509_ca_tbs_add_san_otherName.3
+hx509/man/man3/hx509_crl_add_revoked_certs.3