Assuming I can read the tape, I know I do have a copy of 4.1a distribution on 9-track.

Diomidis is correct, 4.1a use Joy/Cooper/Leffler reimplementation of of the BBN stack, not the original BBN stack. 

The BBN stack (Gurwitz et al) was for 4.1 (and other UNIX and non-Unix systems).   I do not believe I have a copy of that tape.  Rob or maybe Eric Cooper might.

How Sam added the code into the UCB SCCS, I never knew (you can ask him directly, he is still findable these days).   Eric Cooper took the basic BBN distribution and put it on the UCB 4.1 systems around campus >>before<< Joy started the sockets work.   i.e. the installation was done by installing 4.1, then taking the BBN tape and installing it as is. Cooper helped me put it on the CAD machines in Cory Hall circa '81.   I then helped Eric Allmen put it on the Ingres systems (again Cory Hall) shortly thereafter [Please, remember, this was the "official" IP/TCP implementation for UNIX.   Joy's work was an "underground" effort in response to CMU's Accent].



BTW: about 3 years later, the BBN2 stack comes out from Rob and team and it is actually even more interesting; because it now uses the sockets interface (not the Chaosnet/UofI nami trick), and adds a number of both performance enhancements (Van Jacobson's work, etc.) as well as a more complete implementation of the IP stack.   I >>might<< have a copy of that tape squirreled away; but I'll have to look.

On Thu, Dec 1, 2016 at 5:40 AM, Paul Ruizendaal <pnr@planet.nl> wrote:
Hi Diomidis,

Thanks for that link. This is exactly what I'm trying to ascertain, and I'm finding conflicting evidence.
- The socket API was in a state of flux between October '81 and March '82 (when 4.1a was supposedly cut). By March '82 it was mostly there, but not until later in the year did it fully stabilize.
- The BBN stack did not use the sockets API as late as January '82
- What I currently fathom from the SCCS files is that the socket API implementation was hard coded to use the nascent Berkeley stack.
- But the BBN code was likely in the 4.x BSD source tree, outside of SCCS (Berkeley started out with the BBN code, but it morphed quite quickly and drastically)
- In 1985 the BBN code finally enters SCCS (marked 'deprecated'); this code was integrated with the sockets API, and much developed from its 1982 form

Either the below link is correct (and I think I may have contributed to its view in a private mail to Kirk), or there were two different distributions (4.1a BSD with Berkeley network code and 4BSD with BBN network code). The two may have merged into one in peoples' memories: 35 years is a long time. Finding the actual kernel source for the 4.1a distribution could provide clarity on this point.

Perhaps Bill Joy could shed some light on the issue, but I don't have contact details. Having actual source removes all doubt.

Paul


On 1 Dec 2016, at 10:51 , Diomidis Spinellis wrote:

> The best description I could find is the following:
>
> http://minnie.tuhs.org/pipermail/tuhs/2016-September/007417.html
>
> > The 4.1a distribution had the initial socket interface with a
> > prerelease of the BBN TCP/IP under it. There was wide distribution
> > of 4.1a. The 4.1b distribution had the fast filesystem added and
> > a more mature socket interface (notably the listen/accept model
> > added by Sam Leffler).
>
> Diomidis
>
> On 01/12/2016 10:30, Paul Ruizendaal wrote:
>>
>> Hi,
>>
>> I'm trying to find out exactly what was in the 4.1a BSD distribution, as far as the kernel is concerned. The image in the CSRG archive comes from a tape that had a hard read error and does not include any kernel sources. Some of the kernel files were already covered by SCCS around that time, but not everything. My main focus is to understand tcp/ip networking in 4.1a and whether the kernel could be built with either the Berkeley or the BBN network stack.
>>
>> Does anybody know where I could find a full set of kernel sources for the 4.1a BSD kernel?
>>
>> Many thanks in advance!
>>
>> Paul
>>
>