Privatizing 'linc' ...



Hi there,

	So - as I'm working on completing ORBit2's threading support; I keep
wondering why linc was made a public API when it was so half cocked.

	I'd really rather like to privatise linc inside ORBit2; it seems linc
is mentioned (outside of ORBit2 / libbonobo ) in these at-spi and
gnopernicus.

	It seems the single at-spi use in my test can be trivially replaced
with a CORBA_ORB_perform_work - which is what it should have been to
start with.

	The gnopernicus code uses the linc_protocol stuff; although it could
use the (strangely exposed) LINCProtocolInfo method pointers to do this,
it instead hooks internal symbols out of 'linc' to achieve it's
nefarious ends ;-)

	I _believe_ that the new getaddrinfo support in linc should relegate
the problems that this was introduced to solve only to the really truly
broken Solaris versions whereby setting a global variable is/was the
only way to achieve sane gethostbyname behavior.

	So ...

	What do people think ? is this doable ? - it would bring really major
benefits for linc / ORBit2 - and failing moving it inside - it'd
_perhaps_ be best to cast 'linc' adrift as a library, do a sed on linc
and import it into ORBit2 anyway ... so ?

	Thoughts, tears, flamage ? - also privatisation wrests control from
vast, inefficient government stymied, centrally run ...

	Regards,

		Michael.


[ a grep for linc on my machine ]:
./gconf/gconf/gconfd.c:471:/* FIXME this is just paranoia now since we
use linc_get_tmpdir() */

./at-spi/test/test-simple.c:793:                linc_main_iteration
(FALSE);

./gnopernicus/braille/test/remote.c:61:linc_protocol_get_sockaddr (const
LINCProtocolInfo *proto,
./gnopernicus/braille/test/remote.c:501:    proto = linc_protocol_find
(IP_TYPE);
./gnopernicus/braille/test/remote.c:508:    restricted_host = (struct
sockaddrin *) linc_protocol_get_sockaddr (
./gnopernicus/brlmon/tester.c:37:linc_protocol_get_sockaddr (const
LINCProtocolInfo *proto,
./gnopernicus/brlmon/tester.c:157:    proto = linc_protocol_find
(IP_TYPE);
./gnopernicus/brlmon/tester.c:162:    remoteServAddr = (struct
sockaddrin *) linc_protocol_get_sockaddr (
./gnopernicus/srcore/srbrl.c:66:linc_protocol_get_sockaddr (const
LINCProtocolInfo *proto,
./gnopernicus/srcore/srbrl.c:72:linc_protocol_destroy_addr (const
LINCProtocolInfo  *proto,
./gnopernicus/srcore/srbrl.c:300:    remote_proto = linc_protocol_find
(IP_TYPE);
./gnopernicus/srcore/srbrl.c:309:    remote_braille_addr = (struct
sockaddrin *) linc_protocol_get_sockaddr (
./gnopernicus/srcore/srbrl.c:399:    brlmon_proto = linc_protocol_find
(IP_TYPE);
./gnopernicus/srcore/srbrl.c:408:    remote_brlmon_addr = (struct
sockaddrin *) linc_protocol_get_sockaddr (
./gnopernicus/srcore/srbrl.c:471:       linc_protocol_destroy_addr
(brlmon_proto,
./gnopernicus/srcore/srbrl.c:475:       linc_protocol_destroy_addr
(brlmon_proto,
./gnopernicus/srcore/srbrl.c:489:       linc_protocol_destroy_addr
(remote_proto,
./gnopernicus/srcore/srbrl.c:493:       linc_protocol_destroy_addr
(remote_proto,


-- 
 michael@ximian.com  <><, Pseudo Engineer, itinerant idiot




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]