the client
Andrew Tridgell
tridge at samba.anu.edu.au
Thu Aug 20 02:20:04 GMT 1998
We need to work out what we are going to do about smbclient.
Right now we have several code sets:
1) the head branch. The code is very messy and badly designed but does
generally work. It uses clientutil.c as its "library", although it
does most SMB stuff inline by writing into a packet buffer.
2) the ntdom branch in sambaold. This one was done primarily by
Luke. It is nicely structured. It splits the client code into
sections and uses Lukes varient of clientgen.c. It has the nt rpc
client stuff, which allows you to do all sorts of nice stuff with
pipes. It has not been autoconf converted and many bugs we have
fixed in the main branch are not fixed here.
3) clientgen.c in the head branch. This was my attempt at a set of
basic SMB client functions in a library-like format. All the head
branch client calls are made via this code _except_ for those from
smbclient! My plan at the time was to convert smbclient to use this
code. I never got around to it.
4) the 1.9.18 branch in sambaold. This has some bug fixes from
Richard.
As I see it we have a number of choices:
1) dump the head branch client code and replace it with Lukes
code. This is harder than it sounds because it means reconciling
the differences in clientgen.c between the two versions. It also
means re-fixing all the bugs that have been fixed since the ntdom
split. some cvs history might help with that.
2) convert the head branch to use clientgen.c and do some
restructuring so it becomes maintainable. This means losing the nt
client stuff luke has done.
3) write a new smbclient from scratch.
I think the best option is (1). Anyone else have a suggestion?
Whatever we do it will be quite a lot of work. I started to do (1)
last night but gave up when I realised I couldn't get it done in the
couple of hours I had available. The hard bit is reconciling the
clientgen.c differences.
More information about the samba-technical
mailing list