Deleted Added
sdiff udiff text old ( 206048 ) new ( 215698 )
full compact
1.\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.07)
2.\"
3.\" Standard preamble:
4.\" ========================================================================
5.de Sp \" Vertical space (when we can't use .PP)
6.if t .sp .5v
7.if n .sp
8..
9.de Vb \" Begin verbatim text
10.ft CW
11.nf
12.ne \\$1
13..
14.de Ve \" End verbatim text
15.ft R
16.fi
17..
18.\" Set up some character translations and predefined strings. \*(-- will
19.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20.\" double quote, and \*(R" will give a right double quote. \*(C+ will
21.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
22.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
23.\" nothing in troff, for use with C<>.
24.tr \(*W-
25.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26.ie n \{\
27. ds -- \(*W-
28. ds PI pi
29. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
31. ds L" ""
32. ds R" ""
33. ds C` ""
34. ds C' ""
35'br\}
36.el\{\
37. ds -- \|\(em\|
38. ds PI \(*p
39. ds L" ``
40. ds R" ''
41'br\}
42.\"
43.\" Escape single quotes in literal strings from groff's Unicode transform.
44.ie \n(.g .ds Aq \(aq
45.el .ds Aq '
46.\"
47.\" If the F register is turned on, we'll generate index entries on stderr for
48.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
49.\" entries marked with X<> in POD. Of course, you'll have to process the
50.\" output yourself in some meaningful fashion.
51.ie \nF \{\
52. de IX
53. tm Index:\\$1\t\\n%\t"\\$2"
54..
55. nr % 0
56. rr F
57.\}
58.el \{\
59. de IX
60..
61.\}
62.\"
63.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
64.\" Fear. Run. Save yourself. No user-serviceable parts.
65. \" fudge factors for nroff and troff
66.if n \{\
67. ds #H 0
68. ds #V .8m
69. ds #F .3m
70. ds #[ \f1

--- 48 unchanged lines hidden (view full) ---

119. ds Th \o'LP'
120. ds ae ae
121. ds Ae AE
122.\}
123.rm #[ #] #H #V #F C
124.\" ========================================================================
125.\"
126.IX Title "BIO_f_base64 3"
127.TH BIO_f_base64 3 "2010-11-16" "0.9.8p" "OpenSSL"
128.\" For nroff, turn off justification. Always turn off hyphenation; it makes
129.\" way too many mistakes in technical documents.
130.if n .ad l
131.nh
132.SH "NAME"
133BIO_f_base64 \- base64 BIO filter
134.SH "SYNOPSIS"
135.IX Header "SYNOPSIS"
136.Vb 2
137\& #include <openssl/bio.h>
138\& #include <openssl/evp.h>
139\&
140\& BIO_METHOD * BIO_f_base64(void);
141.Ve
142.SH "DESCRIPTION"
143.IX Header "DESCRIPTION"
144\&\fIBIO_f_base64()\fR returns the base64 \s-1BIO\s0 method. This is a filter
145\&\s-1BIO\s0 that base64 encodes any data written through it and decodes
146any data read through it.
147.PP
148Base64 BIOs do not support \fIBIO_gets()\fR or \fIBIO_puts()\fR.
149.PP
150\&\fIBIO_flush()\fR on a base64 \s-1BIO\s0 that is being written through is
151used to signal that no more data is to be encoded: this is used
152to flush the final block through the \s-1BIO\s0.
153.PP
154The flag \s-1BIO_FLAGS_BASE64_NO_NL\s0 can be set with \fIBIO_set_flags()\fR
155to encode the data all on one line or expect the data to be all
156on one line.

--- 7 unchanged lines hidden (view full) ---

164.SH "EXAMPLES"
165.IX Header "EXAMPLES"
166Base64 encode the string \*(L"Hello World\en\*(R" and write the result
167to standard output:
168.PP
169.Vb 2
170\& BIO *bio, *b64;
171\& char message[] = "Hello World \en";
172\&
173\& b64 = BIO_new(BIO_f_base64());
174\& bio = BIO_new_fp(stdout, BIO_NOCLOSE);
175\& bio = BIO_push(b64, bio);
176\& BIO_write(bio, message, strlen(message));
177\& BIO_flush(bio);
178\&
179\& BIO_free_all(bio);
180.Ve
181.PP
182Read Base64 encoded data from standard input and write the decoded
183data to standard output:
184.PP
185.Vb 3
186\& BIO *bio, *b64, *bio_out;
187\& char inbuf[512];
188\& int inlen;
189\&
190\& b64 = BIO_new(BIO_f_base64());
191\& bio = BIO_new_fp(stdin, BIO_NOCLOSE);
192\& bio_out = BIO_new_fp(stdout, BIO_NOCLOSE);
193\& bio = BIO_push(b64, bio);
194\& while((inlen = BIO_read(bio, inbuf, 512)) > 0)
195\& BIO_write(bio_out, inbuf, inlen);
196\&
197\& BIO_free_all(bio);
198.Ve
199.SH "BUGS"
200.IX Header "BUGS"
201The ambiguity of \s-1EOF\s0 in base64 encoded data can cause additional
202data following the base64 encoded block to be misinterpreted.
203.PP
204There should be some way of specifying a test that the \s-1BIO\s0 can perform
205to reliably determine \s-1EOF\s0 (for example a \s-1MIME\s0 boundary).
206.SH "SEE ALSO"
207.IX Header "SEE ALSO"
208\&\s-1TBA\s0