[libsmbclient] Windows XP 10 connection limit
Derrell Lipman
derrell.lipman at unwireduniverse.com
Tue Oct 7 02:41:58 GMT 2008
On Mon, Oct 6, 2008 at 4:45 PM, ZeWaren / Erwan Martin <main at zewaren.net>wrote:
> Hi,
> I'm building a small script that scans my local network and lists the files
> located on it.
> I'm using libsmbclient to get the list of shares on each computer.
>
> However, when I scan windows XP computers, I can only open 10 shares on
> them, then I get some 'access denied' errors. I google that problem and
> found out that this limit is normal, ie you can only open 10 connections to
> a windows xp computer.
> Since I only open one share at a time, why am I facing that limit?
>
> I'm using these three functions:
> smbc_init
> smbc_opendir
> smbc_readdir
> smbc_closedir
>
>
> Is there a way for samba not to open a new connection for each share?
> Or is there a way to close a connection manually?
>
Hi Erwan,
If you look in libsmbclient.h, you'll find this:
/**
* Set whether to use the same connection for all shares on a server.
*
* Some Windows versions appear to have a limit to the number
* of concurrent SESSIONs and/or TREE CONNECTions. In
* one-shot programs (i.e. the program runs and then quickly
* ends, thereby shutting down all connections), it is
* probably reasonable to establish a new connection for each
* share. In long-running applications, the limitation can be
* avoided by using only a single connection to each server,
* and issuing a new TREE CONNECT when the share is accessed.
*/
void
smbc_setOptionOneSharePerServer(SMBCCTX *c, smbc_bool b);
If you set this option to true, your problem should go away.
Cheers,
Derrell
More information about the samba-technical
mailing list