I have some questions about telnet/telnetd/libtelnet/tn3270 and why FreeBSD is different than other BSDs in this regard

Paul Seniura pdseniura at techie.com
Thu Mar 11 19:34:19 PST 2004


Hi Alex,

> Dear Paul,
> 
> On Tue, Mar 09, 2004 at 04:43:48PM -0600, Paul Seniura wrote:
> > It seems NetBSD and OpenBSD continue to include
> > telnet+telnetd+tn3270 together under one subdir as part of
> > /src/usr.bin -- but FreeBSD moved only the telnet[d] pieces
> > to /src/contrib/telnet and eliminated the tn3270 pieces completely.
> > 
> > (I haven't dug too deep yet in the libtelnet tree, which is one
> > piece that FreeBSD does retain as other BSDs have it. 
> > But for right now let's stick to the command & daemon parts.)
> > 
> > I'm seriously debating in my head whether FreeBSD should add back
> > the tn3270 pieces to /src/contrib/telnet so that we can match the
> > other BSDs albeit in the 'contrib' subtree.
> 
> I don't understand the word albeit in this line. English is not my
> native language, sorry.

http://dictionary.reference.com/search?q=albeit
:-)

> Why do you want so much for all different groups to be alike?
> 
> It seem to me that differences are natural when you have diffenent
> groups. NetBSD and OpenBSD didn't have ports when FreeBSD started with
> the use of ports. And this now is very succeful. We whould have missed
> this if all we did was be like the others.

Please look at the history of the BSDs. 
The tn3270 command was never in a 'port' to begin with. 
It was meant to be a companion to 'telnet' the command, the
daemon, and its libraries.  They are intertwined.

"The use of ports" has not been successful w/r/t tn3270 itself. 
It STILL will not compile correctly, even today.  It was moved in
order to allow 'world' to compile without problems.  It was moved
*instead* of being fixed.

But the other BSDs have seemingly fixed it, and they left it
inside /src/usr.bin/telnet where it belongs -- looking right now
today at their CVS trees.  (Yes I will do 'diff' between theirs
and ours.)

> I personal feel that getting stuff out of the base system and in to the
> port tree is a good thing if it is posible. This is more modulair and
> thus is much more flexible. I see this as a good thing.
> 
> Why should this ports be in the base system? Just because NetBSD or
> OpenBSD do? FreeBSD is not OpenBSD or NetBSD

I hope this is not too technical:
All BSDs (except for this 'Free' one) presently have tn3270.c
together with telnet.c for reasons that become apparent when
studying how it works and how it is compiled etc.  As they are
presently written, all of telnet[d].c and tn3270.c must use the
same macros and other source files from the same 'level' subdir. 
That means if something changes for the sake of 'telnet', it had
better work with 'tn3270' also.

Putting tn3270 over into a port is a 'Free'BSD-only KLUDGE: look
at its Makefile under /src/ports/net/tn3270.  It was moved from
where it belongs, instead of fixing it to compile and work
properly per current specs -- and today it STILL will not compile
correctly.  Moving it only acted to permit the rest of the base
system ('world') to compile without problems.  Hence I call it a
'kludge' in its present 'Free'BSD-only form.

I was not 'here' back in 1999 when this decision was made.  (See
my reply to Kris, too, please; I show the 'commits' there.)  In
1999, we were using OS/2 which had a fully functional basic
PCom/3270 provided with the o.s. for 'free'. ;)  Now I am trying
to show TPTB how 'free' o.s.+software can be used, and ran into
this stupid kludge almost 5 years too late. :(

By your logic, let's move all of /src/contrib to the appropriate
subdirs under /src/ports and not have a built-in telnet or any
other such command! ;)


  --  thx, Paul Seniura



More information about the freebsd-questions mailing list