Modified revamp of the libsmbclient interface.

Derrell Lipman derrell.lipman at unwireduniverse.com
Sat Mar 1 18:27:40 GMT 2008


On Sat, Mar 1, 2008 at 4:08 AM, Volker Lendecke
<Volker.Lendecke at sernet.de> wrote:
> Hi, Derrel!
>
>
> On Fri, Feb 29, 2008 at 01:56:25PM -0500, Derrell Lipman wrote:
>
> > Given the tacit (if that) approval by some people, and clear disapproval by
> > others for my proposed clean-up and reorganization of libsmbclient, I've come
> > up with a slightly different approach.  This commit changes back to the
> > original libsmbclient.h SMBCCTX structure which will maintain ABI
> > compatibility.  I retain, here, the setter and getter functions which all new
> > code should use.  Older programs already compiled should continue to work
> > fine.  Older programs being recompiled will encounter compile-time errors
> > (intentionally!) so that the code can be corrected to use the setter/getter
> > interfaces.
>
> As I said in a former message: Would it be possible to do
> this patch in a way that the old library is still around? I
> would really like to keep that up as is for compatibility
> reasons.
>
> I do see the need that the client libraries need to be
> worked on, but I would like to be kind to our library users.
> At the point when the new library provides new and cool
> features, people will switch themselves because they need
> those.
>
> Volker
>

Hi Volker,

I think you're seriously overestimating the amount of change required
by our library users. :-)  Between the dotted lines, here, is the diff
for 13 of the 16 test programs in examples/libsmbclient:

......................................................................



......................................................................

Yup, that's right.  No changes required to 13 of the 16 test programs.
 Of the other 3, there were only a few lines of changes.

I also just downloaded kde to see the extent of the changes required
there.  Four lines.  That's all.  The changes are, in nearly all
cases, limited to initialization.  There will be a very few
applications that require slightly more change than that, but I really
do expect the changes to be slight, and it should be only very few
apps.

Given the limited amount of change required at the source level, and
the now eliminated need for any change of previously compiled programs
(since it's ABI compatible), I don't think it's necessary nor prudent
to have parallel libraries.  With parallel libraries, neither will get
as much testing as it should.

Cheers,

Derrell

-- 
"There is nothing more difficult to plan, more doubtful of success,
nor more dangerous to manage than the creation of a new system. For
the initiator has the enmity of all who would profit by the
preservation of the old system and merely lukewarm defenders in those
who would gain by the new one." --Machiavelli, 1513


More information about the samba-technical mailing list