Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F110704429
D34933.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
3 KB
Referenced Files
None
Subscribers
None
D34933.diff
View Options
diff --git a/usr.bin/bintrans/Makefile b/usr.bin/bintrans/Makefile
--- a/usr.bin/bintrans/Makefile
+++ b/usr.bin/bintrans/Makefile
@@ -4,7 +4,7 @@
.include <src.opts.mk>
PROG= bintrans
-SRCS= bintrans.c uuencode.c uudecode.c
+SRCS= bintrans.c uuencode.c uudecode.c quoted-printable.c
MAN= bintrans.1 uuencode.format.5
LINKS+= ${BINDIR}/bintrans ${BINDIR}/uuencode
LINKS+= ${BINDIR}/bintrans ${BINDIR}/b64encode
diff --git a/usr.bin/bintrans/bintrans.1 b/usr.bin/bintrans/bintrans.1
--- a/usr.bin/bintrans/bintrans.1
+++ b/usr.bin/bintrans/bintrans.1
@@ -225,6 +225,19 @@
.Nm
is a generic utility that can run
any of the aforementioned encoders and decoders.
+It can also run algorithms that are not available
+through a dedicated program:
+.Pp
+.Nm qp
+is a quoted-printable converter
+and accepts the following options:
+.Bl -tag -width ident
+.It Fl u
+Decode.
+.It Fl o Ar output_file
+Output to
+.Ar output_file
+instead of standard output.
.Sh EXAMPLES
The following example packages up a source tree, compresses it,
uuencodes it and mails it to a user on another system.
diff --git a/usr.bin/bintrans/bintrans.c b/usr.bin/bintrans/bintrans.c
--- a/usr.bin/bintrans/bintrans.c
+++ b/usr.bin/bintrans/bintrans.c
@@ -38,6 +38,7 @@
extern int main_encode(int, char *[]);
extern int main_base64_decode(const char *);
extern int main_base64_encode(const char *, const char *);
+extern int main_quotedprintable(int, char*[]);
static int search(const char *const);
static void usage_base64(bool);
@@ -45,7 +46,7 @@
static void base64_encode_or_decode(int, char *[]);
enum coders {
- uuencode, uudecode, b64encode, b64decode, base64
+ uuencode, uudecode, b64encode, b64decode, base64, qp
};
int
@@ -71,11 +72,15 @@
case base64:
base64_encode_or_decode(argc, argv);
break;
+ case qp:
+ main_quotedprintable(argc, argv);
+ break;
default:
(void)fprintf(stderr,
"usage: %1$s <uuencode | uudecode> ...\n"
" %1$s <b64encode | b64decode> ...\n"
- " %1$s <base64> ...\n",
+ " %1$s <base64> ...\n"
+ " %1$s <qp> ...\n",
progname);
exit(EX_USAGE);
}
@@ -90,7 +95,8 @@
DESIGNATE(uudecode),
DESIGNATE(b64encode),
DESIGNATE(b64decode),
- DESIGNATE(base64)
+ DESIGNATE(base64),
+ DESIGNATE(qp)
};
for (size_t i = 0; i < nitems(known); i++)
diff --git a/usr.bin/bintrans/mmencode.c b/usr.bin/bintrans/quoted-printable.c
rename from usr.bin/bintrans/mmencode.c
rename to usr.bin/bintrans/quoted-printable.c
--- a/usr.bin/bintrans/mmencode.c
+++ b/usr.bin/bintrans/quoted-printable.c
@@ -18,6 +18,8 @@
#include <string.h>
#include <ctype.h>
+extern int main_quotedprintable(int, char *[]);
+
static int
PendingBoundary(char *s, char **Boundaries, int *BoundaryCt)
{
@@ -211,8 +213,15 @@
}
}
+static void
+usage(void)
+{
+ fprintf(stderr,
+ "usage: bintrans qp [-u] [-o outputfile] [file name]\n");
+}
+
int
-main(int argc, char *argv[])
+main_quotedprintable(int argc, char *argv[])
{
int i;
bool encode = true;
@@ -224,7 +233,7 @@
switch (argv[i][1]) {
case 'o':
if (++i >= argc) {
- fprintf(stderr, "mimencode: -o requires a file name.\n");
+ fprintf(stderr, "qp: -o requires a file name.\n");
exit(EXIT_FAILURE);
}
fpo = fopen(argv[i], "w");
@@ -237,8 +246,7 @@
encode = false;
break;
default:
- fprintf(stderr,
- "Usage: mmencode [-u] [-o outputfile] [file name]\n");
+ usage();
exit(EXIT_FAILURE);
}
} else {
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Feb 23, 2:43 AM (4 h, 6 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16786311
Default Alt Text
D34933.diff (3 KB)
Attached To
Mode
D34933: Import a quoted-printable bidirectional converter
Attached
Detach File
Event Timeline
Log In to Comment