[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-devel
Subject: Re: [PATCH] second try at fixing up socklen issues on Solaris
From: Oswald Buddenhagen <ob6 () inf ! tu-dresden ! de>
Date: 2001-04-05 7:44:42
[Download RAW message or body]
> > Actually, this sounds perfect. I hadn't thought of forcing everyone
> > over to int externally instead of socklen_t. I won't get a chance to
> > look at this until at least tomorrow, so if somone else builds a
> > patch, that's fine. It's not complicated, just insidious....
>
> Which is exactly the reason I created the ksocklen_t type in the first
> place. Actually, I didn't want to include sys/socket.h in the code just
> to have socklen_t defined, so I created a type that would be exactly that.
>
why didn't you just use int? ;)
never mind.
> Maybe the problem was making it a typedef instead of #define.
>
i don't think so. this should not matter in the source (except some
possible warnings about type mismatches).
> So, my recommendation is: - use a general type for all KDE exported
> functions, from KExtendedSocket, KSocket, K*SocketAddress and
> KSocks. Should be "int", "unsigned" or a #define'd ksocklen_t
>
i'm voting for unsigned. it's compatible with sizeof() (no gcc warning
...) and it's a primitive type.
> - make sure all our calls to the system functions cast that to
> "ksize_t", which is #define'd to be the third parameter of getsockname()
>
yes, but note, that casting is possible only for values. don't cast
pointers - they need the temporary step i presented in the previous mail.
> And "ksize_t" is a misnomer. It's the one that should be "ksocklen_t",
>
yeah ... :(
> but we can't change that anymore.
>
why? the goal is not to export it. and running a perl -pi on the whole
kde sources is no problem. am i missing something?
> Or it should be "size_t", not the third parameter of getsockname().
>
???
> I don't think typedef is a good alternative anymore because some
> compilers use the new type's name in the mangling of the C++ function,
> while others (like gcc) will use the primitive type.
>
sounds sensible.
best regards
--
Hi! I'm a .signature virus! Copy me into your ~/.signature, please!
--
Nothing is fool-proof to a sufficiently talented fool.
>> Visit http://master.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic