<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://gunkies.org/index.php?action=history&amp;feed=atom&amp;title=Uuencoded</id>
		<title>Uuencoded - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://gunkies.org/index.php?action=history&amp;feed=atom&amp;title=Uuencoded"/>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Uuencoded&amp;action=history"/>
		<updated>2026-05-16T23:07:47Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.30.1</generator>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Uuencoded&amp;diff=19956&amp;oldid=prev</id>
		<title>Jnc: +cat</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Uuencoded&amp;diff=19956&amp;oldid=prev"/>
				<updated>2018-12-16T23:34:26Z</updated>
		
		<summary type="html">&lt;p&gt;+cat&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 23:34, 16 December 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l170&quot; &gt;Line 170:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 170:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category: UNIX Applications]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mediawiki-wiki_:diff:version:1.11a:oldid:10461:newid:19956 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jnc</name></author>	</entry>

	<entry>
		<id>https://gunkies.org/w/index.php?title=Uuencoded&amp;diff=10461&amp;oldid=prev</id>
		<title>Neozeed: I'm tired of looking for this thing, and it's damned handy to have!!!!!</title>
		<link rel="alternate" type="text/html" href="https://gunkies.org/w/index.php?title=Uuencoded&amp;diff=10461&amp;oldid=prev"/>
				<updated>2011-05-05T13:46:04Z</updated>
		
		<summary type="html">&lt;p&gt;I&amp;#039;m tired of looking for this thing, and it&amp;#039;s damned handy to have!!!!!&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This takes a binary file, and converts it to plain text suitable for emailing.&lt;br /&gt;
To convert it back to a binary, run [[uudecode]].&lt;br /&gt;
&lt;br /&gt;
== source ==&lt;br /&gt;
this should build on all kinds of things.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
 * Copyright (c) 1983 Regents of the University of California.&lt;br /&gt;
 * All rights reserved.&lt;br /&gt;
 *&lt;br /&gt;
 * Redistribution and use in source and binary forms are permitted&lt;br /&gt;
 * provided that the above copyright notice and this paragraph are&lt;br /&gt;
 * duplicated in all such forms and that any documentation,&lt;br /&gt;
 * advertising materials, and other materials related to such&lt;br /&gt;
 * distribution and use acknowledge that the software was developed&lt;br /&gt;
 * by the University of California, Berkeley.  The name of the&lt;br /&gt;
 * University may not be used to endorse or promote products derived&lt;br /&gt;
 * from this software without specific prior written permission.&lt;br /&gt;
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR&lt;br /&gt;
 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED&lt;br /&gt;
 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 * Modified 12 April 1990 by Mark Adler for use on MSDOS systems with&lt;br /&gt;
 * Microsoft C and Turbo C.  Standard input problem fixed 29 April 1990&lt;br /&gt;
 * as per suggestion by Steve Harrold.&lt;br /&gt;
 *&lt;br /&gt;
 * Modifed 13 February 1991 by Greg Roelofs for use on VMS systems.&lt;br /&gt;
 * Compile and link normally (but note that the shared-image link option&lt;br /&gt;
 * produces a binary only 6 blocks long, as opposed to the 152-block one&lt;br /&gt;
 * produced by an ordinary link).  To set up the VMS symbol to run the&lt;br /&gt;
 * program (&amp;quot;run uuencode filename1 filename2 filename3&amp;quot; won't work), do:&lt;br /&gt;
 *		uuencode :== &amp;quot;$disk:[directory]uuencode.exe&amp;quot;&lt;br /&gt;
 * and don't forget the leading &amp;quot;$&amp;quot; or it still won't work.  The syntax&lt;br /&gt;
 * differs slightly from the Unix and MS-DOS versions since VMS has such&lt;br /&gt;
 * an awkward approach to redirection; run the program with no arguments&lt;br /&gt;
 * for the usage (or see USAGE below).  The output file is in VMS &amp;quot;stream-&lt;br /&gt;
 * LF&amp;quot; format but should be readable by MAIL, ftp, or anything else.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
#ifndef lint&lt;br /&gt;
static char sccsid[] = &amp;quot;@(#)uuencode.c	5.6 (Berkeley) 7/6/88&amp;quot;;&lt;br /&gt;
#endif /* not lint */&lt;br /&gt;
&lt;br /&gt;
#ifdef __MSDOS__        /* For Turbo C */&lt;br /&gt;
#define MSDOS 1&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 * uuencode [input] output&lt;br /&gt;
 *&lt;br /&gt;
 * Encode a file so it can be mailed to a remote system.&lt;br /&gt;
 */&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#ifdef VMS&lt;br /&gt;
#  define OUT out	/* force user to specify output file */&lt;br /&gt;
#  define NUM_ARGS 3&lt;br /&gt;
#  define USAGE &amp;quot;Usage: uuencode [infile] remotefile uufile\n&amp;quot;&lt;br /&gt;
#  include &amp;lt;types.h&amp;gt;&lt;br /&gt;
#  include &amp;lt;stat.h&amp;gt;&lt;br /&gt;
#else&lt;br /&gt;
#  define OUT stdout	/* Unix, MS-DOS:  anybody with decent redirection */&lt;br /&gt;
#  define NUM_ARGS 2&lt;br /&gt;
#  define USAGE &amp;quot;Usage: uuencode [infile] remotefile\n&amp;quot;&lt;br /&gt;
#  include &amp;lt;sys/types.h&amp;gt;&lt;br /&gt;
#  include &amp;lt;sys/stat.h&amp;gt;&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#if MSDOS&lt;br /&gt;
#include &amp;lt;io.h&amp;gt;&lt;br /&gt;
#include &amp;lt;fcntl.h&amp;gt;&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
/* ENC is the basic 1-character encoding function to make a char printing */&lt;br /&gt;
#define ENC(c) ((c) ? ((c) &amp;amp; 077) + ' ': '`')&lt;br /&gt;
&lt;br /&gt;
main(argc, argv)&lt;br /&gt;
char **argv;&lt;br /&gt;
{&lt;br /&gt;
#ifdef VMS&lt;br /&gt;
	FILE *out;&lt;br /&gt;
#endif&lt;br /&gt;
	FILE *in;&lt;br /&gt;
	struct stat sbuf;&lt;br /&gt;
	int mode;&lt;br /&gt;
&lt;br /&gt;
	/* optional 1st argument */&lt;br /&gt;
	if (argc &amp;gt; NUM_ARGS) {&lt;br /&gt;
		if ((in = fopen(argv[1], &amp;quot;r&amp;quot;)) == NULL) {&lt;br /&gt;
			perror(argv[1]);&lt;br /&gt;
			exit(1);&lt;br /&gt;
		}&lt;br /&gt;
		argv++; argc--;&lt;br /&gt;
	} else&lt;br /&gt;
		in = stdin;&lt;br /&gt;
&lt;br /&gt;
#if MSDOS&lt;br /&gt;
	/* set input file mode to binary for MSDOS systems */&lt;br /&gt;
	setmode(fileno(in), O_BINARY);&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
	if (argc != NUM_ARGS) {&lt;br /&gt;
		fprintf(stderr, USAGE);&lt;br /&gt;
		exit(2);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
#ifdef VMS   /* mandatory 3rd argument is name of uuencoded file */&lt;br /&gt;
	if ((out = fopen(argv[2], &amp;quot;w&amp;quot;)) == NULL) {&lt;br /&gt;
		perror(argv[2]);&lt;br /&gt;
		exit(4);&lt;br /&gt;
	}&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
	/* figure out the input file mode */&lt;br /&gt;
	if (fstat(fileno(in), &amp;amp;sbuf) &amp;lt; 0 || !isatty(fileno(in)))&lt;br /&gt;
		mode = 0666 &amp;amp; ~umask(0666);&lt;br /&gt;
	else&lt;br /&gt;
		mode = sbuf.st_mode &amp;amp; 0777;&lt;br /&gt;
	fprintf(OUT, &amp;quot;begin %o %s\n&amp;quot;, mode, argv[1]);&lt;br /&gt;
&lt;br /&gt;
	encode(in, OUT);&lt;br /&gt;
&lt;br /&gt;
	fprintf(OUT, &amp;quot;end\n&amp;quot;);&lt;br /&gt;
	exit(0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 * copy from in to out, encoding as you go along.&lt;br /&gt;
 */&lt;br /&gt;
encode(in, out)&lt;br /&gt;
register FILE *in;&lt;br /&gt;
register FILE *out;&lt;br /&gt;
{&lt;br /&gt;
	char buf[80];&lt;br /&gt;
	register int i, n;&lt;br /&gt;
&lt;br /&gt;
	for (;;) {&lt;br /&gt;
		/* 1 (up to) 45 character line */&lt;br /&gt;
		n = fread(buf, 1, 45, in);&lt;br /&gt;
		putc(ENC(n), out);&lt;br /&gt;
&lt;br /&gt;
		for (i=0; i&amp;lt;n; i += 3)&lt;br /&gt;
			outdec(&amp;amp;buf[i], out);&lt;br /&gt;
&lt;br /&gt;
		putc('\n', out);&lt;br /&gt;
		if (n &amp;lt;= 0)&lt;br /&gt;
			break;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 * output one group of 3 bytes, pointed at by p, on file f.&lt;br /&gt;
 */&lt;br /&gt;
outdec(p, f)&lt;br /&gt;
register char *p;&lt;br /&gt;
register FILE *f;&lt;br /&gt;
{&lt;br /&gt;
	register int c1, c2, c3, c4;&lt;br /&gt;
&lt;br /&gt;
	c1 = *p &amp;gt;&amp;gt; 2;&lt;br /&gt;
	c2 = (*p &amp;lt;&amp;lt; 4) &amp;amp; 060 | (p[1] &amp;gt;&amp;gt; 4) &amp;amp; 017;&lt;br /&gt;
	c3 = (p[1] &amp;lt;&amp;lt; 2) &amp;amp; 074 | (p[2] &amp;gt;&amp;gt; 6) &amp;amp; 03;&lt;br /&gt;
	c4 = p[2] &amp;amp; 077;&lt;br /&gt;
	putc(ENC(c1), f);&lt;br /&gt;
	putc(ENC(c2), f);&lt;br /&gt;
	putc(ENC(c3), f);&lt;br /&gt;
	putc(ENC(c4), f);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Neozeed</name></author>	</entry>

	</feed>