Commit Graph

191 Commits

Author SHA1 Message Date
markm ba361ec27c More help for alpha WARNS=2. This code is, erm, unusual. Anyone who
feels like rewriting it will meet no objection from me.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@87267 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-12-03 12:16:40 +00:00
markm 0efd3a3530 help the alphas out with the WARNS=2 stuff.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@87266 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-12-03 12:13:18 +00:00
markm a88d48b9df Damn. The previous mega-commit was incomplete WRT ANSIfication. This
fixes that.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@87155 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-11-30 22:28:07 +00:00
markm a033672a04 Forced commit.
This file was taken from the Heimdal implementation of Kerberos 5, done
by KTH.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@87140 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-11-30 21:09:11 +00:00
markm 820d180830 Very large style makeover.
1) ANSIfy.
2) Clean up ifdefs so that
   a) ones that never/always apply are appropriately either
      fully removed, or just the #if junk is removed.
   b) change #if defined(FOO) for appropiate values of FOO.
      (currently AUTHENTICATION and ENCRYPTION)
3) WARNS=2 fixing
4) GC other unused stuff

This code can now be unifdef(1)ed to make non-crypto telnet.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@87139 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-11-30 21:06:38 +00:00
nsayer 3352bb6256 Sheldon asked me to make a note of the Message-ID of the e-mail from
Dave approving the copyright statement.

The message was like this:

Date: Mon, 29 Oct 2001 13:18:36 -0500
From: David Safford <safford@watson.ibm.com>
Message-Id: <20011029181842.0DCAAD7C59@safford.watson.ibm.com>
Subject: Re: SRA copyright?
In-Reply-To: Your message of "Mon, 29 Oct 2001 09:13:14 PST."
     <3846.66.126.254.34.1004375594.squirrel@medusa.kfu.com>

looks fine.

dave safford

> >> Some time ago we spoke about SRA and importing it into FreeBSD. I
> >> forgot to ask if you had a prefered license boilerplate for the top of
> >> the files. It has come up recently, and the SRA code in FreeBSD
> >> doesn't have one.
> >>
> >>
> > I really have no preference - use whatever is most convenient in the
> > FreeBSD environment.
> >
> > dave safford
>
> Here is a representative diff. Let me know if you feel any changes are
> necessary.
>
> ===================================================================
> RCS file: /c/ncvs/src/crypto/telnet/libtelnet/pk.h,v
> retrieving revision 1.3
> retrieving revision 1.4

and so on and so on


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@85753 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-10-31 02:04:33 +00:00
jhb 55a105f79b Fix world by trimming an extra comment terminator.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@85703 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-10-29 19:22:38 +00:00
nsayer c28778abe6 Add Berkeley copyright to SRA.
This is by the kind permission of Dave Safford, formerly of TAMU who wrote the
original code. Here is an excerpt of the e-mail exchange concerning this
issue:

Dave Safford wrote:
>Nick Sayer wrote:
>> Some time ago we spoke about SRA and importing it into FreeBSD. I forgot to
>> ask if you had a prefered license boilerplate for the top of the files. It
>> has come up recently, and the SRA code in FreeBSD doesn't have one.

>I really have no preference - use whatever is most convenient in the
>FreeBSD environment.

>dave safford

This is the standard BSD license with clause 3 removed and clause 4
suitably renumbered.

MFC after:	1 day


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@85690 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-10-29 16:12:16 +00:00
markm 5d43639f75 Diff-reduce these two.
Really, one of them needs to disappear. I'll figure out which
later.

Reported by:	bde


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@85600 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-10-27 12:49:19 +00:00
markm 1f6fc161a6 Add __FBSDID() to diff-reduce with "base" telnet.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@84305 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-10-01 16:04:55 +00:00
markm 3efb267b2d Manually unifdef(1) CRAY, UNICOS, hpux and sun uselsess code.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@82497 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-08-29 14:16:17 +00:00
dd ee8be0d9e9 Remove description of an option that only applies to UNICOS < 7.0.
That define may still be present in the source, but I don't think
anyone has plans to try to use it.

Obtained from:	NetBSD


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@82326 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-08-25 21:29:12 +00:00
markm 0fd2377dcc Code merge and diff reduce with "base" telnet. This is the "later"
telnet, so it was treated as the reference code, except where later
commits were made to "base" telnet.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@81965 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-08-20 12:28:40 +00:00
horikawa 65d4fa535a Removal of following export controll related sentences:
o Because of export controls, TELNET ENCRYPT option is not supported outside
  of the United States and Canada.
o Because of export controls, data encryption
  is not supported outside of the United States and Canada.

src/crypto/README revision 1.5 commit log says:
> Crypto sources are no longer export controlled:
> Explain, why crypto sources are still in crypto/.
and actually telnet encryption is used outside of US and Canada now.

Pointed out by: OHSAWA Chitoshi <ohsawa@catv1.ccn-net.ne.jp>
Reviewed by: no objection on doc


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@81665 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-08-15 01:30:25 +00:00
ru 02129244b2 mdoc(7) police: s/BSD/.Bx/ where appropriate.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@81622 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-08-14 10:01:54 +00:00
kris 9de6e7ba10 output_data(), output_datalen() and netflush() didn't actually guarantee
to do what they are supposed to: under some circumstances output data would
be truncated, or the buffer would not actually be flushed (possibly leading
to overflows when the caller assumes the operation succeeded).  Change the
semantics so that these functions ensure they complete the operation before
returning.

Comment out diagnostic code enabled by '-D reports' which causes an
infinite recursion and an eventual crash.

Patch developed with assistance from ru and assar.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@80224 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-07-23 21:52:26 +00:00
ru 2c684cfa07 More potential buffer overflow fixes.
o Fixed `nfrontp' calculations in output_data().  If `remaining' is
  initially zero, it was possible for `nfrontp' to be decremented.

Noticed by:	dillon

o Replaced leaking writenet() with output_datalen():

:  * writenet
:  *
:  * Just a handy little function to write a bit of raw data to the net.
:  * It will force a transmit of the buffer if necessary
:  *
:  * arguments
:  *    ptr - A pointer to a character string to write
:  *    len - How many bytes to write
:  */
: 	void
: writenet(ptr, len)
: 	register unsigned char *ptr;
: 	register int len;
: {
: 	/* flush buffer if no room for new data) */
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
: 	if ((&netobuf[BUFSIZ] - nfrontp) < len) {
: 		/* if this fails, don't worry, buffer is a little big */
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
: 		netflush();
: 	}
:
: 	memmove(nfrontp, ptr, len);
: 	nfrontp += len;
:
: }  /* end of writenet */

What an irony!  :-)

o Optimized output_datalen() a bit.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@80038 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-07-20 12:02:30 +00:00
ru 819182e3f6 vsnprintf() can return a value larger than the buffer size.
Submitted by:	assar
Obtained from:	OpenBSD


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@79992 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-07-19 18:58:31 +00:00
ru b3fb8c9630 Fixed the exploitable remote buffer overflow.
Reported on:	bugtraq
Obtained from:	Heimdal, NetBSD
Reviewed by:	obrien, imp


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@79981 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-07-19 17:48:57 +00:00
ru bcdf745b83 mdoc(7) police: removed HISTORY info from the .Os call.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@79528 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-07-10 10:42:19 +00:00
ru af631c25e4 mdoc(7) police: merge all fixes from non-crypto version.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@79324 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-07-05 14:08:12 +00:00
ru 6024787790 MF non-crypto: 1.13: document -u in usage.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@79323 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-07-05 14:06:27 +00:00
dillon 508568b464 Oops, forgot the 'u' in the getopt for the previous commit.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@77105 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-24 00:14:19 +00:00
dillon c5ebb16d3c A feature to allow one to telnet to a unix domain socket. (MFC from
non-crypto version)

Also update the crypto telnet's man page to reflect other options
ported from the non-crypto version.

Obtained from:   Lyndon Nerenberg <lyndon@orthanc.ab.ca>


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@77095 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-23 22:54:07 +00:00
nsayer 9c526f75a3 Make the PAM user-override actually override the correect thing.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76751 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-17 16:28:11 +00:00
peter b33b21628e Back out last commit. This was already fixed. This should never have
happened, this is why we have commit mail expressly delivered to
committers.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76712 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-17 03:14:42 +00:00
peter 595c1bb3ca Fix the latest telnet breakage. Obviously this was never compiled.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76711 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-17 03:13:00 +00:00
nsayer 7005445e10 Since the root-on-insecure-tty code was added to telnetd, a dependency
on char *line was added to libtelnet. Put a dummy one in to keep the
linker happy.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76697 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-16 20:34:42 +00:00
nsayer 74034d9846 Make sure the protocol actively rejects bad data rather than
(potentially) not responding to an invalid SRA 'auth is' message.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76696 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-16 20:24:58 +00:00
nsayer e7c0163dfe srandomdev() affords us the opportunity to radically improve, and at the
same time simplify, the random number selection code.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76691 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-16 18:32:46 +00:00
nsayer 0a0c02d634 Catch any attempted buffer overflows. The magic numbers in this code
(512) are a little distressing, but the method really needs to be
extended to allow server-supplied DH parameters anyway.

Submitted by:	kris


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76690 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-16 18:27:09 +00:00
nsayer ebece97cb0 Catch malloc return failures. This should help avoid dereferencing NULL on
low-memory situations.

Submitted by:	kris


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76689 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-16 18:17:55 +00:00
peter 8e7393fb93 Hack to work around braindeath in libtelnet:sra.c. The sra.o file
references global variables from telnetd, but is also linked into
telnet as well. I was tempted to back out the last sra.c change
as it is 100% bogus and should be taken out and shot, but for now
this bandaid should get world working again. :-(


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76616 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-15 09:52:03 +00:00
nsayer b482ad5b9e If the uid of the attempted authentication is 0 and if the pty is
insecure, do not succeed. Copied from login.c. This functionality really
should be a PAM module.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76610 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-15 04:47:14 +00:00
nsayer 4213319244 Pointy hat fix -- reapply the SRA PAM patch. To -current this time.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@76339 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-05-07 20:42:02 +00:00
ru ff3aa86c66 mdoc(7) police: removed hard sentence breaks introduced in rev.1.10.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@75465 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-04-13 08:49:52 +00:00
nsayer eca1a06f99 Clean up telnet's argument processing a bit. autologin and encryption is
now the default, so ignore the arguments that turn it on. Add a new -y
argument to turn off encryption in case someone wants to do that. Sync
these changes with the man page (including removing the now obsolete
statement about availability only in the US and Canada).


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@75263 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-04-06 15:56:10 +00:00
nsayer 785ba71778 Reactivate SRA.
Make handling of SIGINT and SIGQUIT follow SIGTSTP in TerminalNewMode().
This allows people to break out of SRA authentication if they wish to.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@75236 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-04-05 14:09:15 +00:00
nsayer 47180006ae Fix core noted in -stable with 'auth disable SRA'.
I just mistakenly commited this to RELENG_4. I have contacted Jordan to see
about how to fix this. Pass the pointy hat.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@74411 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-03-18 09:44:25 +00:00
assar cd5df88636 enable auto-negotiation of encrypt and decrypt
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@74138 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-03-12 03:54:48 +00:00
asmodai ed8b315538 Synch: Add $FreeBSD$.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@72139 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-02-07 21:58:16 +00:00
asmodai 46713b7ae5 Fix typo: compatability -> compatibility.
Compatability is not an existing english word.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@72093 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-02-06 12:05:58 +00:00
asmodai 47df13c3d8 Fix typo: seperate -> separate.
Seperate does not exist in the english language.

Submitted to look at by:	kris


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@72089 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-02-06 10:39:38 +00:00
asmodai 80f3e3bc78 Fix typo: wierd -> weird.
There is no such thing as wierd in the english language.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@72083 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-02-06 09:32:26 +00:00
ru aea25d194d mdoc(7) police: split punctuation characters + misc fixes.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@71899 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-02-01 17:12:45 +00:00
ru 9e4c977b52 Prepare for mdoc(7)NG.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@70890 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2001-01-10 16:51:28 +00:00
assar 40b68302ee (scrub_env): change to only accept a listed set of variables,
including only non-filename contents for TERMCAP


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@69825 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2000-12-10 20:50:20 +00:00
asmodai fe910aa69a Add more environment variables to be filtered through scrub_env().
Synched from normal telnet.


git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@69389 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2000-11-30 13:14:54 +00:00
asmodai e84c612e39 String paranoia fix. Synched from normal telnet.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@69387 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2000-11-30 13:10:01 +00:00
asmodai a352b628e8 String paranoia. Merged from regular telnet.
git-svn-id: http://svn0.us-east.freebsd.org/base/head/contrib/telnet@69384 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
2000-11-30 10:55:25 +00:00