2002-05-27 Michael Meeks <michael@ximian.com>
* Version 2.4.0
2002-05-27 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_list_zap): unuse the buffer, don't print
a message that we're leaking it.
2002-05-27 Michael Meeks <michael@ximian.com>
* test/everything/client.c (main): re-instate
run_tests [doh] (testIsA): impl. (run_tests): use it.
* src/idl/CORBA/orb.idl: add #pragma prefix.
* src/idl-compiler/orbit-idl-c-common.c
(cc_small_output_itypes): upd.
* src/orb/orb-core/corba-typecode.c
(DEF_TC_BASIC): upd. (void): upd.
* src/orb/orb-core/corba-object.c
(CORBA_Object_is_a): handle omg.org/CORBA/Object
2002-05-27 Michael Meeks <michael@ximian.com>
* test/everything/server.c (TestFactory_noOp): impl.
2002-05-24 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_stub_n): impl. to help bin-compat,
we add this method, and leave 'ORBit_small_invoke_stub'
* src/idl-compiler/orbit-idl-c-stubs.c
(cs_small_output_stub): remove bulky system exception
setting logic.
(cs_small_output_stub): call invoke_stub_n instead, so
we have the method index, so we could do strange, but
index rather than name based associations on methods
later.
* include/orbit/poa/poa-types.h
(ORBIT_STUB_GetEpv): cast to gpointer, to save
huge & ugly cast in the stubs.
* src/orb/orb-core/orbit-object.c
(ORBit_RootObject_shutdown): only dump debug on
exit if we have G_ENABLE_DEBUG.
2002-05-22 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-orb.c
(ORBit_setup_debug_flags): add inproc_traces,
disable fast calls if flag is on.
* include/orbit/orb-core/orbit-small.h: add
ORBIT_SMALL_FAST_LOCALS.
* src/idl-compiler/orbit-idl-marshal.c: update all
the printed strings to 'orbit-idl-2'
* src/idl-compiler/*.c: update all the auto-generated
warnings to a standard define in
* src/idl-compiler/orbit-idl-c-backend.h (OIDL_C_WARNING):
here and version to orbit-idl-2 correctly.
2002-05-24 Richard Kinder <r_kinder@yahoo.com>
* src/orb/orb-core/orbhttp.c: cleanup magic numbers, closes #78938
2002-05-22 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(g_CORBA_Object_hash): don't bother hashing the
profiles they're all the same, and it's theoretically
wrong anyway (cf. equal), use the object key instead,
for a huge reduction in hash collisions.
* src/orb/orb-core/iop-profiles.c (IOP_ObjectKey_hash): impl.
2002-05-21 Michael Meeks <michael@ximian.com>
* include/orbit/orb-core/corba-object-type.h:
move 'orb' down the structure, so that the only bits
the stubs could possibly use are at the end.
2002-05-20 Michael Meeks <michael@ximian.com>
* Version 2.3.110
* prune cleanup from the build, will move to linc.
2002-05-16 Jacob Berkman <jacob@ximian.com>
* src/cleanup/Makefile.am (orbit_cleanup_sockets_LDADD): fix LDADD
var name
2002-05-16 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(orbit_small_demarshal): add a parameter as to
whether we should release the recv buffer.
* src/orb/GIOP/giop-recv-buffer.c (handle_reply):
unuse the async buffer here.
* src/orb/GIOP/giop-connection.c
(giop_connection_dispose): check we don't leak
a pending msg on cnx close.
2002-05-16 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_buffer_unuse): free GIOP_1_0 service
contexts in the same way as GIOP_1_1, that's how we
de-marshal them in giop_recv_buffer_demarshal.
* test/everything/client.c (testMisc): fix leak.
(testMiscUnions): don't dup inArg's string.
don't alloc the inSeq's _buffer, or dup it's string.
2002-05-15 Michael Meeks <michael@ximian.com>
* src/cleanup/Makefile.am,
* src/cleanup/cleanup.c: add.
* configure.in,
* src/Makefile.am: add cleanup.
2002-05-14 Sean Atkinson <sean@cantab.net>
* src/orb/orb-core/orbit-trace.c
(ORBit_trace_value): Replace middle of long strings with dots.
(ORBit_trace_timestamp): Pad microseconds with zeros.
2002-05-13 Michael Meeks <michael@ximian.com>
* Version 2.3.109
2002-05-07 Michael Meeks <michael@ximian.com>
* src/services/name/orbit-name-server.c
(impl_NamingContext_list): re-order to kill swathe of
redundant forward prototypes.
(ORBit_CosNaming_NamingContextExt_create),
(impl_BindingIterator__create): dup the poa ref we hold.
(impl_NamingContextExt__destroy),
(impl_BindingIterator__destroy, impl_BindingIterator__destroy):
don't de-activate ourselves in a finalize method.
2002-05-02 ERDI Gergo <cactus@cactus.rulez.org>
* src/idl-compiler/orbit-idl-c-headers.c (ch_prep_sequence): Cast
return value of _allocbuf method to pointer to member type, to
make typesafe C++ compilers happy
2002-04-23 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/iop-profiles.c:
(CodeSetComponent_demarshal): fix off by one error manifesting
itself with the Java ORB.
2002-04-18 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (async_recv_cb):
handle a NULL callback.
* test/everything/client.c (testMisc): fix
ev mis-direction.
* configure.in (DISABLE_DEPRECATED_CFLAGS): add.
* */Makefile.am: add deprecated cflag guards.
2002-04-15 Michael Meeks <michael@ximian.com>
* Version 2.3.108
2002-04-15 Michael Meeks <michael@ximian.com>
* configure.in: require linc >= 0.1.21
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_adaptor): fix the same bug just
above Gergo's, and just below too - gack.
* test/everything/*: update the sequence tests so
we have longer runs.
2002-04-13 ERDI Gergo <cactus@cactus.rulez.org>
* src/orb/orb-core/orbit-small.c (ORBit_small_invoke_adaptor):
Check for FIXED flag on the argument type and not the method (as
that would be silly:)
2002-04-10 Michael Meeks <michael@ximian.com>
* configure.in: remove poll & basename checks,
socklen_t check, inet_aton check,
we don't need them.
2002-04-09 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-typecode.c (tc_dec):
fix #76777 warning issue.
2002-04-09 Michael Meeks <michael@ximian.com>
* src/orb/util/genrand.c
(genrand_openssl): rename to
(genuid_rand_openssl): this to be consistant and work.
[thanks to Colin Campbell].
2002-04-02 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-orb.c
(shutdown_orb): impl. we need it to close floating UDS.
2002-04-01 Murray Cumming <murrayc@usa.net>
* Added --headerguardprefix option to orbit-idl-2. This allows the
C++ bindings to use generated C bindings which in turn #include
already-generated installed C bindings.
This has already been applied to the cpp branch. Applying it here
should simplify merging.
2002-03-30 ERDI Gergo <cactus@cactus.rulez.org>
* src/idl-compiler/orbit-idl-c-utils.c (cs_small_unflatten_ref):
Explicitly cast array arguments to silence C++ compiler error
messages
2002-03-28 Mark McLoughlin <mark@skynet.ie>
* src/services/name/Makefile.am: link against
dependancies (75709)
2002-03-27 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testMisc): add IOR
stringification roundtrip check.
2002-03-25 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-common.c:
(cc_small_output_itypes): initialise the ORBit_IMethod array
in a friendly way.
2002-03-04 Mark McLoughlin <mark@skynet.ie>
* configure.in: version 2.3.107
2002-03-09 Dou Wen <orbkernel@hotmail.com>
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_msg_reading_body): assert that the buffer is
correctly aligned.
2002-03-20 Gregory Leblanc <gleblanc@linuxweasel.com>
* ORBit.spec.in: Lots of re-writing and such.
* configure.in: Added AC_SUBST for a couple of missing variables
used in the spec file
2002-03-20 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/iop-profiles.c:
(IOP_components_marshal): also marshal the CODE_SETS component
in an encapsulated buffer.
(IOP_TAG_CODE_SETS_demarshal): demarshal it from the
encapsulated buffer.
2002-03-13 Laszlo Peter <laca@ireland.sun.com>
* include/orbit/orb-core/corba-typecode.h: change CORBA_tk_recursive
to unsigned.
* src/orb/orb-core/corba-typecode.c (tc_dec): test the unsigned
lkind instead of kind that can be signed or unsigned on different
platforms.
2002-03-04 Mark McLoughlin <mark@skynet.ie>
* configure.in: version 2.3.106
2002-03-01 jacob berkman <jacob@ximian.com>
* autogen.sh: pass --copy to automake, and pass --include-deps
unless using gcc
2002-03-01 Mark McLoughlin <mark@skynet.ie>
* test/poa/poatest-basic*.c: don't use lovely C99 compliant
structure initialisation .... just to keep forte happy.
2002-03-01 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-headers.c: (ch_output_type_union):
output the enum decl here if need be.
* src/idl-compiler/orbit-idl-c-imodule.c: (cc_small_build_types):
ditto.
* test/everything/everything.idl: add new soup constats and
declare the colour enum in the union decl.
* test/everything/client.c:
(testConst): test the soup consts.
(testIInterface): test the soup and colour typecodes.
(testMiscUnions): update for colour scope change.
* test/everything/unionServer.c: (UnionServer_opMisc): ditto.
2002-02-28 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/orbit-debug.h: fix typo.
2002-02-26 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_list_initial_services): update
assertion to not do an assignment.
2002-02-26 Yanko Kaneti <yaneti@declera.com>
* src/orb/orb-core/orbit-debug.h: handle different
var-arg cases in the parser.
2002-02-24 Sam Couter <scouter@bigpond.net.au>
* Add G_BEGIN_DECLS and G_END_DECLS to installed headers to allow
exported interfaces to be used from C++ code.
2002-02-18 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-common.c:
(cc_small_build_interfaces): don't initialise ai twice.
* docs/FAQ: add bit about refs and giop debugging.
2002-02-11 Mark McLoughlin <mark@skynet.ie>
* configure.in: version 2.3.105
2002-02-08 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-typecode.c:
(orbit_output_tcstruct_anon_sublabels_array): cleanup.
2002-02-06 Michael Meeks <michael@ximian.com>
* src/orb/util/genrand.c
(genuid_rand_device): handle EINTR, EAGAIN,
and short reads.
2002-02-06 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_stub): make trace debugging
more meaningfull in-proc.
2002-02-05 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-object.c
(object_hash_dump): impl.
(ORBit_RootObject_shutdown),
(ORBit_RootObject_init, do_unref): add more verbose
and powerful object debugging.
* src/orb/orb-core/corba-orb.c
(ORBit_setup_debug_flags): add 'refs'
* src/orb/orb-core/orbit-debug.h: fix bitmask cockup.
2002-02-05 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c: (ORBit_value_equivalent):
add union_size to the original pointers.
* test/everything/client.c: (testAnyEquivalence): re-enable
testing this.
2002-02-05 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c: (ORBit_get_union_switch):
don't assume pointers are correctly alligned.
* src/orb/util/genrand.c: (genuid_glib_pseudo): fix silly.
2002-02-04 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-context.c
(ORBit_Context_free_fn): remove ourselves correctly
from the parent.
* test/everything/client.c (testAnyEquivalence):
knobble for now so we pass the tests.
* src/orb/orb-core/corba-any.c: do a proper boolean
compare.
2002-02-02 Michael Meeks <michael@ximian.com>
* Makefile.am (EXTRA_DIST): add Makefile.shared.
2002-02-04 Mark McLoughlin <mark@skynet.ie>
* configure.in: version 2.3.104.
2002-02-04 Shivram U <shivaram.upadhyayula@wipro.com>
reviewed by: Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-demarshal.c:
* src/idl-compiler/orbit-idl-c-marshal.c:
* src/idl-compiler/orbit-idl-c-skelimpl.c:
* src/idl-compiler/orbit-idl-c-stubs.c:
* src/idl-compiler/orbit-idl-c-typecode.c:
* src/idl-compiler/orbit-idl-c-utils.c:
* src/idl-compiler/orbit-idl-utils.c:
* src/orb/orb-core/corba-object.c:
Remove deprecated glib functions.
s/g_string_sprintf/g_string_printf/
s/g_string_sprintfa/g_string_append_printf/
s/g_main_iteration/g_main_context_iteration/.
2002-01-31 Mark McLoughlin <mark@skynet.ie>
* src/orb/GIOP/giop-debug.h: make giop dumping a runtime
debugging option.
* src/orb/GIOP/giop-recv-buffer.c: (giop_recv_msg_reading_body):
use dprintf (GIOP.. instead of giop_dprintf.
* src/orb/orb-core/corba-orb.c: (ORBit_setup_debug_flags):
add ORBIT_DEBUG_GIOP.
* src/orb/orb-core/orbit-debug.h: ditto.
2002-01-30 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-any.h: kill dup_strings
arg from demarshal funcs. Kill duplicated
ORBit_demarshal_value.
* src/orb/GIOP/giop-recv-buffer.c:
(giop_IOP_ServiceContextList_demarshal): upd for dup_strings.
* src/orb/orb-core/corba-any.c:
(ORBit_get_union_tag): kill unused variable.
(ORBit_demarshal_value), (ORBit_demarshal_arg),
(ORBit_demarshal_any): kill dup_strings arg.
* src/orb/orb-core/orbit-small.c:
(ORBit_handle_exception_array): upd for dup_strings.
(ORBit_small_marshal_context): move branch to
(orbit_small_marshal): here. We rarely take this branch, so
lets kill the fuction call overhead for the common case.
(orbit_small_demarshal), (ORBit_small_invoke_adaptor): upd
for dup_strings change.
* test/everything/basicServer.c: (BasicServer_opString),
(BasicServer_opFloat), (BasicServer_opDouble),
(BasicServer_opLongDouble): implement floating point tests.
* test/everything/unionServer.c: (UnionServer_opMisc): impl another
union test.
* test/everything/client.c:
(testConst): test float, double and long double constants.
(testFloat), (testDouble), (testLongDouble): use floating point
tests.
(testMiscUnions): use new union test.
(testAnyException): add output.
(testAnyEquivalence): test ORBit_any_equivalent and ORBit_copy_value
code paths.
(test_BasicServer_opExceptionA): update vtable offset.
(run_tests): run new tests.
* test/everything/constants.h: add floating point constants.
* test/everything/everything.idl: add idl for new tests.
2002-01-29 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-orb.c: clean up.
2002-01-28 Mark McLoughlin <mark@skynet.ie>
* configure.in: version 2.3.103.
2002-01-28 Mark McLoughlin <mark@skynet.ie>
* src/orb/util/genrand.c: (genuid_simple),
(genuid_glib_pseudo): more tweaks.
2002-01-25 Michael Meeks <michael@ximian.com>
* test/everything/client.c (main): upd.
(test_init): test it.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_shutdown, CORBA_ORB_init),
(CORBA_ORB_destroy): count init / destroy pairs
and don't allow people to destroy if someone else
has inited.
2002-01-25 Mark McLoughlin <mark@skynet.ie>
* acinclude.m4: (AC_CHECK_ALIGNOF): error out if an alignment
is found to be zero.
* test/everything/client.c: (make_large_str_seq): fix leak.
2002-01-24 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-typecode.c
(ORBit_TypeCode_free_fn): kill bogus typecode free.
* src/orb/util/genrand.c (ORBit_genuid_init): seed
the random number generator but once.
(genuid_glib_pseudo): use rand more sensibly, use
genuid_simple first.
(genuid_simple): make inc a gulong.
2002-01-22 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-typecode.c
(ORBit_TypeCode_free_f): sublabels isn't an 'any' sequence
anymore.
2002-01-22 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-typecode.h: change the
sublabels member to a CORBA_long *.
* src/idl-compiler/orbit-idl-c-typecode.c:
(orbit_output_tcstruct_anon_sublabels_array),
(orbit_output_tcstruct_sublabels), (cbe_tc_generate):
output the array.
* src/orb/orb-core/corba-any.c: (ORBit_get_union_tag):
simplify the discrim compare.
* src/orb/orb-core/corba-orb.c: (copy_case_value): impl.
(CORBA_ORB_create_union_tc): don't copy the whole any, just
the value.
* src/orb/orb-core/corba-typecode.c: (tc_enc_tk_union),
(tc_dec_tk_union), (typecode_equiv_internal): upd.
2002-01-22 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-utils.c:
(orbit_idl_check_oneway_op): impl to check if oneways have
returns or outs/inouts.
* src/idl-compiler/orbit-idl-c-headers.c:
(ch_output_stub_protos): use.
* test/everything/everything.idl,
test/everything/server.c,
test/everything/client.c: make segv return void.
2002-01-21 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-orb.c:
(ORBit_setup_debug_flags): fix silly so that debug options
in orbitrc works correctly.
2002-01-21 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-any.c
(ORBit_copy_value): tolerate NULL.
* src/orb/orb-core/orbit-small.c
(orbit_small_demarshal): kill warning.
* test/everything/client.c (testMisc): add a check.
2002-01-21 Xiong Jiang <jxiong@offtopic.org>
* src/idl-compiler/orbit-idl-c-stubs.c
(cs_small_output_stub): put the endif in a comment, to
make the preprocessor happy.
2002-01-17 Michael Meeks <michael@ximian.com>
* configure.in: require the new linc with different
protocol structure size.
* test/everything/client.c (main): upd.
2002-01-17 Mark McLoughlin <mark@skynet.ie>
Allow ORBit2 debugging to be switched on/off at runtime.
Based on a patch by Jacob Berkman <jacob@ximian.com>
* configure.in: --enable-debug option.
* src/orb/GIOP/Makefile.am, src/orb/Makefile.am,
src/orb/dynamic/Makefile.am, src/orb/orb-core/Makefile.am,
src/orb/poa/Makefile.am, src/orb/util/Makefile.am:
use ORBIT_DEBUG_CFLAGS.
* src/orb/orb-core/corba-object.c: (g_CORBA_Object_equal),
(ORBit_objref_find), (ORBit_object_get_connection),
(ORBit_marshal_object): upd.
* src/orb/orb-core/corba-orb.c: (ORBit_setup_debug_flags),
(CORBA_ORB_init): add --ORBDebugFlags option and ORBIT2_DEBUG
env variable and parse.
* src/orb/orb-core/orbit-debug.h: kill old debug stuff and
make everything conditional on G_ENABLE_DEBUG.
* src/orb/orb-core/orbit-small.c: (ORBit_handle_exception_array),
(ORBit_small_send_user_exception), (orbit_small_marshal),
(orbit_small_demarshal), (ORBit_small_invoke_stub),
(ORBit_small_invoke_adaptor), (ORBit_small_demarshal_async): upd.
* src/orb/orb-core/orbit-trace.c: (ORBit_trace_timestamp): upd.
* src/orb/orb-core/orbit-typelib.c: (load_module): upd.
* src/orb/poa/orbit-adaptor.c: (ORBit_handle_request): upd.
* src/orb/util/genrand.c: (ORBit_genuid_init), (genuid_simple):
incorporate the pid and an incrementing number into simple uid.
2002-01-16 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-orb-type.h: kill genrand
ORB member.
* include/orbit/util/orbit-genrand.h: rename to genuid, we're
not allways taking about randomness.
* src/orb/orb-core/corba-orb.c:
(ORBit_genuid_type): impl to figure what genuid type we'll use.
(CORBA_ORB_init): upd.
(ORBit_proto_use): fix silly.
Also add a --ORBSimpleUIDs option.
* src/orb/poa/orbit-adaptor.c: (ORBit_adaptor_setup): upd.
* src/orb/poa/poa.c: (ORBit_POA_new_system_objid): upd.
* src/orb/util/genrand.c:
(ORBit_genuid_init), (ORBit_genuid_fini): impl.
(genuid_glib_pseudo): impl id generator using glib's prng.
(genrand_unix): kill.
(genuid_simple): impl non-random id generator.
(ORBit_genuid_buffer): upd.
* test/test-performance.c: (main): pass argc and argv to
ORB_init.
* docs/FAQ, docs/internals/poa-notes.txt: upd.
2002-01-16 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c: update to free
result of IOP profile dumpage.
* src/orb/orb-core/iop-profiles.c
(IOP_components_free): make it free the list too,
and NULL the list for safety.
2002-01-14 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-policy-type.h,
src/orb/orb-core/corba-policy.c: kill ORBit_Policy_(set|get)
* include/orbit/poa/orbit-adaptor.h: (ORBit_adaptor_setup): add.
* include/orbit/poa/poa-types.h:
(ORBit_vepvmap_init): kill.
Kill init_vepvmap and vepvlen ClassInfo members.
Enable vepvmap cache by default. Add next member to
ORBit_POAObject_type to replace servant->_private GSList.
Kill unused macros.
* include/orbit/poa/poa.h: don't include poa-policy.h.
* include/orbit/poa/portableserver-poa-type.h: kill poa_rand_len
POA struct member.
* src/idl-compiler/orbit-idl-c-skels.c:
(cbe_skel_interface_print_vepvmap_initializer): kill.
(cbe_skel_interface_print_vepvmap_line), (cbe_skel_do_interface):
initialise the vepvmap in servant init. No need for init_vepvmap method.
* src/orb/orb-core/corba-orb.c: (CORBA_ORB_destroy): s/poa/adaptor/.
* src/orb/poa/orbit-adaptor.c: (ORBit_adaptor_setup): move here from
poa.c - all adaptor's keys should be the same.
* src/orb/poa/orbit-poa.h:
* src/orb/poa/poa-manager.c: (ORBit_POAManager_new),
(ORBit_POAManager_register_poa), (ORBit_POAManager_unregister_poa): kill
unneeded ev args. Move ownership of the poa_manager reference into poa.c
where it belongs.
* src/orb/poa/poa-policy.c: set the policy structs directly. Kill okey
randomness policy.
* src/orb/poa/poa-servants.c: use poa_execption macros.
* src/orb/poa/poa.c:
(check_object_inuse): impl instead of hacking traverse_cb.
(ORBit_POA_object_id_lookup): rename from ORBit_POA_oid_to_obj, removing
crackness in the process.
(ORBit_POA_remove_child): kill unneeded ev arg.
(ORBit_POA_destroy): cleanup.
(traverse_cb): rationalise. Kill unneeded TraverseInfo members.
(ORBit_POA_deactivate): upd.
(ORBit_POA_free_fn): check members are allocated before freeing.
(ORBit_POA_set_policy): update fro policy changes.
(ORBit_POA_set_policies): set defaults here, use poa_exception macros.
(ORBit_POA_new): big cleanup.
(ORBit_POA_activate_object): don't init vepvpmap here. Update for
servant pobj list changes.
(ORBit_POA_deactivate_object): ditto.
(ORBit_POAObject_handle_request): use policy checking macros.
(ORBit_POA_object_key_lookup): impl.
(ORBit_POA_handle_request): use ORBit_POA_object_key_lookup and
return_exception.
(ORBit_POA_ServantManager_use_servant),
(ORBit_POA_ServantManager_unuse_servant): big cleanup and update for
servant pobj list change.
* test/everything/server.c: (TestFactory_getStructServerIOR): use
global_orb.
2002-01-09 Michael Meeks <michael@ximian.com>
* Version 2.3.102
2002-01-09 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-send-buffer.c
(send_buffer_list): initialize it.
* src/orb/GIOP/giop-connection.c
(giop_connection_remove_by_orb): fix acute
re-enterancy hazard.
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_list_zap): fix re-enterancy hazard.
(giop_queued_messages): initialize it.
2002-01-09 Mark McLoughlin <mark@skynet.ie>
* test/test-performance.c: (create_mult_id_poa), (test_activation),
(main): add object activation/de-activation performance test.
* test/Makefile.am: upd.
2002-01-07 Mark McLoughlin <mark@skynet.ie>
* src/services/name/Makefile.am: install idl files in
$(datadir)/idl/orbit-2.0.
2002-01-04 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testSegv): remove
race condition assert.
* test/everything/everything.idl: make segv
oneway.
2002-01-03 Michael Meeks <michael@ximian.com>
* Version 2.3.101
2001-12-31 Michael Meeks <michael@ximian.com>
* src/orb/poa/orbit-adaptor.c
(ORBit_handle_request): debug.
* src/orb/poa/poa.c (ORBit_POA_handle_request):
add debug.
2002-01-03 Laszlo Peter <laca@ireland.sun.com>
* test/test-performance.c: s/time/elapsed_time/ (conflicts with
Solaris system headers)
2002-01-03 Mark McLoughlin <mark@skynet.ie>
* test/test-performance.c: make global symbols static to
stop core dumps in my ldap libraries. Don't ask me :/
2002-01-03 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-stubs.c: (cs_small_output_stub):
output local case code to check to see if the operation is
implemented and return NO_IMPLEMENT if not.
* src/idl-compiler/orbit-idl2.h: add ORBIT_EPV_VAR_NAME.
* test/everything/client.c: (testMisc): test this in the local
case as well.
2002-01-03 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa-types.h:
(ORBIT_STUB_IsBypass): check for nil reference, and pawn off
on ORBit_small_invoke_stub if it is nil.
* src/orb/orb-core/orbit-small.c: (ORBit_small_invoke_stub):
return INV_OBJREF exception if obj is nil.
* test/everything/client.c: (testException): test.
* test/everything/pingServer.c: (PingPongServer_opSleep):
kill unused variable.
2001-12-31 Michael Meeks <michael@ximian.com>
* configure.in: require the new linc.
2001-12-28 Michael Meeks <michael@ximian.com>
* src/orb/dynamic/dynany.c
(ORBit_dynany_new_default): publicise internaly
for time trials.
* src/idl-compiler/orbit-idl-c-headers.c
(ch_output_const_dcl): output unsigned types
properly.
* test/everything/client.c (testPingPong): add
non-blocking IO test.
* test/everything/pingServer.c
(PingPongServer_opSleep): impl.
* src/orb/poa/poa.c
(ORBit_POA_handle_request, return_exception):
non blocking writes.
* src/orb/orb-core/orbit-small.c
(orbit_small_marshal): do a non-blocking write.
(ORBit_small_invoke_adaptor): ditto.
2001-12-27 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-connection.c
(giop_connection_close): block on send notification.
* src/orb/GIOP/giop-send-buffer.c
(giop_send_buffer_write): do blocking and non-blocking
writes.
* include/orbit/GIOP/giop-send-buffer.h: kill duff
prototype.
* src/orb/orb-core/orbit-small.c
(ORBit_small_get_connection): impl.
(ORBit_connection_set_max_buffer): impl.
2001-12-21 Roland Juelich <rj@atecom.com>
* src/orb/orb-core/iop-profiles.c: (IOP_ObjectKey_demarshal):
don't modify key length.
2001-12-19 Mark McLoughlin <mark@skynet.ie>
* test/everything/test.sh: niceify.
2001-12-19 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/iop-profiles.c: (IOP_profiles_sync_objkey):
reduce the scream and shout error to a warning.
2001-12-18 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-orb.c (CORBA_ORB_init):
check the ALIGNOF_DOUBLE instead, since all sys
allocated memory has to be aligned to this.
2001-12-15 Ross Golder <rossg@golder.org>
* ORBit.spec.in: updated shared library directory.
2001-12-14 Roland Juelich <rj@atecom.com>
* src/orb/orb-core/corba-orb.c: add ORBIIOPIPName
and ORBIIOPIPSock options.
(ORBit_ORB_start_servers): use the arguments.
2001-12-13 Sam Couter <sam@topic.com.au>
* configure.in: move type alignment test
* acinclude.m4: here & make it pretty.
2001-12-11 Michael Meeks <michael@ximian.com>
* Version 2.3.100
2001-12-10 jacob berkman <jacob@ximian.com>
* src/orb/GIOP/Makefile.am (libGIOP_la_SOURCES): add giop-debug.h
2001-12-08 Kristian Rietveld <kris@gtk.org>
* src/orb/GIOP/giop-send-buffer.c: move down sys/uio.h, so it
builds on FreeBSD
2001-12-07 Laszlo Peter <laca@ireland.sun.com>
* src/orb/orb-core/orbit-debug.h:
src/orb/orb-core/orbit-trace.c: get the trace code work on Solaris
2001-12-07 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-typecode.c: (CDR_get):
use proper casts.
2001-12-07 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-typecode.c: (CDR_get):
do byteswap if neccessary.
2001-12-07 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c:
(ORBit_demarshal_value): do byteswap if neccessary.
2001-12-07 Mark McLoughlin <mark@skynet.ie>
* include/orbit/GIOP/giop-recv-buffer.h:
include/orbit/GIOP/giop-send-buffer.h:
src/orb/orb-core/orbit-debug.h:
src/orb/orb-core/orbit-small.c:
src/orb/poa/poa.c:
src/orb/GIOP/giop.c:
src/orb/GIOP/giop-recv-buffer.c: rework the recv
buffer dumping to do it as we receive.
* src/orb/orb-core/iop-profiles.c:
(CodeSetComponent_demarshal): fix silly.
2001-12-07 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-typecode.c:
(orbit_find_c_align): only calculate the alignment of
the union.
* src/orb/orb-core/corba-any.c: (ORBit_marshal_value),
(ORBit_demarshal_value), (ORBit_copy_value_core),
(ORBit_value_equivalent): upd.
2001-12-06 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c:
(ORBit_copy_value_core),
(ORBit_value_equivalent): fix union alignment.
2001-12-06 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c (CORBA_Object_hash),
(CORBA_Object_is_equivalent): make faster and better -
we were screwing up if we hashed an object before
remoting it. Since we garentee a CORBA_Object <-> profile
mapping anyway these can be trivial methods.
* test/everything/client.c (testPingPong): test hashing.
2001-12-05 Michael Meeks <michael@ximian.com>
* test/everything/structServer.c (opObjectStruct): impl.
* test/everything/client.c (testObjectStruct): impl.
2001-12-06 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-common.c:
(cc_small_output_method): don't add 1 to name_len.
2001-12-06 Mark McLoughlin <mark@skynet.ie>
* src/orb/GIOP/giop.c (giop_dump_recv): start dumping
the message body at message_body + 12. Why do we allocate
this space?
2001-12-05 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c (ORBit_marshal_value): align
the union properly. Thanks to Laca for the debugging.
2001-12-05 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/iop-profiles.c:
(CodeSetComponent_demarshal): byte swap the code sets
if necessary and fix silly.
2001-12-05 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-object.c:
(ORBit_handle_location_forward),
(ORBit_demarshal_object): intialise type_id and profiles.
* src/orb/orb-core/iop-profiles.c:
(ORBit_demarshal_IOR): cleanup code flow.
2001-12-05 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-orb.c:
(CORBA_ORB_string_to_object): tidy up a bit. Use g_ascii_*
functions.
2001-12-04 Michael Meeks <michael@ximian.com>
* test/everything/basicServer.c
(BasicServer_testLargeStringSeq): stub.
* test/everything/client.c
(make_large_str_seq): impl.
(testMisc): use it.
2001-12-03 Mark McLoughlin <mark@skynet.ie>
* src/orb/GIOP/giop.c: (giop_dump): tidy up
output a little.
2001-12-02 Laszlo Peter <laca@ireland.sun.com>
* src/idl-compiler/orbit-idl-c-typecode.c
(cbe_tc_generate): fix order to match corba-typecode.h
2001-12-01 Theo van Klaveren <t.vanklaveren@student.utwente.nl>
* src/orb/include/Makefile.am: make -> $(MAKE).
* src/orb/GIOP/giop-send-buffer.c: add <sys/types.h> to the
includes. Fixes the build on FreeBSD.
2001-11-29 Mark McLoughlin <mark@skynet.ie>
* src/orb/GIOP/giop.c: (giop_dump_recv): print the
header as well as the message body.
2001-11-26 Michael Meeks <michael@ximian.com>
* Version 2.3.99
* configure.in: bump serial.
2001-11-26 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-typecode.c
(cbe_tc_generate): upd & re-order.
* include/orbit/orb-core/corba-typecode.h: give us
some space for expansion & re-order.
2001-11-26 Michael Meeks <michael@ximian.com>
* Version 2.3.98
* src/orb/util/orbit-options.c
(ORBit_option_command_line_parse): allow NULL argc
on init.
* test/test-dynany.c (main): test it.
2001-11-23 Michael Meeks <michael@ximian.com>
* docs/internals/typecode-flags.txt: add.
* src/orb/poa/poa.c
(ORBit_POAObject_handle_request): add debug.
2001-11-25 Havoc Pennington <hp@redhat.com>
* src/orb/poa/Makefile.am (main_src): add poa-macros.h
2001-11-22 Michael Meeks <michael@ximian.com>
* test/everything/client.c (run_tests): disable
the async tests - need more thought.
* src/orb/orb-core/iop-profiles.c
(IOP_TAG_INTERNET_IOP_copy): copy the host too.
* src/orb/GIOP/giop-connection.c
(giop_connection_initiate): add pre-condition.
2001-11-21 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testPingPong): add a
scad of equivalence tests.
* src/orb/orb-core/corba-object.c
(ORBit_register_objref): add pre-condition.
(g_CORBA_Object_equal): allow NULL object keys -
these are local objects.
(CORBA_Object_is_equivalent): fix to cope with
the concept of 'local' and NULL objects.
(g_CORBA_Object_equal): remove checks.
* src/orb/orb-core/iop-profiles.c
(IOP_delete_profiles): cope with no ORB on
remote objects.
2001-11-21 Michael Meeks <michael@ximian.com>
* src/orb/dynamic/dynany.c
(dynany_sequence_realloc_to): undo a stupidity.
2001-11-21 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/iop-profiles.c
(IOP_delete_profiles): use orb->profiles not common_profiles.
(ORBit_demarshal_IOR): upd.
* src/orb/orb-core/corba-object.c
(ORBit_objref_find, CORBA_Object_release_cb),
(ORBit_handle_location_forward): upd.
* src/orb/orb-core/corba-types.c
(CORBA_sequence__freekids): kill.
(ORBit_sequence_CORBA_octet_dup): upd.
* src/orb/orb-core/iop-profiles.c
(IOP_start_profiles): impl.
(IOP_generate_profiles): upd. ensure that
we always register an objref as we generate
it's profiles.
* src/orb/orb-core/corba-object.c
(ORBit_start_servers): move into the ORB.
(ORBit_objref_find): add some debug.
* src/orb/orb-core/corba-orb.c
(ORBit_ORB_start_servers): here.
* src/orb/orb-core/iop-profiles.c
(IOP_generate_profiles): prune cut & paste
shutdown code - argh; split out,
(boot_profiles): this.
* src/orb/orb-core/corba-object.c
(ORBit_lookup_objref): don't pointlessly setup an
objref hash when we don't need one.
* test/everything/client.c (testPingPong): check we
remote and return correctly.
2001-11-20 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-typecode.c
(CORBA_TypeCode__freekids): kill.
* src/orb/orb-core/orbit-small.c (ORBit_small_alloc),
(ORBit_small_invoke_adaptor): upd.
* src/orb/orb-core/corba-any.c
(ORBit_copy_value, ORBit_demarshal_arg): alloc_by_tc.
(CORBA_any__freekids): kill.
* src/orb/dynamic/dynany.c (dynany_any_new_default),
(dynany_sequence_realloc_to),
(DynamicAny_DynStruct_get_members),
(DynamicAny_DynSequence_get_elements): alloc_by_tc
* src/orb/orb-core/allocators.c
(ORBit_alloc_by_tc): impl.
* src/orb/orb-core/corba-any.c
(CORBA_any__alloc): do it with _alloc_by_tc.
* src/orb/orbit-init.c: include our own header.
* src/orb/GIOP/giop-recv-buffer.c
(giop_IOP_ServiceContextList_demarshal): warning fix.
* src/orb/orb-core/corba-env.c
(CORBA_exception__alloc): upd.
* src/orb/orb-core/corba-object.c
(CORBA_Object__freekids): kill.
* src/orb/orb-core/allocators.c
(ORBit_alloc_kidfnc): rename to
(ORBit_alloc_with_free_fn): this
* src/orb/orb-core/corba-any.c
(CORBA_any__alloc): upd.
* include/orbit/orb-core/allocators.h: kill the
ORBit_alloc macro.
2001-11-20 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-string.c
(CORBA_string_alloc, CORBA_string_dup): use alloc_string.
(CORBA_string__freekids): kill, unused.
* src/orb/orb-core/allocators.c
(ORBit_alloc_string): impl.
* test/Makefile.am: add test-mem
* test/test-mem.c: add.
* src/orb/orb-core/allocators.c
(ORBit_alloc_core): kill.
(ORBit_free_T): re-write.
(ORBit_freekids_via_TypeCode_T): re-order args to
make it a freekids fn, privatize.
(ORBit_freekids_via_TypeCode): upd.
(ORBit_alloc_tcval): re-write.
(ORBit_alloc_kidfnc): re-write.
(ORBit_alloc_simple): re-write.
* src/orb/orb-core/corba-any.c
(ORBit_demarshal_value): upd.
* src/orb/orb-core/corba-orb.c (CORBA_ORB_init): check
our processor is a real processor.
* src/orb/orb-core/orbit-small.c (ORBit_small_alloc):
use ORBit_small_alloc.
* src/orb/GIOP/giop-recv-buffer.c
(giop_IOP_ServiceContextList_free): use CORBA_free
(giop_IOP_ServiceContextList_demarshal): do it genericaly
by typecode.
2001-11-19 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/poa-macros.h: new file with convience macros.
* src/orb/poa/poa.c: (PortableServer_POA_servant_to_id),
(PortableServer_POA_servant_to_reference),
(PortableServer_POA_reference_to_servant),
(PortableServer_POA_reference_to_id),
(PortableServer_POA_id_to_servant),
(PortableServer_POA_id_to_reference): update to use macros
to simplify policy checking, exception returning.
2001-11-19 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-connection.c
(giop_connection_close): remove bogus fsync breaking
encapsulation.
2001-11-19 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-connection.c
(giop_connection_list_lookup): kill retval.
(giop_cnx_descr): impl. for debug.
(giop_connection_initiate): DOH ! pass the right args to
the connection cache.
(giop_connection_list_add): validate connection, add debug.
(giop_connection_list_remove): only try to remove
initiated connections, add debug.
2001-11-16 Michael Meeks <michael@ximian.com>
* test/everything/client.c
(test_BasicServer_opStringA_cb): free the returned strings.
2001-11-18 Mark McLoughlin <mark@skynet.ie>
* configure.in: add warning cflags : -Wall -Wunused
-Wmissing-prototypes -Wmissing-declarations.
add --enable-compile-warnings option.
* src/idl-compiler/Makefile.am, src/orb/GIOP/Makefile.am,
src/orb/GIOP/giop-private.h, src/orb/Makefile.am,
src/orb/dynamic/Makefile.am, src/orb/poa/Makefile.am,
src/orb/orb-core/Makefile.am, src/orb/util/Makefile.am,
src/services/name/Makefile.am, test/Makefile.am,
test/everything/Makefile.am, test/inhibit/Makefile.am,
test/poa/Makefile.am (INCLUDES): add $(WARN_CFLAGS).
* src/orb/GIOP/giop-connection.c,
src/orb/GIOP/giop-recv-buffer.c: include correct headers
and make some functions static.
* src/orb/dynamic/dynany.c:
(DynamicAny_DynSequence_get_elements_as_dyn_any): rename to
DynamicAny_DynSequence_get_elements_as_dyn_any, its correct
name.
* src/orb/orb-core/corba-nvlist.c,
src/orb/orb-core/corba-object.c:
src/orb/orb-core/corba-orb.c,
src/orb/orb-core/iop-profiles.c
src/orb/orb-core/orb-core-export.h,
src/orb/orb-core/orbit-object.c:
include correct headers, make some functions static and kill
unused variables.
* src/orb/poa/poa.c:
(ORBit_classinfo_lookup_id): kill unused fuction.
(ORBit_POA_obj_to_ref): kill unused variable.
* test/everything/arrayServer.c., test/everything/client.c
test/everything/pingServer.c, test/everything/server.c:
make some functions static.
* test/poa/poatest-basic01.c, test/poa/poatest-basic02.c,
test/poa/poatest-basic03.c, test/poa/poatest-basic04.c,
test/poa/poatest-basic05.c, test/poa/poatest-basic06.c,
test/poa/poatest-basic07.c, test/poa/poatest-basic08.c,
test/poa/poatest-basic09.c, test/poa/poatest-basic10.c:
include correct headers and make some functions static.
2001-11-16 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa.h: kill ORBit_POA_object_to_shutdown.
* src/orb/orb-core/corba-object.c:
(CORBA_Object_release_cb): upd.
* src/orb/poa/poa.c:
(PortableServer_POA_id_to_reference): duplicate returned
reference.
2001-11-16 Michael Meeks <michael@ximian.com>
* test/everything/server.c (main): kill sleep.
* test/everything/client.c (main): kill sleep.
2001-11-16 Michael Meeks <michael@ximian.com>
* configure.in: require a linc we can work with.
* src/orb/orb-core/corba-object.c
(ORBit_try_connection): use giop_connection_unref.
(ORBit_objref_find): release the object key - don't
leak it.
* src/orb/GIOP/giop-recv-buffer.c
(giop_connection_handle_input): prune cruft.
* src/orb/GIOP/giop-connection.c
(giop_connection_remove_by_orb): unref the
connection here as well as a close.
(giop_connection_unref): hold the right locks.
(giop_connection_list_remove): don't take the locks.
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): don't close what might be a
shared connection; it'll happen on dispose anyway, use
giop_connection_unref to get locking right.
* src/orb/orb-core/corba-context.c: make it all
look pretty.
2001-11-16 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (PortableServer_POA_servant_to_reference):
dup the reference we return if we return the same twice ...
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_adaptor): get the ORB via. the poa
and not the objref.
* src/orb/poa/poa.c (ORBit_POA_object_shutdown): impl.
(ORBit_POA_deactivate_object): free the environment after
setting it up.
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): move the connection close
right to the end; it can re-enter, invoke
ORBit_POA_object_shutdown instead of an unref - the poa
holds a ref too ...
* test/everything/deadReference.c (DeadReferenceObj_test):
release references, kill spurious global.
* test/everything/server.c (TestFactory_createDeadReferenceObj):
release the poa and the poa_current.
* test/everything/pingServer.c (PingPongServer_get),
(PingPongServer_set): don't leak.
(create_ping_pong_servant): upd.
* test/everything/server.c
(TestFactory_createPingPongServer): upd.
* src/orb/orb-core/corba-context.c
(ORBit_Context_demarshal): don't init me as a RootObject,
I'm static.
* src/orb/orb-core/corba-nvlist.c
(CORBA_NVList_free_memory): always blank the type &
value on free.
* src/orb/orb-core/corba-orb.c (CORBA_ORB_create_list):
remove bogus 'no memory' op.
* test/everything/server.c (main): exit cleanly,
release the factory.
2001-11-15 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testException): fix mem
corruption.
* src/orb/GIOP/giop-connection.c
(giop_connection_initiate): don't ref here,
(giop_connection_list_add): ref here instead.
(giop_connection_list_remove): privatize.
(giop_connection_dispose): move locking into
(giop_connection_list_remove): here.
(giop_connection_dispose): protect vs. double disposes.
(giop_connection_list_lookup): accelerate & robustify.
* src/orb/orb-core/iop-profiles.c
(IOP_generate_profiles): re-flow & simplify confusion.
* src/orb/orb-core/orbit-trace.c
(ORBit_trace_value): update so an strace doesn't give
us a thousand writes.
2001-11-15 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa.c (ORBit_POAObject_handle_request): warn
if queueing a request because the POAManager is holding.
2001-11-12 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-trace.c
(ORBit_trace_header): print pid in decimal.
(ORBit_trace_value): only print printable
characters.
* test/everything/client.c (testPingPong): upd.
* test/everything/pingServer.c
(PingPongServer_opOneWay),
(PingPongServer_pingPong): add method to try and
confuse - no joy.
(PingPongServer_set, PingPongServer_get): impl.
2001-11-12 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c (handle_reply):
dump unexpected system exceptions silently.
* test/everything/client.c (testMisc): add ops. on
a deactivated object.
2001-11-12 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (ORBit_POAObject_handle_request):
only free exceptions iff we're not in proc, we
need to return them otherwise.
2001-11-12 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-server.c (giop_server_new):
always pass non blocking flag.
* src/orb/orb-core/corba-object.c
(ORBit_start_servers): don't pass non blocking
flag.
* src/orb/GIOP/giop-connection.c
(giop_connection_initiate): always initate non
blocking connections.
* src/orb/GIOP/giop-recv-buffer.c
(giop_connection_handle_input): use new
linc_connection_read semantics, kills
deadlock, and heinous EAGAIN handling, we now
idle in the mainloop on EAGAIN.
* configure.in: require linc >= 0.1.8 and it's
new linc_connection_read.
2001-11-09 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c
(giop_connection_handle_input): close the
connection on a GIOP_CLOSECONNECTION - shock.
* HACKING: update.
2001-11-09 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c
(handle_reply): split out of
(giop_recv_list_push): here, kill and fold into
(giop_connection_handle_input): here & simplify.
(giop_recv_buffer_use): kill, confused & unused.
(giop_recv_list_pop_T, giop_recv_list_pop): kill;
unused
(recv_list_push_or_handle): don't do silly things
with lists.
(giop_recv_buffer_init): kill lock init.
(giop_connection_handle_input): don't pile up
GIOP_CLOSECONECTION requests in the bit bucket.
2001-11-09 Michael Meeks <michael@ximian.com>
* include/orbit/GIOP/giop-recv-buffer.h: kill
GIOPMessageInfo, not neccessary.
remove giop_recv_buffer_data_read prototype.
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_list_push): a crack smoking & inefficient
loop search; re-order compare - most unlikely first,
get request_id only once. re-order locking to be yet
more transparent. Remove the huge, paranoid and
incorrect ( except for Elliot's huge stubs/skels )
message.
(giop_recv_buffer_demarshal): make robust against
duff giop versions.
(giop_recv_buffer_use_buf): simplify, remove bogus
is_auth parameter.
(giop_connection_handle_input): upd. to not pass isauth.
(giop_recv_list_push): add processed concept outline.
2001-11-08 Michael Meeks <michael@ximian.com>
* configure.in: require linc >= 0.1.7
2001-11-08 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (ORBit_POAList_add_child),
(PortableServer_Current_get_POA),
(PortableServer_POA_find_POA),
(PortableServer_POA__get_the_parent),
(PortableServer_POA_get_servant_manager): RootObject
duplicate, not CORBA_Object_duplicate.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_init): RootObject duplicate.
* src/orb/orb-core/corba-context.c
(CORBA_Context_new): RootObject duplicate.
(CORBA_ORB_get_default_context): ditto.
* src/orb/orb-core/corba-any.c: indent pleasantly
* src/orb/util/genrand.c
(genrand_unix): use p_memzero
* src/orb/GIOP/giop-send-buffer.c
(giop_send_buffer_append_aligned),
(giop_send_buffer_align): use p_memzero.
* src/orb/util/Makefile.am
(liborb_util_la_SOURCES): add orbit-purify.h
* src/orb/dynamic/dynany.c
(DynamicAny_DynAny_release_fn): p_free.
* src/orb/poa/poa-manager.c
(ORBit_POAManager_free_fn): p_free.
* src/orb/poa/poa.c (ORBit_POACurrent_free_fn),
(ORBit_POA_free_fn): p_free.
* src/orb/orb-core/corba-policy.c
(ORBit_Policy_release): p_free.
* src/orb/orb-core/corba-typecode.c
(ORBit_TypeCode_free_fn): p_free.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_release_fn): p_free
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): p_free
* src/orb/util/orbit-options.c,
* src/orb/util/genrand.c,
* src/orb/util/orbit-util.c,
* src/orb/poa/orbit-adaptor.c,
* src/orb/poa/poa.c,
* src/orb/poa/poa-servants.c,
* src/orb/poa/poa-policy.c,
* src/orb/poa/poa-manager.c,
* src/orb/GIOP/giop-endian.c,
* src/orb/orb-core/corba-orb.c,
* src/orb/orb-core/orbit-object.c,
* src/orb/orb-core/iop-profiles.c: include config.h
* src/orb/orb-core/orb-core-export.h
(p_memzero, p_memwipe, p_free): impl. helpers.
* src/orb/orb-core/corba-context.c
(ORBit_Context_free_fn): p_free.
2001-11-08 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c
(giop_connection_handle_input): move here.
(giop_recv_buffer_data_read): kill; fold into the above
to flatten control flow.
(giop_recv_buffer_state_change): privatize.
* src/orb/GIOP/giop-connection.c
(giop_connection_handle_input): move into giop-recv-buffer.c.
* src/orb/GIOP/giop.c (dump): rename to
(giop_dump): and publicise.
* test/everything/server.c: clean &
(TestFactory_createPingPongServer): impl.
(main): upd.
* test/everything/client.c: prune BIG_STUBS cruft,
they'll never work again :-)
(testPingPong): impl.
* test/everything/pingServer.c: impl.
* test/everything/everything.idl: add PingPongServer.
2001-11-06 Johan Dahlin <jdahlin@telia.com>
* test/everything/Makefile.am (Everything_module_la_LIBADD):
Add $(top_builddir)/src/orb/libORBit-2.la
* src/orb/orb-core/Makefile.am (TYPELIB_DIR): fix
to be $(libdir)/orbit-2.0
2001-11-05 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-send-buffer.c
(giop_send_buffer_append_aligned): remove erroneous
assertion - the indirect (system) align and message
align are not synchronized.
(giop_send_buffer_append_string): fix an incredibly
daft bug; accelerate further.
2001-11-02 Abel Cheung <maddog@linux.org.hk>
* configure.in: Update required linc version.
2001-11-02 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_async, ORBit_small_invoke_stub),
(ORBit_small_invoke_adaptor),
(ORBit_small_demarshal_async): use tprintf_end_method.
* src/orb/orb-core/orbit-trace.c
(ORBit_trace_timestamp): split out.
(ORBit_trace_header): invoke.
(ORBit_trace_end_method): impl.
* src/orb/orb-core/orbit-small.c
(ORBit_small_unlisten_for_broken),
(ORBit_small_listen_for_broken): tolerate a
NULL object sensibly.
2001-11-01 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-send-buffer.c
(giop_send_buffer_append_string): Optimize more to
the hilt for the common case.
* src/orb/orb-core/corba-object.c
(ORBit_marshal_object): upd.
* src/orb/orb-core/corba-env.c
(ORBit_send_system_exception): upd.
(ORBit_send_user_exception): upd.
* src/orb/orb-core/corba-any.c
(ORBit_marshal_value): upd.
* src/orb/orb-core/orbit-small.c
(ORBit_small_send_user_exception): upd.
* src/orb/orb-core/iop-profiles.c
(IOP_TAG_GENERIC_SSL_SEC_TRANS_marshal),
(IOP_TAG_INTERNET_IOP_marshal),
(IOP_TAG_GENERIC_IOP_marshal),
(IOP_TAG_ORBIT_SPECIFIC_marshal): upd.
* src/orb/orb-core/corba-typecode.c
(CDR_put_string): make a #define.
* src/orb/GIOP/giop-send-buffer.c
(giop_send_buffer_append_string): impl.
* src/orb/orb-core/corba-typecode.c (tc_enc): make
typecode marshaling smaller and faster.
2001-11-01 Michael Meeks <michael@ximian.com>
* Version 2.3.97
2001-11-01 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-typecode.c: populate tk_info
with CORBA_TypeCodes for the empty case, so we don't
have to alloc / free them continualy.
(tc_dec): re-vamp to use faster basic type path.
* src/orb/orb-core/orbit-small.c: s/CORBA_free/ORBit_free/
* src/orb/orb-core/iop-profiles.c: ditto.
* src/orb/orb-core/corba-string.c
(CORBA_string__freekids): use ORBit_free
* src/orb/orb-core/corba-nvlist.c
(ORBit_NamedValue_free): use ORBit_free.
(CORBA_NVList_free_memory): ditto.
* test/everything/client.c (dummy_cb): impl.
(testSegv): upd. to test unlisten.
(testAnyStrSeq): add
(main): call it.
* test/everything/everything.idl: add method.
* test/everything/anyServer.c
(AnyServer_opAnyStrSeq): forward port
* src/orb/orb-core/orbit-small.c
(ORBit_small_unlisten_for_broken): impl. sigh, there
had to be something to break the API freeze.
2001-10-31 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-ir.h:
* include/orbit/orb-core/corba-nvlist-type.h:
* include/orbit/orb-core/orb-defs.h:
* include/orbit/util/os-feature-alloca.h:
* include/orbit/util/thread-safety.h
* src/orb/util/genrand.h: remove unused headers.
2001-10-31 Mark McLoughlin <mark@skynet.ie>
* configure.in: version 2.3.96.
2001-10-31 Mark McLoughlin <mark@skynet.ie>
* test/poa/Makefile.am: add poatest-basic-shell.h.
2001-10-31 Mark McLoughlin <mark@skynet.ie>
I feel violated. What's bonobo-config doing poking
around with this stuff?
* include/orbit/orb-core/allocators.h: expose
ORBit_alloc_tcval.
* include/orbit/orb-core/corba-typecode.h: expose
ORBit_TypeCode_epv.
* include/orbit/orb-core/orbit-object.h: expose
ORBit_RootObject_init.
2001-11-01 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_get_servant): tolerate a NULL obj.
* test/everything/client.c (testMisc): add test.
2001-11-01 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_get_servant): fixup.
(get_status): use correct LINC_CONNECTION enum.
* test/everything/client.c (testMisc): use in_proc,
not evil hacks, expand to test new methods.
(testSegv): upd, & listen for 'broken'
2001-11-01 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_get_servant, get_status),
(ORBit_small_get_connection_status),
(ORBit_small_listen_for_broken): impl.
2001-10-31 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_get_servant),
(ORBit_small_get_connection_status),
(ORBit_small_listen_for_broken): stub - impl. to follow.
2001-10-30 Mark McLoughlin <mark@skynet.ie>
* include/orbit/util/orbit-util.h: make ALIGN_ADDRESS publicly
available. It seems bonobo-config uses it. hmmm.
2001-10-30 Mark McLoughlin <mark@skynet.ie>
* include/orbit/*/*.h: wrap all internal defines in #ifdef
ORBIT2_INTERNAL_API and all defines for the benefits of
stubs/skels in #ifdef ORBIT2_STUBS_API.
* include/orbit/orb-core/Makefile.am: don't install empty
files.
* include/orbit/util/Makefile.am: ditto.
* src/idl-compiler/Makefile.am: define ORBIT2_INTERNAL_API.
* src/idl-compiler/orbit-idl-c-common.c:
(orbit_idl_output_c_common): define ORBIT2_STUBS_API in
generated code.
* src/idl-compiler/orbit-idl-c-skels.c:
(orbit_idl_output_c_skeletons): ditto.
* src/idl-compiler/orbit-idl-c-stubs.c:
* (orbit_idl_output_c_stubs): ditto.
* src/idl-compiler/orbit-idl-c-headers.c: (ch_output_types):
don't define exception marshallers in small mode.
* src/orb/GIOP/Makefile.am:
* src/orb/Makefile.am:
* src/orb/dynamic/Makefile.am:
* src/orb/orb-core/Makefile.am:
* src/orb/poa/Makefile.am:
* src/orb/util/Makefile.am: define ORBIT2_INTERNAL_API.
* src/orb/util/genrand.c: don't include genrand.h.
* src/orb/util/genrand.h: kill, duplicate of
include/orbit/util/orbit-genrand.h.
* test/Makefile.am:
* test/everything/Makefile.am: define ORBIT2_INTERNAL_API.
2001-10-31 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (return_exception): if in-proc,
we have no valid recv_buffer, so just return - ev is
the actual exception context.
2001-10-31 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-env.c
(CORBA_exception_free_T): impl & upd.
(CORBA_exception_free): do correct locking.
* test/everything/client.c
(testException): test copying.
* src/orb/orb-core/corba-env.c
(CORBA_exception__alloc),
(CORBA_exception__copy),
(CORBA_exception__freekids): move from bonobo.
2001-10-30 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-object.c
(ORBit_RootObject_shutdown): upd. to account for the ORB
hanging around.
* src/orb/orb-core/corba-orb.c (CORBA_ORB_destroy): set
exceptions on an unclean shutdown, release default ctx.
(CORBA_ORB_release_fn): check refs where we have an ev,
don't release default ctx here.
2001-10-29 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa-basics.h
(PortableServer_ServantBase__epv): added extra members
to the epv to handle servant refcounting and CORBA::Object
method overiding.
* include/orbit/poa/poa.h: upd.
* src/orb/poa/poa-servants.c:
(PortableServer_ServantBase__get_interface),
(PortableServer_ServantBase__is_a),
(PortableServer_ServantBase__add_ref),
(PortableServer_ServantBase__remove_ref),
(PortableServer_RefCountServantBase__add_ref),
(PortableServer_RefCountServantBase__remove_ref),
(PortableServer_RefCountServantBase__init),
(PortableServer_RefCountServantBase__fini): impl.
(PortableServer_ServantBase__init): initialise function
pointers if not already set.
(PortableServer_ServantBase__fini): upd.
* include/orbit/orb-core/corba-orb-type.h: add
CORBA_InterfaceDef definition to keep poa headers
happy.
2001-10-30 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (ORBit_POA_handle_request): make it
more robust vs. NULL pobjs.
2001-10-29 Michael Meeks <michael@ximian.com>
* configure.in: bump required glib version.
2001-10-27 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-typecode.c: re-order to kill
redundant forward prototypes.
(ORBit_decode_CORBA_TypeCode): return a typecode with a
single reference - not no reference.
(tc_dec): ditto duplicate here.
(tc_dec_tk_sequence, tc_dec_tk_struct, tc_dec_tk_union),
(tc_dec_tk_alias, tc_dec_tk_except, tc_dec_tk_array): update
all callers to not do their own duplicates.
* src/orb/orb-core/corba-any.c
(ORBit_demarshal_value, ORBit_demarshal_any): push back
the refs into ORBit_decode_CORBA_TypeCode.
* test/everything/client.c (testMisc): fix reference leak.
* src/orb/orb-core/orbit-object.c (ORBit_RootObject_shutdown):
add a total ref count, always taken regardless of locking.
(ORBit_RootObject_duplicate, do_unref),
(ORBit_RootObject_duplicate_T),
(ORBit_RootObject_duplicate): upd.
* src/orb/orb-core/corba-orb.c (CORBA_ORB_release_fn):
release the default context.
* test/everything/client.c (testMisc): regression test.
2001-10-27 Michael Meeks <michael@ximian.com>
* test/test-dynany.c (main): shutdown the ORB correctly.
* test/everything/server.c (TestFactory_segv): use exit
instead of a segv - more friendly.
* test/poa/poatest-basic*.c: include poatest-basic-shell.h
create into the global child_poa so we can destroy it later.
don't unref the child_poa, leave that to the shell.
* test/poa/poatest-basic-shell.h: add.
* test/poa/poatest-basic-shell.c (main): destroy any child
poas we have created.
* src/orb/poa/poa.c (ORBit_POA_new): duplicate the poa we
return, one ref is released by 'POA_destroy' and another
by CORBA_Object_release.
(ORBit_POAObject_handle_request): survive even if the
poa manager is dead.
(PortableServer_POA_create_POA): remove extra duplicate.
* src/orb/orbit-init.c (ORBit_init_internals): release the
references after set_initial_reference.
* src/orb/poa/poa.c (ORBit_POA_destroy): remove superstition
about the RootPOA entry.
2001-10-26 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-orb.c (CORBA_ORB_release_fn): don't
destroy the initial refs here - some of them are poas and hold
refs on the ORB so we never get here ...
(ORBit_service_list_free_ref): use locking mode.
(CORBA_ORB_destroy): unref the initial_refs here instead,
we don't need to explicitely kill the poas ourselves here.
(CORBA_ORB_shutdown): destroy the current poa as well.
* test/everything/client.c (main): release the orb
after destroy.
* test/everything/server.c (main): ditto.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_init): split out static ORB variable, so
we can NULL it on destroy and seek leaks.
(CORBA_ORB_destroy): check we are destroying the right
thing, NULL the pointer.
(CORBA_ORB_release_fn): call ORBit_RootObject_shutdown,
to see if we leaked anything.
* src/orb/orb-core/corba-object.c (ORBit_objref_find):
kill deadlock.
* src/orb/orb-core/orbit-object.c
(ORBit_RootObject_duplicate): actualy do some locking !
(ORBit_RootObject_duplicate_T): impl.
(ORBit_RootObject_release_T): duplicate into
(ORBit_RootObject_release): here - for more speed, we
gamble that robj->refs == ORBIT_REFCOUNT_STATIC is not
a likely intermediate for an incomplete set of a normal
ref count: garenteed pretty much.
(do_unref): split out the guts, add alive object count.
(ORBit_RootObject_init): count live objects if there is
no locking.
(ORBit_RootObject_shutdown): impl.
2001-10-26 Michael Meeks <michael@ximian.com>
* docs/FAQ: add a first pass at a FAQ.
* src/orb/orb-core/orbit-typelib.c
(ORBit_get_typelib_paths): use g_getenv not getenv.
* test/everything/Makefile.am (orbittypelibdir):
install in orbit-2.0
* src/orb/orb-core/orbit-typelib.c (add_if_unique):
use the orbit-2.0 directory for type libs.
2001-10-23 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/Makefile.am: reverse Michael's
change.
2001-10-24 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-server.c (giop_server_destroy):
kill misleadingly named method.
(giop_server_class_init): don't init it, or setup
parent_class
2001-10-24 Michael Meeks <michael@ximian.com>
* include/orbit/orb-core/Makefile.am: prune broken special
case for orbit-interface.idl.
* test/everything/client.c (main): upd, use linc_set_threaded,
requires HEAD linc; sorry.
2001-10-23 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_buffer_state_change): re-format to make pretty.
(giop_recv_buffer_handle_fragmented): return GIOP_MSG_INVALID
* src/orb/GIOP/giop-connection.c
(giop_connection_handle_input): drasticaly simplify crack
smoking flow control, release cnx->incoming_mutex much
earlierto avoid deadlock.
2001-10-18 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-orb-type.h
(CORBA_ORB_type): kill poa_current, make poa_current_invocations
a GSList and rename to current_invocations.
(ORBit_InitialReference): kill.
* include/orbit/orb-core/corba-orb.h,
src/orb/orb-core/orb-core-private.h,
src/orb/orb-core/corba-object.c:
(CORBA_ORB_set_initial_reference): rename to
ORBit_set_initial_reference, privatise and simplify arguments.
(ORBit_service_list_add_id): kill ugly _maximum++ hack.
(ORBit_service_list_free_ref): impl.
(CORBA_ORB_release_fn): unref all initial references.
(CORBA_ORB_resolve_initial_references): update.
* src/orb/poa/poa.c (ORBit_POACurrent_get_object): update.
(ORBit_POAObject_handle_request): ditto.
(PortableServer_Current_get_POA): ditto.
(PortableServer_Current_get_object_id): ditto.
(PortableServer_POA_servant_to_id): ditto.
(PortableServer_POA_servant_to_reference): ditto.
(CORBA_ORB_list_initial_services): update.
* src/orb/orbit-init.c (ORBit_init_internals): update, and
create + register a "POACurrent" reference.
* include/orbit/poa/poa-types.h
(ORBIT_STUB_PreCall, PostCall): update.
* include/orbit/poa/poa.h(ORBit_POAInvocation): kill.
* src/orb/poa/orbit-poa.h: add ORBit_POACurrent_new.
* test/everything/client.c, test/everything/everything.idl,
test/everything/server.c, test/everything/deadReference.c,
test/everything/test.sh: added regression test for dead
server-side references and ORB initial services.
* src/idl-compiler/orbit-idl-c-stubs.c (cs_small_output_stub):
update.
* configure.in: bump up ORBIT_SERIAL.
2001-10-18 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testSegv): invoke a remote segv.
(run_tests): upd.
* test/everything/server.c (TestFactory_segv): impl. a segv.
* src/orb/GIOP/giop-connection.c
(giop_connection_handle_input): kill uber wierd error
handling, and make return value always TRUE.
2001-10-18 Michael Meeks <michael@ximian.com>
* include/orbit/orb-core/corba-object-type.h: make type_id
a GQuark to save space, and time.
* src/orb/poa/poa.c (ORBit_POA_obj_to_ref): upd.
* src/orb/orb-core/corba-object.c (g_CORBA_Object_hash),
(CORBA_Object_release_cb, ORBit_objref_new, ORBit_objref_find):,
(ORBit_marshal_object, CORBA_Object_is_a): upd.
2001-10-17 jacob berkman <jacob@ximian.com>
* Makefile.am: orbit-config is no more
2001-10-18 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-connection.c (giop_connection_handle_input):
hold a ref on the connection whilst handling the input.
* src/orb/GIOP/giop-recv-buffer.c (giop_recv_list_push):
release the incoming mutex around the ent. call,
set the cnx->incoming_msg to NULL much earlier.
* src/orb/orb-core/iop-profiles.c (IOP_profiles_copy): impl.
(ORBit_demarshal_IOR): kill redundant gbuf = buf, no nasty
global variables thank you.
(IOP_ObjectKey_copy, IOP_components_copy),
(IOP_TAG_COMPLETE_OBJECT_KEY_copy),
(IOP_TAG_GENERIC_SSL_SEC_TRANS_copy),
(IOP_TAG_SSL_SEC_TRANS_copy, IOP_TAG_CODE_SETS_copy),
(IOP_UnknownComponent_copy, IOP_component_copy),
(IOP_components_copy, IOP_TAG_INTERNET_IOP_copy),
(IOP_TAG_GENERIC_IOP_copy),
(IOP_TAG_ORBIT_SPECIFIC_copy),
(IOP_TAG_MULTIPLE_COMPONENTS_copy),
(IOP_TAG_UnknownProfile_copy),
(IOP_profile_copy, IOP_profiles_copy): impl.
* src/orb/orb-core/corba-object.c (CORBA_Object_release):
misc. style cleans.
(ORBit_objref_get_proxy): impl. to make a local object
able to access itself as if remote.
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_async): if we have no local profiles,
create some.
* test/everything/client.c (testAsync): beef up regression
tests to catch the above.
* test/everything/client.c (testAsync): perform
some normal work while waiting for the async
method result.
Lots of stylistic seds.
* src/orb/orb-core/orbit-trace.c
(ORBit_trace_header): impl & add timing information.
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_adaptor),
(orbit_small_marshal): use it
2001-10-16 jacob berkman <jacob@ximian.com>
* src/orb/orb-core/Makefile.am: fix to dist from a clean checkout
* autogen.sh: don't look in libIDL
* configure.in (AC_OUTPUT): generate orbit2-config
2001-10-16 Ross Golder <rossg@golder.org>
* orbit-config.in: replaced with orbit2-config.in
* orbit2-config.in: use pkg-config ORBit2 for --cflags
* ORBit.spec.in: update.
* ORBit2.m4: was generating stubs etc with older IDL compiler.
2001-10-16 Mark McLoughlin <mark@skynet.ie>
* Makefile.am (EXTRA_DIST): add HACKING AND MAINTAINERS.
Remove ORBit.spec.in, *.pc.in which are automatically
included.
* include/orbit/Makefile.am (EXTRA_DIST): remove
orbit-config.h.in.
* src/orb/dynamic/Makefile.am, src/orb/orb-core/Makefile.am,
src/orb/poa/Makefile.am, test/Makefile.am,
test/everything/Makefile.am, test/inhibit/Makefile.am,
test/poa/Makefile.am: remove idl compiler generated files
before dist-ing.
2001-10-13 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_demarshal_async): fix brokenness.
* test/everything/client.c (test_BasicServer_opStringA_cb),
(test_BasicServer_opStringA): impl async method with ret.
(testAsync): upd.
2001-10-13 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c: lots of debugging
instrumentation.
* src/orb/orb-core/orbit-small.c (ORBit_small_invoke_stub):
un-queue the reply tag for oneway methods - there is no reply.
(ORBit_small_invoke_async): ditto.
* src/orb/GIOP/giop-recv-buffer.c (giop_recv_list_zap):
iterate over the full list, invoke the unthreaded cb
when the connection is dead, and unlink before invoke.
(giop_recv_list_push): unlink from giop_queued_messages.
* src/orb/orb-core/orbit-small.c (async_recv_cb): upd,
and set COMM_FAILURE on a broken method ...
(ORBit_small_demarshal_async): impl. to simplify
de-marshaling.
(ORBit_small_invoke_async): upd.
2001-10-11 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-recv-buffer.c (giop_recv_buffer_get):
don't do a blocking iteration, check the queue first.
(giop_recv_list_push): re-jig locking.
* test/everything/client.c (testAsync): impl.
(test_BasicServer_opExceptionA): impl.
(test_BasicServer_opExceptionA_cb): impl.
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_list_setup_queue_entry_async): impl.
* src/orb/orb-core/orbit-small.c (orbit_small_marshal): split
out the recv_list_setup_queue_entry.
(ORBit_small_invoke_stub): put it here instead.
(async_recv_cb): impl.
(ORBit_small_invoke_async): impl.
* src/orb/GIOP/giop-recv-buffer.c (giop_recv_list_push): add
an async callback on a GIOPMessageQueueEntry
2001-10-02 Mark McLoughlin <mark@skynet.ie>
* test/Makefile.am(test_dynany_LDFLAGS): add -lm
for non-glibc systems.
2001-10-02 Glynn Foster <glynn.foster@sun.com>
* autogen.sh, configure.in: Dumb commit to fix
spelling mistake and remove build fail references to
ORBit and replace with ORBit2. Yeah, this is lame.
2001-10-02 Laszlo Peter <laca@ireland.sun.com>
* src/orb/orb-core/iop-profiles.c:
change g_string_printfa to g_string_append_printf
because it was renamed in glib.
* test/ior-decode.c: ditto.
2001-10-03 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_adaptor): use the incomming buffer's
giop_version on the reply, not the connection's version.
FIXME: either the connections ver. negotiation is broken
or using it was broken - investigate.
* test/everything/client.c (main): add a 'success' printf.
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_adaptor): trace all incoming data.
* src/orb/orb-core/orbit-debug.h: include stdio if
debug is turned on for fprintf.
* src/orb/orb-core/iop-profiles.c
(IOP_TAG_ORBIT_SPECIFIC_marshal): output the IIOP version
fields - because ORBit 1 expects this.
(IOP_TAG_ORBIT_SPECIFIC_demarshal): ignore the IOP version
fields.
2001-09-25 Mark McLoughlin <mark@skynet.ie>
* Version 2.3.95.
2001-09-24 Mark McLoughlin <mark@skynet.ie>
* Makefile.am(SUBDIRS): remove libIDL - this is to built
seperately.
* configure.in: cleanup libtool versioning. Use pkg-config
to check for dependancies. Remove libIDL config call.
* ORBit-2.0.pc.in, ORBit-CosNaming-2.0.pc.in,
ORBit.spec.in: update.
* src/idl-compiler/Makefile.am: update and remove all libIDL
build rules.
* src/orb/Makefile.am: update and don't use libtool's -release
flag which makes binary compatibility impossible.
* src/orb/GIOP/Makefile.am: update. Don't supply version-info
to libtool.
* src/orb/dynamic/Makefile.am, src/orb/orb-core/Makefile.am,
src/orb/poa/Makefile.am, src/orb/util/Makefile.am,
src/services/name/Makefile.am, test/Makefile.am,
test/everything/Makefile.am, test/inhibit/Makefile.am,
test/poa/Makefile.am: update.
2001-09-24 Mark McLoughlin <mark@skynet.ie>
* test/Makefile.am: -lm for test-dynany.
2001-09-21 Mark McLoughlin <mark@skynet.ie>
* src/orb/GIOP/giop-recv-buffer.c,
include/orbit/GIOP/giop-recv-buffer.c
(giop_recv_buffer_reply_status): macroise - another forte fix.
2001-09-21 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-typecode.c (CDR_get): remove
unused align param. Tidy up macros, hard code the
CDR alignments. Fixes a forte build problem.
2001-09-20 Mark McLoughlin <mark@skynet.ie>
* src/orb/GIOP/giop-connection.c (giop_connection_handle_input):
If linc_connection_read returns 0 and was not passed a length
of 0, then the connection has been closed. Unlock incoming_mutex
and change state to LINC_DISCONNECTED. Clients should no longer
hang when servers have dumped code while servicing a request.
2001-09-20 Mark McLoughlin <mark@skynet.ie>
* ORBit-2.0.pc.in (Requires): add linc.
* .cvsignore, src/idl-compiler/.cvsignore,
src/services/name/.cvsignore, test/.cvsignore: update.
2001-09-19 Havoc Pennington <hp@redhat.com>
* src/idl-compiler/Makefile.am (orbit_idl_2_SOURCES): don't
install orbit-idl2.h, apparently it isn't used.
* ORBit-CosNaming-2.0.pc.in (Libs): update
* ORBit-2.0.pc.in (orbit_idl): orbit-idl-2
* test/Makefile.am (ior_decode_2_SOURCES): rename ior-decode to
ior-decode-2
* src/services/name/Makefile.am (libORBitservicesincludedir): put
ORBitservices inside /usr/include/orbit to avoid ORBit1 conflicts
(lib_LIBRARIES): rename libname-server to libname-server-2
* src/orb/poa/Makefile.am (IDL): s/orbit-idl/orbit-idl-2/
* src/orb/orb-core/Makefile.am: s/orbit-idl/orbit-idl-2/
* Makefile.shared (IDL_COMPILER): s/orbit-idl/orbit-idl-2/
* src/idl-compiler/Makefile.am: s/orbit-idl/orbit-idl-2/
* src/services/name/Makefile.am: s/name-client/name-client-2/
s/orbit-name-server/orbit-name-server-2/
2001-09-19 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/Makefile.am: revert Darin's patch. That
header is not generated by this rule.
2001-09-19 Darin Adler <darin@bentspoon.com>
* src/orb/orb-core/Makefile.am: Fix build by mentioning the
generated header file explicitly as a target. Otherwise, the
dependencies trigger the default orbit-idl compile rule,
which uses the wrong flags.
2001-09-19 Mark McLoughlin <mark@skynet.ie>
Implement orbitrc option handling.
* src/orb/orb-core/corba-orb.c
(ORBit_proto_use): fix typo.
(orbit_supported_options): move orbitrc options.
* src/orb/util/Makefile.am: define ORBIT_SYSTEM_RCFILE.
* src/orb/util/orbit-options.c,
src/orb/util/orbit-options.h
(ORBit_option_set): change options_list to const.
(ORBit_option_rc_parse): impl.
(ORBit_option_parse): rename to ORBit_option_command_line_parse.
(ORBit_option_parse): impl.
(orbit_sysrc_options): add orbitrc options.
2001-09-19 Raja R Harinath <harinath@cs.umn.edu>
* src/orb/orb-core/corba-typecode.c: Have
definitions of '*_struct's agree with declarations
in include/orbit/orb-core/corba-typecode.h.
2001-09-19 Raja R Harinath <harinath@cs.umn.edu>
Fixes bug #60730
* Makefile.shared: Make dependency output file name
agree with pattern used for IDL_DEPS_MAGIC.
2001-09-18 Mark McLoughlin <mark@skynet.ie>
Port command line option handling from ORBit-0.5.x.
* src/orb/util/orbit-options.[ch]: two new files with two
new functions - ORBit_option_set and ORBit_option_parse
courtesy of Dick I think.
* src/orb/util/Makefile.am: update.
* src/orb/orb-core/corba-orb.c,
src/orb/orb-core/orb-core-private.h
(ORBit_proto_use): impl.
Added all of the sensible options from ORBit-0.5.x. Only
the IIOP protocol options are implemented as yet.
* src/orb/orb-core/corba-object.c(ORBit_start_servers):
check to see if we should use the protocol before starting
a server using that protocol.
2001-09-18 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/Makefile.am: depend on $(IDL_COMPILER)
not on $(IDL). hmmm.
2001-09-18 Jens Finke <jens@gnome.org>
* ORBit.spec.in: Updated, matches gpp requirements now, renamed the
package to ORBit2 and reworked the files section.
2001-09-17 Mark McLoughlin <mark@skynet.ie>
* Makefile.shared: s/DEPS_MAGIC/IDL_DEPS_MAGIC/. Using
the same variable name used by automake causes automake
to get confused. This was causing automatic Makefile
dependancy tracking to not work.
2001-09-17 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/Makefile.am: remove bogus BUILT_SOURCE
dependancy.
* src/orb/poa/poa.c: clean up includes. Don't include
corba-ops.h.
* test/inhibit/test-inhibit.c: include stdio.h.
2001-09-17 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/orbit-small.h: don't include
IDL.h.
* src/orb/GIOP/giop.c: include stdio.h.
* src/orb/orb-core/orbit-typelib.c
(ORBit_iinterface_from_idl): kill. This is never going
to be implemented as it would require linking against
libIDL.
Also include stdlib.h.
2001-09-11 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/iop-profiles.c
(IOP_profile_get_info): don't forget to return TRUE.
* include/orbit/GIOP/giop-connection.h,
src/orb/GIOP/giop-connection.c
(giop_connection_from_fd): this function is unused
and unneeded. fds are handled inside linc.
2001-09-10 Mark McLoughlin <mark@skynet.ie>
* test/ior-decode.c: fixup object key handling.
* include/orbit/GIOP/giop-server.h,
src/orb/GIOP/giop-server.c: minor tidying.
2001-09-09 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(get_small_skel_CORBA_Object): make impl non NULL to
simplify checks.
* test/everything/client.c (testMisc): expand regression
tests.
* src/orb/poa/poa.c (ORBit_POAObject_handle_request):
return exceptions that we have thrown, re-organise the
exception throwing code to flow more smoothly.
(return_exception): impl; ie. with the old 'Lee' stubs,
we have no way to tell that the method was oneway - so
we might stil try and return an exception - another nail
in it's coffin.
2001-09-09 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-typecode.c: fix alignment of
CORBA_TC_Object, or we get serious marshaling issues.
2001-09-06 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-object.c
(g_CORBA_Object_equal): compare object keys.
(ORBit_objref_find): sync the object keys before
looking up the object.
(ORBit_try_connection): sync object keys in
forward locations profiles.
* src/orb/orb-core/iop-profiles.c,
src/orb/orb-core/iop-profiles.h
(IOP_profile_find): remove unused.
(IOP_profile_dump): the object key is never in the
profiles anymore.
(IOP_profiles_sync_objkey): impl.
(IOP_profile_get_info): remove objkey arg.
(IOP_ObjectKey_equal): export.
(IOP_profile_equal): don't compare object keys.
(IOP_component_free, IOP_TAG_INTERNET_IOP_free,
IOP_TAG_ORBIT_SPECIFIC_free): don't free the object key.
2001-09-04 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/Makefile.am,
src/orb/dynamic/Makefile.am,
src/orb/orb-core/Makefile.am: add --noheaders
options to fix build dependancy problem and remove
headers from BUILT_SOURCES.
2001-09-04 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-orb.c(CORBA_ORB_shutdown):
quit linc's main loop.
2001-09-03 Maciej Stachowiak <mjs@noisehavoc.org>
* Makefile.shared: Re-enable generating deps, fixing a potential
distcheck-breaking problem.
* src/orb/orb-core/Makefile.am: Re-disable generating headers;
they are generated in include/orbit/orb-core.
2001-09-03 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-headers.c
(ch_output_const_dcl): implement the unsigned
check correctly. Michael should have more faith
in the splendifuredness of libIDL ;)
2001-09-03 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c,
src/orb/orb-core/orb-core-private.h
(ORBit_find_alignment): kill - we have that info
in the TypeCode now.
* src/orb/dynamic/dynany.c,
src/orb/orb-core/allocators.c,
src/orb/orb-core/corba-any.c,
src/orb/orb-core/orbit-trace.c: update for
above change.
2001-09-03 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-typecode.c:
Big cleanup. Split out the generation of individual
TypeCode members from cbe_tc_generate into seperate
functions. Also seperate functions for various anon
arrays.
2001-09-01 Darin Adler <darin@bentspoon.com>
* src/orb/orb-core/.cvsignore: New generated file that needs
ignoring.
2001-08-31 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-typecode.h:
(CORBA_TypeCode_struct): fill unused flags,
add c_align.
* include/orbit/orb-core/orb-types.h: add alignment
macro for fixed types.
* src/idl-compiler/orbit-idl-c-typecode.c
(orbit_find_c_alignment) impl.
* src/orb/orb-core/corba-any.c(ORBit_find_alignment):
replace with temporary wrapper.
* src/orb/orb-core/corba-typecode.c
(ORBit_TC_find_c_alignment): impl.
(tc_dec): update.
2001-08-30 Mark McLoughlin <mark@skynet.ie>
* acconfig.h, configure.in,
include/orbit/orbit-config.h.in:
move ALIGNOF defines out of config.h
and into public view. Rename to ORBIT_ALIGNOF*.
* include/orbit/orb-core/orb-types.h,
src/idl-compiler/orbit-idl-passes.c,
src/orb/orb-core/allocators.c,
src/orb/orb-core/corba-any.c: update.
2001-08-29 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c: minor cleanups.
2001-08-28 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c
(ORBit_find_alignment): no need to recurse for aliases.
(ORBit_gather_alloc_info): ditto.
(ORBit_get_union_switch): ditto.
(ORBit_demarshal_value): ditto.
(ORBit_copy_value_core): ditto.
(ORBit_value_equivalent): ditto.
(ORBit_marhsal_value): ditto and fix silly bug with
previous commit.
2001-08-28 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-any.c(ORBit_marhsal_value):
cleanup and document.
2001-08-28 Mark McLoughlin <mark@skynet.ie>
* src/orb/GIOP/giop-send-buffer.c
(giop_send_buffer_append_aligned): kill
unused indirect_left.
* src/orb/orb-core/corba-any.c(ORBit_marhsal_value):
Use giop_send_buffer_append_aligned when appropriate.
Fixup long long and long double cases.
* test/everything/: added long long regression test.
2001-08-28 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-any-type.h:
kill ORBit_marshal_value_info_struct.
* include/orbit/orb-core/corba-any.h,
/src/orb/orb-core/corba-any.c
(ORBit_marshal_value): remove
ORBit_marshal_value_info arg, special case
boolean/char/octet sequences and arrays.
(ORBit_marshal_arg): update ORBit_marshal_value call.
(ORBit_marshal_any): ditto.
* src/orb/orb-core/orbit-small.c
(orbit_small_marshal): ditto.
* src/orb/orb-core/orbit-trace.c
(ORBit_trace_value): kill ORBit_marshal_value_info.
2001-08-27 Mark McLoughlin <mark@skynet.ie>
* test/everything/server.c
(test_TestFactory__fini): free context ref.
(test_TestFactory_Servant): free poa ref.
2001-08-27 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/iop-profiles.c
(IOP_component_free): free object key.
(IOP_TAG_INTERNET_IOP_free): ditto.
(IOP_TAG_ORBIT_SPECIFIC_free): ditto.
Note: To avoid deadlock use ORBit_free_T, even
though the lock is not neccessarily taken.
This doesn't matter, because no RootObjects
are affected.
2001-08-27 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/poa.c(ORBit_POA_setup_root): release
the policy.
2001-08-27 Mark McLoughlin <mark@skynet.ie>
* configure.in, ORBit-2.0.pc.in: removed
THREADLIBS stuff. Handled by linc.
2001-08-24 Michael Meeks <michael@ximian.com>
* Version 2.3.94
* Makefile.shared: don't generate .deps - totaly broken.
* test/Makefile.am: dynany.idl not .idk !
* src/idl-compiler/orbit-idl-main.c (main): use
the full filename not the basename !
* src/idl-compiler/orbit-idl-c-backend.c
(out_for_pass): create the .deps directory if it doesn't
exist - spew only warnings.
* src/orb/orb-core/Makefile.am: why not generate the
headers we go on to include ?
* src/idl-compiler/orbit-idl-c-backend.c
(out_for_pass): print the correct name of what it failed
to open...
2001-08-23 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/allocators.c
(ORBit_freekids_via_TypeCode_T): unref the
object reference.
* src/orb/orb-core/corba-policy.c
(CORBA_Policy_destroy): don't unref the
object - that's CORBA_Object_release's job.
2001-08-23 Michael Meeks <michael@ximian.com>
* configure.in: require linc 0.1.4
bump version to 2.3.94
2001-08-23 Sander Vesik <Sander.Vesik@sun.com>
* configure.in: check for popt.h
2001-08-23 Mark McLoughlin <mark@skynet.ie>
* test/poa/poatest-basic??.c:
do the policy thang correctly.
2001-08-23 Mark McLoughlin <mark@skynet.ie>
Bunch of warnings fixes.
* libIDL/lexer.l, libIDL/parser.y,
libIDL/util.c,
src/idl-compiler/orbit-idl-c-headers.c:
cast char to int for isspace() etc.
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_list_push): kill G_BREAKPOINT.
* src/orb/dynamic/dynany.c
(DynamicAny_DynStruct_get_elements_as_dyn)
kill unused newdyn.
* src/orb/orb-core/corba-context.c
(ctx_get_values) changes CORBA_Identifier arg
to const CORBA_char *.
* src/orb/orb-core/iop-profiles.c
(IOP_components_marshal): kill unsed lenptr.
* test/test-dynany.c(test_struct): pass dyn_struct
to DynamicAny_DynStruct_* instead of dyn_any.
2001-08-23 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-context.c,
src/orb/orb-core/corba-nvlist.c,
src/orb/orb-core/corba-object.c,
src/orb/orb-core/corba-orb.c,
src/orb/orb-core/corba-request.c,
src/orb/poa/poa.c: The implications of Maciej's
patch. Match up API defs with IDL generated defs.
* src/orb/orb-core/iop-profiles.c:
include orb-core-private.h.
* src/orb/poa/poa.c(ORBit_POA_okey_to_poa): killed
unused.
2001-08-22 Maciej Stachowiak <mjs@noisehavoc.org>
* src/idl-compiler/orbit-idl-c-utils.c
(orbit_cbe_write_param_typespec_str): If a type Foo is a typedef
for CORBA_string, write const CORBA_char * instead of const
Foo. This is needed to avoid warnings in the generated skeletons.
2001-08-20 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/poa.c
(ORBit_POAObject_object_to_objkey) removed
objid.
(ORBit_ORB_find_POA_for_okey) killed.
2001-08-20 Martin Baulig <baulig@suse.de>
* src/orb/GIOP/giop-connection.c (giop_connection_initiate): If
the connection could not be established, drop the connection list
lock right before calling g_object_unref(cnx).
2001-08-20 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-typecode.c
(cbe_tc_generate): only do strange object mapping things for PIDL.
2001-08-20 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/poa-servants.c,
src/orb/poa/poa-manager.c,
src/orb/poa/poa.c: more cleanup.
2001-08-20 Martin Baulig <baulig@suse.de>
* src/orb/dynamic/dynany.c (dynany_kind_mismatch):
Make it work with aliases.
(DynamicAny_DynStruct_get_elements_as_dyn_any): Implemented.
(DynamicAny_DynSequence_set_elements_as_dyn_any): Implemented.
2001-08-18 Michael Meeks <michael@ximian.com>
* test/everything/server.c: init threads, before ORB init.
* test/everything/client.c: ditto.
* src/orb/GIOP/giop.c (giop_init): actualy do pass
FALSE to linc_init now we know it works in threaded
mode.
2001-08-20 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/poa-policy.c: create policy
methods with macros. Simplifies things.
* src/orb/poa/poa-manager.c: more scrubbing.
2001-08-19 Maciej Stachowiak <mjs@noisehavoc.org>
* src/orb/orbit-init.c: Include <sys/time.h> to fix build.
2001-08-19 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/poa.c: code movement, cleaning etc.
* src/orb/poa/orbit-poa.h: only export what's
neccessary.
2001-08-18 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): fix deadlock.
* src/orb/GIOP/giop.c (giop_init): pass FALSE to
linc_init, if peopl want threads they have to
initialize them before initializing the ORB.
* src/orb/orb-core/orbit-object.c
(ORBit_RootObject_release): upd locking.
move global lock into corba-orb.c
* src/orb/orb-core/allocators.c
(ORBit_freekids_via_TypeCode, ORBit_free): upd locking.
* src/orb/orb-core/corba-object.c
(ORBit_objref_find): fix locking
homogenise style.
* include/orbit/orb-core/orbit-object.h: update
ORBit_RootObject_lifecycle_lock decl. - wtf. is this
global !?
* src/orb/orb-core/corba-orb.c
(ORBit_locks_initialize): upd.
(CORBA_ORB_init): always init locks.
* src/orb/GIOP/giop-recv-buffer.c:
(giop_recv_buffer_init): re-write.
s/O_MUTEX/LINC_MUTEX/ fix stylistic ugliness,
remove redundant forward prototypes.
* src/orb/GIOP/giop-connection.c
(giop_connection_dispose): update lock destruction.
(giop_connection_handle_input): FIXME: introduced
possible re-enterancy deadlock here.
s/O_MUTEX/LINC_MUTEX/
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): use g_object_unref not
giop_connection_unref
(ORBit_try_connection): ditto.
* src/orb/GIOP/giop-connection.c
(giop_connection_list_init): upd. mutex code.
(giop_connection_unref): kill.
* src/orb/GIOP/giop-send-buffer.c
(giop_get_request_id): prune redundant, slow cruft.
(giop_send_buffer_init): update locking code, kill 'id'
lock - just use a heap / stack pointer - doh.
(giop_send_buffer_append_real): kill redundant forward
prototype.
(giop_IOP_ServiceContextList_marshal),
(giop_CORBA_sequence_octet_marshal): remove cruft.
use linc mutex code throught.
* configure.in: require linc 0.1.3
2001-08-18 Mark McLoughlin <mark@skynet.ie>
* configure.in: kill AC_CONFIG_SUBDIRS(popt)
2001-08-18 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
* src/idl-compiler/orbit-idl-c-backend.c
(out_for_pass): raise a g_error instead of segfaulting
if the output can't be opened or popened
2001-08-16 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/orbit-debug.h:
add.
* src/orb/orb-core/orbit-small.c,
* src/orb/orb-core/orbit-typelib.c,
src/orb/orb-core/orbit-trace.c:
move debug/trace stuff to orbit-debug.h
2001-08-16 Michael Meeks <michael@ximian.com>
* configure.in: require linc >= 0.1.2
* src/orb/GIOP/giop-connection.c
(giop_connection_handle_input): update sig.
(giop_connection_real_state_changed): hack out
linc_io_add_watch. Use new linc 'handle_input'
abstraction.
2001-08-15 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-deps.c: update.
(orbit_idl_output_c_deps): if we didn't open the fh;
return.
* src/idl-compiler/orbit-idl-c-backend.c
(out_for_pass): only fopen non NULL deps files.
2001-08-14 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_marshal_context): trace CORBA contexts nicely.
2001-08-15 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-any.h,
src/orb/orb-core/corba-any.c: implement
CORBA_any_{set|get}_release as macros.
2001-08-13 Maciej Stachowiak <mjs@noisehavoc.org>
Implemented dependency tracking in the IDL compiler (much like the
similar feature of gcc) and use it everywhere.
* src/idl-compiler/orbit-idl-c-deps.c (orbit_idl_output_c_deps,
output_deps): New pass that outputs dependency info in a format
suitable for including into a Makefile.
* src/idl-compiler/orbit-idl-main.c (main): Add a --deps switch
which takes a filename argument.
* src/idl-compiler/orbit-idl-c-backend.h,
src/idl-compiler/orbit-idl-c-backend.c (orbit_idl_output_c):
Output dependencies when requested.
(orbit_idl_c_filename_for_pass, out_for_pass): Split out the code
that generates the output filename for each pass and make it
public, to help the new dependency pass.
* src/idl-compiler/orbit-idl-driver.c (orbit_idl_to_backend):
Always pass IDLF_SRCFILES flag, since SRCFILE nodes are required
by the dependency generation pass.
* src/idl-compiler/orbit-idl-c-headers.c (ch_output_types): Only
output weird stuff for SRCFILE nodes when suppressing includes.
* src/idl-compiler/orbit-idl3-types.h: Add dependency pass and a
#define for the number of passes, to help avoid magic numbers in
code.
* src/idl-compiler/Makefile.am: Add orbit-idl-c-deps.c to build.
* Makefile.shared: Common Makefile segment that has the
appropriate rules for building IDL files and generating dependency
info for targets of IDL sources.
* include/orbit/dynamic/Makefile.am,
include/orbit/orb-core/Makefile.am, include/orbit/poa/Makefile.am,
src/orb/dynamic/Makefile.am, src/orb/include/Makefile.am,
src/orb/orb-core/Makefile.am, src/orb/poa/Makefile.am,
src/services/name/Makefile.am, test/Makefile.am,
test/everything/Makefile.am, test/inhibit/Makefile.am,
test/poa/Makefile.am: Use Makefile.shared and IDL dependencies to
simplify and sanitize IDL compilation.
* include/orbit/dynamic/.cvsignore,
include/orbit/orb-core/.cvsignore, include/orbit/poa/.cvsignore:
Ignore .deps directories.
2001-08-14 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-headers.c
(ch_output_const_dcl): try and get libIDL to give us some
useful information - right !
* src/idl-compiler/orbit-idl-driver.c
(orbit_idl_to_backend): set rinfo->namespace.
* src/orb/orb-core/corba-any.c (ORBit_copy_value_core): fix
heinous _buffer = TRUE bug.
2001-08-13 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testMisc): invoke a non
existant method on an object.
(testMisc): add a (currently failing) check for Martin's bug.
* test/everything/everything.idl: add ObjectStruct.
* src/orb/orb-core/iop-profiles.c
(IOP_profile_dump): dump the correct oki.
2001-08-13 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-object-type.h:
kill IOP_ObjectKey_info. Use ORBit_ObjectKey.
* include/orbit/poa/orbit-adaptor.h,
src/orb/orb-core/corba-object.c,
src/orb/orb-core/iop-profiles.c,
src/orb/orb-core/iop-profiles.h,
src/orb/orb-core/orb-core-private.h,
src/orb/poa/orbit-adaptor.c,
test/ior-decode.c:
s/IOP_ObjectKey_info/ORBit_ObjectKey/. Add
ORBit_AdaptorKey. CORBA_free the object key
instead of g_free-ing it.
* include/orbit/poa/portableserver-poa-type.h:
kill num_to_koid_map and koid_rand_len.
* src/orb/poa/orbit-poa.h:
kill ORBit_POAKOid, ORBIT_POAKOID_OidLenOf etc.
* src/orb/poa/poa.c
(ORBit_POAObject_object_to_objkey): Just use the
adaptor key and object Id for the key. Improvements
will follow. Kill num_to_koid_map etc.
* include/orbit/GIOP/giop-send-buffer.h,
src/orb/GIOP/giop-send-buffer.c
(giop_send_buffer_use_request,
giop_send_buffer_use_locate_request):
Take a ORBit_ObjectKey instead an iovec.
2001-08-13 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa-policy.h,
include/orbit/poa/portableserver-poa-type.h,
src/orb/poa/poa-policy.c,
src/orb/poa/poa-policy.c,
src/orb/poa/poa.c: kill obj_rand_len. kill
ORBit_PortableServer_OkeyrandPolicy_t.
2001-08-13 Martin Baulig <baulig@suse.de>
* src/idl-compiler/orbit-idl-c-common.c: Increase the
length of the ORBit::IArguments sequence by one so that
the trailing NULL element is copied as well.
2001-08-11 Michael Meeks <michael@ximian.com>
* test/typelib-dump.c (list_libs): impl.
(main): list installed type libraries.
2001-08-11 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/orbit-poa.h,
src/orb/poa/poa.c:
(ORBit_POA_make_sysoid): Always use random
data. Rename to ORBit_POA_new_system_objid.
(ORBit_POA_create_object): make static. Remove
unused asDefault arg.
(ORBit_POAObject ORBit_POA_okey_to_obj): kill unused.
2001-08-10 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-typelib.c
(ORBit_get_typelib_paths): expose internaly.
2001-08-10 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_handle_exception_array): set the typecode in the
CORBA_Environment as we demarshal.
* src/orb/orb-core/orbit-trace.c
(ORBit_trace_typecode): upd.
(ORBit_trace_any): impl.
* src/orb/orb-core/orbit-small.c (orbit_small_demarshal):
more trace debug: out parameters & exceptions.
2001-08-10 Michael Meeks <michael@ximian.com>
* test/everything/test.sh: trash /tmp/orbit-$USER before
we start ...
2001-08-09 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/Makefile.am: add orbit-typelib.c
* src/orb/orb-core/orbit-small.c: split out type libraries
* src/orb/orb-core/orbit-typelib.c: to here.
* src/orb/orb-core/orbit-trace.c (ORBit_trace_value): fixup.
2001-08-08 Michael Meeks <michael@ximian.com>
* test/Makefile.am: add typelib-dump
* test/typelib-dump.c (dump_iface): impl.
2001-08-08 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/iop-profiles.c (IOP_component_free):
don't free the non-allocated oki - it's part of the
component's structure.
* include/orbit/orbit.h: add orbit_version.
* configure.in (then): kill HAVE_LIMITED_WRITEV check.
* include/orbit/orbit-config.h.in: kill HAVE_ALLOCA,
HAVE_LIMITED_WRITEV - unused.
* src/orb/orbit-init.c: setup orbit_version char *
* src/orb/Makefile.am: define ORBIT_VERSION.
2001-08-08 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/orbit-small.c
(load_module): unload module, if not needed.
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): free object key.
* test/everything/client.c
(testString): free ior.
2001-08-08 Mark McLoughlin <mark@skynet.ie>
* test/everything/client.c
(testIInterface): free iinterface.
2001-08-08 Mark McLoughlin <mark@skynet.ie>
* test/everything/client.c
(testUnboundedSequence): set _release.
(testBoundedSequence): ditto.
(testSequenceOfAny): ditto.
2001-08-07 Michael Meeks <michael@ximian.com>
* test/everything/client.c: call testMisc.
(testMisc): impl CORBA_TypeCode_equal / equivalent
regression tests.
2001-08-07 Michael Meeks <michael@ximian.com>
* Version 2.3.93
* src/orb/orb-core/corba-typecode.c
(CORBA_TypeCode_eqivalent): rename to
(CORBA_TypeCode_equivalent): this, doh.
* src/orb/orb-core/corba-typecode.c
(typecode_equiv_internal): fixup.
2001-08-07 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
* src/orb/orb-core/allocators.c
(ORBit_free_T): do g_error instead of g_assert,
makes debugging a bit easier.
2001-08-07 Mark McLoughlin <mark@skynet.ie>
* src/orb/dynamic/dynany.c
(DynamicAny_DynStruct_get_members): set _release
to CORBA_TRUE.
(DynamicAny_DynStruct_get_members_as_dyn_any): ditto.
(DynamicAny_DynSequence_get_elements): ditto.
* ORBit2/src/orb/orb-core/corba-any.c
(ORBit_copy_value_core): ditto.
* src/orb/poa/poa.c(ORBit_POA_new): ditto.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_list_initial_services): use CORBA_TRUE instead
of TRUE.
* src/orb/orb-core/corba-types.c
(ORBit_sequence_CORBA_octet_dup): ditto.
* src/orb/orb-core/orbit-small.c(load_module): ditto.
2001-08-07 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testIInterface): actualy
free the iinterface structure.
* src/orb/orb-core/orbit-small.c (load_module): fix leak.
* src/orb/orb-core/corba-types.c
(ORBit_sequence_CORBA_octet_dup): set release to TRUE.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_list_initial_services): ditto.
* src/orb/poa/clean-poa.c
(PortableServer_POA__get_the_children): ditto.
* src/orb/poa/clean-poa.c (ORBit_POA_create_object): ditto.
* src/orb/poa/poa.c (PortableServer_POA__get_the_children),
(ORBit_POA_create_object): ditto.
(PortableServer_string_to_ObjectId): revert.
2001-08-07 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/poa.c
(PortableServer_string_to_ObjectId): set _release
to TRUE.
2001-08-07 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-policy.c
(ORBit_Policy_release): impl.
(ORBit_Policy_new): ref the policy.
(CORBA_Policy_destroy): unref the policy.
* include/orbit/orb-core/corba-policy-type.h: killed
CORBA_Policy_t, POLICY_CAST_OUT, POLICY_CAST_IN.
* src/orb/poa/poa.c(ORBit_POA_setup_root): cleaned up.
2001-08-07 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-trace.c
(ORBit_trace_value): impl.
* src/orb/orb-core/Makefile.am: add orbit-trace.c
2001-08-06 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-typecode.c
(typecode_equiv_internal): split this out of
(CORBA_TypeCode_equal): here.
(CORBA_TypeCode_eqivalent): impl.
(typecode_equiv_internal): impl equivalent checking.
2001-08-06 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/orbit-small.c
(ORBit_small_getepv): put back.
2001-08-04 Michael Meeks <michael@ximian.com>
* src/orb/poa/orbit-adaptor.c
(ORBit_handle_request): fix potential segv.
on NULL objkey.
2001-08-02 Martin Baulig <baulig@suse.de>
* src/orb/orb-core/orbit-interface.idl:
(ORBit::IInterfaces): New typedef.
* include/orbit/orb-core/orbit-small.h,
src/orb/orb-core/orbit-small.c
(ORBit_small_get_iinterfaces): New function.
2001-08-02 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa(ORBit_OAObject_invoke): let's not
return a value from a void function, shall we.
2001-08-01 Mark McLoughlin <mark@skynet.ie>
* test/poa/*: re-indent. sigh.
2001-08-01 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/orbit-adaptor.h,
src/orb/poa/orbit-adaptor.c
(ORBit_OAObject_invoke,
ORBit_OAObject_object_to_objkey): impl.
* src/orb/orb-core/iop-profiles.c,
src/orb/orb-core/orbit-small.c:
used the above.
2001-07-31 Darin Adler <darin@bentspoon.com>
* src/orb/orb-core/corba-object.c: (CORBA_Object_non_existent):
Don't dereference obj until after we check it for nil.
2001-07-31 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/orbit-adaptor.h,
src/orb/poa/orbit-adaptor.c,
include/orbit/poa/Makefile.am,
src/orb/poa/Makefile.am:
added orbit-adaptor.[ch]. Virtual Object Adaptor
interface.
* include/orbit/poa/poa-basics.h: added
typedefs for ORBit_OAObject and ORBit_ObjectAdaptor.
* include/orbit/poa/poa-types.h,
include/orbit/poa/portableserver-poa-type.h:
Included base structures in ORBIt_POAObject and
PortableServer_POA.
* src/orb/poa/orbit-poa-export.h
(ORBit_handle_request, ORBit_small_handle_request,
ORBit_POA_object_to_okey): kill.
* src/orb/poa/poa.c
(ORBit_POAObject_is_active, ORBit_POAObject_invoke): impl.
(ORBit_POA_object_to_okey) rename to
ORBit_POAObject_object_to_objkey.
(ORBit_handle_request) rename to
ORBit_POA_handle_request.
(ORBit_small_handle_rquest) rename to
ORBit_POAObject_handle_request.
* include/orbit/orb-core/corba-object-type.h,,
include/orbit/orb-core/corba-orb-type.h,
include/orbit/orb-core/orbit-object.h,
include/orbit/orb-core/orbit-small.h,
src/orb/orb-core/corba-object.c,
src/orb/orb-core/corba-orb.c,
src/orb/orb-core/iop-profiles.c,
src/orb/orb-core/orbit-small.c,
test/everything/server.c: host of minor
supporting changes.
2001-07-31 Michael Meeks <michael@ximian.com>
* Version 2.3.92
2001-07-31 Michael Meeks <michael@ximian.com>
* test/poa/Makefile.am: fixup.
2001-07-31 Martin Baulig <baulig@suse.de>
* src/orb/dynany.c
(DynamicAny_DynStruct_set_members_as_dyn_any): Impl.
(DynamicAny_DynStruct_get_members_as_dyn_any): Impl.
* tests/test-dynany.c: Added tests for them.
2001-07-31 Michael Meeks <michael@ximian.com>
* test/everything/client.c (find_tc): impl.
(testIInterface): beef up, and test new methods.
* src/orb/orb-core/orbit-small.c (ORBit_small_get_types): impl.
(ORBit_small_load_typelib): fixup local lib names.
* src/idl-compiler/orbit-idl-c-imodule.c (cc_small_build_exceptions):
prune.
(cc_small_build_types): merge exceptions to here.
* src/orb/orb-core/orbit-small.c (ORBit_iinterface_from_idl):
kill cruft.
(add_iinterface, lookup_iinterface, get_type_db): impl.
(ORBit_small_get_iinterface): lookup in the local db first
then classinfo, then remote.
(shallow_copy_iinterface): rename to
(copy_iinterface): & add 'shallow' arg.
(load_module): actualy close the handle and register the types.
(get_types, add_types): impl.
(ORBit_small_load_typelib): upd.
(load_module): upd.
(get_types, add_types): impl.
* test/everything/Makefile.am (included_src): add
context-server
2001-07-31 Michael Meeks <michael@ximian.com>
* configure.in: require linc-0.1.1
bump version to 2.3.92
* src/orb/orb-core/orbit-small.c
(ORBit_small_get_types): stub for API freeze.
2001-07-30 Martin Baulig <baulig@suse.de>
* src/orb/dynamic.c (dynamic_sequence_realloc_to): Initialize
the newly created elements.
2001-07-30 Martin Baulig <baulig@suse.de>
* configure.in: Bump ORBIT_SERIAL to 16.
* include/orbit/orb-core/corba-object.h (CORBA_Object__itype):
Renamed to CORBA_Object__iinterface.
* include/orbit/orb-core/orbit-small.h (ORBit_IModule):
Added `CORBA_TypeCode *exceptions' and `CORBA_TypeCode *types'.
* include/orbit/orb-core/corba-typecode.h
(CORBA_TypeCode_struct): Added `CORBA_unsigned_long flags'.
* src/idl-compiler/orbit-idl-c-*.c: Use `__iinterface' instead of
`__itype' as prefix for the ORBit_IInterface structs.
* src/idl-compiler/orbit-idl-c-imodule.c: Create the new type and
exception arrays.
2001-07-28 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testStructAny): impl.
(run_tests): hook up.
* test/everything/structServer.c (StructServer_opStructAny): impl.
(StructServer_epv): add. & fix all the serious stylistic issues.
2001-07-27 Mark McLoughlin <mark@skynet.ie>
* /src/idl-compiler/orbit-idl-c-common.c:
add a couple of '\n's to the generated code. We shouldn't rely
on indent to fix up broken code.
2001-07-27 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (quick_compare): impl.
(ORBit_small_invoke): use it instead of a hard pointer
compare - since we can make new multiple IInterfaces
to point to the same data.
2001-07-26 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (get_typelib_paths):
add to the search path.
* src/orb/orb-core/Makefile.am: define ORBIT_TYPELIB_DIR
2001-07-26 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-typecode.c
(cbe_tc_generate): fix duplicate static bug.
2001-07-26 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-main.c (main): only
output imodule information if explicitely asked,
and then only output the neccessary.
2001-07-25 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-typecode.c
(cbe_tc_generate): make TC's static in typelibs.
* src/idl-compiler/orbit-idl-c-common.c
(cc_small_output_itypes): make the __itype data static if
for a type library, also for __imethods.
(cc_output_alloc_interface): only output __classids
in certain cases.
* src/orb/orb-core/orbit-small.c (ORBit_small_load_typelib),
(get_typelib_paths, add_if_unique): impl.
* test/everything/Makefile.am: build an _module typelib.
* test/everything/client.c (testIInterface): load it.
* configure.in: we need gmodule.
* ORBit-2.0.pc.in (Requires): add @THREAD_LIBS@ and gmodule.
* src/idl-compiler/orbit-idl-c-common.c
(orbit_idl_output_c_common): inhibit GIOP include for small.
* src/idl-compiler/orbit-idl-c-imodule.c
(cc_small_output_imodule): kill.
(cc_small_output_base_itypes): ditto.
(cc_small_build_interfaces): upd.
(orbit_idl_output_c_imodule): upd.
* include/orbit/orb-core/orbit-small.h: define the
ORBit_IModule interface in standard C - not IDL, so we can
have nicer dereferencing.
* src/orb/orb-core/orbit-interface.idl: kill IModule bits.
2001-07-25 Maciej Stachowiak <mjs@noisehavoc.org>
* src/idl-compiler/orbit-idl-c-headers.c: (ch_output_codefrag):
Add a newline after emitted codefrag lines to avoid line
directives running together with the next line.
2001-07-25 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/iop-profiles.c(IOP_components_marshal),
src/orb/orb-core/corba-contexts.c(ORBit_Context_marhsal),
see below... more of the same.
2001-07-25 Mark McLoughlin <mark@skynet.ie>
* src/orb/iop-profiles.c(IOP_profile_marshal),
src/orb/corba-typecode.c(tc_enc):
do not dereference pointers that aren't neccessarily
properly aligned.
* src/orb/GIOP/giop-send-buffer.c: document this.
2001-07-25 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop.c (giop_dump_send, giop_dump_recv),
(dump): move here.
* test/everything/basicServer.c (BasicServer_opOneWay): impl.
* test/everything/client.c (testString): call it.
* test/everything/everything.idl: add opOneWay to BasicServer.
2001-07-24 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (ORBit_small_invoke_poa): don't send
anything back for oneway methods ...
(giop_dump_recv, giop_dump_send): robustify and publicise.
* src/orb/GIOP/giop-recv-buffer.c (giop_recv_buffer_handle_fragmented):
add a warning for the broken fragmentation case ...
(giop_recv_buffer_use_noblock): kill.
(giop_recv_list_push): add conditional debug
2001-07-24 Martin Baulig <baulig@suse.de>
* src/idl-compiler/orbit-idl-c-imodule.c: Correctly calculate
the length of the __base_types array.
2001-07-24 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (shallow_copy_iinterface): impl.
(ORBit_small_get_iinterface): use it.
* src/orb/orb-core/corba-object.c: update to mention exceptions
we fire on get_iinterface.
* src/orb/orb-core/corba-env.c (CORBA_exception_free): NULL
the exception id after freeing it, so we don't double free: doh !
* src/orb/orb-core/orbit-small.c (ORBit_handle_exception_array):
robustify the 'fired an unknown exception' case.
(ORBit_small_send_user_exception): don't use a fakeev - use
the real one, since the exception type is grokked elsewhere,
return a boolean to indicate a re-marshal of a sys exception,
and free the send_buffer.
(ORBit_small_invoke_poa): upd to loopback on exception.
* test/everything/client.c (testIInterface): update tests
to go over the wire.
2001-07-24 Martin Baulig <baulig@suse.de>
The IDL compiler now creates a -imodule.c file which
contains a `ORBit_IModule orbit_imodule_data' struct.
We'll compile these -imodule.c files into shared
libraries which can be dlopen()ed by scripting languages.
There is a --noimodule command line option to turn this
feature off.
* src/orb/orb-core/orbit-interface.idl
(IModuleVersion, IInterfaces): New typedefs.
(IModule): New struct type.
* configure.in: Bump ORBIT_SERIAL to 14.
* src/idl-compiler/orbit-idl3-types.h (enabled_passes):
Added OUTPUT_IMODULE.
* src/idl-compiler/orbit-idl-main.c: Added "--noimodule"
command line option to disable output of the -imodule.c
files.
* src/idl-compiler/orbit-idl-c-imodule.c: New file.
2001-07-23 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-main.c (main): add version
output.
2001-07-23 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (ORBit_small_invoke_poa):
only free the return value if there is no exception.
2001-07-20 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/iop-profiles.c (IOP_generate_profiles):
remove 'need_object_key_component' - we always do, to flag
UTF-8.
(IOP_profile_get_info): fallback to obj->oki if coki is NULL.
(IOP_components_marshal): hook up CODE_SETS.
(IOP_TAG_CODE_SETS_marshal): impl.
(CodeSetComponent_marshal): impl.
(IOP_components_demarshal): upd.
(CodeSetComponent_demarshal): impl.
(IOP_component_free): upd.
2001-07-20 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-send-buffer.c
(giop_send_buffer_append_indirect): rename to
(giop_send_buffer_append_aligned): this, to make not only
more efficient, but clean and sane.
(giop_send_buffer_align): re-write to be actualy fast,
remove the 'register' keyword - it doesn't speed things up.
(get_next_indirect): split out of _append & re-write.
(giop_send_buffer_append_aligned): here & re-write.
(giop_send_buffer_append_copy): impl simple version for
(giop_send_buffer_append): to use & upd.
* src/orb/orb-core/iop-profiles.c: upd.
* src/orb/orb-core/corba-context.c: upd.
* src/orb/orb-core/corba-any.c: upd.
* src/orb/orb-core/corba-typecode.c: upd.
* src/orb/orb-core/corba-env.c: upd.
* src/orb/orb-core/corba-object.c: upd.
* src/orb/orb-core/orbit-small.c: upd.
2001-07-19 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (ORBit_POAObject_release_cb): try
freeing the object_id before we free the pobj we need
to reference it, also NULL it for safety.
2001-07-19 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c: remove redundant
DEBUG_LOCAL_TEST macro ...
* src/orb/GIOP/giop-connection.c
(giop_connection_real_state_changed): use
linc watches.
2001-07-18 Michael Meeks <michael@ximian.com>
* test/echo-server.c (main): use CORBA_ORB_run.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_perform_work, CORBA_ORB_work_pending),
(CORBA_ORB_run): use new linc_main stuff instead of
g_main.
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_buffer_get): use linc_main_iteration, this
requires the latest CVS linc.
(giop_recv_buffer_use): ditto.
2001-07-18 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-headers.c(ch_output_native),
src/idl-compiler/orbit-idl-c-stubs.c(cs_small_output_stub):
add a couple of '\n's to the generated code. We shouldn't rely
on indent to fix up broken code.
2001-07-18 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(_ORBit_object_get_connection): rename to
(ORBit_object_get_connection): this & re-order slightly.
(CORBA_Object_non_existent): local objects always exist,
even if we havn't bothered remoting them yet => no
connection.
* include/orbit/orb-core/corba-object.h: kill macro
(ORBit_object_get_connection): somewhat confusing.
* test/everything/client.c (testIInterface): add
CORBA_Object_non_existent and CORBA_Object_is_nil
regression tests.
2001-07-17 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-main.c (main): make
the runtime message more pleasant.
* src/orb/orb-core/corba-object.c
(ORBit_IInterface_is_a): upd. to sequence<String>
* src/idl-compiler/orbit-idl-c-common.c
(cc_small_output_itypes): output sequence<string> for
base types & get the length right.
(cc_small_output_base_itypes): upd.
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_skel): kill.
(ORBit_small_invoke): impl.
* configure.in (ORBIT_SERIAL): bump.
* src/orb/orb-core/orbit-interface.idl: switch
to sequence<string> for base_interfaces.
2001-07-17 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testIInterface):
ORBit_small_get_type_id regression test.
(run_tests): hook it up.
* src/orb/poa/poa.c (ORBit_classinfo_lookup): impl.
* src/orb/poa/clean-poa.c (ORBit_classinfo_lookup): impl.
* src/orb/orb-core/corba-object.c
(ORBit_impl_ORBit_get_iinterface): impl.
(ORBit_impl_ORBit_get_type_id): impl.
(get_small_skel_CORBA_Object): extend.
* src/orb/orb-core/orbit-small.c
(ORBit_small_get_iinterface): impl.
(ORBit_small_get_type_id): impl.
* src/orb/orb-core/corba-object.c: add
ORBit_get_iinterface / ORBit_get_type_id methods.
2001-07-13 Peter Williams <peterw@ximian.com>
* configure.in (ACLOCAL): Preserve ACLOCAL_FLAGS in
ACLOCAL. (Update: whoops, typo! Fixed.) (Update: I
do not believe it. Fix another typo.)
2001-07-14 Martin Baulig <baulig@suse.de>
* ORBit-2.0.pc.in (orbit_idl): New variable.
2001-07-13 Mark McLoughlin <mark@skynet.ie>
* docs/devel/internals/poa-notes.txt: added.
2001-07-13 Michael Meeks <michael@ximian.com>
* test/everything/client.c (testString): use the getIOR
method to test stringification.
* test/everything/server.c
(TestFactory_getBasicServerIOR): impl.
2001-07-13 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (ORBit_small_handle_request):
re-indent to make legible.
* src/orb/orb-core/corba-object.c (CORBA_Object_is_a):
fix invocation code.
(ORBit_impl_CORBA_Object_is_a): fix indirection.
Thanks to Martin Baulig for reporting repo_id matching
bug.
* test/everything/client.c (testFixedLengthStruct):
add CORBA_Object_is_a test.
* src/orb/orb-core/allocators.c
(ORBit_freekids_via_TypeCode_T): kill broken assumption
that align == length !
* src/orb/orb-core/corba-typecode.c
(ORBit_tk_to_name): impl.
* test/test-dynany.c: portability fix for CHECK_OK.
2001-07-12 Darin Adler <darin@bentspoon.com>
* include/orbit/poa/Makefile.am: Install poa-basics.h.
2001-07-12 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-common.c,
src/orb/orb-core/orbit-interface.idl,
(IInterface)change name string to typcode.
* src/orb/orb-core/corba-object.c,
src/orb/orb-core/orb-core-export.h,
src/orb/poa/poa.c: re-jig CORBA_Object_is_a
using the IInterface data.
2001-07-12 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c (ORBit_register_objref):
assert profile_list != NULL.
* src/orb/poa/poa.c (ORBit_POA_object_to_okey): add precondition.
* src/orb/orb-core/iop-profiles.c
(IOP_TAG_ORBIT_SPECIFIC_marshal): use the local oki if we have it.
(IOP_TAG_INTERNET_IOP_marshal): use obj->oki where appropriate.
(IOP_generate_profiles): only set obj->oki if we have a pobj.
* NB. obj->oki == NULL for objects passed in remotely, need
to bear this in mind when re-marshaling the profiles.
2001-07-12 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-object.h,
src/idl-compiler/orbit-idl-c-common.c,
src/idl-compiler/orbit-idl-c-skels.c,
src/orb/orb-core/corba-object.c,
src/orb/poa/orbit-poa.h,
src/orb/poa/poa.c:
add IInterface data for CORBA_object.
* include/orbit/orbit-types.h,
include/orbit/poa/poa-types.h,
include/orbit/poa/poa-basics.h: split out
some of poa-types.h into new poa-basics.h. Include
poa-basics.h from orbit-types.h.
* include/orbit/orb-core/corba-object-type.h,
include/orbit/poa/poa-types.h,
include/orbit/poa/poa.h,
src/orb/orb-core/orbit-small.c,
src/orb/poa/orbit-poa-export.h:
make ORBit_POAObject a pointer to ORBit_POAObject_type
instead of a struct.
2001-07-12 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/orbit-small.h,
include/orbit/poa/poa-types.h,
src/idl-compiler/orbit-idl-c-backend.h,
src/idl-compiler/orbit-idl-c-common.c,
src/idl-compiler/orbit-idl-c-demarshal.c,
src/idl-compiler/orbit-idl-c-headers.c,
src/idl-compiler/orbit-idl-c-marshal.c,
src/idl-compiler/orbit-idl-c-skels.c,
src/idl-compiler/orbit-idl-c-stubs.c,
src/idl-compiler/orbit-idl-c-utils.c,
src/idl-compiler/orbit-idl-main.c,
src/orb/dynamic/Makefile.am,
src/orb/orb-core/orbit-small.c,
src/orb/poa/Makefile.am,
src/orb/poa/poa.c: put all the 'non-small'
code back, at Elliot's behest.
Note: The --noidata option remains and the PIDL is
still no longer being compiled with --oldstyle.
* configure.in: bump up ORBIT_SERIAL.
2001-07-11 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-headers.c
(ch_type_alloc_and_tc): do the allocbuf thing.
* src/orb/dynamic/dynany.c,
src/orb/poa/poa.c,
test/poa/poatest-exception.h: kill temporary
hacks for the above.
2001-07-11 Mark McLoughlin <mark@skynet.ie>
* src/idl-compiler/orbit-idl-c-backend.h,
src/idl-compiler/orbit-idl-c-common.c,
src/idl-compiler/orbit-idl-c-demarshal.c,
src/idl-compiler/orbit-idl-c-headers.c,
src/idl-compiler/orbit-idl-c-marshal.c,
src/idl-compiler/orbit-idl-c-skels.c,
src/idl-compiler/orbit-idl-c-stubs.c,
src/idl-compiler/orbit-idl-c-utils.c,
src/idl-compiler/orbit-idl-main.c,
src/idl-compiler/orbit-idl3-types.h: chop, chop.
Remove all non-small code. Kill orbit-idl-c-demarshal.c
and orbit-idl-c-marshal.c. Add --noidata option.
* include/orbit/orb-core/orbit-small.h,
include/orbit/poa/poa-types.h,
src/orb/orb-core/orbit-small.c,
src/orb/poa/poa.c: remove all non-small
code.
* src/orb/dynamic/dynany.c,
src/orb/poa/poa.c,
test/poa/poatest-exception.h: temp hacks
to get around fact that orbit-idl is not
generating aliased sequence allocbufs.
* include/orbit/orb-core/Makefile.am,
src/orb/dynamic/Makefile.am,
src/orb/include/Makefile.am,
src/orb/orb-core/Makefile.am,
src/orb/poa/Makefile.am: kill --oldstyle,
use --noidata.
* test/poa/Makefile.am: depend on orbit-idl.
* configure.in: bump up ORBIT_SERIAL.
2001-07-11 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c (CORBA_Object__freekids):
fix brokenness.
* src/orb/orb-core/corba-typecode.c (ORBit_TypeCode_free_fn):
ditto.
2001-07-11 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (ORBit_POA_free_fn),
(ORBit_POACurrent_free_fn): fix deadlocks
* src/orb/poa/clean-poa.c (ORBit_POACurrent_free_fn),
(ORBit_POA_free_fn): ditto.
* src/orb/orb-core/corba-typecode.c (ORBit_TypeCode_free_fn):
kill deadlocks.
* src/orb/dynamic/dynany.c (DynamicAny_DynAny_release_fn):
use ORBit_free_T to stop deadlock & don't lock on invalidate.
(dynany_invalidate): add 'lock' argument.
update all references.
* src/orb/orb-core/allocators.c (ORBit_free): take
the RootObject_lifecycle_lock, and call
(ORBit_free_T): split out.
(ORBit_freekids_via_TypeCode): split out to
(ORBit_freekids_via_TypeCode_T): here & kill deadlock plague.
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): use the non-locking
release on obj->pobj.
2001-07-10 Michael Meeks <michael@ximian.com>
* configure.in: Bump version to 2.3.91
2001-07-10 Peter Williams <peter@beta.newton.cx>
* test/poa/Makefile.am ($(POATEST_IDLOUT)): use $<
instead of poatest.idl for when srcdir != builddir.
2001-07-10 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa.h(ORBit_POAInvocation):
killed object_id and doUnuse members.
* include/orbit/poa/portableserver-poa-type.h
(PortableServer_POA): replaced default_pobj
member with default_servant;
* src/orb/poa/poa.c
(ORBit_POA_ServantManager_{un}use_servant): pass
a pobj instead of an iframe.
(ORBit_handle_request): split in two. Now
ORBit_small_handle_request can be used for local
calls and original function is a wrapper for
remote calls.
Also various default_servant fixes.
* src/orb/poa/orbit-poa-export.h: introduce
ORBit_small_handle_request.
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_stub): call
ORBit_small_handle_request.
* test/poa/poatest-basic09.c,
test/poa/poatest-basic10.c: commit default
servant tests.
2001-07-09 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-object.c,
src/orb/poa/poa.c: fixed some extreme
braindeadness on my part.
2001-07-07 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-object-type.h,
src/orb/orb-core/Makefile.am,
src/orb/orb-core/corba-object.c,
src/orb/orb-core/orb-core-private.h,
src/orb/orb-core/iop-profiles.c,
src/orb/orb-core/iop-profiles.h: split off all the
profiles stuff on its own.
2001-07-08 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-object.c
(ORBit_RootObject_release): split out core to:
(ORBit_RootObject_release_T): here.
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): use the non-locking release.
* src/orb/poa/poa.c (remove_cb): return FALSE instead of
nothing.
(ORBit_POAObject_release_cb): use non-locking release.
2001-07-07 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-object.h,
src/orb/orb-core/corba-object.c,
src/orb/poa/poa.c: sharing is caring.
Make the POA generated references share their
profile_lists.
2001-07-07 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-object.c: don't carry around
multiple copies of the object key. Only generate it when
it the ref is to be exported.
* src/orb/poa/orbit-poa-export.h,
src/orb/poa/poa.c: rename ORBit_POA_oid_to_okey to
ORBit_POA_object_to_okey and export.
2001-07-07 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-object.c,
src/orb/orb-core/corba-orb.c: only opening listening
sockets when externalising a reference.
2001-07-06 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-object.h,
include/orbit/poa/poa-types.h,
src/orb/orb-core/corba-object.c,
src/orb/poa/orbit-poa.h,
src/orb/poa/poa.c: make an object reference's
profile_list only be generated when it is about to
be externalised.
2001-07-04 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_stub): add ORBIT_STUB_PostCall/PreCall
ref counting checks.
2001-07-05 Mark McLoughlin <mark@skynet.ie>
* include/orbit/orb-core/corba-object-type.h,
include/orbit/poa/poa-types.h,
src/orb/orb-core/corba-object.c,
src/orb/orb-core/orbit-small.c,
src/orb/poa/poa.c,
src/services/name/orbit-name-server.c: make every reference
created by the POA have a POAOjbect associated with it.
s/bypass_obj/pobj/.
2001-07-05 Mark McLoughlin <mark@skynet.ie>
* test/poa/poatest-basic04.c,
test/poa/poatest-basic05.c,
test/poa/poatest-basic06.c,
test/poa/poatest-basic07.c,
test/poa/poatest-basic08.c: use
CORBA_PolicyList_allocbuf instead of g_new0.
2001-07-04 Mark McLoughlin <mark@skynet.ie>
* configure.in: updated glib check.
2001-07-04 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/orbit-interface.idl,
src/idl-compiler/orbit-idl-c-common.c,
src/idl-compiler/orbit-idl-c-headers.c:
added inheritance data to ORBit::IInterface.
2001-07-03 Michael Meeks <michael@ximian.com>
* src/orb/orbit-init.c (ORBit_init_internals): seed
the random number generator once, properly.
* src/orb/GIOP/giop-connection.c s/shutdown/dispose/
* include/orbit/util/basic_types.h: include
glib/gunicode.h Mark needs to update his glib :-)
2001-06-29 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(IOP_TAG_INTERNET_IOP_demarshal): NULL components if
version is !> GIOP_1_0.
* src/idl-compiler/orbit-idl-c-utils.c
(orbit_cbe_get_typespec_str): return CORBA_wstring not
CORBA_wchar *.
* include/orbit/util/basic_types.h: add CORBA_wstring.
2001-06-29 Mark McLoughlin <mark@skynet.ie>
* include/orbit/util/basic_types.h: include gunicode.h,
not glib/gunicode.h.
2001-06-29 Mark McLoughlin <mark@skynet.ie>
* src/orb/poa/poa.c: fixed a couple of porblems
with yesterday's commit.
2001-06-28 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa-types.h,
src/orb/orbit-init.c,
src/orb/orb-core/corba-object.c,
src/orb/orb-core/corba-orb.c,
src/orb/poa/orbit-poa.h,
src/orb/poa/poa.c: sorted out the POA and
POAObject ref counting mess - I hope ;)
* src/orb/poa/poa-servants.c: remove assertions -
not valid in MULT_ID case.
* test/poa/poatest-basic-shell.c,
test/poa/poatest-basic04.c,
test/poa/poatest-basic05.c,
test/poa/poatest-basic06.c,
test/poa/poatest-basic07.c,
test/poa/poatest-basic08.c: release more refs,
and invoke orb->destroy and orb->shutdown.
2001-06-28 Michael Meeks <michael@ximian.com>
* include/orbit/util/basic_types.h: include glib/gunicode.h,
we require HEAD glib.
2001-06-26 Mark McLoughlin <mark@skynet.ie>
* src/orb/orb-core/corba-context.c,
src/orb/poa/poa.c: kill deprecated
g_hash_table_(freeze|thaw) functions.
2001-06-26 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa-types.h,
src/idl-compiler/orbit-idl-c-skels.c :
kill POAObject members use_count, death_callback
and user_data. Relics from an old hack from ORBit0
thats not used anymore.
* src/orb/poa/poa.c: add a few TODO items.
2001-06-26 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-skels.c
(cbe_skel_interface_print_relayer): chop specious overall idx
calculation.
(cbe_skel_interface_print_relayers): calc. m_data idx per
interface so inheritance works, sigh.
* test/everything/everything.idl: inherit StructServer
from BasicServer to regression test method layout under
inheritance.
* test/everything/structServer.c (StructServer_vepv): upd.
2001-06-26 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-connection.c
(giop_connection_handle_input): unuse the incoming
message off the cnx list as we handle it.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_run): just do a g_main_loop_run
2001-06-25 Mark McLoughlin <mark@skynet.ie>
* test/poa/.cvsignore: added.
2001-06-25 Mark McLoughlin <mark@skynet.ie>
* test/poa/*: import.
* configure.in, test/Makefile.am: add poa.
2001-06-25 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa-types.h,
src/idl-compiler/orbit-idl-c-skels.c,
src/orb/poa/poa-servants.c,
src/orb/poa/poa.c : make MULT_ID work by having a list of
POAObjects in the servant's '_private' member.
2001-06-25 Mark McLoughlin <mark@skynet.ie>
* include/orbit/poa/poa.h: add string_to_ObjectId etc.
* src/orb/poa/poa.c: make root POA have non default
IMPLICIT_ACTIVATION policy.
2001-06-25 Michael Meeks <michael@ximian.com>
* src/orb/dynamic/dynany.c
(CORBA_sequence_DynamicAny_NameValuePair_allocbuf),
(CORBA_sequence_DynamicAny_NameValuePair__alloc): impl.
2001-06-25 Martin Baulig <baulig@suse.de>
* src/orb/dynamic/dynany.c
(DynamicAny_DynStruct_set_members),
(DynamicAny_DynStruct_get_members): copy from
ORBit-martin-forked.
2001-06-25 Michael Meeks <michael@ximian.com>
* test/echo-server.c (main): remove hack.
* src/orb/orb-core/corba-orb.c (idle_fn),
(ORBit_ORB_idle_init): kill ugly hack.
2001-06-25 Martin Baulig <baulig@suse.de>
* src/orb/orb-core/corba-object.c: add include.
* src/orb/GIOP/giop-connection.c
(giop_connection_handle_input): handle request as
it finished coming in.
2001-06-23 Martin Baulig <baulig@suse.de>
* configure.in: Don't output the .pc files twice.
* src/idl-compiler/Makefile.am: s/libIDL.la/libIDL-2.la/g.
* test/inhibit/Makefile.am: Removed $(IDLOUT), test_any_built
and $(TEST_ANY_IDLOUT) so this actually works.
2001-06-19 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-stubs.c (cs_small_output_stub):
output pre / post call code even for small stubs / skels.
* include/orbit/poa/poa-types.h: remove redundant type defines.
2001-06-19 Michael Meeks <michael@ximian.com>
* src/orb/util/genrand.c (genrand_unix): if ORBIT_PURIFY don't
use bits of uninitialized stack.
2001-06-18 Erik Walthinsen <omega@temple-baptist.com>
* ORBit-2.0.pc.in, ORBit-CosNaming-2.0.pc.in: brought in from
ORBit-martin-forked.
* .cvsignore, Makefile.am, configure.in: added necessary lines
for above .pc files to be created/installed.
2001-06-19 Mark McLoughlin <mark@skynet.ie>
* src/orb/include/Makefile.am: use --oldstyle
* src/orb/dynamic/Makefile.am: fix build.
* src/orb/poa/Makefile.am: fix build.
* test/Makefile.am: Fix build, kill -lefence.
2001-05-30 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/Makefile.am: simplify makefile ugliness.
* test/Makefile.am (echo_built): fix recursive build
issue.
2001-05-30 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-connection.c (giop_connection_initiate):
only ref the connection if we didn't just destroy it.
2001-05-30 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (ORBit_small_invoke_stub):
don't do an alloca (0), just use &obj - this points to
the stack in a safer, quicker and cleaner way.
2001-05-30 Michael Meeks <michael@ximian.com>
* src/orb/dynamic/dynany.c (dynany_sequence_realloc_to): only
copy old_len elements from the old buffer.
2001-05-30 Michael Meeks <michael@ximian.com>
* src/orb/dynamic/dynany.c: Port from ORBit-stable.
* src/orb/orb-core/allocators.c (ORBit_free): use
ORBit_free internaly not CORBA_free to clean stack traces.
* src/orb/orb-core/corba-any.c (CORBA_any__freekids): ditto
& accelerate.
* src/orb/orb-core/corba-orb.c
(CORBA_ORB_set_initial_reference): fix g_hash_table
manipulation leak / bug.
2001-05-29 Michael Meeks <michael@ximian.com>
* src/orb/dynamic/Makefile.am: install dynamic-defs.h
in the right place ...
* src/orb/orb-core/corba-typecode.c: add long_double TC def.
* src/idl-compiler/orbit-idl-c-headers.c
(ch_type_alloc_and_tc): fixup emmission of __allocbuf as
well as __alloc for sequences.
* include/orbit/orb-core/corba-typecode.h: declare.
TC_CORBA_long_double_struct and TC_CORBA_wstring_struct.
* src/orb/orb-core/corba-any.c (CORBA_any__copy): constipate.
* include/orbit/dynamic/dynamic.h: upd.
* include/orbit/orbit.h: add dynamic.h
* src/orb/dynamic/Makefile.am: add dynany.c
2001-05-25 Michael Meeks <michael@ximian.com>
* src/orb/poa/Makefile.am (runidl_poa): install poa-defs into
the correct directory, fixup the include brokenness.
(POA_IDLOUT): add poa-defs.h - doh.
* src/idl-compiler/orbit-idl-c-headers.c (ch_output_interface):
output TC_ #defines even for PIDL types.
* src/idl-compiler/orbit-idl-c-common.c
(build_marshal_funcs): only output marshalers if we
need to.
(cc_output_tc_walker): Output typecode information for
PIDL types - why not, might help automated language bindings
to the PIDL.
2001-05-25 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (dump): print in-buffer
offsets as well as the data.
* src/orb/orb-core/corba-typecode.c (tc_dec_tk_except):
decode sub_parts sub-types not length.
(tc_enc_tk_except): ditto for encode.
(tc_enc): use the buffer length in the message header
instead of the current_idx, since we now marshal straight
into a single buffer without the encaps cruft.
(tc_dec): fix the recursive arithmetic, make it remember
to duplicate the recursive typecode references.
* src/orb/orb-core/corba-any.c (ORBit_demarshal_value):
duplicate the correct pointer.
* src/orb/orb-core/orbit-small.c (ORBit_small_alloc): re-write
to memset 0 the returned memory.
* src/orb/orb-core/corba-any.c (CORBA_any__freekids): release
the typecode pointer as well.
* src/idl-compiler/orbit-idl-c-common.c (cc_alloc_prep): pass
rinfo around.
2001-05-25 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-context.c (CORBA_Context_set_one_value):
remove the hash table value, so we don't screw up the key allocation.
2001-05-24 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-connection.c (giop_connection_initiate):
reference the connection before returning it, if it wasn't
looked up in the list.
(giop_connection_remove_by_orb): fix serious brokenness.
(giop_connection_close): publicise.
(giop_connection_shutdown): remove the connection from the
connection list.
(giop_connection_unref): remove last unref sillies.
* src/orb/orb-core/corba-object.c (g_CORBA_Object_equal): uglify,
we need to be able to scan for MULTIPLE_COMPONENTS profiles in
order to do the GIOP profile comparison (get_mci): impl helper.
(IOP_Profile_equal): similarly uglify.
(CORBA_Object_release_cb): close the connection and
unref it.
* src/orb/poa/poa.c (ORBit_POA_oid_to_ref): set the profile_type
on the iiop profile.
* src/orb/orb-core/corba-object.c (ORBit_objref_new): actualy
insert new object references into the objrefs hash.
(IOP_Profile_dump): impl.
2001-05-24 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c (CORBA_Object_release_cb):
only unref the connection if it is valid.
(IOP_Profile_equal): re-order compares to accelerate & warn
on unknown profile.
* src/orb/GIOP/giop-connection.c (giop_connection_list_add):
re-privatize.
* src/orb/GIOP/giop-server.c (giop_server_handle_new_connection):
remove - was broken.
* src/orb/GIOP/giop-recv-buffer.c (giop_recv_buffer_data_read):
kill warning.
* src/orb/GIOP/giop-connection.c (giop_connection_handle_input):
if we return FALSE set the source tag to 0, since on return it
is removed.
(giop_connection_real_state_changed): add some source management
assertions.
(giop_connection_destroy): rename to
(giop_connection_shutdown): this.
2001-05-20 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(CORBA_Object_release_cb): remove bypass_obj unref, hmm.
2001-05-20 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-orb.c
(ORBit_ORB_idle_init, idle_fn): FIXME these suck.
* src/orb/GIOP/giop-recv-buffer.c
(giop_recv_buffer_use_noblock): impl.
2001-05-19 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-headers.c
(orbit_idl_output_c_headers): re-order.
2001-05-19 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (ORBit_POA_free_fn): free the poa's
name and key buffer.
* src/orb/orb-core/corba-orb.c (CORBA_ORB_release_fn):
free the initial refs hash.
2001-05-18 Martin Baulig <baulig@suse.de>
* ORBit-2.0.pc.in (Cflags): Added `-DORBIT2=1'.
2001-05-18 Martin Baulig <baulig@suse.de>
* ORBit-2.0.pc.in: Use `ORBit-2.0' as package name.
* ORBit-CosNaming-2.0.pc.in: Use `ORBit-CosNaming-2.0' as name.
* Makefile.am: Install the .pc files.
* src/orb/orb-core/Makefile.am: Added explicit dependency
`$(top_builddir)/include/orbit/orb-core/orbit-interface.h: runidl_iface'.
2001-05-19 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-any.c (ORBit_demarshal_value):
set _release = TRUE for sequences.
2001-05-18 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c
(ORBit_small_invoke_poa): fix more stupid leaks.
2001-05-18 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(IOP_TAG_ORBIT_SPECIFIC_demarshal): allocate the correct
buffer size for the sock_path.
(IOP_Profile_equal): fix bug in GIOP compare, and compare
on host for IOP, impl for ORBIT_SPECIFIC and re-order to
accelerate.
(IOP_ObjectKey_equal): split out.
(IOP_TAG_ORBIT_SPECIFIC_free): don't double free the profile
itself.
* src/orb/poa/poa.c (ORBit_POA_oid_to_ref): put the osi
profile on the profile list, and do this later, to ensure
that the ORBit specific profile is later than the GIOP
profile.
* test/everything/server.c (create_object): free the object id...
* src/orb/orb-core/orbit-small.c (ORBit_small_invoke_poa): fix misc.
leaks.
* src/orb/orb-core/corba-context.c (CORBA_Context_get_values): remove
redundant call to create_list.
2001-05-18 Michael Meeks <michael@ximian.com>
* src/orb/GIOP/giop-server.c (giop_server_handle_new_connection): impl.
(giop_server_class_init): hook it up.
* src/orb/orb-core/corba-orb.c (CORBA_ORB_run):
unuse reliably here.
* src/orb/poa/poa.c (ORBit_handle_request):
remove the unuse.
* src/orb/orb-core/corba-context.c (CORBA_Context_new): fix leak.
2001-05-18 Michael Meeks <michael@ximian.com>
* src/orb/poa/poa.c (PortableServer_POA_find_POA): bugfix.
(ORBit_POA_is_inuse):
* src/orb/orb-core/corba-orb.c (CORBA_ORB_init): duplicate
the ORB before returning it.
* src/orb/orb-core/corba-object.c (ORBit_delete_profiles): upd.
(ORBit_handle_location_forward, ORBit_demarshal_IOR): upd.
(CORBA_Object_release_cb): finish.
(ORBit_objref_find): fix leak.
2001-05-18 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-typecode.c (tc_dec): remove broken
ref set to 1.
2001-05-17 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(ORBit_profile_free): actualy free the sub-profiles.
(IOP_TAG_INTERNET_IOP_free, IOP_TAG_GENERIC_IOP_free),
(IOP_TAG_MULTIPLE_COMPONENTS_free, IOP_TAG_ORBIT_SPECIFIC_free):
impl.
* src/orb/GIOP/giop-recv-buffer.c
(giop_IOP_ServiceContextList_free): impl.
(giop_recv_buffer_unuse): use it.
* src/orb/orb-core/corba-typecode.c (tc_dec): unuse
the encapsulated buffer after creation.
2001-05-17 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-context.c (ORBit_Context_demarshal):
move buf->cur over the length to point at the value.
* src/orb/orb-core/corba-orb.c (CORBA_ORB_create_list): impl.
* src/orb/orb-core/corba-typecode.c (tc_dec_tk_sequence),
(tc_dec_tk_alias, tc_dec_tk_array): set sub_parts to 1.
(tc_dec): set ref count to 1.
* src/orb/orb-core/corba-any.c (ORBit_marshal_value),
(ORBit_demarshal_value): Make TypeCode indirection consistant
with CORBA_Object indirection [ and in fact all other types ] -
they are both Pseudo-objects.
* src/orb/orb-core/corba-typecode.c (tc_dec): hack.
* src/orb/orb-core/corba-env.c (ORBit_send_user_exception): fixup.
2001-05-16 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c (ORBit_small_invoke_skel): impl.
2001-05-16 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c (CORBA_Object_non_existent):
reverse polarity.
* src/orb/orb-core/orbit-small.c (ORBit_small_allocbuf):
fix silly allocbuf bug.
* test/everything/client.c: #include yet another
.c file - yuck.
* test/everything/server.c: kugly #ifdef hacks.
2001-05-14 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-object.c
(CORBA_Object_non_existent): fix.
* configure.in: add pkgconfig bits.
2001-05-12 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/orbit-small.c: impl. context code.
2001-05-11 Michael Meeks <michael@ximian.com>
* src/orb/orb-core/corba-any.c (ORBit_demarshal_value):
don't try to de-marshal a _maximum that isn't there.
2001-05-10 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-utils.c
(orbit_cbe_write_param_typespec_str): split from
(orbit_cbe_write_param_typespec_raw): here.
(cs_small_unflatten_ref, cbe_small_unflatten_args): impl.
* include/orbit/poa/poa-types.h:
add ORBit_small_impl_finder, add ORBitSmallSkeleton.
2001-05-09 Michael Meeks <michael@ximian.com>
* test/everything/Makefile.am: remove ugly hack.
2001-05-08 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-skels.c (ck_output_small_skel):
impl.
* src/idl-compiler/orbit-idl-c-utils.c
(cs_small_flatten_ref, cbe_small_output_args): move here
from orbit-idl-c-stubs.c
* src/idl-compiler/orbit-idl-c-skels.c
(cbe_skel_interface_print_relayers),
(cbe_skel_interface_print_relayer): make small variants
like to change sig to have const char *method, but needs
poa work... perhaps expand the PortableServer_ClassInfo
struct with a more sensible option ? / put it on the
object.
* src/idl-compiler/orbit-idl-c-stubs.c
(orbit_cbe_param_printptrs): unused - kill.
2001-05-05 Michael Meeks <michael@ximian.com>
* src/idl-compiler/orbit-idl-c-headers.c
(orbit_idl_output_c_headers): upd.
(ch_output_itypes, ch_output_itype): impl.
* src/idl-compiler/orbit-idl-c-stubs.c
(orbit_idl_output_c_stubs): upd.
(cs_small_output_stubs, cs_small_flatten_ref),
(cs_small_output_args, cs_small_output_small_stub): impl.
* src/orb/orb-core/corba-any.c (ORBit_demarshal_value),
(ORBit_marshal_value): publicise.
* src/idl-compiler/orbit-idl-c-common.c
(cc_small_output_itypes, cc_small_output_itype): add.
2001-05-04 Michael Meeks <michael@ximian.com>
* include/orbit/orb-core/allocators.h
(ORBit_freekids_via_TypeCode): publicize.
* src/idl-compiler/orbit-idl-c-common.c: don't dump any
allocs if we are in small mode.
* src/idl-compiler/orbit-idl-c-utils.c
(orbit_cbe_get_typecode_name): add.
* include/orbit/orb-core/orb-core.h: add orbit-small.h
* src/idl-compiler/orbit-idl-c-headers.c (ch_output_type_enum):
(ch_output_interface, ch_output_type_dcl, ch_output_type_struct),
(ch_output_type_union, ch_prep_fixed, ch_prep_sequence): pass
rinfo around so we can get at the 'small' flag.
(ch_prep): upd.
* src/idl-compiler/orbit-idl-main.c (main): add arg '--small'
2001-05-04 Michael Meeks <michael@ximian.com>
* test/everything/*: import & port.
* src/orb/orb-core/corba-any.c (ORBit_any_equivalent),
copy straight from ORBit stable - no mods.
(ORBit_value_equivalent): ditto + add scratch to union_tag
handling.
(ORBit_copy_value_core): fix bug in CORBA_tk_union handling
* src/orb/orb-core/corba-typecode.c (CORBA_TypeCode_equal): copy
straight from ORBit stable - no mods.
* test/Makefile.am (SUBDIRS): add 'everything'
* src/idl-compiler/orbit-idl-c-common.c (orbit_idl_output_c_common):
setup ORBit_zero_int as a static local.
* include/orbit/orb-core/allocators.h (CORBA_sequence_get_release):
define CORBA_sequence_get_release
* src/idl-compiler/orbit-idl-c-skels.c:
add G_GNUC_UNUSED attribute to some potentialy unused bits.
* src/idl-compiler/orbit-idl-c-stubs.c
add G_GNUC_UNUSED attribute to some potentialy unused bits.
(cs_output_stub): always generate _ORBIT_demarshal_error.
* src/orb/orb-core/corba-any.c (CORBA_any_get_release): impl.
* test/everything/Makefile.am: update.