Samba Traffic #27 For 6 Oct 2000

Editor: Zack Brown

By John Quirk  and  Zack Brown

Table Of Contents


Kenneth Topp pointed out in private email that the problem with Red Hat's libraries, covered in Issue #26, Section #4  (25 Sep 2000: 64 Bit Support for Linux) , only existed in the Red Hat 7 beta, not the final release. According to Kenneth, the problem was cleared up before the final release went out. Thanks, Kenneth! I've added a note in that section.

1. Samba Docs In Polish

26 Sep 2000 (2 posts) Subject: "Translation"

Summary By Zack Brown

People: Gerald Carter

In samba-technical, Rafal Szczesniak offered to translate existing Samba docs into Polish, and Gerald Carter replied, "I think that polish speaking people would be very appreciative :-) Keep us updated and someone will help to get your work into the documentation tree." End of thread.

2. Samba As Airplane Reading

26 Sep 2000 (1 post) Subject: "Magazine mention"

Summary By Zack Brown

People: Christopher R. Hertel

In samba-technical, Christopher R. Hertel reported, "The September issue of the TWA in-fligh magazine has an article about Linux, which contains a small paragraph about Samba. Nice to get notice in such a non-tech magazine." There was no reply.

3. Client-Side SMB Implementation

27 Sep 2000 - 29 Sep 2000 (9 posts) Subject: "smb implementation"

Summary By Zack Brown

People: Jeremy AllisonRichard SharpeJelmer FeenstraGerald CarterTim Potter

In samba-technical, Jelmer Feenstra wanted to implement the SMB protocol for a particular client-side application, and asked about the best way to do it. He seemed to recall seeing a library written for that purpose in 1996, but didn't know anything more about it. Jeremy Allison replied:

Look into the code in HEAD in source/libsmb and also the program utils/torture.c which will show you how to use it.

A useful project would be restructuring the source/libsmb code to be independent of Samba.

Richard Sharpe also replied to Jelmer:

Back in 1996 I started a library called SMBlib ... It has been used by a number of other projects now, and I have not kept up with it ...

Perhaps it is time to look at this issue again.

Elsewhere, under the Subject: libsmb in samba-tng () , Jelmer continued:

I've been doing some coding trying to implement smb (clientside) into a test application of my own. This worked quite well with samba-2.0.7, however, this version doesn't build a separate

So I tried samba-tng from CVS, but the functions available in libsmb/ seem to have changed. The main problem I'm dealing with is that smbclient can't list shares of win2000/nt5 systems :( Neither can it connect to a win2000/NT5 system. I was wondering, howcome it is present in 2.0.7 but not in samba-tng ?

Gerald Carter summed up the situation, saying, "TNG has shared libraries. HEAD does not. smbclient has not been updated in TNG since that was not related to the rpc development work." Tim Potter replied:

It's a little bit more complicated than that. There are some questions whether the libtool stuff is the right way to go or not. The whole "let's wrap everything up in a shell script" is pretty ugly.

Making a more or less standalone libsmb could be another interesting project for someone to have a look at. Currently, if you want to use any of the functions in libsmb, you also need PARAM_OBJ, DEBUG_OBJ, UBIQX_OBJ and probably some other random stuff.

Untangling all the coupling between the various samba subsystems would be great for reusing code in other projects.

4. Updates to the 'Using Samba' document

27 Sep 2000 - 2 Oct 2000 (2 posts) Archive Link: "Changes to Using Samba"

Summary By John Quirk

People: Andy OramDavid Collier-BrownJeremy AllisonJohn QuirkUsing Samba

Andy Oram from O'Reilly books posted a huge patch to samba-docs and said:

This message contains changes to changes.

After O'Reilly gave Using Samba to the Samba team, Jeremy Allison, David Collier-Brown, and others have been correcting and updating it. Thanks to everybody who contributed.

Andy went on to say he had downloaded the recent changes and edited them, and asked if folks could please check them for errors.

David Collier-Brown replied "Righto, I will merge them with the ongoing updates on my machine and propose further changes to the list if necessary. "

(ed. [John Quirk] It is nice to see O'Reilly taking an active interest in this document.)

5. Getting familar with Samba source code

27 Sep 2000 - 29 Sep 2000 (10 posts) Archive Link: "HOWTO: get familar with the Samba source code"

Summary By John Quirk

People: Gerald CarterRichard Sharpe

Gerald Carter posted a quick guide where to look for information on samba

for anyone interested in getting up to speed with SMB/CIFS, NetBIOS, MS-RPC, etc... Here's some links to help out. I will add this to the FAQ.

He also suggested the MSDN site (

Richard Sharpe replied " Hmmm, in what ways is NetMon better than Ethereal? I want to make Ethereal the best available :-) "

This then generated a discussion how to get the lastest version of Netmon ( and the best way to add suport for MSRPC to Ethereal.

6. Creating Samba ToDo List

27 Sep 2000 - 29 Sep 2000 (10 posts) Subject: "request for projects ideas for volunteers"

Summary By Zack Brown

People: Gerald CarterTim PotterJean Francois MicouleauMatthew Geddes

Gerald Carter put out a call in samba-technical:

I need to put together a TODO list for volunteers. I have 3 - 4 people so far of ranging skills and experience. What I want to do is to provide a TODO list periodically and help coordinate efforts.

It would be very helpful if we could pinpoint some items that need to be done. Please do not respond with "PDC support" as this type of answer is to broad and needs to broken. For example, these are the kinds of things I'm looking for.


I would like to break this down into at least three categories programming, documentation, and testing. Each category would be further broken down by the amount of time needed (large, medium, small) to complete the task.

I also would like to post some general projects currently underway that people may be interested in pursuing. These may be in the design phase or implementation. Doesn't matter. I think people willing to volunteer will have an easier time by grabbing a piece of functionality and exploring that rather than just diving into 200+ KLOC of code.

Coments, suggestions, and project proposals welcome.

Matthew Geddes volunteered to help code any project that came along, and mentioned that the web site could be brought uptodate. Gerald replied, "The samba web site pages is in CVS. Perhaps we could allow anonymous read-only CVS access to sambaweb in order to make it easier for people to submit patches." And Tim Potter corrected:

You already can:

$ cvs -d login
[enter cvs as password]
$ cvs -z5 -d co sambweb

or check out for more instructions.

Elsewhere, Tim replied to Gerald's initial request:

I think it would be neat to rewrite the debugging system to support a bit more granularity. I.e be able to turn on rpc debugging at level 10, but not have to wade through all the smb packet stuff. Perhaps something like using the top level bits in the DEBUGLEVEL variable to denote a subsystem (rpc, smb, print, whatever). We can even use tridge's tricky message passing code to change subsystems on the fly!

As a programming job, this shouldn't be too hard but it could be tricky categorising the existing debugs.

He also agreed with Matthew, "Most of the docs/textdocs are out of date and could do with some reformatting." Gerald replied, "How do people feel about consolidating the text files into a single HTML-ized version." [...] "I've got volunteers so if we think it would be a good idea, I'll help coordinate it." Tim and Jean Francois Micouleau both suggested YODLizing the docs. As Tim put it, "How about yodlising all the docs and generating text and html versions?"

7. Jerry's ToDo list

28 Sep 2000 - 3 Oct 2000 (49 posts) Archive Link: "TODO list proposal for volunteers"

Summary By John Quirk

People: Gerald CarterMike BrodbeltChristopher R. HertelDavid LeeJeremy AllisonDavid BannonSimo SorceJohn QuirkChris Hertel

Gerald Carter cross posted his todo list on all samba list though most of the discussion took place on Samba Technical ( with some spill over into samba-doc and samba-ntdom

Here is Gerald's List



I will act as the contact point for documentation updates. We have a list named samba-docs that can be used for this purpose. Probably best to coordinate there.

o consolidate the existing text HOWTO's and HTML FAQ's into a single admin guide document. Some of the information is outdated and needs to be filed in the "this used to be true pile" while stuff that is just wrong needs to be thrown out.

All documentation needs to be converted to YODL (it's really easy) for generating HTML, text, etc...

This is a fairly large project and could be distributed among a few people once the initial layout and outline was decided upon.



Jeremy will be the main contact person for this (via the samba-technical list)

o If all goes well, Samba 2.2.0 should be released in beta form next week (first week in Oct) We need volunteers to help with testing, QA, etc... Printing support,locking, ACLs, etc...

The more environments tested, the better quality the final release should be.

Coding Projects


All coding work needs to be coordinated with Jeremy and Andrew at the very least on samba-technical. Don't just start coding and expect patches to automatically be integrated in. Obviously. projects by specific team members, winbind for example, need to be coordinated with those team members in charge.

For those without CVS write access (non-team members), patches should be incremental and in the form of context diffs.

I'm assuming if you want to code, you probably already know how to get the source branches via anonymous CVS. If not, see

o Moving server and client side RPC's back from SAMBA_TNG to HEAD branch one at a time. This can easily be distributes among many people.

Probably best for one person or group to work on a single \PIPE together. Don't be intimidated by this. Just grab a network sniffer and do one RPC at a time.

o design, document, and fix the DEBUG levels in the Samba code. This is a large, tedious project. All proposals for stratifying the debug levels into bitmasks and documenting what should be done at what level should be carried out on samba-technical as we are currently undecided on whether this should actually be carried out.

o Help Tim with back porting the necessary client side RPC's from TNG into HEAD in order to support the new winbind system. Tim can expand on whether this needs to be done by hand or auto-generated code.

o Help Chris Hertel with WINS failover implementation issues

o possible password and group backend API redesign.

This will go hand in hand with the current LDAP endeavors.

o LDAP support to enable Samba to store and access user account information in an AD compatible schema.

o UNICODE support (this is a **big** project)

New project proposals can be voiced on samba-technical.

Thanks for you help.

(ed. [John Quirk] As you can see this is a BIG list)

Mike Brodbelt volunteered do some real world testing, saying, "I run an environment using Samba for printing, serving 12 network connected printers to 50 or so users via LPRng. Clients are NT4, server is currently Linux with Samba 2.0.7. I'd potentially be willing to do some testing on 2.2.0, particularly with regard to the spoolss code."

Kai Blin suggested updating the homepage, which listed an old address for mailing list subscriptions. Gerald replied, "The samba web site is available via anonyous CVS if anyone wants to go through and catch things like this. See but checkout 'sambaweb' instead of samba."

Chris Hertel gave an update on the WINS fallover code " The failover code is actually all written. The issue is simply the workings of the UNICAST_SUBNET. I wanted Jeremy, who wrote that bit, to take a careful look at it." [...] " I don't know what will happen if multiple addresses are listed so I want to work Jeremy to make sure I've caught any problems."

Gerald Carter thanked Chris for the update and asked if it had been documented and offered to help any lose ends.

Chris responed with:

The WINS SERVER parameter may now take a *comma separated* list of DNS names or IP addresses. The first WINS server in the list will be used until a failure is detected (the remote system fails to respond after three retries). If failure is detected then the second is used, and so on until the list is used up and we start over at the beginning.

I fixed a few small problems while doing this. They may rate a mention in the WhatsNew.

- We now do not retry a query if the WINS server responded with an error indicating that it simply doesn't have an answer. Previously, we would retry the query (possibly waiting for the timeout...I can't remember).

- We now cache the IP address of any WINS server that was listed by DNS name. Previously we did a lookup every freaking time.

Simo Sorce put his hand up to volunteer for the passdb enhancement/redesign, and Gerald Carter responded

"We need to re-examine it along side the LDAP work going on. " [...] "I am planning on starting the thread regarding the passdb / groupdb later today with a summary of the existing APIs in HEAD and TNG." David Lee chipped in with a comment about using PAM for authentication.

Chris replied to this " Not all systems that support Samba can support PAM. There are lots of other important authentication mechanisms as well, including RADIUS and Kerberos. Where possible, consider an abstraction layer that doesn't rely on a specific underlying mechanism. "

This started a longish thread discussing the merrits of PAM issues included those of Samba's multi platform status that use hashed passwords.

Gerald Carter stated

The problem with moving from one authentication scheme to another (for example, Kerberos and NIS... now there's a combination for you :) ) is the incompatible encryption algorithms. The only common point they have is plain text. However, the need to support ntlm is so overwhelming, that unless someone can show me an actual way to support all of the authentication and authorization information I need, PAM will have to remain either a compile time option or a plugable backend.

At this point in the discussion, we need code to prove that PAM is able to meet the requirements. Currently I do not believe that it can, but am always willing to eat crow. :-)

and followed up with a later post, " The debate here is whether or not to settle on PAM which as a sole authentication/authorization agent. " At this point the Sub Thread fully mutated into a Thread all on it own.

CVS issues

Jean-Francois suggested though Gerald that devolopers would want subscribe to samba-cvs for the commit logs.

David Lee commented that he had submited a patch for the utmp support and that Jeremy could not get to work with the 2.2.0 branch. Which promted him to ask " If someone's patch fails to apply to the current production release then there is a reasonable expectation for them to fix their patch. But if it does apply cleanly, who is responsible for reconciling it with the emerging next release?"

Gerald Carter replied " This is a tough issue. As code develops, things change. We all know this I realize. Part of the difficulty in software development is ensuring that bugs that were fixed in previous releases don't creep back in due to unapplied patches to the main source tree. " in answer to David lee question "We're hoping that the author of the patch will (what if I said please?) :-) " Jeremy Allison later expanded "The code just got changed between the 2.0.7 and 2.2 releases, sorry. And 2.2.0 will *definately* be the next production release, so patches should currently be made against that branch."

Finally there was a post from David Bannon who asked "At the risk of triggering off another flame war, can we get some guideline as to what the verious versions are planned to do, [2.2.0, Head, 3.0] ? The reason I ask is that I maintain a fairly busy web site ( that tells people how to get the (limited) PDC facilities out of 2.0.7. "

... "My question is will 2.2.0 [] continue in the legecy mode (with regard to seperate daemons, config and support files etc) for PDC or will it do things the TNG way, or another way altogether ??"

He went to state he need this information so that solutions could be planned for win2k issues. Getting win2k to join a samba controlled domain is one.

Gerald Carter replied indirectly:


I have placed some information regarding future development and potential projects at

Of course, this page is mirrored. Look for the "Development" link on your favorite samba mirror.

8. Confusion over the next version of Samba

2 Oct 2000 - 3 Oct 2000 (5 posts) Archive Link: "Next version of Samba ?"

Summary By John Quirk

People: Ulf BertilssonMike BrodbeltJean Francois Micouleau

Ulf Bertilsson ask about the next version of samba

Will it be:

- Samba 2.0.8

- Samba 2.2

- Samba TNG


I'm a bit confused.

Jean Francois Micouleau replied 2.2.0

Mike Brodbelt expanded, "TNG development has now effectively ceased, with the departure of Luke, and there will be no 2.0.8 release, as I understand. "

The end?







Sharon And Joy

Kernel Traffic is grateful to be developed on a computer donated by Professor Greg Benson and Professor Allan Cruse in the Department of Computer Science at the University of San Francisco. This is the same department that invented FlashMob Computing. Kernel Traffic is hosted by the generous folks at All pages on this site are copyright their original authors, and distributed under the terms of the GNU General Public License version 2.0.