1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
5
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
6
<meta name="generator" content="AsciiDoc 8.6.6" />
7
<title>zmq_plain(7)</title>
8
<style type="text/css">
9
/* Shared CSS for AsciiDoc xhtml11 and html5 backends */
13
font-family: Georgia,serif;
17
h1, h2, h3, h4, h5, h6,
18
div.title, caption.title,
19
thead, p.table.header,
21
#author, #revnumber, #revdate, #revremark,
23
font-family: Arial,Helvetica,sans-serif;
27
margin: 1em 5% 1em 5%;
32
text-decoration: underline;
48
h1, h2, h3, h4, h5, h6 {
56
border-bottom: 2px solid silver;
76
border: 1px solid silver;
87
ul > li { color: #aaa; }
88
ul > li > * { color: black; }
102
#revnumber, #revdate, #revremark {
107
border-top: 2px solid silver;
113
padding-bottom: 0.5em;
117
padding-bottom: 0.5em;
122
margin-bottom: 1.5em;
124
div.imageblock, div.exampleblock, div.verseblock,
125
div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
126
div.admonitionblock {
128
margin-bottom: 1.5em;
130
div.admonitionblock {
132
margin-bottom: 2.0em;
137
div.content { /* Block element content. */
141
/* Block element titles. */
142
div.title, caption.title {
147
margin-bottom: 0.5em;
153
td div.title:first-child {
156
div.content div.title:first-child {
159
div.content + div.title {
163
div.sidebarblock > div.content {
165
border: 1px solid #dddddd;
166
border-left: 4px solid #f0f0f0;
170
div.listingblock > div.content {
171
border: 1px solid #dddddd;
172
border-left: 5px solid #f0f0f0;
177
div.quoteblock, div.verseblock {
181
border-left: 5px solid #f0f0f0;
185
div.quoteblock > div.attribution {
190
div.verseblock > pre.content {
191
font-family: inherit;
194
div.verseblock > div.attribution {
198
/* DEPRECATED: Pre version 8.2.7 verse style literal block. */
199
div.verseblock + div.attribution {
203
div.admonitionblock .icon {
207
text-decoration: underline;
209
padding-right: 0.5em;
211
div.admonitionblock td.content {
213
border-left: 3px solid #dddddd;
216
div.exampleblock > div.content {
217
border-left: 3px solid #dddddd;
221
div.imageblock div.content { padding-left: 0; }
222
span.image img { border-style: none; }
223
a.image:visited { color: white; }
227
margin-bottom: 0.8em;
240
list-style-position: outside;
243
list-style-type: decimal;
246
list-style-type: lower-alpha;
249
list-style-type: upper-alpha;
252
list-style-type: lower-roman;
255
list-style-type: upper-roman;
258
div.compact ul, div.compact ol,
259
div.compact p, div.compact p,
260
div.compact div, div.compact div {
262
margin-bottom: 0.1em;
274
margin-bottom: 0.8em;
277
padding-bottom: 15px;
279
dt.hdlist1.strong, td.hdlist1.strong {
285
padding-right: 0.8em;
291
div.hdlist.compact tr {
300
.footnote, .footnoteref {
304
span.footnote, span.footnoteref {
305
vertical-align: super;
309
margin: 20px 0 20px 0;
313
#footnotes div.footnote {
319
border-top: 1px solid silver;
328
padding-right: 0.5em;
329
padding-bottom: 0.3em;
337
#footer-badges { display: none; }
341
margin-bottom: 2.5em;
349
margin-bottom: 0.1em;
352
div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {
369
span.aqua { color: aqua; }
370
span.black { color: black; }
371
span.blue { color: blue; }
372
span.fuchsia { color: fuchsia; }
373
span.gray { color: gray; }
374
span.green { color: green; }
375
span.lime { color: lime; }
376
span.maroon { color: maroon; }
377
span.navy { color: navy; }
378
span.olive { color: olive; }
379
span.purple { color: purple; }
380
span.red { color: red; }
381
span.silver { color: silver; }
382
span.teal { color: teal; }
383
span.white { color: white; }
384
span.yellow { color: yellow; }
386
span.aqua-background { background: aqua; }
387
span.black-background { background: black; }
388
span.blue-background { background: blue; }
389
span.fuchsia-background { background: fuchsia; }
390
span.gray-background { background: gray; }
391
span.green-background { background: green; }
392
span.lime-background { background: lime; }
393
span.maroon-background { background: maroon; }
394
span.navy-background { background: navy; }
395
span.olive-background { background: olive; }
396
span.purple-background { background: purple; }
397
span.red-background { background: red; }
398
span.silver-background { background: silver; }
399
span.teal-background { background: teal; }
400
span.white-background { background: white; }
401
span.yellow-background { background: yellow; }
403
span.big { font-size: 2em; }
404
span.small { font-size: 0.6em; }
406
span.underline { text-decoration: underline; }
407
span.overline { text-decoration: overline; }
408
span.line-through { text-decoration: line-through; }
417
font-family: monospace;
424
margin-bottom: 1.5em;
426
div.tableblock > table {
427
border: 3px solid #527bbd;
429
thead, p.table.header {
436
/* Because the table frame attribute is overriden by CSS in most browsers. */
437
div.tableblock > table[frame="void"] {
440
div.tableblock > table[frame="hsides"] {
441
border-left-style: none;
442
border-right-style: none;
444
div.tableblock > table[frame="vsides"] {
445
border-top-style: none;
446
border-bottom-style: none;
456
font-family: monospace;
463
margin-bottom: 1.5em;
465
thead, p.tableblock.header {
476
border-color: #527bbd;
477
border-collapse: collapse;
479
th.tableblock, td.tableblock {
483
border-color: #527bbd;
486
table.tableblock.frame-topbot {
487
border-left-style: hidden;
488
border-right-style: hidden;
490
table.tableblock.frame-sides {
491
border-top-style: hidden;
492
border-bottom-style: hidden;
494
table.tableblock.frame-none {
495
border-style: hidden;
498
th.tableblock.halign-left, td.tableblock.halign-left {
501
th.tableblock.halign-center, td.tableblock.halign-center {
504
th.tableblock.halign-right, td.tableblock.halign-right {
508
th.tableblock.valign-top, td.tableblock.valign-top {
511
th.tableblock.valign-middle, td.tableblock.valign-middle {
512
vertical-align: middle;
514
th.tableblock.valign-bottom, td.tableblock.valign-bottom {
515
vertical-align: bottom;
526
padding-bottom: 0.5em;
527
border-top: 2px solid silver;
528
border-bottom: 2px solid silver;
533
body.manpage div.sectionbody {
538
body.manpage div#toc { display: none; }
541
<script type="text/javascript">
543
var asciidoc = { // Namespace.
545
/////////////////////////////////////////////////////////////////////
546
// Table Of Contents generator
547
/////////////////////////////////////////////////////////////////////
549
/* Author: Mihai Bazon, September 2002
550
* http://students.infoiasi.ro/~mishoo
552
* Table Of Content generator
555
* Feel free to use this script under the terms of the GNU General Public
556
* License, as long as you do not remove or alter this notice.
559
/* modified by Troy D. Hanson, September 2006. License: GPL */
560
/* modified by Stuart Rackham, 2006, 2009. License: GPL */
563
toc: function (toclevels) {
565
function getText(el) {
567
for (var i = el.firstChild; i != null; i = i.nextSibling) {
568
if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.
570
else if (i.firstChild != null)
576
function TocEntry(el, text, toclevel) {
579
this.toclevel = toclevel;
582
function tocEntries(el, toclevels) {
583
var result = new Array;
584
var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');
585
// Function that scans the DOM tree for header elements (the DOM2
586
// nodeIterator API would be a better technique but not supported by all
588
var iterate = function (el) {
589
for (var i = el.firstChild; i != null; i = i.nextSibling) {
590
if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {
591
var mo = re.exec(i.tagName);
592
if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {
593
result[result.length] = new TocEntry(i, getText(i), mo[1]-1);
603
var toc = document.getElementById("toc");
608
// Delete existing TOC entries in case we're reloading the TOC.
609
var tocEntriesToRemove = [];
611
for (i = 0; i < toc.childNodes.length; i++) {
612
var entry = toc.childNodes[i];
613
if (entry.nodeName == 'div'
614
&& entry.getAttribute("class")
615
&& entry.getAttribute("class").match(/^toclevel/))
616
tocEntriesToRemove.push(entry);
618
for (i = 0; i < tocEntriesToRemove.length; i++) {
619
toc.removeChild(tocEntriesToRemove[i]);
622
// Rebuild TOC entries.
623
var entries = tocEntries(document.getElementById("content"), toclevels);
624
for (var i = 0; i < entries.length; ++i) {
625
var entry = entries[i];
626
if (entry.element.id == "")
627
entry.element.id = "_toc_" + i;
628
var a = document.createElement("a");
629
a.href = "#" + entry.element.id;
630
a.appendChild(document.createTextNode(entry.text));
631
var div = document.createElement("div");
633
div.className = "toclevel" + entry.toclevel;
634
toc.appendChild(div);
636
if (entries.length == 0)
637
toc.parentNode.removeChild(toc);
641
/////////////////////////////////////////////////////////////////////
642
// Footnotes generator
643
/////////////////////////////////////////////////////////////////////
645
/* Based on footnote generation code from:
646
* http://www.brandspankingnew.net/archive/2005/07/format_footnote.html
649
footnotes: function () {
650
// Delete existing footnote entries in case we're reloading the footnodes.
652
var noteholder = document.getElementById("footnotes");
656
var entriesToRemove = [];
657
for (i = 0; i < noteholder.childNodes.length; i++) {
658
var entry = noteholder.childNodes[i];
659
if (entry.nodeName == 'div' && entry.getAttribute("class") == "footnote")
660
entriesToRemove.push(entry);
662
for (i = 0; i < entriesToRemove.length; i++) {
663
noteholder.removeChild(entriesToRemove[i]);
666
// Rebuild footnote entries.
667
var cont = document.getElementById("content");
668
var spans = cont.getElementsByTagName("span");
671
for (i=0; i<spans.length; i++) {
672
if (spans[i].className == "footnote") {
674
var note = spans[i].getAttribute("data-note");
676
// Use [\s\S] in place of . so multi-line matches work.
677
// Because JavaScript has no s (dotall) regex flag.
678
note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
680
"[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
681
"' title='View footnote' class='footnote'>" + n + "</a>]";
682
spans[i].setAttribute("data-note", note);
684
noteholder.innerHTML +=
685
"<div class='footnote' id='_footnote_" + n + "'>" +
686
"<a href='#_footnoteref_" + n + "' title='Return to text'>" +
687
n + "</a>. " + note + "</div>";
688
var id =spans[i].getAttribute("id");
689
if (id != null) refs["#"+id] = n;
693
noteholder.parentNode.removeChild(noteholder);
695
// Process footnoterefs.
696
for (i=0; i<spans.length; i++) {
697
if (spans[i].className == "footnoteref") {
698
var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");
699
href = href.match(/#.*/)[0]; // Because IE return full URL.
702
"[<a href='#_footnote_" + n +
703
"' title='View footnote' class='footnote'>" + n + "</a>]";
709
install: function(toclevels) {
712
function reinstall() {
713
asciidoc.footnotes();
715
asciidoc.toc(toclevels);
719
function reinstallAndRemoveTimer() {
720
clearInterval(timerId);
724
timerId = setInterval(reinstall, 500);
725
if (document.addEventListener)
726
document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);
728
window.onload = reinstallAndRemoveTimer;
736
<body class="manpage">
739
zmq_plain(7) Manual Page
742
<div class="sectionbody">
744
clear-text authentication
750
<h2 id="_synopsis">SYNOPSIS</h2>
751
<div class="sectionbody">
752
<div class="paragraph"><p>The PLAIN mechanism defines a simple username/password mechanism that
753
lets a server authenticate a client. PLAIN makes no attempt at security
754
or confidentiality. It is intended for use on internal networks where
755
security requirements are low. The PLAIN mechanism is defined by this
756
document: <a href="http://rfc.zeromq.org/spec:24">http://rfc.zeromq.org/spec:24</a>.</p></div>
760
<h2 id="_usage">USAGE</h2>
761
<div class="sectionbody">
762
<div class="paragraph"><p>To use PLAIN, the server shall set the ZMQ_PLAIN_SERVER option, and the
763
client shall set the ZMQ_PLAIN_USERNAME and ZMQ_PLAIN_PASSWORD socket
764
options. Which peer binds, and which connects, is not relevant.</p></div>
768
<h2 id="_see_also">SEE ALSO</h2>
769
<div class="sectionbody">
770
<div class="paragraph"><p><a href="zmq_setsockopt.html">zmq_setsockopt(3)</a>
771
<a href="zmq_null.html">zmq_null(7)</a>
772
<a href="zmq_curve.html">zmq_curve(7)</a>
773
<a href="zmq.html">zmq(7)</a></p></div>
777
<h2 id="_authors">AUTHORS</h2>
778
<div class="sectionbody">
779
<div class="paragraph"><p>This page was written by the ØMQ community. To make a change please
780
read the ØMQ Contribution Policy at <a href="http://www.zeromq.org/docs:contributing">http://www.zeromq.org/docs:contributing</a>.</p></div>
784
<div id="footnotes"><hr /></div>
786
<div id="footer-text">
788
Last updated 2013-11-13 18:57:50 CET