The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled?
@ 2019-04-19  1:54 reed
  2019-04-19  2:38 ` Warner Losh
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: reed @ 2019-04-19  1:54 UTC (permalink / raw)
  To: tuhs

This email is two parts. I am researching 1970's symbolic name to 
network address mapping routines.

1) I am looking for parsers for ancient (pre mid 1982) HOSTS.TXT. Since 
this is Unix list, for Unix is fine :)

RFC 597 (12 December 1973) says a hostname list will be maintained at 
the NIC with the location to be announced. (Interestingly NIC as in 
FEINLER@NIC is probably a nickname as it is not listed in the host 
status list. I am guessing it is a nickname for SRI-ARC or OFFICE-1.)

RFC 606 (December 1973) says there are different hosts lists, but "now"
there is "the official list of host names". It proposed that it should 
be maintained online in machine-readable form. It proposes a format and 
suggested attributes.

RFC 607 (January 10, 1974) the NIC agrees that NIC maintain a text file 
of hostnames, addresses, and attributes. (It has also been suggested 
separately.) The source is maintained in NLS format with multiple 
attributes. (What is this NLS format?) A program could be written to 
generate a weekly ASCII file. They will write the program and the 
generated file will be at OFFICE-1 (IMP #43?) with pathname of 
<NETINFO>HOSTS.TXT  (It's not Unix. It's TENEX I think. The ">" is the 
directory delimiter, but what is "<"?)

I have found a few copies of a hostname table, like 
https://emaillab.jp/pub/hosts/1974/host_names_1974.pdf and 
https://www.bortzmeyer.org/files/hosts.txt-1982-1.pdf But these don't 
appear to be the machine parseable files as defined in the RFC 608 
format. These are just printed formats. (I have also found many of the 
host status reports.)

Well I cannot find a copy of the HOSTS.TXT file anywhere. I am not 
looking for the RFC 810 (1 March 1982) or later format (which is easily 
found).
http://pdp-10.trailing-edge.com/SRI_NIC_PERM_SRC_3_19910112/01/utility/ps-perm.870103.htm 
may have copies of it (old format is OHOSTS.TXT). But I cannot figure 
out if or where there are individual file downloads there. Any ideas?)

That leads me to my question ... does anyone know where parser code for 
the HOSTS.TXT file is at?

2) I skimmed through some C code (for Unix) for sendmsg, mmdf, srvrftp, 
mailer.c, telnet.c that use /dev/net/ followed by up to 14-character 
hostname. I am trying to find the kernel code or routines that enable 
device driver named with a hostname. Any ideas? (In particular I'd like 
to know how those names map to a remote host's address.)

I am researching 1970's symbolic name to network address mapping 
routines, but the only ones I have found are primitive: Purdue's "modest 
UNIX network" using mx and Berkeley's Berknet (single letter hostnames). 
But both use simple compiled-in name-to-address tables. (The Purdue 
implementation looks interesting as it has some design to connect 
between IMPs too, but I don't see any code for finding IMP numbers via 
names. By the way, their "csh" tool was their "connected shell" to run a 
shell on a remote host. The manual had the list of hostnames in it. See 
the Purdue usenix tape.)

Thanks,

  Jeremy C. Reed

echo 'EhZ[h ^jjf0%%h[[Zc[Z_W$d[j%Xeeai%ZW[ced#]dk#f[d]k_d%' | \
  tr            '#-~'            '\-.-{'


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled?
  2019-04-19  1:54 [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled? reed
@ 2019-04-19  2:38 ` Warner Losh
  2019-04-19  4:03 ` Lars Brinkhoff
  2019-04-19 18:43 ` Clem Cole
  2 siblings, 0 replies; 8+ messages in thread
From: Warner Losh @ 2019-04-19  2:38 UTC (permalink / raw)
  To: Jeremy C. Reed; +Cc: TUHS main list

[-- Attachment #1: Type: text/plain, Size: 1585 bytes --]

Can't help on the main thrust of this, but can answer one question...

On Thu, Apr 18, 2019 at 8:33 PM <reed@reedmedia.net> wrote:

> This email is two parts. I am researching 1970's symbolic name to
> network address mapping routines.
>
> 1) I am looking for parsers for ancient (pre mid 1982) HOSTS.TXT. Since
> this is Unix list, for Unix is fine :)
>
> RFC 597 (12 December 1973) says a hostname list will be maintained at
> the NIC with the location to be announced. (Interestingly NIC as in
> FEINLER@NIC is probably a nickname as it is not listed in the host
> status list. I am guessing it is a nickname for SRI-ARC or OFFICE-1.)
>

NIC is probably what became know as SRI-NIC in latter days. By the time I
joined the internet in the early 80s, SRI-NIC was where you registered your
domain name. I just missed the hostfile by a few years.


> RFC 607 (January 10, 1974) the NIC agrees that NIC maintain a text file
> of hostnames, addresses, and attributes. (It has also been suggested
> separately.) The source is maintained in NLS format with multiple
> attributes. (What is this NLS format?) A program could be written to
> generate a weekly ASCII file. They will write the program and the
> generated file will be at OFFICE-1 (IMP #43?) with pathname of
> <NETINFO>HOSTS.TXT  (It's not Unix. It's TENEX I think. The ">" is the
> directory delimiter, but what is "<"?)
>

It's TENEX or TOPS-20 (they are the same for this purpose). <DIR>FILE.EXT
was the format. This was later extended to <DIR.SUB>FILE.EXT. So the <>
just contain the whole path, separated by dots.

Warner

[-- Attachment #2: Type: text/html, Size: 2232 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled?
  2019-04-19  1:54 [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled? reed
  2019-04-19  2:38 ` Warner Losh
@ 2019-04-19  4:03 ` Lars Brinkhoff
  2019-04-19 11:57   ` ron
  2019-04-19 18:43 ` Clem Cole
  2 siblings, 1 reply; 8+ messages in thread
From: Lars Brinkhoff @ 2019-04-19  4:03 UTC (permalink / raw)
  To: reed; +Cc: tuhs

reed wrote:
> I am researching 1970's symbolic name to network address mapping
> routines.  I am looking for parsers for ancient (pre mid 1982)
> HOSTS.TXT. Since this is Unix list, for Unix is fine :)

I have those routines and parsers for the PDP-10 ITS operating system.
(I will just post this one off-topic message in this thread.)

> Well I cannot find a copy of the HOSTS.TXT file anywhere.  I am not
> looking for the RFC 810 (1 March 1982) or later format (which is
> easily found).

Here is a collection, but most of them are from after that date.

https://github.com/ttkzw/hosts.txt

I was thinking SAIL must have had something, but I don't see any hosts
list from the 70s here:

https://www.saildart.org/[*,NET]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled?
  2019-04-19  4:03 ` Lars Brinkhoff
@ 2019-04-19 11:57   ` ron
  0 siblings, 0 replies; 8+ messages in thread
From: ron @ 2019-04-19 11:57 UTC (permalink / raw)
  To: 'Lars Brinkhoff', reed; +Cc: tuhs

Amusing thing on parsers.    I had written a short C subroutine to eat HOSTS.TXT directly which we used rather than the Berkeley /etc/hosts format.
It presented the same interface to the caller as the Berkeley one.

We found out that when we added a host with a type "68000" that we suddenly broke every straight BSD system.   Apparently, they used a YACC grammar to parse HOSTS.TXT into /etc/hosts and had screwed it up assuming the machine type field (like the hostname) had to begin with a letter.     It didn't help that the machine we added was named "BRL-ZAP."    There was some discussion that we had done this intentionally.    I pointed out that a YACC grammar was way overkill and there must be some existing file on UNIX that has fields separated by colons that there was simpler stuff written to parse 😊    Anyhow, for expedience Jake just added an "MC" on to the machine type to appease the Berkeley toadies.

There was a protocol defined to download the host file which we ran nighly .



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled?
  2019-04-19  1:54 [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled? reed
  2019-04-19  2:38 ` Warner Losh
  2019-04-19  4:03 ` Lars Brinkhoff
@ 2019-04-19 18:43 ` Clem Cole
  2019-04-19 18:54   ` Clem Cole
  2019-04-19 21:52   ` reed
  2 siblings, 2 replies; 8+ messages in thread
From: Clem Cole @ 2019-04-19 18:43 UTC (permalink / raw)
  To: Jeremy C. Reed; +Cc: TUHS main list

[-- Attachment #1: Type: text/plain, Size: 435 bytes --]

On Thu, Apr 18, 2019 at 10:33 PM <reed@reedmedia.net> wrote:

> This email is two parts. I am researching 1970's symbolic name to
> network address mapping routines.
>
> 1) I am looking for parsers for ancient (pre mid 1982) HOSTS.TXT. Since
> this is Unix list, for Unix is fine :)
>
Got to Warren's archives for BSD 4.2 and look for the htable(8) and
gettable(8).  I believe the parsing routines will be in htable(8).
ᐧ

[-- Attachment #2: Type: text/html, Size: 1284 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled?
  2019-04-19 18:43 ` Clem Cole
@ 2019-04-19 18:54   ` Clem Cole
  2019-04-19 21:52   ` reed
  1 sibling, 0 replies; 8+ messages in thread
From: Clem Cole @ 2019-04-19 18:54 UTC (permalink / raw)
  To: Jeremy C. Reed; +Cc: TUHS main list

[-- Attachment #1: Type: text/plain, Size: 1209 bytes --]

Just saw Ron reply, I remember when that happened - (it could have been you
guys) but after we sold our first Masscomp machine to DoD.  We then added a
note in the administrator's guide we saying use MC68000 and that was the
reason.

As Ron said, getting the latest from the NIC was standard, gettable(8) was
often the way you did it.   We have a script on the Masscomp systems called
getmasterhost IIRC that was a little more programmable because so many
customers were not yet on the Internet, most were not yet running BIND or
the equivalent and kept a static master table some where (and we must have
taught them how to so that in the System Managers' guide).
ᐧ

On Fri, Apr 19, 2019 at 2:43 PM Clem Cole <clemc@ccc.com> wrote:

>
>
> On Thu, Apr 18, 2019 at 10:33 PM <reed@reedmedia.net> wrote:
>
>> This email is two parts. I am researching 1970's symbolic name to
>> network address mapping routines.
>>
>> 1) I am looking for parsers for ancient (pre mid 1982) HOSTS.TXT. Since
>> this is Unix list, for Unix is fine :)
>>
> Got to Warren's archives for BSD 4.2 and look for the htable(8) and
> gettable(8).  I believe the parsing routines will be in htable(8).
> ᐧ
>

[-- Attachment #2: Type: text/html, Size: 2866 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled?
  2019-04-19 18:43 ` Clem Cole
  2019-04-19 18:54   ` Clem Cole
@ 2019-04-19 21:52   ` reed
  2019-04-19 22:50     ` Clem Cole
  1 sibling, 1 reply; 8+ messages in thread
From: reed @ 2019-04-19 21:52 UTC (permalink / raw)
  To: TUHS main list

Replying to two messages here:

On Fri, 19 Apr 2019, Lars Brinkhoff wrote:
> Here is a collection, but most of them are from after that date.
> 
> https://github.com/ttkzw/hosts.txt

Thanks. I should have mentioned I looked there. It doesn't have it as 
far as I see. It has the same data for the pre-1982 files I already 
have (but they are not RFC 608 style).

But it was interesting to see the three MIT/Stanford versions. I think 
they have a different format unless I misunderstand. Since I cannot find 
SRI-NIC examples (before RFC 810) I don't know for sure.  
https://github.com/ttkzw/hosts.txt/blob/master/pub/hosts/19830119/HOSTS.TXT

If you can point me to PDP-10 ITS routines, I'd appreciate it.

On Fri, 19 Apr 2019, Clem Cole wrote:
>       1) I am looking for parsers for ancient (pre mid 1982)
...
> Got to Warren's archives for BSD 4.2 and look for the htable(8) and
> gettable(8).? I believe the parsing routines will be in htable(8).

Thanks. I have them already (including 4.1c.2). They are the newer 
format. I had looked at htable before. I just looked at my sccs for it:

MRs:
COMMENTS:
date and time created 82/10/20 21:26:49 by sam

4.1     #ifndef lint
4.1     static char sccsid[] = "@(#)htable.c    4.1 (Berkeley) 10/20/82";
4.1     #endif
4.1     
4.1     /*
4.1      * htable - convert NIC host table into a UNIX format.
4.1      * NIC format is described in RFC 810, 1 March 1982.
4.1      */

I was hoping there was an early revision for previous format there, but 
that is the first revision I see in SCCS.

Thank you for reminding me and thanks for pointing me to gettable. I see 
that is a TCP client implementation of the RFC 811 NIC Internet 
Hostnames Server. Awesome. I will be writing about it.

Just noticed the long-obsolete manpage has an error; it says:

     Gettable is a simple program used to obtain the NIC standard host tables
     from a ``nicname'' server.
...
     Gettable operates by opening a TCP connection to the port indicated in
     the service specification for ``nicname''.

It is not a "nicname" client. It is a RFC 811 "hostnames" client.

The first code before 4.2BSD has:

        sp = getservbyname("nicname", "tcp");

The later code has:
        sp = getservbyname("hostnames", "tcp");

4.1c.2 /etc/services had:

nicname         101/tcp         hostname        # usually from sri-nic

4.2BSD /etc/services had:

whois           43/tcp          nicname

hostnames       101/tcp         hostname        # usually from sri-nic

nicname is RFC 812.

but the manpage never got fixed (well I didn't look after FreeBSD 1.0 
which is the newest version of gettable I have).

I was hoping that gettable(8) had HNAME/HADDR query commands then I 
think it would be a very early network name lookup tool. But it just 
had the ALL support to return entire host table.

Still looking for the pre RFC 810 tables from SRI-NIC ...


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled?
  2019-04-19 21:52   ` reed
@ 2019-04-19 22:50     ` Clem Cole
  0 siblings, 0 replies; 8+ messages in thread
From: Clem Cole @ 2019-04-19 22:50 UTC (permalink / raw)
  To: Jeremy C. Reed; +Cc: TUHS main list

[-- Attachment #1: Type: text/plain, Size: 3777 bytes --]

Frankly, I don't remember what Rob did but you might want to poke around
the BBN archives too which Warren should also have.    Gurwitz might have
written something before the UCB code came about that used ftp.  At CMU we
used rsync between the UNIX boxes for files like the host table, (that
where rsync was originally written for those that's don't know); but how it
was kept up to date from the 10's -- I don't remember.   As Lars said, MIT
would have used ITS as its master before the DNS was birthed, but how the
UNIX boxes got it from there is unknown to me [Noel do you know?].

Clem
ᐧ
ᐧ

On Fri, Apr 19, 2019 at 5:53 PM <reed@reedmedia.net> wrote:

> Replying to two messages here:
>
> On Fri, 19 Apr 2019, Lars Brinkhoff wrote:
> > Here is a collection, but most of them are from after that date.
> >
> > https://github.com/ttkzw/hosts.txt
>
> Thanks. I should have mentioned I looked there. It doesn't have it as
> far as I see. It has the same data for the pre-1982 files I already
> have (but they are not RFC 608 style).
>
> But it was interesting to see the three MIT/Stanford versions. I think
> they have a different format unless I misunderstand. Since I cannot find
> SRI-NIC examples (before RFC 810) I don't know for sure.
> https://github.com/ttkzw/hosts.txt/blob/master/pub/hosts/19830119/HOSTS.TXT
>
> If you can point me to PDP-10 ITS routines, I'd appreciate it.
>
> On Fri, 19 Apr 2019, Clem Cole wrote:
> >       1) I am looking for parsers for ancient (pre mid 1982)
> ...
> > Got to Warren's archives for BSD 4.2 and look for the htable(8) and
> > gettable(8).? I believe the parsing routines will be in htable(8).
>
> Thanks. I have them already (including 4.1c.2). They are the newer
> format. I had looked at htable before. I just looked at my sccs for it:
>
> MRs:
> COMMENTS:
> date and time created 82/10/20 21:26:49 by sam
>
> 4.1     #ifndef lint
> 4.1     static char sccsid[] = "@(#)htable.c    4.1 (Berkeley) 10/20/82";
> 4.1     #endif
> 4.1
> 4.1     /*
> 4.1      * htable - convert NIC host table into a UNIX format.
> 4.1      * NIC format is described in RFC 810, 1 March 1982.
> 4.1      */
>
> I was hoping there was an early revision for previous format there, but
> that is the first revision I see in SCCS.
>
> Thank you for reminding me and thanks for pointing me to gettable. I see
> that is a TCP client implementation of the RFC 811 NIC Internet
> Hostnames Server. Awesome. I will be writing about it.
>
> Just noticed the long-obsolete manpage has an error; it says:
>
>      Gettable is a simple program used to obtain the NIC standard host
> tables
>      from a ``nicname'' server.
> ...
>      Gettable operates by opening a TCP connection to the port indicated in
>      the service specification for ``nicname''.
>
> It is not a "nicname" client. It is a RFC 811 "hostnames" client.
>
> The first code before 4.2BSD has:
>
>         sp = getservbyname("nicname", "tcp");
>
> The later code has:
>         sp = getservbyname("hostnames", "tcp");
>
> 4.1c.2 /etc/services had:
>
> nicname         101/tcp         hostname        # usually from sri-nic
>
> 4.2BSD /etc/services had:
>
> whois           43/tcp          nicname
>
> hostnames       101/tcp         hostname        # usually from sri-nic
>
> nicname is RFC 812.
>
> but the manpage never got fixed (well I didn't look after FreeBSD 1.0
> which is the newest version of gettable I have).
>
> I was hoping that gettable(8) had HNAME/HADDR query commands then I
> think it would be a very early network name lookup tool. But it just
> had the ALL support to return entire host table.
>
> Still looking for the pre RFC 810 tables from SRI-NIC ...
>
>

[-- Attachment #2: Type: text/html, Size: 5540 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2019-04-19 22:52 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-19  1:54 [TUHS] looking for HOSTS.TXT parsers and how is /dev/net/HOSTNAME enabled? reed
2019-04-19  2:38 ` Warner Losh
2019-04-19  4:03 ` Lars Brinkhoff
2019-04-19 11:57   ` ron
2019-04-19 18:43 ` Clem Cole
2019-04-19 18:54   ` Clem Cole
2019-04-19 21:52   ` reed
2019-04-19 22:50     ` Clem Cole

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).