[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    kio_smb working! (But...)
From:       Nicolas Brodu <nicolas.brodu () free ! fr>
Date:       2000-02-25 21:24:33
[Download RAW message or body]

Thanks to the great new API, in a couple of hours I wrote the
smb by copying the file slave.
It seems to work locally. I'm not on a LAN anymore so cannot test it further.
It can now use the Samba code as a back-end for doing SMB,
thus being more reliable than the native code (which is still 
there for limited smb support in case Samba isn't present, but 
won't be maintained).

(But...) indeed:

- The Samba libraries are in /usr/local/samba/lib by default, 
and KLibrary cannot load them from here (I tried the -rpath,
and LD_LIBRARY_PATH. See Makefile.am in the small package). So
symlink as root in /usr/local/lib (hack) or add in ldconfig.

- KIO API design: This OpenConnection() function, plus the 
path-on-server argument in all other, is all very well for
ftp, but in the case of smb there might not even be a server! So as in file I
didn't implement OpenConnection(). Problem:
The path argument destroy the first tokens of the URL, supposed to be host,
user, pass... and return only the decoded remaining. What if I want to access a
share with password?
example: smb://:pass@host/share should be a valid URL. And also smb:// for that
matter. Is there a way to obtain the full 
decoded URL in the slave?
For now, just add a foo argument in the url to make it work. That is, try
smb://foo/your_url_here

- User feedback. Ok, I didn't inspect FTP closely. But what is the recommended
way to ask the user for a login/password?

- A few segfaults in konqueror. Didn't have the time to 
investigate the reason why, but seems random and not located
in kio_smb functions themselves (though happening while
browsing over smb)

OK, so here is a recipe for trying this out:
- Download and install samba-tng from your closest mirror of
ftp://samba.org/pub/samba/alpha/. Otherwise, you'll have to 
fall back on native smb code. Make those libraries visible.
- Download and install libsmb++ from 
http://libsmb.sourceforge.net/. For now, it's not included 
in kde cvs as was the case for the old kio_slave.
- Update kdelibs with the small (4670 bytes) bundle
http://nicolas.brodu.free.fr/untgz_me_in_kdelibs.tar.gz
It creates kio/smb/* and add an entry in kdecore/kdebug.areas

Feedback anybody?

Cheers,
Nicolas
-- 
A shortcut is the longest distance between two points. (unknown author)

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic