Porting kio-slaves to GnomeVFS modules
Thiago Macieira
thiago.macieira at kdemail.net
Thu Dec 23 01:50:10 GMT 2004
nf wrote:
>One way of doing that would be to write a C++ wrapper on top of the
>Gnome-VFS-module API which acts like the KIO::SlaveBase class.
As I understand it, Gnome-VFS is basically a table of function pointers.
KIO::SlaveBase is just that, though more complex.
You'll need to reimplement the SlaveBase class in order to receive input
from the Gnome-VFS master. However, bear in mind that you must respect
the usual C++ Binary Compatibility guidelines when doing so.
>2) Dependencies to KConfig of certain slaves to store configuration
>data. (smb for instance).
See #5.
>3) Dependencies to Password storage via DCOP. But that's easier to
> solve, because SlaveBase has a well defined API for that purpose.
And ioslaves should be prepared to the case where no storage is available.
>5) Metadata
Metadata and slave configuration are merged into one inside KIOSlaves. You
have two kinds of informations, both provided by the I/O master (i.e.,
ioslaves do not read config files!):
- explicit metadata
information that was explicitly set as metadata by the calling application
- implicit configuration
information read from config file <slavename>rc, composed of a merging of
hostnames and domain names. For instance, UA identifications are stored
in kio_httprc in such a way.
In any event, that information is sent by the calling application to the
ioslave.
>6) "Q"-code inside io-slaves:
>
>Because QT is split into QTCore and QTGui in Qt4 a dependency
>of those modules to QtCore shouldn't be a problem. The GPL license also,
>because the ported slaves link to Qt and Gnome-VFS, and not the other
> way round...
>
>Alternatively KWIG could be used to mimic the "Q" stuff...
The KIOSlaves were designed to be run as out-of-process processes.
Therefore, they do not link to the application code and GPL restrictions
don't apply (IANAL).
That said, we may have to revisit that discussion later as SELinux becomes
more important and rules restricting specific applications should apply
to their network accesses as well, not to ioslaves (or, worse,
"kdeinit").
>Just some thoughts, really don't know if that would make sense...
>
>Norbert
Have you thought about the suggestion people made of unifying the backend
files first (bookmarks, etc.), instead of going to all the trouble of
unifying code?
--
Thiago Macieira - thiago (AT) macieira (DOT) info
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
2. Tó cennan his weorc gearu, ymbe se circolwyrde, wearð se cægbord and se
leohtspeccabord, and þa mýs cómon lator. On þone dæg, he hine reste.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20041222/8fcb1d18/attachment.sig>
More information about the kde-core-devel
mailing list