samba netbios / namedpipes domination: a comparison with linu x having a proprietary web server built-in

Luke Kenneth Casson Leighton lkcl at samba-tng.org
Wed Jan 9 17:15:04 GMT 2002


On Wed, Jan 09, 2002 at 02:51:38PM +0100, Jean Francois Micouleau wrote:

> that's your opinion. The fact is that the rpc parser code in samba is
> better than in TNG, it's been like that for more than a year. And the rpc
> server code too, some of us have spend huge quantity of time improving it.
 
 yes, and i have to say, sadly, it's time wasted.

 the point of that code was to find out what was going on.

 it proved the point, and somemadhow it turned into an
 80,000 loc _monster_.

 now, from that, we learned a lot.

 and freedce wasn't anything _like_ as viable an option as it
 was, from when it first came out in 1998 even up until one
 year ago.  i did investigate, back as early as mid-1998,
 because even then, the rpc parsing code was clearly
 getting out of hand.

 now, freedce does a hell of a better job than anything
 that even _i_ could write in a decade of full-time,
 ive-died-and-gone-to-heaven work.

 and it's a far superior job to either TNG _or_ SAMBA's
 parsing and runtime environment support - code [both
 in TNG _and_ SAMBA] which is based 95% on _my_ ideas
 and initiative, i have to add.

 so, i'll say it again: anyone wanting to do hand-coded
 dce/rpc is COMPLETELY MAD.


 now, as andrew says, the freedce option is not really
 appropriate on certain operating systems.  or, more
 specifically:
 
 it needs special circumstances such as inter-process-communication
 with non-threaded services / separate daemons
 to get round the limitations of most posix threading
 libraries not having proper security context support.

 funnily enough, it's ironic that there are special
 circumstances under which a forking model is inappropriate
 and require work-around code to deal with, and
 funnily enough there are special circumstances
 under which a threading model is inappropriate.

 if this was the best of all worlds, we'd use the ASF
 "Apache Portable Runtime" library and the apache
 framework, porting freedce or doing a total new
 rpc-runtime project rewrite, and be done with it.

 but that's a massive job.

 so, swings and roundabouts.  a religious war is
 inappropriate: it's a case-by-case tradeoff that
 needs careful technical analysis of what you want
 to do.

 use the right tools for the right job, iow.



> talking about. Even in native mode, W2K does use RPC.

[jf is correct here: 2000 is just basically a vastly improved
- read, totally rewritten - nt4 dcerpc subsystem plus krb5
plus ldap.  modified ldap.  modified krb5.  *sigh*]





More information about the samba-technical mailing list