summaryrefslogtreecommitdiff
path: root/TAO/ChangeLog-97
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/ChangeLog-97')
-rw-r--r--TAO/ChangeLog-976674
1 files changed, 6674 insertions, 0 deletions
diff --git a/TAO/ChangeLog-97 b/TAO/ChangeLog-97
new file mode 100644
index 00000000000..ca7d6f510cf
--- /dev/null
+++ b/TAO/ChangeLog-97
@@ -0,0 +1,6674 @@
+Wed Dec 31 23:29:59 1997 Nanbor Wang <nw1@cs.wustl.edu>
+
+ * tao/nvlist.cpp (add_value_consume): Added a space between * and
+ /* to avoid warning messages on NT.
+
+Thu Jan 01 14:22:34 1998 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.50, released Thu Jan 01 14:22:34 1998.
+
+Thu Jan 1 13:31:55 1998 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: An unwanted
+ reference operator "&" was getting generated for sequences whose
+ element types were not special managed types. This was because the
+ case for handling the managed types somehow got mixed with the
+ normal ccase. Thanks to Nanbor Wang (nw1@cs.wustl.edu) for
+ pointing this out.
+
+Wed Dec 31 18:29:57 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: Changed the way
+ we use managed types. Instead of allocating an array, we now
+ instantiate the
+ managed type on the fly i.e., when the operator [] is invoked. The
+ reasons for doing this are: (1) no need for dynamic memory
+ allocation for maintaining the array of managers (2) It was
+ causing all kinds of problems while decoding because the sizeof
+ such sequence classes was bigger than those without managed
+ types. However, due to this scheme, we can no longer define the []
+ operator to return a reference because that would mean that a
+ reference to a local variable/temporary will be returned. Hence
+ changes were necessary in files.
+
+ TypeCode generation was also erroneous. This is fixed. We were
+ generating wrong encapsulation length.
+
+ * TAO_IDL/be/be_string.cpp: Indentation in typecode generation.
+
+ * TAO_IDL/be/be_type.cpp: nested_type_name - improved to
+ eliminate one more strange error message getting generated by the
+ MSVC++ compiler. Still needs testing.
+
+ * TAO/tao/{invoke, decode}.cpp: Reversed the changes which were
+ made to account for sequencese with managed types. We no longer
+ need these changes because sequences with managed types no longer
+ keep an extra data member. Thus the size of all sequences (top
+ level) is the same (so is the layout).
+
+ * TAO/tao/nvlist.cpp: commneted out unused variables, parameters.
+
+ * TAO/tests/Param_Test: Included tests for string sequences,
+ variable sized structs as well as nested structs.
+
+Tue Dec 30 13:46:44 1997 Nanbor Wang <nw1@cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.h (portnum_): Changed its data
+ type from CORBA::ULong to CORBA::UShort to kill warning
+ messages.
+
+ * tao/orbobj.cpp (create_list): Changed data type of the loop
+ counter to CORBA::Long. This caused a warning message on VC.
+
+ * doc/releasenotes/index.html: Added documentation for adding IDL
+ files into Visual C++'s projects.
+
+ * tests/Param_Test/Param_Test.dsw:
+ * tests/Param_Test/client.dsp:
+ * tests/Param_Test/server.dsp: New workspace and projects were added.
+
+Tue Dec 30 10:15:11 1997 Irfan Pyarali <irfan@cs.wustl.edu>
+
+ * orbsvcs/Event_Service/Fast_Reactor.h (ACE_ES_Fast_Reactor):
+ Added the other version of handle_events to stop the compiler
+ from being cranky.
+
+Tue Dec 30 10:06:45 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/{be_state_argument, be_state_operation,
+ be_state_attribute}.cpp - Unnecessary call on "init_mgr" for
+ sequences that do not have any managed types was getting
+ generated. This is fixed. In addition, MSVC++ compiler was
+ producing an error saying "ambiguous assignment" when an "_out"
+ variable was assigned to a pointer type. Solaris platform (CC and
+ g++) did not give any such errors since they were (most probably)
+ using the operator *() on the _out class, but MSVC++ did not.
+
+ * TAO/tests/Cubit/IDL_Cubit/clnt.cpp: The same "ambiguous
+ assignment" error described above has been fixed here too.
+
+ * TAO/tests/Param_Test: Added a method called "reset_parameters"
+ so that we do not change the "in" parameter for every
+ iteration. Previuosly we were settingthe in parameter differently
+ for every new iteration. However, for performance comparison
+ purposes, this was not correct (e.g., in the case of string
+ sequences or unbounded strings where everytime we were sending a
+ different lenght string and hence the performance numbers were
+ different for each run and couldn't be compared.)
+
+Mon Dec 29 21:51:38 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_sequence.cpp: get_name was returning a local
+ variable. In addition, added generationof a method called
+ "init_mgr" that must be used to initialize the sequence's
+ underlying mgr_ vector.
+
+ There was some problem with bounded/unbounded sequence code
+ generation (an error in an if stmt).
+
+ * TAO_IDL/be/{be_state_argument, be_state_attribute,
+ be_state_operation}.cpp - added code to generate the call to
+ init_mgr for sequences after the do_call is made.
+
+ * TAO_IDL/be_include/be_sequence.h : gen_name returns char* rather
+ than const char* because we now allocate a new string and return
+ it.
+
+ * TAO/tao/Makefile: applied make depend to incorporate nvlist.i
+
+ * TAO/tao/corbacom.h: Added a "boolean release" field to
+ CORBA_SEQUNECE so that its layout is similar to the generated code
+ for sequences.
+
+ * TAO/tao/decode.cpp: In sequence decode, we also set the release
+ flag to 1. In addition, for sequences of strings and objrefs, we
+ zero out additional 4 bytes that are used to store a pointer to
+ the manager array.
+
+ * TAO/tao/deep_free.cpp: some indentation. Also passed the correct
+ parameter to string/wstring::decode
+
+ * TAO/tao/invoke.cpp: In do_dynamic_call, for sequences of strings
+ (inclusing typedefed sequences of strings that themselves can be
+ typedefed), we must allocate size+4 bytes for demarshaling the
+ sequences. The extra 4 bytes are for the manager array pointer.
+
+ * TAO/tao/nvlist.cpp: I the method item, the loop should have run
+ from o to max_ rather than upto len_.
+
+ * TAO/tao/orbobj.cpp: Used placement new of NamedValue in the
+ create_list method.
+
+ * TAO/tests/Param_Test: Added new tests for Fixed_Struct and
+ string sequence. Added a README file.
+
+ * TAO/doc/releasenotes/index.html: updated with latest success stories.
+
+Thu Dec 25 20:36:58 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.49, released Thu Dec 25 20:36:58 1997.
+
+Thu Dec 25 18:43:03 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/{be_state_attribute, be_state_argument}.cpp: Handled
+ teh remaining cases (except Arrays) that use the newly added
+ methiods to class NVList. The Param_Test test suite is being
+ developed to track any memory leaks.
+
+ * TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Used sequence_var in
+ the cube_sequence function to avoid memory leaks. However, there
+ still are leaks.
+
+Wed Dec 24 18:44:47 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.48, released Wed Dec 24 18:44:47 1997.
+
+Wed Dec 24 18:44:02 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao: Added the nvlist.i file to the tao/ directory.
+
+Wed Dec 24 18:11:08 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/{be_operation, be_state_argument}.cpp: Added
+ "argument_count" method to be_operation which is helpful in
+ creating an NVList of the appropriate size. Previously we were
+ creating an empty list and adding parameters one by one. This was
+ causing a lot of reallocations which were wasteful.
+
+ At this time, we have code base that can successfully send/receive
+ primitive data types as well as strings.
+
+ * TAO_IDL/be_include/be_operation.h : Added a new method called
+ "argument_count" to give us the total number of parameters we
+ have.
+
+ * TAO/tao/{any.cpp, connect.cpp, corbacom.i, decode.cpp,
+ iioporb.cpp, marshal.i, objtable.cpp, optable.cpp, request.cpp}:
+ In all these files, after a call to CORBA::string_free, we made
+ the pointer point to 0. Otherwise, purify was giving us "Free
+ Memory read" errors. Also, this was (by fluke) causing some
+ applications to run successfully.
+
+ * TAO/tao/{nvlist.h, nvlist.cpp, nvlist.i, corba.h}: Added
+ unimplemented methods to NamedValue and NVList. Created a nvlist.i
+ file and updated corba.h
+
+ * TAO/tao/corbacom.cpp: In an assignment operator for Sting_out,
+ we were not checking if the assignment was from ourselves. Also a
+ array was incorrectly being deleted as "delete ..." rather than
+ "delete [] ...".
+
+ * TAO/tao/invoke.cpp: Inside do_call, we were not deleting memory
+ for the "in" part of the inout parameters. Right now we have fixed
+ this problem only for strings. Others will be added as new tests
+ are built. Do_dynamic_call also needs such a fix. NOT DONE in this release.
+
+ * TAO/tao/orb_core.h, orb_core.cpp: ORB_init takes "const char*"
+ orb name as the argument instead of just char*.
+
+ * TAO/tests/Param_Test: Successful in testing
+ "test_unbounded_string". removed a few memory leaks where we were
+ not deleting the client objects.
+
+Tue Dec 23 19:34:40 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.47, released Tue Dec 23 19:34:40 1997.
+
+Tue Dec 23 13:36:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_state_sequence.cpp: ACE_NESTED_CLASS must be
+ generated for seq elements that are scoped. We were generating
+ this macor only when seq elements were typedefs. However, seq
+ elements can also be structs or any other types that have an
+ enclosing scope. Thanks to Chris Gill <cdgill@cs.wustl.edu> for
+ the bug report.
+
+ * TAO_IDL/be/be_state_operation.cpp: Similar problem as above for
+ return types of operations. Bug reported by Chris Gill.
+
+ * TAO_IDL/be/be_exception.cpp: Whenever a _narrow fails, we were
+ trying to do a ACE_dynamic_cast to a 0. Instead, we now return a
+ 0. Again thanks to Chris Gill <cdgill@cs.wustl.edu> for
+ the bug report.
+
+ * TAO_IDL/be/be_state_argument.cpp: We were ot generating a char
+ *& for inout string parameters. Instead only a char * was getting
+ generated. Fixed.
+
+Tue Dec 23 11:45:03 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * docs/releasenotes/index.html:
+ There is no need to set config=1 when compiling
+ TAO_ROOT/orbsvcs.
+
+Mon Dec 22 22:02:49 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.46, released Mon Dec 22 22:02:49 1997.
+
+Mon Dec 22 19:08:55 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/corba.h:
+ * tao/except.cpp:
+ * tao/except.h:
+ The TAO_TRY macros use the _narrow methods for exceptions;
+ making the TAO_CATCH() macro fully functional.
+
+ * orbsvcs/Dump_Schedule/Dump_Schedule.cpp:
+ * orbsvcs/Event_Service/Dispatching_Modules.cpp:
+ * orbsvcs/Event_Service/Dispatching_Modules.i:
+ * orbsvcs/Event_Service/Event_Channel.cpp:
+ * orbsvcs/Event_Service/Event_Channel.i:
+ * orbsvcs/Event_Service/Event_Service.cpp:
+ * orbsvcs/Event_Service/RT_Task.cpp:
+ * orbsvcs/Event_Service/ReactorTask.cpp:
+ * orbsvcs/Scheduling_Service/Config_Scheduler.cpp:
+ * orbsvcs/Scheduling_Service/Config_Scheduler.h:
+ * orbsvcs/Scheduling_Service/Scheduling_Service.cpp:
+ * orbsvcs/orbsvcs/Runtime_Scheduler.cpp:
+ * orbsvcs/orbsvcs/Runtime_Scheduler.h:
+ * orbsvcs/orbsvcs/Scheduler_Factory.cpp:
+ * orbsvcs/tests/Event_Latency/Event_Latency.cpp:
+ Changed the ACE_TRY (and friends) macros to TAO_TRY.
+
+ * orbsvcs/orbsvcs/RtecEventChannelAdmin.idl:
+ Cleaned up some exceptions definitions.
+
+ * orbsvcs/tests/Event_Latency/Makefile:
+ Since the schedule is not distributed (yet) by default we
+ compile the config run, hopefully this will cause less
+ confusion.
+
+Sun Dec 21 23:41:05 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.45, released Sun Dec 21 23:41:05 1997.
+
+Sun Dec 21 20:29:33 1997 <nw1@JIG>
+
+ * tests/Cubit/TAO/MT_Cubit/client/client.dsp: *
+ tests/Cubit/TAO/MT_Cubit/server/server.dsp: Corrected erroneous
+ library pathes in Release version of project files.
+
+Sun Dec 21 18:30:41 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_codegen.cpp: The macro used in the #if !defined
+ (..) clause in the header files was incorrectly generated when IDL
+ file names had characters other than letters in it. Fixed.
+
+ * TAO/tests/Param_Test: A new test suite to test all the parameter
+ passing modes - return, in, inout, and out for a large number of
+ IDL data types. The purpose of this test suite is to verify the
+ correctness of the stubs/skeletons generated by TAO IDL compiler,
+ eliminate any existing errors in the marshaling engine, track down
+ any memory leaks, and finally to measure the performance and fine
+ tune the code if required. In the first version of the test, we
+ only test "shorts". We will be adding other tests as soon as we
+ can.
+
+Sat Dec 20 00:34:45 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp (main):
+ * tests/Cubit/CORBAplus/MT_Cubit/client/Makefile:
+ * tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.cpp:
+ * tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.h:
+ * tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp:
+ * tests/Cubit/CORBAplus/MT_Cubit/client/cubit.idl:
+ * tests/Cubit/CORBAplus/MT_Cubit/server/Makefile:
+ * tests/Cubit/CORBAplus/MT_Cubit/server/cubit.idl:
+ * tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.cpp:
+ * tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.h:
+ * tests/Cubit/CORBAplus/MT_Cubit/server/svr.cpp:
+ Ported the MT_Cubit example to CORBAplus.
+
+Fri Dec 19 11:33:51 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+
+ * tests/Thruput/CORBAplus/Makefile:
+ * tests/Thruput/CORBAplus/README:
+ * tests/Thruput/CORBAplus/client.cpp:
+ * tests/Thruput/CORBAplus/extract:
+ * tests/Thruput/CORBAplus/run:
+ * tests/Thruput/CORBAplus/run_client:
+ * tests/Thruput/CORBAplus/run_server:
+ * tests/Thruput/CORBAplus/run_test:
+ * tests/Thruput/CORBAplus/run_tests:
+ * tests/Thruput/CORBAplus/server.cpp:
+ * tests/Thruput/CORBAplus/ttcp.idl:
+ * tests/Thruput/CORBAplus/ttcp_decl.h:
+ * tests/Thruput/CORBAplus/ttcp_i.cpp:
+ * tests/Thruput/CORBAplus/ttcp_i.h:
+ * tests/Thruput/CORBAplus/utils.cpp: Ported the Thruput example to
+ CORBAplus for C++ by Expersoft. Try running the "run_tests"
+ script for the client side.
+
+ * tests/Thruput/Orbix/Client.cpp:
+ * tests/Thruput/Orbix/Makefile:
+ * tests/Thruput/Orbix/README:
+ * tests/Thruput/Orbix/Srv_Main.cpp:
+ * tests/Thruput/Orbix/extract:
+ * tests/Thruput/Orbix/loop64:
+ * tests/Thruput/Orbix/orbixsol2s4.mk:
+ * tests/Thruput/Orbix/run:
+ * tests/Thruput/Orbix/run_client:
+ * tests/Thruput/Orbix/run_server:
+ * tests/Thruput/Orbix/run_test:
+ * tests/Thruput/Orbix/run_tests:
+ * tests/Thruput/Orbix/ttcp.idl:
+ * tests/Thruput/Orbix/ttcp_decl.h:
+ * tests/Thruput/Orbix/ttcp_i.cpp:
+ * tests/Thruput/Orbix/ttcp_i.h:
+ * tests/Thruput/Orbix/utils.cpp: Included the Thruput example for
+ IONAs Orbix ORB in the tests directory.
+
+ * tests/Thruput/TAO/Makefile:
+ * tests/Thruput/TAO/README:
+ * tests/Thruput/TAO/client.cpp:
+ * tests/Thruput/TAO/run:
+ * tests/Thruput/TAO/run_client:
+ * tests/Thruput/TAO/run_server:
+ * tests/Thruput/TAO/run_test:
+ * tests/Thruput/TAO/server.cpp:
+ * tests/Thruput/TAO/svc.conf:
+ * tests/Thruput/TAO/ttcp.idl:
+ * tests/Thruput/TAO/ttcp_decl.h:
+ * tests/Thruput/TAO/ttcp_i.cpp:
+ * tests/Thruput/TAO/ttcp_i.h:
+ * tests/Thruput/TAO/utils.cpp: Moved the TAO version of the
+ Thruput example to a "TAO" directory in the Thruput directory.
+
+ * tests/Thruput_test: Renamed this directory to Thruput.
+
+Fri Dec 19 00:28:24 1997 <nw1@JIG>
+
+ * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main): Removed some
+ random codes.
+
+ * tao/tao_internals.cpp (close_services): Disabled closing down
+ the ACE_Service_Config when reference count drops to 0.
+
+Thu Dec 18 20:36:28 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.44, released Thu Dec 18 20:36:28 1997.
+
+Thu Dec 18 19:35:28 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * orbsvcs/tests/Logger/clnt.cpp (init):
+ * orbsvcs/Naming_Service/CosNaming_i.cpp (bind_new_context): Fixed
+ a bug in the Naming Service and the Logger test program
+ implementation. Thanks to Marina Spivak <marina@cs.wustl.edu> for
+ debugging this.
+
+Thu Dec 18 16:18:01 1997 <nw1@JIG>
+
+ * TAO_IDL/be/be_sequence.cpp (gen_name): Removed a local variable
+ <seq>. It is no longer used.
+
+ * TAO_IDL/be/be_union.cpp (gen_client_stubs): Removed local
+ variables <bt> and <s>. They are not longer used.
+
+Thu Dec 18 15:50:01 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/orbsvcs/Makefile:
+ realclean was not removing all the IDL compiler generated
+ files.
+
+Thu Dec 18 15:06:23 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+ Thanks to Keith Nicewarner <knicewar@sanders.com>, Tom Richards
+ <tomr@mcmenterprise.com>, and Carlos O'Ryan <coryan@cs.wustl.edu>
+ for reporting bugs which led to some of the changes below.
+
+ * TAO_IDL/be/be_array.cpp: Preliminary support for arrays. Not
+ complete.
+
+ * TAO_IDL/be/{be_operation, be_attribute}.cpp: The ParamData
+ structure *must* hold the "size" of the outermost level of the
+ return values and out parameters because the ORB has to allocate
+ memory for it and hence needs to know the size. We had a 0 in it
+ which crashed any return types that were variable in size.
+
+ * TAO_IDL/be/be_codegen.cpp: Added a new state for
+ unions. Corresponding change to the *.h file.
+
+ * TAO_IDL/be/be_decl.cpp: Added a method called "scope" that
+ returns the corresponding scope defined by this node (if one
+ exists). Added method to the *.h file also.
+
+ * TAO_IDL/be/be_scope.cpp: Added a method called "decl" that
+ returns the be_decl method corresponding to this scope. The header
+ file was also updated.
+
+ * TAO_IDL/be/{be_exception, be_state_exception}.cpp: I was making
+ the most stupid mistake of generating constructors per member
+ rather than one constructor that takes all the members as a
+ parameter.
+
+ * TAO_IDL/be/{be_sequence, be_state_sequence}.cpp: Changed the
+ naming scheme for anonymous sequences to avoid code bloat.
+
+ * TAO_IDL/be/be_state.cpp: Added template instantiation for
+ additional state to deal with code generation of members of
+ unions.
+
+ * TAO_IDL/be/be_state_structure.cpp: Made some changes so that
+ spurious code for array members doesn't get generated.
+
+ * TAO_IDL/be/{be_union, be_state_union}.cpp: Added a new state
+ because we were not generating code for union members that were
+ sequences or structs.
+
+ * TAO_IDL/be/be_type.cpp: Modified netsed_type_name to use the new
+ methods on class be_decl/be_scope.
+
+ * TAO_IDL/be/be_union_branch.cpp: gen_client_stubs uses the same
+ strategy as the other gen_client methods.
+
+ * TAO/tao/deep_free.cpp: In deep_free of structures, instead of
+ passing the address of a string member to be freed, we were simply
+ passing the string that led to a segmentation fault. A careful
+ code review is necessary.
+
+ * TAO/tao/orb_core.cpp: Made "use_ior" as default as ooposed to
+ using the URL based scheme for IORs. This was necessary to have
+ interoperability with other ORBs.
+
+ * TAO/tao/poa.cpp: The server request was being released
+ immediately after returning from the dispatch method. This should
+ be done after all return/inout/out parameters are marshaled.
+
+Tue Dec 17 12:53:01 1997 Brian Mendel <brian.r.mendel@boeing.com>
+
+ * tao/encode.cpp: Additional changes for wchar's
+
+Tue Dec 17 10:37:45 1997 Brian Mendel <brian.r.mendel@boeing.com>
+
+ * tao/TAO.dsp: Removed obsolete files from the VC++ project.
+ Changed name of folder from Include Files to Inline Files.
+ Inserted new header files for classview.
+
+ * TAO_IDL/tao_idl.dsp: Added missing be_state_exception.cpp to the
+ the project to eliminate link error.
+
+ * tao/corbacom.cpp: Inserted wslen and wscpy back to handle wchar
+ problems with VxWOrks and GHS.
+
+ * tao/encode.cpp: Inserted wslen and wscpy back to handle wchar
+ problems with VxWOrks and GHS.
+
+Tue Dec 16 18:29:42 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/README:
+ * docs/orbsvcs.html:
+ Started up the documentation for TAO services, at this point
+ only the directory hierarchy is explained.
+
+Tue Dec 16 08:49:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be_include/be_codegen.h: Added three more states for
+ return types to be generated for operator [] of sequences of
+ strings and object references.
+
+ * TAO_IDL/be_include/be_sequence.h: Added enum constants to
+ indicate what kind of managed type is handled by the sequence. For
+ sequences other than that of strings and objrefs, this enum const
+ is MNG_NONE. Added a new method that returns the managed type.
+
+ * TAO_IDL/be/{be_sequence, be_state_sequence.cpp}: Added code to
+ generate sequences of strings and objrefs. This requires
+ generating special "managed" objects. In addition, for
+ be_state_sequence.cpp, we were not handling the case where base
+ types of sequences were not having any scope which resulted in
+ segmentation faults.
+
+ * TAO_IDL/be/{be_state_argument, be_state_operation}.cpp: Some
+ small bugs fixed. These included lack of a whitespace in the
+ generated code as well as spurious extra level of indirection
+ getting generated.
+
+ * TAO_IDL/be/be_type.cpp: "nested_type_name" now checks if the
+ scope with which are comparing is NUL or not before proceeding
+ further. Such a situation may arise for sequences whose base types
+ are anonymous (e.g., strings) and have no enclosing scope.
+
+ * TAO/tao/managed_types.{h,cpp,i}: Removed. No more needed as teh
+ code is generated by the IDL compiler. Accordingly modified
+ corb.h and did a "make depend" on the Makefile.
+
+ * TAO/docs/releasenotes/index.html: Updated to reflect new changes
+ as well as TO-DO stuff such as adding support for TIEs.
+
+Mon Dec 15 22:31:50 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.43, released Mon Dec 15 22:31:50 1997.
+
+Mon Dec 15 19:13:51 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/Timeprobe.cpp:
+ Removed Solaris specific code, somehow it survived from some
+ debugging session. Thanks to Arturo Montes
+ <mitosys@colomsat.net.co> for pointing out this bug.
+
+Mon Dec 15 16:52:58 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
+
+ * TAO-INSTALL.html: Added some explanations for setting CPP_PATH
+ on NT.
+
+Mon Dec 15 16:49:58 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (cube_sequence): declare
+ local variables "l" and "j" as u_int instead of int, to avoid
+ signed/unsigned comparison.
+
+Thu Dec 11 16:44:26 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/Scheduling_Service/Config_Scheduler.cpp:
+ Fixed typo missed on the previous release.
+
+Thu Dec 11 22:18:52 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_interface.cpp: Moved the code generation for the
+ _var and _out classes before the actual class declaration, but
+ after the forward declaration. This was necessary if any elements
+ in the scope of the interface are defined to be of the same type
+ as that interface. In such a situation those elements are defined
+ to be of the _var type. Hence the declaration for _var and _out
+ must precede the class declaration.
+
+Thu Dec 11 22:00:52 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * orbsvcs/Naming_Service/Naming_Service.cpp (main): Fixed a bug
+ related to returning an empty string as the ior in the reply from
+ the multicast request.
+
+Thu Dec 11 14:06:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/{be_exception,be_state_exception}.cpp: Support for
+ exceptions added. Added a new file called
+ "be_state_exception.cpp".
+
+ * TAO_IDL/be_include/be_state.h: Added a new singleton for
+ be_state_exception.
+
+ * TAO_IDL/be/be_state.cpp: Template instantiations for
+ be_state_exception.
+
+ * TAO/docs/releasenotes/index.html: Updated to include exception
+ support.
+
+ * TAO/tao/except.{h,cpp}: Moved the TypeCode member from the
+ private section to the protected section so that derived classes
+ can set it. Also, changed the variable from _type to type_ to
+ stick to the ACE design standards.
+
+Thu Dec 11 00:01:41 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * TAO version 0.0.42, released Thu Dec 11 00:01:41 1997.
+
+Wed Dec 10 23:04:04 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/Scheduling_Service/Config_Scheduler.cpp:
+ Still struggling with g++, it seems to use the wrong cast for
+ IDL generated T_out classes.
+
+ * orbsvcs/tests/Logger/Makefile:
+ * orbsvcs/tests/Logger/clnt.cpp:
+ * orbsvcs/tests/Logger/clnt.h:
+ * orbsvcs/tests/Logger/svr.cpp:
+ These files were missed in the orbsvcs hierarchy
+ reorganization.
+
+Wed Dec 10 22:38:08 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO/tests/Cubit/TAO/DII_Cubit: Fixed the hand-crafted code to
+ make use of the many changes that were made to the dispatching
+ scheme as well as changes made to the signature of the skeletons
+ for operations of interfaces.
+
+Wed Dec 10 21:41:48 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * docs/releasenotes/index.html: Updated the release notes on the
+ Naming Service.
+
+Wed Dec 10 20:13:57 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * Makefile:
+ Added orbsvcs to the hierarchy.
+
+ * The orbsvcs directory was completely reorganized, in preparation
+ for its official release. The new hierarchy is:
+ - orbsvcs/orbsvcs: Contains a library with:
+ + The client stubs for the services.
+ + Common utility classes to access the services.
+ + The server skeletons, but not their implementation.
+ - orbsvcs/Naming_Service: the COSS Naming Service.
+ - orbsvcs/Scheduling_Service: TAO Real-Time Scheduling Service.
+ - orbsvcs/Event_Service: TAO Real-Time Event Service.
+ - orbsvcs/tests: test programs and examples.
+
+ * docs/releasenotes/index.html:
+ Updated documentation on the Event Service and its friends.
+
+Wed Dec 10 19:57:07 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (Cubit_i::cube_sequence):
+ Changed to explicitly use the vector_out::ptr() method to get a
+ ptr. It seems that g++ wanted to interpret this expression
+ (output == 0) differently from Sun's C++, and this made both
+ interpret it in the desired way.
+
+Wed Dec 10 14:23:24 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * TAO_IDL/be/be_state_structure.cpp:
+ Fixed a bug when handling typedefs.
+ It was generating code for imported types, we protected the
+ generation with a !imported(), thank to Andy Gokhale
+ <gokhale@cs.wustl.edu> for helping me on this.
+
+ * tao/connect.cpp:
+ Set the TCP_NODELAY option by default, otherwise oneway calls
+ are considerably slower. It should have no effect for twoway
+ calls. Anyway an option should be added to control this
+ behavior.
+
+Wed Dec 10 13:15:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be_include/{be_array, be_decl, be_field, be_module,
+ be_operation, be_predefined_type, be_structure, be_typedef}.h:
+ Added a protected function called "compute_size_type" which is
+ invoked if the size type of a data structure is not known in
+ advance. This happens for structs, unions, arrays, and typedefs
+ whose size type depends on their base types.
+
+ * TAO_IDL/be/{be_array, be_decl, be_field, be_module,
+ be_operation, be_predefined_type, be_structure, be_typedef}.cpp:
+ Implementation of the "compute_size_type".
+
+ * TAO_IDL/be/be_decl.cpp: Changed code that sets "size_type" so
+ that we first see if we are unknown in which case we set our size
+ type. However, once we are VARIABLE, no body can reset us to
+ fixed. Similarly, the overloaded size_type method that return the
+ size type first checks if our size is still unknown in which case
+ it calls for "compute_size_type". This is very essential for data
+ types defined in an imported (included) *.idl file. Thanks to Tom
+ Richards (tomr@mcmenterprise.com) for reporting the bug with
+ included file which resulted in this change.
+
+ * TAO_IDL/be/be_state_attribute.cpp: Included a case for
+ IN_PARAM_TYPE_CH for strings (had previously forgotten to do so).
+
+ * TAO_IDL/be/{be_state_structure, be_structure, be_field}.cpp:
+ Revamped so that we use the same switch based technique in
+ be_state_structure.cpp to generate code. For fields that are
+ sequences or structures or unions, we also generate their code.
+
+ * TAO_IDL/be/be_state_argument.cpp: Thanks to Tom Richards and
+ Carlos O'Ryan for noticing a bug when we use out sequences. There
+ used to be a seg fault in deep_free.cpp because a NUL pointer was
+ being owned by an Any and getting freed. In the server skeleton,
+ for out params we now generate code after the upcall is made so
+ that for out parameter value is inserted in the NVList that is
+ marshaled by the server.
+
+ * TAO_IDL/be/be_interface.cpp: In the generated call to _is_a, we
+ were calling CORBA::Object::_is_a if a remote call is
+ necessary. However, MSVC++ cannot handle a call of the form
+ CORBA::Object::_is_a. So we have to generate code that uses
+ ACE_CORBA_3 so as to be portable. Thanks to Nanbor Wang
+ (nw1@cs.wustl.edu).
+
+ * TAO/test/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed the type of the
+ variable that was passed as the out parameter to cube_sequence.
+
+Wed Dec 10 01:02:36 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu>
+
+ * tao/iiopobj.cpp (set): Added a special case to IIOP Profile::set
+ so that if the address is INADDR_ANY, it uses the host name, but
+ otherwise uses the IP address. This eliminates the cryptic
+ appearance of the address "0.0.0.0" in a server's IOR.
+
+Tue Dec 9 21:48:52 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp:
+ The sequence test is not running right now, I'm commenting it
+ out until we can make it work properly.
+
+Tue Dec 9 18:02:43 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orb_core.cpp: The moral of this changelog entry is to be
+ VERY careful when cutting and pasting code...the
+ resource_factory() accessor should not be setting the
+ client_factory_ member at all!
+
+Tue Dec 9 11:55:50 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu>
+
+ * tao/compat/objbase.h: Added NOERROR as #define if we're not on
+ WIN32 so that IDL-generated code would continue to work.
+
+ * tao/tao_internals.cpp: Changed faked Resource Factory resource
+ source specifier to "tss" rather than "global".
+
+ * tao/orb_core.*: Added resource_factory() accessor to
+ TAO_ORB_Core. This will create a default instance if it can't
+ locate one in the Service Repository, which will allow
+ applications to not encounter a hard failure when a svc.conf file
+ is missing. A warning message is emitted stating that a default
+ is being used. Applications should not rely on the default
+ settings, as it is very likely that the applicat might require
+ alternate settings for proper desired operation.
+
+ * tao/default_server.*: Added TAO_Reactive_Strategy template
+ class to use in place of the ACE_Reactive_Strategy. It's only
+ difference from ACE_Reactive_Strategy is that instead of using the
+ reactor provided in the open method, it always uses that found
+ through the TAO_ORB_Core_instance(). This fix was motivated by a
+ general problem which was only observable on VxWorks with a
+ special pseudo-network transport.
+
+ * tao/connect.cpp: Added code to fail gracefully if socket buffer
+ size changes are not supported.
+
+Mon Dec 8 13:11:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * docs/releasenotes/index.html:
+ Added more information on how the Event Channel and friends are
+ going.
+
+ * orbsvcs/bin/Naming_Service/svc.conf:
+ Removed some foreign ^M from the file.
+
+ * tao/Makefile:
+ * tao/connect.cpp:
+ * tao/giop.cpp:
+ * tao/orbobj.cpp:
+ * tao/Timeprobe.i:
+ * tao/Timeprobe.h:
+ * tao/Timeprobe.cpp:
+ Added a instrumentation class to measure time interval, also
+ instrumented some code, as part of the ongoing effort to
+ optimize the EC, unfortunately the problems are not in TAO ;-)
+ The code is only instrumented if compiled using probe=1, no
+ overhead is introduced in normal compiles.
+
+ * tests/Cubit/TAO/IDL_Cubit/cubit.idl:
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp:
+ * tests/Cubit/TAO/IDL_Cubit/clnt.h:
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp:
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.h:
+ Addded code to test sequences (as input and output parameters)
+ they don't work (yet).
+
+ * orbsvcs/lib/Makefile:
+ * orbsvcs/lib/Timeprobe.h:
+ * orbsvcs/lib/Timeprobe.i:
+ * orbsvcs/lib/Timeprobe.cpp:
+ The file was moved toTAO_ROOT/tao.
+
+ * orbsvcs/lib/Scheduler_Factory.cpp:
+ Fixed default dump file, it was using stdout!
+
+Sat Dec 06 15:42:25 1997 <nw1@DINGO>
+
+ * tests/Cubit/TAO/IDL_Cubit/{server,client}.dsp: Updated link time
+ library names.
+
+ * tao/any.cpp:
+ * tao/any.h:
+ * tao/corba.h:
+ * tao/corbacom.h:
+ * tao/decode.cpp:
+ * tao/encode.cpp:
+ * tao/except.cpp:
+ * tao/except.h:
+ * tao/giop.cpp:
+ * tao/iiopobj.cpp:
+ * tao/iiopobj.h:
+ * tao/iioporb.cpp:
+ * tao/iioporb.h:
+ * tao/nvlist.cpp:
+ * tao/nvlist.h:
+ * tao/object.cpp:
+ * tao/object.h:
+ * tao/object.i:
+ * tao/orbobj.cpp:
+ * tao/orbobj.h:
+ * tao/orbobj.i:
+ * tao/poa.cpp:
+ * tao/poa.h:
+ * tao/principa.cpp:
+ * tao/principa.h:
+ * tao/request.cpp:
+ * tao/request.h:
+ * tao/stub.h:
+ * tao/svrrqst.cpp:
+ * tao/svrrqst.h:
+ * tao/typecode.cpp:
+ * tao/typecode.h:
+ * tao/compat/initguid.h:
+ * tao/compat/objbase.h: Removed dependencies on Microsoft's DCOM
+ files. Below is a list of names that got changed.
+
+ HRESULT -> TAO_HRESULT
+ IID -> TAO_IID
+ IUnknown -> TAO_IUnknown
+ IID_IUnknown -> IID_TAO_IUnknown
+ SCODE -> TAO_SCODE
+ NOERROR -> TAO_NOERROR
+ E_NOINTERFACE -> TAO_E_NOINTERFACE
+ VARTYPE -> TAO_VARTYPE
+ VARENUM -> TAO_VARENUM
+ CY -> TAO_CY
+ VARIANT -> TAO_VARIANT
+ DATE -> TAO_DATE
+
+Fri Dec 5 11:42:25 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/iiopobj.cpp (set): Changed the IIOP::Profile::set() methods
+ which take an ACE_INET_Addr to retrieve the host IP address rather
+ than host name for storage in the profile. This is motivated by
+ the following situation: machine has 3 interfaces (not including
+ loopback), and it is desired that clients and servers communicate
+ across only one interface.
+
+ When our IDL_Cubit example's factory created new Cubit instances,
+ the set() method would set the host name for that IIOP::Profile to
+ whatever ACE_INET_Addr::get_host_name() returned. In this case,
+ the IP addr for interface 3 (which is not the primary interface)
+ would return a *LIST* of names in which the first name was that of
+ the primary interface. Thus, the IP address used by the client
+ would be wrong.
+
+ * tao/object.h: Minor corrections to header comments.
+
+ * tao/{orb_core,orbobj}.{h,cpp}: Moved server_factory and
+ client_factory ptr storage from CORBA_ORB to TAO_ORB_Core. It
+ really didn't belong there in the first place.
+
+ * tao/poa.cpp: CTOR now fetches server factory ptr from the
+ TAO_ORB_Core rather than from the ORB.
+
+Thu Dec 4 18:20:55 1997 Chris Gill <cdgill@cs.wustl.edu>
+
+ * TAO_IDL/tao_idl.dsp: Changed hard coded path for cl.exe to CPP_PATH
+ environment variable
+
+Thu Dec 4 11:23:55 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/include/{idl,ast,utl_idlist, utl_identifier}.h: removed
+ #include "ace/stdcpp.h" since this file was removed from
+ ACE. Instead we now include "ace/streams.h" in idl.h
+
+ Also made make depend on all the Makefiles.
+
+Wed Dec 3 16:08:34 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/lib/Event_Utilities.cpp:
+ * orbsvcs/lib/Event_Utilities.i:
+ * orbsvcs/lib/RtecEventComm.idl:
+ Added some more time-stamps to the events to track and measure
+ the delays as they move on the EC.
+
+ * orbsvcs/lib/RtecEventChannelAdminC.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.h:
+ * orbsvcs/lib/RtecEventChannelAdminC.i:
+ * orbsvcs/lib/RtecEventChannelAdminS.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminS.h:
+ * orbsvcs/lib/RtecEventChannelAdminS.i:
+ * orbsvcs/lib/RtecEventCommC.cpp:
+ * orbsvcs/lib/RtecEventCommC.h:
+ * orbsvcs/lib/RtecEventCommC.i:
+ * orbsvcs/lib/RtecEventCommS.cpp:
+ * orbsvcs/lib/RtecEventCommS.h:
+ * orbsvcs/lib/RtecEventCommS.i:
+ * orbsvcs/lib/RtecSchedulerC.cpp:
+ * orbsvcs/lib/RtecSchedulerC.h:
+ * orbsvcs/lib/RtecSchedulerC.i:
+ * orbsvcs/lib/RtecSchedulerS.cpp:
+ * orbsvcs/lib/RtecSchedulerS.h:
+ * orbsvcs/lib/RtecSchedulerS.i:
+ Thanks to Andy Gokhale efforst the IDL compiler is able to emit
+ proper code for the EC&friends, hence I'm removing the
+ hand-crafted files.
+
+Wed Dec 3 11:12:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_interface.cpp: Had forgotten to emit code that
+ adds one more cast to the base POA_* class in the generated *S.i
+ file.
+
+Wed Dec 03 09:40:36 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tao/Makefile: added TAO_PLATFORM_SVC_CONF_FILE_NOTSUP to
+ CPPFLAGS on CHORUS. Thanks to Wei Chiang for this change.
+
+Tue Dec 2 15:47:09 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_interface.h: Added some helper methods to generate
+ additional code in the form of larger operation tables, and
+ skeletons. This situation arises when we have single/multiple
+ inheritance of interfaces.
+
+ * TAO_IDL/be_include/be.h: Included ace/Containers.h for the
+ ACE_Unbounded_Queue that uses the breadth-first strategy used in
+ be_interface.cpp
+
+ * TAO_IDL/be/{be_interface,be_operation,be_attribute}.cpp: Added code
+ to generate a new "virtual void dispatch" method on the skeleton
+ classes. The dispatch method enables us to access the most derived
+ type when invoking the skeleton for a method. The skeletons
+ instead of taking a CORBA::Object_ptr, now take void*. The
+ skeletons themselves cast this void* to the appropriate POA_*
+ type.
+
+ In addition to the above, for the case of inheritance of
+ interfaces, it is not appropriate to pass a pointer to the most
+ derived class as a void* to the skeleton of a base class and cast
+ that to the POA_* of the base class. So we generate inlined code
+ for skeletons of methods in the most derived class even if those
+ methods were defined in the base classes. These inlined skeletons
+ simply cast the object pointer to the right type and invoke the
+ corresponding skeleton of the base class method.
+
+ be_interface.cpp defines a template method to traverse the entire
+ inheritance graph. This traversal is done using a breadth-first
+ traversal. This traverse method takes a pointer to one of the
+ static helper methods defined on class be_interface. Each helper
+ achieves a different purpose such as generation of extended
+ operation tables, providing comparisons of repositoryIDs of base
+ classes in the _is_a methods of derived classes.
+
+ The client-side class now defines a virtual CORBA::Boolean _is_a
+ method. This uses local knowledge of repository ids thereby
+ preventing the expensive remote call in most cases. All changes
+ made in be_interface.cpp
+
+ * TAO/tao/corbacom.h: Changed the signature of TAO_Skeleton so that
+ it uses void*obj and a void *context.
+
+ * TAO/tao/object.h: Added a virtual dispatch method as explained
+ above.
+
+ * TAO/tao/orb.h: Redefinition of TAO_Skeleton removed.
+
+ * TAO/tao/poa.cpp: Changed the demultiplexing code to reflect the
+ change made with the dispatch method. The poa on finding the right
+ object corresponding to the key, now invokes the dispatch method
+ on that object which by dynamic binding invokes the dispatch
+ method of the POA_* class.
+
+Tue Dec 02 15:29:41 1997 <nw1@CHA-CHA>
+
+ * tao/{connect,orb_core}.h: Moved Win32 specific template
+ specialization declaration from connect.h to orb_core.h because
+ the definition had moved to orb_core.i.
+
+ * tao/object.cpp: Removed conditional directives around
+ DEFINE_GUID for IID_IUnknown. This is now defined for Win32
+ also.
+
+ * tao/TAO.dsp: Removed macro definition __IIOP_BUILD. It was not
+ used anywhere.
+
+Tue Dec 2 10:25:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/corba.h:
+ Fixed some problems with the ACE_RETHROW macros.
+
+ * orbsvcs/lib/Makefile:
+ * orbsvcs/lib/Timeprobe.h:
+ * orbsvcs/lib/Timeprobe.i:
+ * orbsvcs/lib/Timeprobe.cpp:
+ Added a high resolution timer facility, to measure the delays in
+ the Event Channel and in its client.
+
+ * orbsvcs/lib/RtecEventComm.idl:
+ Changed the time_ field of Event to a double. It should be an
+ structure or a long long, but double is big enough to store
+
+ * orbsvcs/lib/RtecEventChannelAdminC.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminS.cpp:
+ * orbsvcs/lib/RtecEventCommC.cpp:
+ * orbsvcs/lib/RtecEventCommC.h:
+ * orbsvcs/lib/RtecEventCommS.cpp:
+ * orbsvcs/lib/RtecSchedulerC.cpp:
+ * orbsvcs/lib/RtecSchedulerC.h:
+ * orbsvcs/lib/RtecSchedulerC.i:
+ * orbsvcs/lib/RtecSchedulerS.cpp:
+ * orbsvcs/lib/RtecSchedulerS.h:
+ Regenerated the files using the newest IDL compiler; still some
+ hand crafting due to inherited classes.
+
+Tue Dec 2 03:12:50 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * tao/orbobj.cpp (resolve_name_service): Check for errors when
+ resolving using the "NameService" environment variable.
+
+ * orbsvcs/bin/Naming_Service/CosNaming_i.cpp (NS_NamingContext):
+ * orbsvcs/bin/Naming_Service/CosNaming_i.h (NS_NamingContext):
+ - Added constructor that takes a key to initialize the object,
+ instead of using the default name generation.
+ - Enabled some exceptions that are already supported.
+
+ * orbsvcs/bin/Naming_Service/svr.cpp (main): Create first naming
+ context with key "NamingContext". And minor changes.
+
+ * tests/Cubit/CORBAplus/IDL_Cubit/Makefile:
+ * tests/Cubit/CORBAplus/IDL_Cubit/README:
+ * tests/Cubit/CORBAplus/IDL_Cubit/clnt.cpp:
+ * tests/Cubit/CORBAplus/IDL_Cubit/clnt.h:
+ * tests/Cubit/CORBAplus/IDL_Cubit/cubit.idl:
+ * tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.cpp:
+ * tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.h:
+ * tests/Cubit/CORBAplus/IDL_Cubit/svr.cpp: Ported the IDL cubit
+ example to CORBAplus. Currently, the calls using DII are not
+ ported, so only the "cube average" and the "cube_union_stub" stats
+ are printed.
+
+Mon Dec 1 16:51:08 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/except.{h,cpp}: Changed semantics of CORBA::Exception so
+ that the mere creation of them does not take a reference.
+ Instead, the user of the exception is expected to call AddRef().
+ CORBA::Environment has been modified (and even documented!) to
+ reflect that as well.
+
+Sun Nov 30 17:08:56 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/lib/RtecSchedulerC.cpp:
+ Added missed parameter in do_call() for
+ RtecScheduler::Scheduler::set().
+
+Sat Nov 29 13:34:58 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/stub.i (STUB_Object):
+ No need to release type_id, since it is a String_var now. Thanks
+ to Wei Chiang <chiang@tele.nokia.fi> for pointing this out.
+
+ * giop.cpp:
+ If things go wrong TAO_GIOP::send_request will close the
+ handler and set it to zero, but only a temporary was
+ affected, I decided to set the original value to zero also;
+ based on the return value.
+
+Wed Nov 26 23:24:57 1997 <cleeland@cs.wustl.edu>
+
+ * TAO version 0.0.41, released Wed Nov 26 23:24:57 1997.
+
+Wed Nov 26 16:40:29 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Changed release calls to use
+ the CORBA standard version rather than the non-standard TAO
+ Release() method. Also moved the client's parse_args() AFTER the
+ ORB_init() so that -ORB parameters were parsed correctly.
+
+ * tao/params.*: Added storage for send and receive socket buffer
+ size to be used for all newly created sockets. These sizes are
+ initialized to ACE_DEFAULT_MAX_SOCKET_BUFSIZ, and can be changed
+ by the user by using -ORBsndsock and -ORBrcvsock.
+
+ * tao/orbobj.h: Added documentation.
+
+ * tao/orb_core.i: Changed system-specific conditional compilation
+ to use the more general ACE_LACKS_TEMPLATE_SPECIALIZATION.
+
+ * tao/orb_core.cpp: Added code to make -ORBsndsock and -ORBrcvsock
+ options actually work. Added -ORBpreconnect option to implement
+ pre-cached connections.
+
+ * tao/giop.cpp: Removed the old static inline version of
+ start_message(). Also changed to use send_n() to guarantee
+ correct blocking nature on Win32 with the WFMO Reactor.
+
+ * tao/connect.cpp: Changed set_option() calls to use the socket
+ buffer sizes stored in the TAO_ORB_Parameters instance. Also
+ added a correct environment-clearing call before initializing a
+ request.
+
+ * tao/client_factory.h: Removed extraneous code.
+
+ * tao/{connect,any,giop,iiopobj,marshal,nvlist,objtable,optable,
+ orb_core,poa,principa,stub,svrrqst,typecode}.h:
+ Addressed or assigned some '@@' comments.
+
+ * docs/releasenotes/orbcore.html: Added information regarding new
+ options, known bugs, etc.
+
+ * docs/Options.html: Added documentation for new -ORBpreconnect
+ option.
+
+ * TAO_IDL/be/Makefile: Added an explicit PIC=-fPIC for when g++ is
+ being used as the compiler. This fixes the linker complaints.
+
+Sat Dec 20 14:57:30 1997 <nw1@CHA-CHA>
+
+ * All MSVC 5.0 project files: Removed unnecessary library
+ inclusions. Most of them are not necessary.
+
+Tue Nov 25 20:49:24 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/orbobj.h:
+ * tao/orbobj.cpp:
+ * tao/orb_core.cpp:
+ * tao/params.h:
+ * tao/params.cpp:
+ Removed the parameters to specify the event service and schedule
+ service IOR, the naming service is working now so it can be
+ used. And the support in "resolve_initial_references".
+
+ * tao/corbacom.i:
+ * tao/decode.cpp:
+ Reverted the previous change, but this time added proper
+ comments: the spec says that a Naming_var taking a <char*> is
+ *not* supposed to copy it. Hence the ObjRef decoder cannot
+ release the string it just read.
+
+Mon Nov 24 20:40:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/corbacom.i:
+ Fixed string allocation problem for String_var(char*): if it
+ does not copy the string we run into problems with the
+ demarshalling code.
+
+ * orbsvcs/lib/Event_Utilities.cpp:
+ * orbsvcs/lib/Event_Utilities.h:
+ * orbsvcs/lib/Event_Utilities.i:
+ * orbsvcs/lib/RtecEventChannelAdmin.idl:
+ * orbsvcs/lib/RtecEventChannelAdminC.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.h:
+ Removed the unused forward_event parameter in the ConsumerQoS.
+
+ * orbsvcs/lib/RtecSchedulerC.h:
+ * orbsvcs/lib/RtecSchedulerC.i:
+ Hand crafted the T_out constructors to take a "const T_out&"
+ instead of just "T_out&".
+
+Sat Nov 22 18:21:10 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be_include/be_codegen.h, be/be_codegen.cpp: Added a
+ number of states to handle attributes
+
+ * TAO_IDL/be/{be_attribute,be_state_attribute}.cpp: Code added to
+ handle attributes. This code is a mix of code that is used to
+ handle operations as well as arguments because for attributes we
+ have 2 methods, one to set the value and one which returns the
+ value. For a readonly attribute, there is only the get method.
+
+ A special note: Due to the large switch statement, I had to use
+ -fPIC for g++. We are working on abstracting all the commin
+ functionality once we have the basic IDL compiler working.
+
+ * TAO_IDL/be/be_interface.cpp: Operation table now also includes
+ methods to set and get the attributes if they are present. In
+ addition, the variable name for the operation tables is now the
+ full flattened name to avoid conflicts.
+
+ * TAO_IDL/be/be_sequence.cpp: In the length method, the index of
+ lookp variable "i" is changed from "int" to CORBA::ULong as g++
+ was issuing a warning.
+
+ * TAO_IDL/be/be_string.cpp, be_state_argument,cpp: Proper handling
+ of in, inout, and out strings that are either anonymous or are
+ typedefed.
+
+Fri Nov 21 13:22:39 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.40, released Fri Nov 21 13:22:39 1997.
+
+Thu Nov 20 10:31:24 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orbconf.h (SIZEOF_LONG_DOUBLE): Made sure this is defined
+ properly for Chorus. Thanks to Wei Chiang <chiang@tele.nokia.fi>
+ for submitting these!
+
+ * tao/orb_core.cpp (init): Added some changes for Chorus. Thanks
+ to Wei Chiang <chiang@tele.nokia.fi> for submitting these!
+
+ * tao/object.cpp (_is_a): Explicitly specify which conversion
+ operator to use when comparing type_id to 0.
+
+Thu Nov 20 00:10:52 1997 Sergio Flores <sergio@cs.wustl.edu>
+
+ * orbsvcs/tests/Logger/clnt.h :
+ * orbsvcs/tests/Logger/clnt.cpp (Logger_Client): Fixed a bug
+ dealing with using "_bind" when the naming service is not
+ available.
+
+Thu Nov 20 00:06:03 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.39, released Thu Nov 20 00:06:03 1997.
+
+Thu Nov 20 00:01:06 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu>
+
+ * tao/Makefile: Reordered the files so they are built in
+ alphabetic order (within each grouping of targets). This makes it
+ easier to see how the compilation process is doing ;-).
+
+Wed Nov 19 22:59:18 1997 Sergio Flores <sergio@cs.wustl.edu>
+
+ * tao/orbobj.cpp (resolve_name_service): Minor change to output
+ debug statement.
+
+Wed Nov 19 23:01:46 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_state_operation.cpp: Fixed the problem with
+ strings as return values. Thanks to Mark L Boriack
+ <mark@vtcibm4a> for reporting this.
+
+Wed Nov 19 20:48:01 1997 James C Hu <jxh@cs.wustl.edu>
+
+ * tests/Thruput_test/server.cpp: Commented out some unreachable
+ code at the bottom of main.
+
+Wed Nov 19 19:04:53 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * tao/decode.cpp (decode): Added a cast so that compiler would
+ know which operator to call.
+
+ * orbsvcs/bin/Naming_Service/svr.cpp (handle_input): Change port
+ number received to host byte order. Minor changes.
+
+ * tao/orbobj.cpp (resolve_name_service): Send port number in
+ network byte order.
+
+Wed Nov 19 17:45:52 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Put in proper release of
+ resources after _narrow operation.
+
+ * tao/stub.h: Used CORBA::String_var as the underlying type for
+ 'type_id' in STUB_Object. In the long run this may be a bad idea
+ for performance considerations, but we may be able to improve that
+ by improving the implementation of String_var.
+
+ * tao/orbobj.cpp: Removed unreachable ACE_NOTSUP_RETURN.
+
+ * tao/decode.cpp: Made allocation and free semantics of
+ 'type_hint' consistent with its type of CORBA::String.
+
+Wed Nov 19 17:33:42 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu>
+
+ * Task_Client.cpp: Fixed error_count.. Thanks to James Hu.
+
+Wed Nov 19 17:20:45 1997 James C Hu <jxh@cs.wustl.edu>
+
+ * TAO_IDL/be/be_operation.cpp: Removed an unreachable return
+ statement. There was already a return above it.
+
+ * TAO_IDL/ast/ast_expression.cpp: Added casts to comparisons of
+ char variables to 0, since chars are unsigned by default in
+ SGI.
+
+ * tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: Removed a
+ couple of unreachable return statements. There are still
+ unreachable statements remaining. Need help with them.
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp:
+ * tests/Cubit/TAO/DII_Cubit/clnt.cpp:
+ Meaningless type qualifier (const ...) removed.
+
+ Some functions were returning `retval' before it was set. I had
+ these functions return a passed in paramenter instead.
+
+Wed Nov 19 13:50:36 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.38, released Wed Nov 19 13:50:36 1997.
+
+Wed Nov 19 13:11:53 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * orbsvcs/lib/Scheduler_Factory.cpp (dump_schedule): changed loop
+ index from int to u_int to avoid signed/unsigned comparison.
+ (use_runtime): return 0.
+
+ * orbsvcs/lib/Event_Utilities.cpp (debug): changed loop
+ index from int to u_int to avoid signed/unsigned comparison.
+
+Wed Nov 19 12:22:50 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orbobj.cpp (resolve_name_service): Reverted some of the
+ minor changes below, specifically the use of ACE_ERROR_RETURN
+ rather than ACE_ERROR/return. ACE_ERROR_RETURN cannot be used
+ as-is because the 2nd parameter is used as an 'int' to specify the
+ operational status, and the return value of this function is NOT
+ an int. Also had to add a missing semi-colon which caused none of
+ the code to compile.
+
+Wed Nov 19 12:07:42 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.37, released Wed Nov 19 12:07:42 1997.
+
+Wed Nov 19 10:37:19 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/lib/Scheduler_Factory.cpp:
+ The type declared for the rt_info array was wrong.
+
+Wed Nov 19 09:18:30 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.36, released Wed Nov 19 09:18:30 1997.
+
+Wed Nov 19 09:15:15 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao/orbobj.cpp (resolve_name_service): Made a bunch of minor
+ Changes for resolving the Naming service.
+
+Wed Nov 19 08:44:12 1997 Brian Mendel <brian.r.mendel@boeing.com>
+
+ * tests/Cubit/TAO/DII_Cubit/default.bld:
+ * tests/Cubit/TAO/DII_Cubit/clnt.bld:
+ * tests/Cubit/TAO/DII_Cubit/svr.bld:
+ * tests/Cubit/TAO/IDL_Cubit/default.bld:
+ * tests/Cubit/TAO/IDL_Cubit/clnt.bld:
+ * tests/Cubit/TAO/IDL_Cubit/svr.bld:
+ * tests/Cubit/TAO/MT_Cubit/default.bld:
+ * tests/Cubit/TAO/MT_Cubit/clnt.bld:
+ * tests/Cubit/TAO/MT_Cubit/svr.bld: Added build files in the new
+ test structure for VxWorks using the GHS compiler.
+
+ * tests/Cubit/Build: Removed the obsolete build directory for vxWorks.
+
+Wed Nov 19 07:47:13 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.35, released Wed Nov 19 07:47:13 1997.
+
+Wed Nov 19 05:53:42 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * tests/Cubit/TAO/DII_Cubit/clnt.cpp:
+ * tests/Cubit/TAO/DII_Cubit/clnt.h:
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp:
+ * tests/Cubit/TAO/IDL_Cubit/clnt.h: Changed code to add loop
+ around all cube calls, and make output more consistent.
+
+ * orbsvcs/tests/Logger/Makefile:
+ * orbsvcs/tests/Logger/ior_multicast.cpp:
+ * orbsvcs/tests/Logger/ior_multicast.h: Removed unneeded
+ ior_multicast.* source files from the logger example. It now uses
+ the resolve_initial_references() to use the naming service for its
+ advertisement.
+
+ * orbsvcs/lib/Makefile (realclean): Updated with realclean & clean
+ rules to delete CosNamingS.* and CosNamingC.*
+
+ * docs/releasenotes/index.html: Updated status of the naming
+ service to working implementation.
+
+ * orbsvcs/lib/CosNamingS.cpp:
+ * orbsvcs/lib/CosNamingS.i:
+ * orbsvcs/lib/CosNamingS.h:
+ * orbsvcs/lib/CosNamingC.cpp:
+ * orbsvcs/lib/CosNamingC.i:
+ * orbsvcs/lib/CosNamingC.h: Removed these files from the
+ repository, since the IDL compiler generates these correctly.
+
+ * orbsvcs/bin/Naming_Service/CosNaming_i.cpp (list): Remove
+ warning for unused variable.
+
+ * orbsvcs/bin/Naming_Service/svr.h: Constructor of event handler
+ for multicast doesn't need reply port anymore.
+
+ * orbsvcs/bin/Naming_Service/svr.cpp (handle_input): Now receives
+ the port number in the multicast request. Suggested by Doug
+ Schmidt.
+
+ * tao/orbobj.cpp (resolve_name_service): changed return value
+ variable to be signed. Added code to send the port number in the
+ multicast resolution mechanism as a CORBA::Short.
+
+ * orbsvcs/bin/Naming_Service/NS_CosNaming.cpp (NS_ExtId):
+ Reordered initializers in the constructor.
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.h:
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (run): Added a loop around
+ all cube calls and added calls/sec stats for them.
+
+ * tao/corba.h: Changed order of inclusion of marshal.i, due to
+ warnings of the declaration of the inline function
+ make_marshal_object().
+
+ * tao/orbobj.i: reorder the declaration of inline
+ CORBA_OBJ::Add_Ref(), to remove a warning.
+
+ * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main):
+ removed return statement that was causing a warning.
+
+Wed Nov 19 04:22:48 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.34, released Wed Nov 19 04:22:48 1997.
+
+Tue Nov 18 01:29:00 1997 <nw1@COYOTE>
+
+ * tao/TAO.dsp: Added Arg_Shifter.cpp into project file.
+
+Tue Nov 18 18:53:57 1997 Sergio Flores <sergio@polka.cs.wustl.edu>
+
+ * TAO_IDL/be/be_state_typedef.cpp (gen_code):
+ * TAO_IDL/be/be_state_structure.cpp (gen_code):
+ * TAO_IDL/be/be_state_sequence.cpp (gen_code):
+ * TAO_IDL/be/be_state_operation.cpp (gen_code):
+ * TAO_IDL/be/be_state_array.cpp (gen_code): Comment out
+ unreachable break statements.
+
+ * TAO_IDL/ast/ast_array.cpp (n_dims):
+ * TAO_IDL/include/ast_array.h (AST_Array::n_dims):
+ * TAO_IDL/ast/ast_attribute.cpp (readonly):
+ * TAO_IDL/include/ast_attribute.h (AST_Attribute::readonly):
+ * TAO_IDL/ast/ast_argument.cpp (direction):
+ * TAO_IDL/include/ast_argument.h (AST_Argument::direction):
+ * tao/nvlist.h (CORBA_NamedValue::name):
+ * TAO_IDL/include/utl_scope.h (UTL_Scope::scope_node_type):
+ * TAO_IDL/ast/ast_predefined_type.cpp (pt):
+ * TAO_IDL/include/ast_predefined_type.h (AST_PredefinedType::pt):
+ removed const from declarations that it didn't have a meaning for.
+ Also from return statements. These changes were suggested by
+ James Hu and the SGI compiler.
+
+Tue Nov 18 18:34:16 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu>
+
+ * tests/Cubit/COOL/client.cpp: ORB_init is now called in
+ Task_Client.cpp instead of the main program, to insure that its
+ called in the right thread.
+
+ * tests/Cubit/COOL/Task_Client.{h,cpp}: Used the COOL_Activity to
+ create threads instead of ACE_Task.
+
+ * tests/Cubit/COOL/server.cpp: Used the createActivity stuff to
+ create threads. The server now creates two servants, one for high
+ and the other for low priority clients.
+
+Tue Nov 18 17:44:02 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/corbacom.h: Added special case for CORBA::WChar to be a
+ short on VxWorks/GreenHills.
+
+ * TAO_IDL/be/be_state.cpp: Added template instantiations for SGI.
+
+ * tao/deep_free.cpp (deep_free): Removed unused 'alignment'
+ variable.
+
+ * tao/deep_copy.cpp (deep_copy): Removed unused 'alignment'
+ variable.
+
+ * tao/encode.cpp (encode): Removed unused 'continue_encoding'
+ variable.
+
+ * tao/orbobj.cpp (POA_init): Removed options which were no longer
+ supported/necessary, as well as their corresponding variables.
+
+Tue Nov 18 17:33:20 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/lib/RtecEventChannelAdmin.idl:
+ * orbsvcs/lib/RtecEventComm.idl:
+ Changed several operations to "oneway" to avoid dead-locks in
+ the Event Channel tests.
+
+ * orbsvcs/lib/Runtime_Scheduler.h:
+ * orbsvcs/lib/Runtime_Scheduler.cpp:
+ This class is a servant, event though it is only used
+ collocated, so it must inherit from the POA class.
+
+ * orbsvcs/lib/Scheduler_Factory.cpp:
+ Care must be exercised to create the Runtime_Scheduler instance
+ only once the ORB is up and running.
+
+ * orbsvcs/lib/CosNamingC.cpp:
+ * orbsvcs/lib/CosNamingC.h:
+ * orbsvcs/lib/CosNamingS.cpp:
+ * orbsvcs/lib/CosNamingS.h:
+ * orbsvcs/lib/RtecEventChannelAdminC.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.h:
+ * orbsvcs/lib/RtecEventChannelAdminS.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminS.h:
+ * orbsvcs/lib/RtecEventCommC.cpp:
+ * orbsvcs/lib/RtecEventCommC.h:
+ * orbsvcs/lib/RtecEventCommS.cpp:
+ * orbsvcs/lib/RtecEventCommS.h:
+ * orbsvcs/lib/RtecSchedulerC.cpp:
+ * orbsvcs/lib/RtecSchedulerC.h:
+ * orbsvcs/lib/RtecSchedulerS.cpp:
+ * orbsvcs/lib/RtecSchedulerS.h:
+ Regenerated all the stubs and skeletons using the latest IDL
+ compiler, but still some hand crafting is required, namely for
+ operations in base classes.
+
+Tue Nov 18 14:27:02 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/cdr.cpp (CDR): Changed TAO_PURIFY to ACE_PURIFY.
+
+ * tests/Cubit/TAO/MT_Cubit/serdatever/svr.cpp: Added code to put use a
+ kinder, gentler high priority value on VxWorks. This makes it
+ easier for the machine to remain running. :-\
+
+ * tao/corbacom.h: Added CVS id keyword.
+
+ * tao/{corba.h,tao_internals.h,tao_internals.cpp}: Backed out
+ tao_internals.h, which is not intended to be publicly visible.
+ corba.h should contain only headers/inlines for things which
+ should be externally visible.
+
+Tue Nov 18 04:00:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/poa.cpp:
+ An operation lookup on the dispatching code will cause an error
+ message and the CORBA::BAD_OPERATION exception to be raised.
+
+ * tao/orb_core.cpp:
+ Somehow the options for setting the Event Service and the
+ Scheduling Service IOR were lost. Eventually they must be
+ removed, but we are still testing the Naming Service.
+
+Tue Nov 18 02:17:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.33, released Tue Nov 18 02:17:24 1997.
+
+Tue Nov 18 02:03:22 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * orbsvcs/tests/Logger/svr.cpp:
+ * orbsvcs/tests/Logger/clnt.cpp: This test example now uses the
+ naming service in the server and client. Also changed the code to
+ have a default use in case the naming service is not available.
+
+ * tao/orbobj.cpp (resolve_name_service): Fixed a bug, dealing with
+ closing the endpoint of communication for the response of the
+ multicast mechanism.
+
+Tue Nov 18 01:37:42 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/{be_operation.cpp,be_state_operation}.cpp: We now
+ properly handle the declaration and assigning to the return value.
+
+ * TAO_IDL/be/be_state_argument.cpp: Removed a spurious ()
+ appearing after a function call.
+
+ * TAO_IDL/be/{be_structure,be_union}.cpp: Carlos had removed the
+ if !imported check in the member counting function, but it had
+ crept in again, maybe due to me. So this is fixed again.
+
+ * test/Cubit/TAO/IDL/svr.cpp: Removed the hack which was
+ separating command line arguments starting with O. We leave this
+ task to the newly added Arg_Shifter.
+
+ * tao.orbobj.cpp: In ORB_init, the call to
+ TAO_ORb_Core_instance->init needed a char ** argv and we were
+ passing a char * const* argv. So we cast this. g++ was giving this
+ error.
+
+ * TAO_IDL/be_include/be_codegen.h, TAO_IDL/be/be_codegen.cpp:
+ Added 5 new states for code generation. All of these for
+ operations and arguments.
+
+ * TAO_IDL/be/be_argument.cpp: Made all methods uniform so that the
+ state will be set by the corresponding be_operation method. Thus
+ the be_operation method will vary the state but still invoke the
+ same be_argument method.
+
+ * TAO_IDL/be/be_enum.cpp, be_structure.cpp, be_union.cpp, be_field.cpp,
+ be_sequence.cpp: Some reformatting, removed unused variables.
+
+ * TAO_IDL/be/be_scope.cpp: Changes include adding ACE_ERROR_RETURN
+ with file name, line number capability. In addition, we were not
+ testing for return status of the various gen methods called.
+
+ * Most important changes in these files:
+
+ TAO_IDL/be/{be_operation,be_state_argument,be_state_operation}.cpp:
+
+ Large scale changes that include a uniform way to invoke methods
+ of the be_argument class from the be_operation methods. Added the
+ 5 new states. Added proper handling of _out parameters in stubs
+ and skeletons.
+
+Mon Nov 17 20:05:40 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Cleaned up lots of places
+ where the allocated stuff wasn't being deallocated.
+
+ * tao/request.cpp: Insured that the CTOR adds a reference for the
+ dynamically-allocated NamedValue.
+
+ * tao/orb_core.cpp: Freed the faked service configurator argv.
+
+ * tao/iiopobj.h: Removed anachronistic comments.
+
+ * tao/iiopobj.{i,cpp}: Changed allocation of IIOP::Profile.host to use
+ new/delete rather than strdup/free b/c the decoder, which is
+ generic, must use new to allocate the space. Thus, the strdup had
+ to go. Purify now happier.
+
+ * tao/cdr.cpp: Added call to memset bracketed by #if
+ defined(TAO_PURIFY) in order to appease the purify gods.
+
+Mon Nov 17 20:05:16 1997 Seth Benjamin Widoff <sbw1@waltz.cs.wustl.edu>
+
+ * arg_shifter.cpp:
+ fixed a bug where in new, gcc used the address of an integer
+ reference rather than its value. weird.
+
+ * tao/orb_core.cpp:
+ Modified the init routine to "consume" command line arguments it
+ recognizes by placing them in the rear of argv, and adjusting
+ argc. It uses the Arg_Shifter class to accomplish this.
+
+ * tao/arg_shifter.h:
+ * tao/arg_shifter.cpp:
+ The Arg_Shifter class is an iterator that, as it iterates over
+ argv, places consumed arguments at the end of the vector,
+ ignored ones in their original order at the beginning of the
+ vector, and adjusts argc to hide the consumed arguments.
+
+Mon Nov 17 18:40:49 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/orb_core.i:
+ Some data was not initialized when used from a thread different
+ than the one doing ORB_init (even though we choose a global ORB
+ in the svc.conf file). Chris found a fix for this. The affected
+ methods are reactor(), thr_mgr(), connector() and acceptor().
+
+ * TAO_IDL/be/be_sequence.cpp:
+ length was not working if the value was <= than the maximum.
+
+ * orbsvcs/lib/CosNamingC.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.cpp:
+ * orbsvcs/lib/RtecEventCommC.cpp:
+ * orbsvcs/lib/RtecSchedulerC.cpp:
+ * orbsvcs/lib/RtecSchedulerS.cpp:
+ Fixed the length() problem by hand, even though the new IDL
+ compiler should do it right.
+
+Mon Nov 17 11:52:54 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * TAO_IDL/be/be_codegen.cpp (server_header),
+ TAO_IDL/util/utl_global.cpp (be_change_idl_file_extension):
+ Updated several methods to ensure const correctness for the
+ updated ACE_OS::str*() methods. Thanks to David Levine for
+ reporting this.
+
+Mon Nov 17 02:40:14 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.32, released Mon Nov 17 02:40:14 1997.
+
+Mon Nov 17 01:48:17 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * TAO_IDL/be/be_scope.cpp:
+ TypeCode generation was failing for imported members.
+
+ * TAO_IDL/be/be_structure.cpp:
+ Member count must include all members, imported or not.
+
+ * TAO_IDL/be/be_typedef.cpp:
+ Added missing decr_indent() in the typecode generation which was
+ making the generated code completely unreadable.
+
+ * orbsvcs/lib/RtecEventChannelAdmin.idl:
+ * orbsvcs/lib/RtecEventComm.idl:
+ Removed the PullConsumer and PullSupplier classes, they are not
+ supported.
+
+ * orbsvcs/lib/CosNamingC.cpp:
+ * orbsvcs/lib/CosNamingS.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.h:
+ * orbsvcs/lib/RtecEventChannelAdminC.i:
+ * orbsvcs/lib/RtecEventChannelAdminS.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminS.h:
+ * orbsvcs/lib/RtecEventChannelAdminS.i:
+ * orbsvcs/lib/RtecEventCommC.cpp:
+ * orbsvcs/lib/RtecEventCommC.h:
+ * orbsvcs/lib/RtecEventCommC.i:
+ * orbsvcs/lib/RtecEventCommS.cpp:
+ * orbsvcs/lib/RtecEventCommS.h:
+ * orbsvcs/lib/RtecEventCommS.i:
+ * orbsvcs/lib/RtecSchedulerC.cpp:
+ * orbsvcs/lib/RtecSchedulerS.cpp:
+ New version of the generated files, this last version is almost
+ making in it, but still needs hand crafting.
+
+ * TAO_IDL/be/be_array.cpp:
+ * TAO_IDL/be/be_sequence.cpp:
+ * TAO_IDL/be/be_typedef.cpp:
+ Fixed buggy TypeCode lenght computation, it was only taking into
+ account the tc_encap_len() for the base type but it should use
+ the full tc_size().
+
+ * tao/encode.cpp:
+ Object references *must* be passed a pointer to Object_ptr in
+ the marshalling code.
+
+ * TAO_IDL/be/be_operation.cpp:
+ * TAO_IDL/be/be_state_operation.cpp:
+ Fixed generated code for Object references as return values. It
+ allocates the Object_ptr in the heap, stores the result there
+ and creates an Any for it.
+
+Sun Nov 16 23:30:26 1997 Sergio Flores <sergio@tango.cs.wustl.edu>
+
+ * orbsvcs/tests/Logger/svr.cpp (main):
+ Changed the code to use the resolve_initial_references ()
+ interface to get the object refrence to the naming service.
+
+ * orbsvcs/tests/Logger/clnt.cpp (main): Now uses the
+ resolve_initial_references() to get the naming service object
+ reference, to get the logger factory object reference.
+
+ * orbsvcs/bin/Naming_Service/svr.cpp (main):
+ * orbsvcs/bin/Naming_Service/svr.h:
+ Added code to respond to multicast requests for the IOR.
+
+ Added code to respond to multicast requests for the IOR.
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp: Fixed some formatting
+ problems dealing with the precision of the output.
+
+Sun Nov 16 14:48:00 1997 <nw1@COYOTE>
+
+ * test/Cubit/TAO/IDL_Cubit/{server,client}.dsp: Updated library
+ path for release version.
+
+ * TAO_IDL/TAO_IDL.mak:
+ * TAO_IDL/tao_idl.dsp: Added new files (be_state_*.cpp) into
+ project file.
+
+Sun Nov 16 12:56:24 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_interface.cpp: The _is_a_skel method's signature
+ had an Object_ptr obj parameter which was unused. Instead of
+ generating the ACE_UNUSED_ARG (obj) line of code, we use /* obj */
+ in the signature.
+
+Sun Nov 16 05:51:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.31, released Sun Nov 16 05:51:38 1997.
+
+Sun Nov 16 00:22:04 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp:
+ Fixed output for structs and union test.
+
+ * tao/iiopobj.cpp:
+ If the user provides no key for an object we generate one, based
+ on the object address.
+
+ * TAO_IDL/be/be_sequence.cpp:
+ The length() method should get the maximum if reallocation
+ occurs.
+
+ * tao/orb_core.cpp:
+ * tao/orbobj.cpp:
+ * tao/orbobj.h:
+ * tao/params.cpp:
+ * tao/params.h:
+ Added new options to the ORB (-ORBeventserviceior,
+ -ORBscheduleserviceior), this should go away once the Naming
+ Service works properly, but are needed now to locate this
+ services.
+
+ * orbsvcs/lib/Makefile:
+ Added several small classes that help when using the Scheduling
+ and/or the Event Service.
+
+ * orbsvcs/lib/Scheduler_Factory.cpp:
+ * orbsvcs/lib/Scheduler_Factory.h:
+ * orbsvcs/lib/Scheduler_Factory.i:
+ Encapsulate the construction and configuration of the Scheduling
+ Service.
+
+ * orbsvcs/lib/Runtime_Scheduler.cpp:
+ * orbsvcs/lib/Runtime_Scheduler.h:
+ * orbsvcs/lib/Runtime_Scheduler.i:
+ Implement a simple, but fast, Scheduling Service based on a
+ precomputed scheduling.
+
+ * orbsvcs/lib/Event_Utilities.cpp:
+ * orbsvcs/lib/Event_Utilities.h:
+ * orbsvcs/lib/Event_Utilities.i:
+ Simplify the creation of QoS structures for the Event Service.
+
+ * orbsvcs/lib/Scheduler_Utilities.cpp:
+ * orbsvcs/lib/Scheduler_Utilities.h:
+ * orbsvcs/lib/Scheduler_Utilities.i:
+ Simplify manipulation of the RT_Infos for the Scheduling
+ Service.
+
+ * orbsvcs/lib/Channel_Clients.cpp:
+ * orbsvcs/lib/Channel_Clients.h:
+ * orbsvcs/lib/Channel_Clients_T.cpp:
+ * orbsvcs/lib/Channel_Clients_T.h:
+ Helpers to adapt PushSuppliers and PushConsumers.
+
+ * orbsvcs/lib/CosNamingC.cpp:
+ * orbsvcs/lib/CosNamingC.h:
+ * orbsvcs/lib/CosNamingC.i:
+ * orbsvcs/lib/CosNamingS.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.h:
+ * orbsvcs/lib/RtecEventChannelAdminC.i:
+ * orbsvcs/lib/RtecEventChannelAdminS.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminS.h:
+ * orbsvcs/lib/RtecEventComm.idl:
+ * orbsvcs/lib/RtecEventCommC.cpp:
+ * orbsvcs/lib/RtecEventCommC.h:
+ * orbsvcs/lib/RtecEventCommC.i:
+ * orbsvcs/lib/RtecEventCommS.cpp:
+ * orbsvcs/lib/RtecSchedulerC.cpp:
+ * orbsvcs/lib/RtecSchedulerC.h:
+ * orbsvcs/lib/RtecSchedulerC.i:
+ * orbsvcs/lib/RtecSchedulerS.cpp:
+ This files were generated by the IDL compiler and don't need any
+ hand crafting (so far). I still maintain them in CVS because the
+ compiler is not stable enough.
+
+ * orbsvcs/bin/Naming_Service/Makefile:
+ Removed spurious call to rm.
+
+ * orbsvcs/lib/RtecEventComm.idl:
+ Removed the (already commented out) include of "orb.idl".
+
+Sat Nov 15 21:38:48 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * TAO_IDL/be/be_sequence.cpp:
+ The generated length() method will reallocate the sequences
+ now.
+
+ * TAO_IDL/be/be_constant.cpp:
+ It was initializing nested constants in the client header file,
+ Andy told me how to fix it.
+
+ * TAO_IDL/be/be_operation.cpp:
+ Fixed typo in generated code:
+ s/_tao_enviroment/_tao_environment/
+
+ * TAO_IDL/be/be_field.cpp:
+ Only generate the inline members of the field type if the type
+ is not imported.
+
+ * TAO_IDL/driver/drv_fork.cpp:
+ * TAO_IDL/driver/drv_preproc.cpp:
+ Removed old code to support plain fork (without ACE).
+ Also removed temporary files *unless* we are on Win32, were
+ removing the file and keeping it open fails.
+
+ * TAO_IDL/include/idl_global.h:
+ * TAO_IDL/util/utl_global.cpp:
+ Added routines to obtain the generated names of any IDL file,
+ not only the one we are processing.
+
+ * TAO_IDL/be/be_codegen.cpp:
+ The compiler now generate all the required include directives
+ when the IDL file contains some.
+
+ * tao/params.cpp:
+ Initialize name_service_port_ to zero in the constructor.
+
+Sat Nov 15 21:20:01 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_string.cpp: The typecode info was getting
+ generated in a wrong file because of setting the worng file to
+ generate it in.
+
+ * TAO_IDL/be/be_typedef.cpp: Some extra indentation was getting
+ generated for typecodes. This is fixed.
+
+ * TAO_IDL/be/be_state_argument.cpp: For parameters of type
+ ObjRefs, we were not passing the address of the object_ptr to the
+ Any constructor. This would have caused seg faults when
+ decoding. This is now fixed.
+
+ * TAO_IDL/be: Split be_state.cpp into a number of files based on
+ the IDL types, e.g., be_state_struct.cpp, be_state_union.cpp, ...
+
+ * TAO_IDL/be/be_sequence.cpp: Name creation now uses a uniform
+ strategy rather than typedefed sequences assuming the name of the
+ typedef and anonymous sequences getting a generated name. This was
+ required to eliminate a number of multiple declarations errors.
+
+ * TAO_IDL/be/be_state_union.cpp: Since C++ does not allow
+ instances of classes to appear inside a union declaration, the
+ private data members for data members of type objref, strings,
+ sequences, and anys must be pointers. This changes code in the
+ accessor methods defined in the generated *.i files for the union.
+
+ * TAO_IDL/be/be_operation.cpp: There were some instances of the
+ incorrectly spelled _tao_enviroment remaining which have been
+ corrected.
+
+ * TAO/tao/managed_types.{h,i,cpp}: Added these 3 files that define
+ the self managed data type similar to a String_var. These self
+ managed data types are required for struct/union members that are
+ strings or obj references, as well as for element types of
+ sequences.
+
+ * TAO_IDL/be/be_typedef.cpp: Added code to generate the typecode
+ structure for typedefs. These use the tk_alias kind field.
+
+ * TAO_IDL/be/{be_union,be_state}.cpp: Improvements to union with
+ string members. However, this is still incomplete and will be
+ done by the next couple of commits.
+
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Removed the ACE_DEBUG
+ stmt for printing object keys.
+
+Sat Nov 15 18:03:39 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (make_cubit): We don't
+ need to free up the object key since it's no longer allocated
+ dynamically.
+
+ * tao/object: Changed the _get_name() method to return const char
+ * to be consistent with the iiopobj change below.
+
+ * tao/iiopobj: Fixed _get_name() so that it doesn't allocate
+ memory by having it return const char * and just return the
+ pointer. This should fix some subtle problems.
+
+Sat Nov 15 12:19:55 1997 Nanbor Wang <nw1@merengue.cs.wustl.edu>
+
+ * TAO_IDL/be/be_codegen.cpp: Changed two loop counters from type
+ int to type size_t.
+
+Sat Nov 15 01:33:08 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.30, released Sat Nov 15 01:33:08 1997.
+
+Fri Nov 14 19:45:01 1997 Sergio Flores <sergio@polka.cs.wustl.edu>
+
+ * tests/Cubit/TAO/DII_Cubit/clnt.cpp :
+ * tests/Cubit/TAO/DII_Cubit/clnt.h :
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp :
+ - Fixed the difference in latency problem from DII and IDL.
+ - Changed the DII_Cubit client interface to be similar to IDL, now
+ you can specify hostname and port number, instead of the IOR.
+
+Fri Nov 14 17:48:14 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/bin/Naming_Service/CosNaming_i.cpp:
+ Fixed problem with the new Environment parameter for _narrow ().
+
+ * orbsvcs/bin/Naming_Service/Makefile:
+ No need to include rules.bin.GNU.
+
+Fri Nov 14 17:08:20 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao/iiopobj.cpp: Make sure that host is set to 0 in all the
+ constructors.
+
+ * tao/iiopobj.cpp (Profile): Modified the code to consistently
+ store a NUL at the end of each object key string.
+
+Fri Nov 14 17:10:20 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu>
+
+ * cubit_i.cpp: Changed &d to %d in ACE_ERROR
+
+Fri Nov 14 16:42:21 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu>
+
+ * tao/tao_internals.cpp (fake_service_entries_i): Made sure that
+ the resource factory faked entry had the proper number of
+ arguments specified.
+
+Fri Nov 14 14:11:47 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * orbsvcs/lib/Makefile:
+ Added new library that contains the stubs and skeletons for the
+ TAO services.
+
+ * orbsvcs/Makefile:
+ * orbsvcs/bin/Makefile:
+ * orbsvcs/tests/Makefile:
+ Added top level Makefiles.
+
+ * orbsvcs/bin/Naming_Service/Makefile:
+ * orbsvcs/bin/Naming_Service/svr.cpp:
+ * orbsvcs/bin/Naming_Service/svc.conf:
+ * orbsvcs/bin/Naming_Service/NS_CosNaming.h:
+ * orbsvcs/bin/Naming_Service/NS_CosNaming.cpp:
+ * orbsvcs/bin/Naming_Service/CosNaming_i.h:
+ * orbsvcs/bin/Naming_Service/CosNaming_i.cpp:
+ Moved the naming service implementation from the TAO
+ subdirectory to this place.
+
+ * orbsvcs/tests/Simple_Naming/Makefile:
+ * orbsvcs/tests/Simple_Naming/svc.conf:
+ * orbsvcs/tests/Simple_Naming/clnt.h:
+ * orbsvcs/tests/Simple_Naming/clnt.cpp:
+ A simple test program for the naming service, it simply tries to
+ locate it and connect to it.
+
+ * orbsvcs/bin/Naming_Service/Orbix/Client.cpp:
+ * orbsvcs/bin/Naming_Service/Orbix/CosNaming.idl:
+ * orbsvcs/bin/Naming_Service/Orbix/Makefile:
+ * orbsvcs/bin/Naming_Service/Orbix/NS_CosNaming.cpp:
+ * orbsvcs/bin/Naming_Service/Orbix/NS_CosNaming.h:
+ * orbsvcs/bin/Naming_Service/Orbix/logger-main.cpp:
+ * orbsvcs/bin/Naming_Service/Orbix/logger.idl:
+ * orbsvcs/bin/Naming_Service/Orbix/logger_tie.cpp:
+ * orbsvcs/bin/Naming_Service/Orbix/logger_tie.h:
+ * orbsvcs/bin/Naming_Service/Orbix/server-main.cpp:
+ * orbsvcs/bin/Naming_Service/TAO/CosNaming.idl:
+ * orbsvcs/bin/Naming_Service/TAO/CosNaming_i.cpp:
+ * orbsvcs/bin/Naming_Service/TAO/CosNaming_i.h:
+ * orbsvcs/bin/Naming_Service/TAO/Makefile:
+ * orbsvcs/bin/Naming_Service/TAO/NS_CosNaming.cpp:
+ * orbsvcs/bin/Naming_Service/TAO/NS_CosNaming.h:
+ * orbsvcs/bin/Naming_Service/TAO/clnt.cpp:
+ * orbsvcs/bin/Naming_Service/TAO/clnt.h:
+ * orbsvcs/bin/Naming_Service/TAO/svc.conf:
+ * orbsvcs/bin/Naming_Service/TAO/svr.cpp:
+ We will only maintain the TAO version for the naming service, no
+ need to keep this subdirectories.
+
+ * orbsvcs/lib/RtecScheduler.idl:
+ The Real Time Scheduling Service. This module declares the QoS
+ structures (RT_Info) and the interface for the global scheduler.
+
+ * orbsvcs/lib/RtecEventComm.idl:
+ Part of the Real Time Event Services interface, this file
+ contains the Event type, the basic interfaces for consumers and
+ suppliers and some exceptions.
+
+ * orbsvcs/lib/RtecEventChannelAdmin.idl:
+ Part of the Real Time Event Services interface, in particular
+ this module defines the event channel, the proxy interfaces and
+ the QoS aware subscription and registration interfaces.
+
+ * orbsvcs/lib/Event_Service_Constants.h:
+ The Event Service implementation and the Scheduling Service
+ implementation require this file, which defines some constants
+ and static limits. For lack of a better place I putted it here.
+
+ * orbsvcs/lib/CosNaming.idl:
+ Moved the IDL file to the library, otherwise it cannot be used
+ by clients.
+
+ * tao/corba.h:
+ Added some macros that support portable exception handling,
+ either through C++ exceptions or the CORBA::Enviroment
+ parameter.
+
+ * orbsvcs/lib/RtecEventCommC.h:
+ * orbsvcs/lib/RtecEventCommC.i:
+ * orbsvcs/lib/RtecEventCommC.cpp:
+ * orbsvcs/lib/RtecEventCommS.h:
+ * orbsvcs/lib/RtecEventCommS.i:
+ * orbsvcs/lib/RtecEventCommS.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminS.h:
+ * orbsvcs/lib/RtecEventChannelAdminS.i:
+ * orbsvcs/lib/RtecEventChannelAdminS.cpp:
+ * orbsvcs/lib/RtecEventChannelAdminC.h:
+ * orbsvcs/lib/RtecEventChannelAdminC.i:
+ * orbsvcs/lib/RtecEventChannelAdminC.cpp:
+ * orbsvcs/lib/CosNamingC.h:
+ * orbsvcs/lib/CosNamingC.i:
+ * orbsvcs/lib/CosNamingC.cpp:
+ * orbsvcs/lib/CosNamingS.h:
+ * orbsvcs/lib/CosNamingS.i:
+ * orbsvcs/lib/CosNamingS.cpp:
+ I had to modify the IDL compiler generated files, I will keep
+ the files in CVS until we no longer need to modify it.
+
+Fri Nov 14 13:02:52 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * tao/decode.cpp: TAO_Marshal_Objref::decode line 615 which tried
+ to set the underlying object_addr was invoking an incorrect inline
+ function because of lack of passing an argument to the object_addr
+ () method. Specifically, due to the lask of argment, the
+ "retrieve" method was getting called whereas we wanted the "set"
+ method. All we do is pass a 0 (NUL) argument. This suffices
+ because we have already decoded the host and port number. So all
+ information is with us to set the server address.
+
+Fri Nov 14 00:29:09 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * TAO_IDL/fe/lex.yy.cpp: set RCS -ko option so that the Id keyword
+ won't get expanded on checkout. That was causing CVS to think
+ that a merge was needed.
+
+Thu Nov 13 19:11:36 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao/giop.cpp (start): Updated the code to use the new
+ object_addr() style.
+
+ * tao/iiopobj: Added many fixes to the Profile code to fix nasty
+ bugs. Also, renamed {get|set}_object_addr() to simply
+ object_addr(), which is the correct style.
+
+ * tao/iiopobj.h: Replaced the use of "localhost" with
+ ACE_DEFAULT_SERVER_HOST. This is necessary to support broken
+ platforms like MVS that don't support "localhost"...
+
+ * TAO/tests/Cubit/TAO/IDL_Cubit/svr.cpp (parse_args): Assume for
+ the moment that any arguments starting with `-O' are `-ORB' or
+ `-OA'. This should be fixed by having the ORB_init() and
+ POA_init() methods consume their argv/argc's.
+
+Thu Nov 13 16:18:32 1997 <nw1@CHA-CHA>
+
+ * tao/orb_core.h:
+ * tao/default_client.h:
+ * tao/default_server.h: Changed ACE_SVC_FACTORY_DECLARE to
+ ACE_FACTORY_DECLARE.
+
+ * tao/orb_core.cpp:
+ * tao/default_client.cpp:
+ * tao/default_server.cpp: Changed ACE_SVC_FACTORY_DEFINE to
+ ACE_FACTORY_DEFINE.
+
+ * tao/corba.h: Added include "tao/tao_internals.h".
+
+ * tao/tao_internals.h: Disable header file inclusions. I've put
+ this file into corba.h.
+
+ * tao/tao_internals.cpp: Changed to use "tao/corba.h".
+
+ * tao/TAO.mak:
+ * tao/TAO.dsp: Replaced ACE_BUILD_SVC_DLL with TAO_BUILD_DLL.
+
+ * tao/corba.h: Added TAO_Export definition.
+
+ * tao/*.h: Replaced ACE_Svc_Export with TAO_Export. Added
+ default definition to build TAO DLL on Win32.
+
+Thu Nov 13 01:47:02 1997 Chris Cleeland <cleeland@macarena.cs.wustl.edu>
+
+ * tao/iiopobj.cpp (IIOP_Object): Removed the duplicate CTORs that
+ I'd accidentally included here during the prior merge/commit
+ phase.
+
+Wed Nov 12 23:59:29 1997 <nw1@COYOTE>
+
+ * TAO/TAO_IDL/tao_idl.dsp: Changed to generate multithreaded codes
+ on NT.
+
+ * TAO/TAO_IDL/be/be_scope.cpp:
+ * TAO/TAO_IDL/fe/idl.ll:
+ * TAO/TAO_IDL/fe/lex.yy.cpp:
+ * TAO/TAO_IDL/fe/y.tab.cpp:
+ * TAO/TAO_IDL/include/ast_decl.h:
+ * TAO/TAO_IDL/include/idl.h:
+ * TAO/TAO_IDL/include/utl_identifier.h:
+ * TAO/TAO_IDL/include/utl_idlist.h:
+ * TAO/TAO_IDL/include/utl_tmpl/utl_decllist.h:
+ * TAO/TAO_IDL/include/utl_tmpl/utl_exceptlist.h:
+ * TAO/TAO_IDL/include/utl_tmpl/utl_exprlist.h:
+ * TAO/TAO_IDL/include/utl_tmpl/utl_idlist.h:
+ * TAO/TAO_IDL/include/utl_tmpl/utl_labellist.h:
+ * TAO/TAO_IDL/include/utl_tmpl/utl_namelist.h:
+ * TAO/TAO_IDL/include/utl_tmpl/utl_strlist.h: Changed to use
+ "ace/stdcpp.h" and removed inclusion of header files that
+ conflict with standard C++ library.
+
+Wed Nov 12 18:59:20 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/iioporb.cpp: Added call to set object address in Profile.
+
+ * tao/iiopobj.cpp: Corrected code in the copy CTOR where the host
+ was being copied over the old host. This could prove bad if the
+ amount of space allocated previously was too small for the
+ hostname we're copying in. Ideally we'd use something smarter
+ than this, but hopefully (if you read the comment below) this will
+ go away soon.
+
+ * tao/iiopobj.*: Added an ACE_INET_Addr to IIOP::Profile so that
+ we only need to do a gethostbyname() once. After that we can used
+ the cached information. I'd really like to remove the host/port
+ as explicit public data members, but for now we take one step at a
+ time.
+
+ * tao/giop.cpp: Use the IIOP::Profile object address when making a
+ connection.
+
+ * tao/decode.cpp: Added code to set the object address in the
+ Profile when an object ref is decoded.
+
+ * tao/debug.h: Removed old questions in comments.
+
+ * tao/connect.h: Added some documentation.
+
+Wed Nov 12 17:41:02 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * tao/iiopobj.cpp: I had forgotten to update the return type of
+ _get_name in iiopobj.cpp to "char *" instead of "const char *".
+
+Wed Nov 12 14:28:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/ast/ast_union.cpp: Fixed a problem where the front end
+ would not give any error if there were duplicate case labels. This
+ was happening since an overloaded == operator taking an
+ AST_Expression* was not getting called. Instead a simple
+ comparison of addresses was taking place. We now use the "compare"
+ method defined on the AST_Expression class to fix this problem.
+
+ * TAO_IDL/be/be_interface.cpp: Removed some code under #if 0. The
+ noteworthy change, however, has to do with code that gets
+ generated for the "_is_a_skel". Some compilers were issuing a
+ warning saying "unused argument obj". Since we cannot change the
+ signature of the generated "_is_a_skel", we use the trick of
+ generatung ACE_UNUSED_ARG (obj); in the code. Some other
+ formatting changes made.
+
+ * TAO_IDL/be/be_operation.cpp: Some very minor changes so that the
+ generated code is properly indented.
+
+ * tao/{iiopobj,object,stub}.h, iiopobj.cpp: Changed the return
+ type of _get_name to return a heap-allocated "char *". In the
+ earlier case we were erroneously returning a pointer to local
+ array. This was a change I made a couple of days back to deal with
+ the fact that object keys are octet arrays and are not null
+ terminated. Now we take the object key and make a NULL terminated
+ copy in a heap allocated string. It is the caller's responsibility
+ to free this.
+
+ * tao/tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp: Used string_free to
+ free the string returned by _get_name.
+
+ * tao/tests/Thruput/client.cpp: _narrow now uses the additional
+ env parameter.
+
+Wed Nov 12 09:22:47 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tao/tao_internals.cpp (open_services): added ACE_UNUSED_ARGs
+ for argc and argv if TAO_PLATFORM_SVC_CONF_FILE_NOTSUP.
+
+ * TAO_IDL/Makefile: disabled clean and realclean targets on VxWorks,
+ so that they don't remove tao_idl from the host build tree.
+
+Tue Nov 11 23:50:06 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.29, released Tue Nov 11 23:50:06 1997.
+
+Tue Nov 11 20:45:26 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * tao/default_server.cpp (parse_args): Replaced NULL with 0.
+
+ * tao/corbacom.h: Fixed the macro for TAO_SYSTEM_EXCEPTION so
+ compilers don't whine about extra semi-colons.
+
+ * tao/iioporb.cpp (iiop_string_to_object): Added a cast of (char
+ *) 0 to disambiguate one of the methods.
+
+ * tao/iiopobj.cpp: Moved the constructors and destructors of
+ IIOP_Object from the *.i file to the *.cpp file and made them
+ non-inline.
+
+Tue Nov 11 18:19:16 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * tao/iiopobj.{h,cpp}: Added two new constructors one of which is
+ useful for the _bind call generated by the IDL compiler. This
+ constructor takes the host name, port number, and key value
+ thereby avoiding the costly string2object call inside the _bind
+ method. The second constructor is used to reduce the amount of
+ code that gets generated to set a IIOP_Object in the constructor
+ of the skeleton class.
+
+ Additionally, these constructors use the REENTRANT get_host_name
+ method of the INET_Addr class to retrieve the host name.
+
+ * tao/iiopobj.h,stub.h: Modified the signature of _get_name to
+ return a const char*. So users will have to copy this value.
+
+ * tao/iiopobj.cpp: The method _get_name uses an internal character
+ array in which the object key is copied. This is necessary so that
+ we can NULL terminate the opaque key and return it to the user.
+
+ * tao/orbconf.h,cdr.h: Commented (and will eventually remove) the
+ defintion of MY_BYTE_SEX from cdr.h. Instead, we now use the macro
+ TAO_ENCAP_BYTE_ORDER which gets defined in orbconf.h. The files
+ affected due to this renaming are:
+
+ tao/{iioporb.cpp, giop.cpp, except.cpp, cdr.cpp, encode.cpp,
+ interp.cpp, tc_const.cpp}
+
+ The following files in the IDL compiler source were affected since
+ they had to generate TAO_ENCAP_BYTE_ORDER instead of MY_BYTE_SEX.
+ TAO_IDL/be/{be_array,be_enum,be_interface,be_sequence,be_structure,
+ be_union}.cpp
+
+ * tao/{typecode,decode}.cpp: some reformatting, indentation.
+
+ * TAO_IDL/be/be_interface.cpp: code generated for _bind uses the
+ newly added constructor to class IIOP_Object.
+
+ * TAO_IDL/be/{be_interface.be_state}.cpp: Code generated for
+ _narrow now takes an additional CORBA::Environment parameter.
+
+ * tests/Cubit/TAO/IDL_Cubit: cubit_i.cpp - in the method
+ make_cubit, we make a copy of the string returned by _get_name and
+ then free that memory.
+
+ clnt.cpp: The tests for unions have been uncommented. The reason
+ they were not working and resulting in seg fault was that methods
+ of the cubit interface were being invoked on the factory object.
+
+Tue Nov 11 10:07:04 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tests/Cubit/TAO/DII_Cubit/Makefile: added missing before (VAR)
+ in VBIN definition.
+
+ * tao/orbconf.h: added __i386 to TAO_WORDS_BIGENDIAN check,
+ because that's what g++/VxWorks uses. Also added __alpha
+ to little endian CPUs.
+
+ * tao/orb_core.i: fixed preprocessor test for using the
+ ACE_Hash_Addr<ACE_INET_Addr>::hash_i specialization.
+
+Tue Nov 11 04:22:44 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.28, released Tue Nov 11 04:22:44 1997.
+
+Tue Nov 11 01:16:07 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao/orbobj.cpp (resolve_name_service): Reformatted the
+ multicast Name Service locator just a bit.
+
+ * tao/orbconf.h: Started putting a more sane way of automatically
+ determining the size of various datatypes into TAO.
+
+Tue Nov 11 00:36:39 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * orbsvcs/bin/Logger/ior_multicast.h:
+ * orbsvcs/bin/Logger/ior_multicast.cpp:
+ * orbsvcs/bin/Logger/clnt.cpp:
+ * orbsvcs/bin/Logger/clnt.cpp:
+ * orbsvcs/bin/Logger/svr.cpp:
+ * orbsvcs/bin/Logger/Makefile:
+ Added multicast resolution of the logger service example.
+
+Tue Nov 11 00:36:39 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * tao/orbobj.cpp (resolve_name_service): changed macro for default
+ multicast port.
+ - Added support for multicast mechanism to resolve the name
+ service.
+
+ * tao/orbconf.h: Added some definitions for TAO's default
+ multicast and reply port, and the default timeout value.
+
+Tue Nov 11 00:00:25 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/Makefile: removed MUNCHED because
+ it's no longer needed for g++/VxWorks.
+
+Mon Nov 10 22:02:42 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * tao/interp.cpp (declare_entry): Moved TAO_ALIGNMENT_MAGIC_NUMBER
+ to orbconf.h instead of burying it in interp.cpp.
+
+ * tao/corbacom.h: Rather than trying to guess what the size of
+ wchar_t, let's just use what's in ACE.
+
+Mon Nov 10 19:26:03 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu>
+
+ * tao/orbconf.h (SIZEOF_INT): FreeBSD and NetBSD have 4 byte
+ ints. Thanks to Nanbor for pointing this out.
+
+ * tao/orbobj.cpp: Added template instantiation for ACE_Atomic_Op.
+
+ * tao/orbconf.h: NetBSD has a long double of size 12, as does
+ FreeBSD. Fixed SIZEOF_LONG_DOUBLE to fix this.
+
+ * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (main): Removed cerr's
+ and replaced them with ACE_ERROR_RETURN's and the like.
+
+Mon Nov 10 01:25:19 1997 <nw1@COYOTE>
+
+ * tao/giop.h: Added ACE_Svc_Export to classes
+ (TAO_GIOP_Request_Header, TAO_GIOP_Invocation, TAO_GIOP.) Some
+ of them may not be necessary.
+
+Mon Nov 10 00:09:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.27, released Mon Nov 10 00:09:24 1997.
+
+Sun Nov 09 23:43:04 1997 <irfan@TWOSTEP>
+
+ * tao/corba.h: Reordered the inclusion of poa.i, giop.i,
+ iioporb.i, and iiopobj.i
+
+ * tao/tao_internals.cpp (close_services): Fixed typo.
+
+Sun Nov 09 23:32:58 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.26, released Sun Nov 09 23:32:58 1997.
+
+Sun Nov 09 22:04:12 1997 <irfan@TWOSTEP>
+
+ * tao/orbobj.cpp (ORB_init):
+ * tao/tao_internals.cpp (close_services):
+
+ Changed ACE_Recursive_Thread_Mutex to ACE_SYNCH_RECURSIVE_MUTEX.
+
+Sun Nov 9 16:05:56 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * tests/Cubit/TAO/DII_Cubit/clnt.cpp: *
+ tests/Cubit/TAO/DII_Cubit/clnt.h: Added clnt.h and restructured
+ the code so it is similar to the IDL_Cubit example. It doesn't,
+ however, have the same options because the DII example uses an ior
+ as input.
+
+ * tao/debug.cpp: Added dummy function to get rid of
+ "'debug_stream' defined but not used" warning.
+
+Sun Nov 9 13:03:37 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * tao: Removed the svc.conf.eg file since it was out of date.
+
+ * tao/svrrqst: Removed the #include for svrrqst.i since we don't
+ need any inline functions now.
+
+ * tao/tao_internals: Removed the #include for tao_internals.i
+ since we don't need any inline functions now.
+
+ * tao/varout.h: Cleaned up the programming style.
+
+ * tao: Continued to replace all fields with names _foo to foo_.
+
+ * tao/iioporb.cpp: Move the hex routines into ACE since they are
+ more general.
+
+ * tao/iioporb.cpp: Removed the inclusion of iioporb.i since it is
+ already included in corba.h.
+
+ * tao: Replaced all uses of ACE_Thread_Mutex with ACE_SYNCH_MUTEX
+ since this is portable...
+
+ * tao/iiopobj.cpp: Removed the inclusion of iiopobj.i since it is
+ already included in corba.h.
+
+ * tao/giop.cpp: Moved several large inlined methods into the *.cpp
+ file.
+
+ * tao/giop: Removed the enormous (and unused) incoming_message()
+ method.
+
+ * tao/giop.cpp: Removed the inclusion of giop.i since that is
+ handled in corba.h.
+
+ * tao: Removed the factories.i and factories.cpp files since they
+ don't seem to be used by anything.
+
+ * tao/{corbacom,except}.*: Changed SYSEX to the more politically
+ correct TAO_SYSTEM_EXCEPTION.
+
+ * tao: Replaced all uses of wslen() and wscpy() with the
+ corresponding ACE_OS wide string functions.
+
+ * tao/orbconf.h: Removed all the HAVE_WIDEC_H stuff. This should
+ be handed by ACE.
+
+ * tao/connect.i: Removed the template instantiations since they
+ were commented out and didn't appear to be used.
+
+ * tao/connect.cpp: connect.i was already being included in corba.h,
+ so don't include it again.
+
+ * tao/client_factory.cpp: Moved inlined constructor/destructor
+ from the *.i file into the *.cpp file.
+
+ * tao/cdr.cpp (CDR): Moved a bunch of absurdly long inlined methods
+ from the *.i file into the *.cpp file.
+
+ * tao/any.cpp (CORBA_Any): refcount_ has previously been
+ uninitialized. I gave it a value of 1.
+
+ * tao/any.cpp (CORBA_Any): Moved the initialization into the
+ base/member section, where it belongs.
+
+ * tao/any.h: Corrected a spelling mistake in an enumeral and
+ upper-cased the minor codes for exceptional returns. Are these
+ actually used anywhere?
+
+ * tao: Removed all the unnecessary #if 0 ... #endif header files.
+ I don't know why there were still there.
+
+ * tao/except.h: Moved the #ifdef for minor and major into
+ orbconf.h, where they belong.
+
+ * tao/orbconf.h: Removed all the DECLARED_* macros since they
+ no longer made sense once we've got ACE.
+
+ * tao/orbconf.h: Moved the TAO_DEFAULT* macros from ace/OS.h
+ here, which is more where they belong.
+
+ * tao/default_server.cpp (TAO_Default_Server_Strategy_Factory):
+
+ * tao/{debug.h,orbconf.h}: Removed the DECLARED_STRERROR macro
+ since ACE handles this.
+
+Sun Nov 09 10:18:06 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tao/connect.cpp: fixed RCS keyword (Id instead of id).
+
+Sat Nov 08 23:23:41 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.25, released Sat Nov 08 23:23:41 1997.
+
+Sat Nov 8 21:27:34 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * tao/orb_core.cpp (init): Removed the code that always binded us
+ to our hostname. This is unnecessary and makes it hard to use
+ other interfaces on the same host (such as localhost or some ATM
+ interface, etc.). With this change (and the corresponding
+ changes to ACE_INET_Addr::get_host_name()), we can now bind to
+ INADDR_ANY.
+
+ * docs/releasenotes: Added Marina's documentation for the Trader
+ and cleaned up all the other entries to make them consistent.
+
+ * tao: Changed ProfileBody to Profile, TaggedProfile to
+ Tagged_Profile, ProfileSeq to Profile_Sequence, and ProfileId to
+ Profile_ID.
+
+ * tao/iiopobj.cpp (ProfileBody): For some god knows why reason,
+ the CORBA::String and CORBA::UShort parameters to ProfileBody
+ where being passed as references. This is silly, so I changed
+ them to non-references.
+
+ * tao/connect.cpp (open),
+ tao/poa.cpp (create): Replaced a use of
+ ACE_INET_Addr::get_host_name(void) with
+ ACE_INET_Addr::get_host_name (char *, size_t), which is
+ reentrant.
+
+ * tao/Makefile: Removed the DCFLAGS, OCFLAGS, and the TAO_ORB_CORE
+ target macros from the Makefile since they were unnecessary.
+ Thanks to Arturo for reporting this.
+
+ * tao/except.cpp (print_exception): Fixed a strange format code in
+ print_exception that was causing a seg fault. What the heck
+ does %#lx mean? Thanks to Mark L Boriack <mark@vtcibm4a> for
+ reporting this.
+
+Fri Nov 07 21:23:35 1997 Carlos O'Ryan <coryan@MILONGA>
+
+ * tao/orb_core.h:
+ * tao/marshal.h:
+ * tao/corbacom.h:
+ Added ACE_Svc_Export to some classes.
+
+ * tao/any.cpp:
+ Removed delete after DEEP_FREE call, it crashes on NT and it
+ should be unneeded.
+
+ * TAO_IDL/be/be_state.cpp (gen_code):
+ When generating arguments for the server header don't use nested
+ types. The fully qualified type name is needed, even on NT.
+
+ * TAO_IDL/be/be_exception.cpp:
+ Added code to generate a default constructor.
+
+Fri Nov 07 17:26:49 1997 <nw1@CHA-CHA>
+
+ * tao/TAO.dsp:
+ * tests/Cubit/TAO/DII_Cubit/{client,server}.dsp:
+ * tests/Cubit/TAO/IDL_Cubit/{client,server}.dsp:
+ * tests/Cubit/TAO/MT_Cubit/client/client.dsp: Removed
+ ACE_HAS_TSS_ORB_CORE flag.
+
+ * tests/Cubit/TAO/MT_Cubit/client/client.cpp (main): Added a
+ return statement to satisfy MSVC.
+
+Fri Nov 7 18:20:46 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/MT_Cubit/{client,server}/svc.conf: Updated to
+ reflect the proper combination of options to achieve the
+ thread-per-ORB-per-rate concurrency model.
+
+ * docs/components.html: Updated to refer to seminal documentation
+ referred to below.
+
+ * docs/configurations.html: Started some new documentation. It's
+ got a ways to go right now. :-)
+
+Fri Nov 07 15:42:45 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tao/default_server.cpp (parse_args): check for 0 argv[curarg]
+ before calling strcmp on it.
+
+ * tests/Cubit/TAO/IDL_Cubit/Makefile: added MUNCHED for
+ VxWorks/g++.
+
+Fri Nov 7 10:30:59 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/tao_internals.cpp (fake_service_entries_i): Updated faked
+ service entries to include new Resource Factory. This is the
+ fallback for VxWorks.
+
+ * tao/orb_core.h (TAO_Resource_Factory): Added much comments.
+
+Fri Nov 07 02:45:56 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.24, released Fri Nov 07 02:45:56 1997.
+
+Fri Nov 7 01:58:30 1997 Nanbor Wang <nw1@coyote.wolfpack.cs.wustl.edu>
+
+ * TAO_IDL/driver/drv_preproc.cpp:
+ * TAO_IDL/driver/drv_fork.cpp: Added the (__FreeBSD__) flag to
+ correctly include wait.h file.
+
+ * tao/orb_core.cpp: Replaced ACE_NETBSD with ACE_HAS_THREADS in
+ template instantiation segment.
+
+ * tao/orbconf.h: Added the (__FreeBSD__) flag to exclude inclusion of
+ widec.h.
+
+ * tao/orbobj.cpp (Release): Wrapped ACE_GUARD with ACE_MT macro.
+
+Fri Nov 07 01:46:04 1997 <irfan@TWOSTEP>
+
+ * tests/Cubit/TAO/DII_Cubit/(cubitC.cpp, cubit.cpp): Byte order
+ changed from 1 to MY_BYTE_SEX.
+
+Thu Nov 6 23:59:45 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * tao/params.cpp: Moved all the inlined methods out of the header
+ file and put them in the *.cpp file. I hope this doesn't cause
+ problems for GCC on VxWorks.
+
+ * tests/Thruput_test/client.cpp: Fixed a mistake with how
+ the long string constant was defined. The scheme being
+ used wasn't portable.
+
+Thu Nov 06 20:58:52 1997 <irfan@TWOSTEP>
+
+ * tao/connect.cpp: Made sure that TAO_Server_Connection_Handler
+ and TAO_Client_Connection_Handler have a zero Reactor pointer.
+ If this is not the case, they will try to deregister from a
+ sometimes non-existent Reactor.
+
+Thu Nov 6 19:06:59 1997 Sergio Flores <sergio@polka.cs.wustl.edu>
+
+ * docs/releasenotes/index.html: Updated status of Naming Service
+ port to TAO.
+
+ * TAO_IDL/be/be_exception.cpp (gen_client_header):
+ removed warning for unused variable.
+
+Thu Nov 6 17:07:58 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/tao_internals.i: Added missing #include file.
+
+ * tao/tao_internals.i: Change lock used as monitor for service
+ count to use ACE_Static_Object_Lock::instance(). This pleases
+ VxWorks (but makes me nauseous).
+
+ * tao/tao_internals.h: Removed static instances of locks to please
+ VxWorks.
+
+ * tao/orbobj.cpp (ORB_init): Changed lock used for the monitor
+ here to be ACE_Static_Object_Lock::instance(). This pleases
+ VxWorks (but makes me nauseous).
+
+ * tao/orb_core.cpp (init): Merged in changes for new Naming
+ Service-related options that got accidentally overwritten last
+ night.
+
+ * docs/Options.html: Added documentation for new Naming
+ Service-related options in.
+
+ * tao/orbobj.h: Added documentation for a few static methods.
+
+ * tao/params.h: Changed LOCAL_INLINE macro to TAO_LOCAL_INLINE to
+ avoid possible collisions with application macros.
+
+Thu Nov 6 14:51:22 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu>
+
+ * TAO_IDL/Makefile: Renamed libutil to libtao_idl_util. libutil is
+ a system library on NetBSD. Updated TAO_IDL/util/Makefile to be
+ compatible with this.
+
+ * TAO_IDL/be/be_codegen.cpp (server_header): Changed ::toupper to
+ be toupper, since toupper is a macro on some platforms (like
+ netbsd).
+
+ * TAO_IDL/driver/{drv_preproc.cpp, drv_fork.cpp}: NetBSD has
+ sys/wait.h, instead of wait.h. Added #define to fix it.
+
+Thu Nov 6 01:40:29 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu>
+
+ * tao/tao_internals.h: #defined ACE_Thread_Mutex to be
+ ACE_Null_Mutex for NetBSD.
+
+ * tao/orbconf.h: Added NetBSD to the #define around HAVE_WIDEC_H.
+
+ * tao/orb_core.cpp: #defined around some thread-specific template
+ instantiations which are not needed on NetBSD.
+
+ * tao/except.h: Undefined "minor" and "major, since these are
+ defined in NetBSD.
+
+Thu Nov 06 14:47:15 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tao/params.[hi]: inlined some functions in the class declaration
+ because g++ for VxWorks couldn't deal with them in the .i file.
+
+ * tao/tao_internals.*,orbobj.cpp: fixed replacement of orbinit_lock_
+ and service_lock_ with ACE_Static_Object_Lock::instance ().
+
+Thu Nov 06 02:17:02 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.23, released Thu Nov 06 02:17:02 1997.
+
+Wed Nov 5 23:44:42 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * tao/{orbobj,iioporb}.h: Made the first parameter to
+ string_to_object() a const CORBA::String rather than just a
+ CORBA::String.
+
+ * tao/params (addr): Fixed a bug where we should have been using
+ const ACE_INET_Addr & rather than just ACE_INET_Addr &.
+
+ * tao/orbobj: Began adding the hooks for a multicast-based
+ implementation of resolve_initial_references().
+
+ * tao/params: Added a new set/get interface to optionally set/get
+ the IOR of the configured Naming Service.
+
+ * tao/orb_core.cpp (init): Added a -ORBnameservice command-line
+ option. If this option is given, it indicates the IOR where the
+ Naming Service resides.
+
+ * tao/params: Changed the signature of TAO_ORB_Parameters::addr()
+ to return a const ACE_INET_Addr & rather than an ACE_INET_Addr.
+
+ * tao/params: Added new get/set name_service_port() methods to
+ get/set the name service multicast port.
+
+Wed Nov 5 22:38:08 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * tests/Thruput_test/client.cpp (main):
+ * tests/Thruput_test/server.cpp (main): Fixed missing declarations
+ and unused variables and labels. Fixed uninitialized and unused
+ variables.
+
+ * tests/Thruput_test/ttcp_i.cpp (ttcp_sequence_i):
+ * tests/Thruput_test/ttcp_i.h (class ttcp_sequence_i): Change to
+ use POA.
+
+ * tests/Cubit/TAO/DII_Cubit/README (server): Changed comment on
+ how to start the server to indicate the use of "-d" to see the
+ IOR.
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (Cubit_Client): Reordered
+ member initializers to match declaration order
+
+ * tests/Cubit/TAO/DII_Cubit/svr.cpp (main): Fixed comparison of
+ ">=" on an unsigned variable to compare only ">".
+
+Wed Nov 05 20:35:52 1997 <irfan@TWOSTEP>
+
+ * tao/orb_core.cpp (fini): Close down the connector. Other
+ ORB_Core specific objects also need to be cleaned up (and
+ deleted).
+
+ * tests: Made sure that the orb pointer returned by ORB::init() is
+ correctly freed up. Following files were updated:
+
+ TAO/tests/Cubit/TAO/DII_Cubit/clnt.cpp
+ TAO/tests/Cubit/TAO/DII_Cubit/svr.cpp
+ TAO/tests/Cubit/TAO/IDL_Cubit/clnt.cpp
+ TAO/tests/Cubit/TAO/IDL_Cubit/clnt.h
+ TAO/tests/Cubit/TAO/IDL_Cubit/svr.cpp
+ TAO/tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp
+ TAO/tests/Cubit/TAO/MT_Cubit/server/svr.cpp
+ TAO/tests/Cubit/VisiBroker/base_server/server.cpp
+
+Wed Nov 5 19:37:25 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL compiler:
+
+ files be_array.cpp, be_interface.cpp, be_sequence.cpp,
+ be_structure.cpp, be_union.cpp, be_enum.cpp - Added MY_BYTE_SEX to
+ the typecode generation methods.
+
+ be_operation.cpp, be_argument.cpp, be_state.cpp, be_codegen.* -
+ Modified to deal with _out parameters that are passed to the
+ actual upcalls in the server-side skeleton.
+
+ Some minor changes involving removing commented-out code in the
+ constructors of some classes.
+
+ * tests/Thruput_test: Some modifications. Still needs more work
+ get it to run.
+
+Wed Nov 05 19:26:44 1997 <nw1@COYOTE>
+
+ * tests/Cubit/TAO/DII_Cubit/DII_Cubit.dsp:
+ * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit.dsp:
+ * tests/Cubit/TAO/MT_Cubit/client/client.dsp:
+ * tests/Cubit/TAO/MT_Cubit/server/server.dsp:
+ * tao/TAO.dsp: Renamed debeg version of TAO library to TAO.dll for
+ NT.
+
+Wed Nov 05 13:39:19 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * TAO_IDL/Makefile: more hacks to not build the IDL compiler
+ on VxWorks.
+
+Wed Nov 05 12:53:53 1997 <irfan@TWOSTEP>
+
+ * tao/interp.cpp:
+
+ - Win32 does not use "fixed" byte alignment. Fixed the
+ setup_entry macro to take this into account.
+
+ - (declare_entry) Seperated the declaration of the structs from
+ their use. This is necessary for the VC++4.2 compiler.
+
+ * tests/Cubit/TAO/DII_Cubit/svr.cpp (main): Commented out debug
+ message, since obj is not declared.
+
+Wed Nov 05 01:41:34 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.22, released Wed Nov 05 01:41:34 1997.
+
+Wed Nov 5 00:48:58 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * tests/Thruput_test/utils.cpp: Delete static definitions of
+ functions.
+
+ * tests/Thruput_test/ttcpS.cpp:
+ * tests/Thruput_test/ttcpC.cpp (_duplicate):
+ * tests/Thruput_test/client.cpp (main):
+ * tests/Thruput_test/ttcp_i.cpp (sendStructSeq):
+ * tests/Cubit/TAO/DII_Cubit/clnt.cpp:
+ * tests/Cubit/TAO/DII_Cubit/svr.cpp: Removed a couple of warnings
+ of unused and uninitialized variables. Included "ace/ACE.h" to
+ be able to have the _REENTRANT flag.
+
+Wed Nov 5 00:18:17 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/be_sequence.cpp: Added code to generate the missing
+ operator [] for sequences.
+
+Tue Nov 4 23:38:54 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu>
+
+ * tests/Cubit/TAO/MT_Cubit/{server,client}/Makefile: Removed the
+ (evil) TAO_HAS_TSS_ORB_CORE flag. Now this functionality is
+ provided by svc.conf.
+
+ * tests/Cubit/TAO/MT_Cubit/: Fixed the server code to use the new
+ IDL compiler generated code.
+
+ * TAO/tests/Cubit/TAO/MT_Cubit/client/Task_Client.cpp: Changed the
+ order of the initializers to remove g++ warnings, and added some
+ ACE_UNUSED_ARGs. Also removed the hand-crafted stubs, to make way
+ for the idl-compiler generated files.
+
+Tue Nov 4 23:21:29 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * tests/Cubit/TAO/DII_Cubit/clnt.cpp (main):
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (run): Changed the format of the
+ output to be more readable. Also, fixed resolution of the time for
+ the cube_struct_dii() call.
+
+Tue Nov 4 21:12:48 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * tao/except.h: Removed print_exception(). It seems unnecessary
+ and pollutes the global namespace.
+
+Tue Nov 4 16:58:12 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * {tests/Cubit/TAO/DII_Cubit,tests/Cubit/TAO/IDL_Cubit,
+ tests/Cubit/TAO/MT_Cubit,tests/Demux_Test,
+ tests/Thruput_test}/Makefile: Added an explicit definition for
+ VBIN so that VxWorks can build properly.
+
+ * tao/orb_core.*: Modified TAO_Resource_Factory so that it divides
+ the information that it tracks between pre-allocated resources and
+ resources which are allocated by the application. Specifically,
+ the orb and root poa pointers are in here (though it's possible
+ that when we move to a full POA implementation that the root poa
+ can be pre-allocated as well). These pointers are initialized to
+ zero and are given values by the TAO_ORB_Core instance writing
+ through back to the TAO_Resource_Factory instance.
+
+ Also, this implementation reduced the number of singletons/TSS
+ singletons utilized by the resource factory. The initial
+ "get-it-working" cut used a singleton/tss singleton pair for every
+ resource, which was quite wasteful in environments such as NT that
+ don't have many TSS slots available. Perhaps if we get even more
+ clever this can be reduced even further.
+
+ * tao/except.*: Added print_exception() function for backwards
+ compatibility. It simply calls
+ CORBA::Environment::print_exception().
+
+Tue Nov 04 10:45:07 1997 <nw1@CHA-CHA>
+
+ * TAO_IDL/fe/y.tab.cpp: Enclosed a #pragma ident with #if !defined
+ ACE_WIN32. Compilers other than SunCC might also need this.
+
+Tue Nov 4 13:47:26 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO/tests/Cubit/TAO/MT_Cubit: Modified the Makefiles in the
+ client and server directory so that they use the TAO IDL
+ compiler. Also added the clean and realclean targets. Updated the
+ server side cubit.idl because it was different from what the
+ client was using.
+
+ * TAO_IDL compiler: Fixed the following problems
+
+ (1) Removed the extra call to Release in the generated _narrow
+ method in be_interface.cpp
+
+ (2) Used ACE_CORBA_1 (Object) instead of CORBA::Object in the
+ class declaration for interfaces - in be_interface.cpp
+
+ (3) be_interface_fwd.cpp - var_impl had to be updated to generate
+ code that uses the ptr () method in the calls to _duplicate
+
+ * TAO/tests/Cubit/TAO/IDL_Cubit: Fixed some outstanding issues and
+ made sure that it works. Updated the README file.
+
+Tue Nov 04 09:48:51 1997 David L. Levine <levine@cs.wustl.edu>
+
+ * tao/orb_core.i: disabled the ACE_Hash_Addr<ACE_INET_Addr>::hash_i ()
+ template specialization on g++/VxWorks because g++
+ cygnus-2.7.2-960126 can't handle it.
+
+ * tao/except.h (line 118): removed backslash at end of comment line.
+ Some compilers complain about that.
+
+ * tao/except.cpp (CORBA_SystemException): reordered initializers to
+ match declaration order.
+
+ * TAO_IDL/Makefile: don't build the IDL compiler on VxWorks.
+
+Tue Nov 04 06:26:14 1997 Carlos O'Ryan <coryan@MILONGA>
+
+ * TAO_IDL/be/be_state.cpp:
+ It still generated fully qualified names for some sequences,
+ that will not work on NT.
+
+Tue Nov 04 05:32:44 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.21, released Tue Nov 04 05:32:44 1997.
+
+Tue Nov 4 04:42:17 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * tests/Thruput_test/server.cpp:
+ * tests/Thruput_test/client.cpp:
+ * tests/Thruput_test/ttcpS.cpp:
+ Fixed "print_exception" errors and errors due to some changes in
+ the orb compiler.
+
+ * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (svc): Use unsigned
+ int for variable that is used for positive comparisons only.
+
+Tue Nov 04 01:00:51 1997 <nw1@COYOTE>
+
+ * tests/Cubit/TAO/IDL_Cubit/IDL_Cubit.dsw: Renamed former test.dsw
+ to IDL_Cubit.dsw.
+
+ * tests/Cubit/TAO/IDL_Cubit/{client,server}.dsp: Renamed
+ executables for debug version to client.exe and server.exe on
+ NT.
+
+ * tests/Cubit/TAO/DII_Cubit/DII_Cubit.dsw: Renamed former test.dsw
+ to DII_Cubit.dsw.
+
+ * tests/Cubit/TAO/DII_Cubit/{client,server}.dsp: Renamed
+ executables for debug version to client.exe and server.exe on
+ NT.
+
+ * tests/Cubit/TAO/IDL_Cubit/Cubit.mak: Added cubit.idl into
+ makefile and its custom build settings.
+
+ * tests/Cubit/TAO/MT_Cubit/MT_Cubit.dsw: Renamed former
+ MTCubit.dsw to MT_Cubit.dsw.
+
+Mon Nov 03 23:16:06 1997 <nw1@COYOTE>
+
+ * TAO_IDL/ast/ast_expression.cpp (coerce_value): Added an explicit
+ cast (float) to avoid NT warnging messages.
+
+ * tests/Cubit/TAO/MT_Cubit/server/svr.cpp (svc): Removed
+ declaration of function print_exception. It's now a member
+ function of CORBA_Environment.
+
+ * TAO_IDL/fe/y.tab.cpp: Commented out include <values.h>. This
+ was causing compilation errors on NT.
+
+ * tests/Cubit/TAO/DII_Cubit/svr.cpp:
+ * tests/Cubit/TAO/DII_Cubit/clnt.cpp: Changed to use the new
+ CORBA_Environment::print_exception.
+
+ * tao/except.h (CORBA_Environment): Added ACE_Svc_Export to this
+ class.
+
+ * tests/Cubit/TAO/MT_Cubit/MTCubit.dsw:
+ * tests/Cubit/TAO/MT_Cubit/client/client.dsp:
+ * tests/Cubit/TAO/MT_Cubit/server/server.dsp:
+ * tests/Cubit/TAO/IDL_Cubit/client.dsp:
+ * tests/Cubit/TAO/IDL_Cubit/server.dsp:
+ * tests/Cubit/TAO/IDL_Cubit/test.dsw: Added new workspace and
+ project files.
+
+ * TAO_IDL/tao_idl.dsp: Moved the output executables to the usual
+ place.
+
+ * TAO_IDL/be/be.h: Added #ifdef'ed pragma to diable warning 4250
+ on NT. This is only temporary and should be fixed later.
+
+ * TAO_IDL/be/be_union.cpp (gen_var_defn):
+ * TAO_IDL/be/be_structure.cpp (gen_var_defn):
+ * TAO_IDL/be/be_array.cpp (gen_var_defn): Removed unused local
+ variables declaration (s).
+
+Mon Nov 3 23:25:30 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL Compiler: Files be_sequence.cpp, be_typedef.cpp,
+ be_state.cpp: Lots of improvements to get sequences to
+ work. Support for sequences of strings or obj references is
+ limited. But for all other cases, this seems to be working fine.
+
+ There were some unnecessary lines of code in be_state.cpp that
+ were giving rise to multiple declarations errors. These are
+ removed.
+
+Mon Nov 3 18:30:09 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * tests/Cubit/TAO/IDL_Cubit/clnt.cpp (main): compare with
+ "!= 0" rather than "== -1" for errors.
+
+ * tests/Cubit/TAO/IDL_Cubit/cubit.idl (enum discrim): Deleted
+ enumerations not used.
+
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (please_exit): Fixed
+ unused variable.
+
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.h (Cubit_Factory_i):
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.h (objrefs): Fixed invalid
+ comparison between a signed and unsigned variable.
+
+ * tests/Cubit/TAO/IDL_Cubit/svr.cpp (main): Fixed comparison of
+ ">=" on an unsigned variable to compare only ">".
+
+ * TAO_IDL/be/be_typedef.cpp (gen_client_stubs): Removed unused
+ variable warning.
+
+ * TAO_IDL/fe/y.tab.cpp (yytoks): Added brackets to the array
+ of structures being initialized.
+
+Mon Nov 03 18:43:37 1997 Carlos O'Ryan <coryan@MILONGA>
+
+ * TAO_IDL/be/be_operation.cpp:
+ "Fixed" skeleton generation code. Sometimes the formal parameter
+ names for the skeleton can clash with the user defined names for
+ the (IDL) method parameter names.
+ To minimize the chances of such a problem I choose very long
+ parameter names for the skeleton (things like <_tao_enviroment>
+ instead of just <env>), but the right solution is to ignore the
+ user defined parameter names and generate them using some
+ numbering scheme.
+
+ * TAO_IDL/be/be_predefined_type.cpp:
+ Generate CORBA::_tc_Object as the TypeCode for all pseudo
+ object, this is a hack but works for the files we are using
+ right now (maybe it will fail for complex things, like the
+ interface repository).
+
+ * TAO_IDL/be/be_sequence.cpp:
+ Fixed a number of minor problems:
+ Missing _ptr type for sequences.
+ The return type for T_var::operator-> was different in the
+ .h and .i file.
+
+ * TAO_IDL/be/be_type.cpp:
+ tc_name_ and type_name_ were not initialized, producing some
+ segfaults under NT.
+
+Mon Nov 3 13:45:54 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * {tao,TAO_IDL/util,TAO_IDL/narrow,TAO_IDL/fe,TAO_IDL/driver,
+ TAO_IDL/be,TAO_IDL/ast,Benchmark/benchmark}/Makefile (SHLIB):
+ Fixed definition so that the extension was(SOEXT) rather than
+ hard-coded to "so". This makes things compile on VxWorks better.
+ Thanks to David Levine for pointing this out.
+
+Sun Nov 02 19:42:08 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.20, released Sun Nov 02 19:42:08 1997.
+
+Sun Nov 2 19:20:57 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO/tao/except.*: Made the "print_exception" utility function
+ as a method of class Environment.
+
+ * TAO/tao/giop.cpp: In the TAO_GIOP_Invocation::start method, we
+ were previously not returning even if the connection establishment
+ phase was failing. A return statement is inserted. However, there
+ still are problems when the GIOP_Invocation variable called "call"
+ goes out of scope.
+
+ * TAO_IDL Compiler: be_interface.cpp - The _bind call now
+ generates a "char IOR" instead of "static char IOR" since the
+ latter will be problematic with multiple threads. Thanks to
+ Arturo Montes <mitosys@colomsat.net.co> for pointing that out.
+
+ * TAO/test/Cubit/TAO/IDL_Cubit : Improved the code so that it uses
+ the "print_exception" which is now defined on class
+ CORBA::Environment. The clnt still needs improvement in terms of
+ handling invalid parameters and gracefully exiting.
+
+ * IDL_Compiler: The bug resulting out of encoding object
+ references has been fixed atleast on Solaris using g++ as well as
+ SunCC. Changes made to be_operation.cpp and be_state.cpp such that
+ the return value for object references is always of type
+ CORBA::Object_ptr rather than the real interface type. In
+ addition, keeping in perspective the change that Irfan made and
+ described below (in encode.cpp), the Any that holds the result
+ *does not* own the value. In contrast, for the rest of the cases
+ the result (of type Any) owns the result.
+
+ * be_sequence.cpp: Additional work in progress. Full changelog
+ entry will be available in the next commit.
+
+Fri Oct 31 22:20:06 1997 <irfan@TWOSTEP>
+
+ * tao/encode.cpp (encode): Changed cast of data from
+ *(CORBA::Object_ptr *) to (CORBA::Object_ptr).
+
+ * tao/default_server.cpp (parse_args): Manipulation of curarg was
+ all messed up. Fixed it such that it was not incremented
+ unnecessarily.
+
+Fri Oct 31 13:46:04 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * docs/Options.html: Updated to specify new TAO_Resource_Factory
+ service and its options.
+
+ * docs/releasenotes/orbcore.html: Updated to reflect recent work.
+
+ * tao/orb_core.*: Added the acceptor and related members and
+ methods from CORBA_ORB. Made TAO_Resource_Factory a Service
+ Object so that it can be loaded via the Service Configurator. The
+ option to change its resources between global and thread-specific
+ is "-ORBresources global" and "-ORBresources tss", respectively.
+
+ * tao/orbobj.*: Moved the acceptor and related members and methods
+ to TAO_ORB_Core.
+
+ * tests/.../svc.conf: Added Resource Factory as a service.
+
+ * tests/Cubit/TAO/{DII_Cubit,MT_Cubit}/cubitS.cpp,
+ tests/Thruput_test/ttcpS.cpp, tao/poa.cpp: Changed acceses that
+ used to go to CORBA_ORB::params() to go to TAO_ORB_Core::params().
+
+Fri Oct 31 08:39:54 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL Compiler - Intermediate commit of all improved features.
+
+ * be/be_type.* : Improved the nested_type_name method such that it
+ now takes an additional parameter called suffix that has a default
+ value of NULL. Carlos, Sergio, and myself independently found an
+ extremely bad piece of code that was getting generated that looked
+ like the following:
+ ACE_NESTED_CLASS (XXXX, YYYY)_ptr
+
+ The new convention is to pass the suffix such as "_ptr", or "_var"
+ or "_out" to this method so that it can generate valid code of the
+ form:
+ ACE_NESTED_CLASS (XXXX, YYYY_ptr)
+
+ * be/be_decl.cpp : All the methods such as repoID (), flatname
+ (), etc now check if the corresponding data member was created or
+ not. If they are not, the corresponding private method e.g.,
+ compute_repoID (), are invoked. This way we do not have to call
+ all these private methods in the constructors of all the derived
+ be classes. The one compelling reason to do it this way is because
+ the "names" for certain types are not available at construction
+ time, e.g., sequences. A name to a sequence is assigned from the
+ context it is in i.e., whether it was a named sequence in the form
+ of a "typedef" statement or it was an anonymous sequence.
+
+ As of this commit, all calls to such compute_* methods in the
+ constructors of all the derived be classes are commented out and
+ will eventually disappear in the next commit.
+
+ * be/be_decl.cpp : One more change in be_decl.cpp is to add the
+ case for "interface_fwd" in the generation of the _var and _out
+ definitions and implementations.
+
+ * be/be_helper.* : Added two new methods called "gen_ifdef_macro"
+ and "gen_endif". These are required to generate the #if !defined
+ (...) <code> #endif macros. These are very essential if the IDL
+ has forward declarations of interfaces. Forward declarations of
+ interfaces must generate a forward class declaration. In addition,
+ it has to typedef the "_ptr" type and define the "_var" and "_out"
+ types. However, the real "be_interface" class does this too which
+ can result in "multiple declarations" errors from the C++
+ compiler. Hence we use this scheme. As in the case of the
+ nested_type_name method mentioned above, this method also takes a
+ default "suffix" parameter (= 0). This is required for the "_var",
+ "_ptr", and "_out" suffixes.
+
+ * be/be_interface.cpp
+ be/be_interface_fwd.cpp:
+
+ Used the TAO_OutStream::gen_ifdef_macro () and gen_endif methods
+ for the definitions of the _ptr, _var, and _out classes and their
+ implementations.
+
+ *be/be_sequence.* : Lot of modifications and change in the design
+ in terms of handling the base types that themselves could be
+ sequences. Although the AST_Sequence i.e., OMG IDL does not define
+ a "sequence" to be a scope producing construct like structs or
+ unions, we choose to make "be_sequence" to be a scope producing
+ construct. This is no way alters the OMG IDL language because the
+ front-end is still the same. "be_sequence" was made to inherit
+ from scope because the sequence mapping gives rise to a C++ class
+ which is a scoping construct. This way, base types that turn out
+ to be anonymous sequences can be assigned a parent scope and their
+ name generation will fall in line with other classes.
+
+ There are certain features missing with sequences at this commit
+ time, but this should reduce tweaking the generated code to a
+ large extent.
+
+ * be/be_state.cpp: Update the code for handling sequences and
+ typedefs. Typedefs should be handled properly now.
+
+ * All other *.cpp files: Either commented out the compute_* calls
+ in the constructors or removed them.
+
+Fri Oct 31 03:00:09 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orb_core.cpp: Moved call to connector's open() into init(),
+ thus insuring that it gets called only AFTER all the resources are
+ available from the Resource Factory.
+
+ * tao/orb_core.*: Changed data members to be associations rather
+ than containment. This allows decoupling of the
+ "thread-specificness" of these resources from the
+ thread-specificness of the general TAO_ORB_Core container. Also
+ added set accessors for those resources.
+
+ Added TAO_Resource_Factory class from which the TAO_ORB_Core
+ container initializes itself. For now this remains a singleton
+ which is, at compile-time, determined to be either TSS or not.
+ But, soon, it will be loaded via the Service Configurator and its
+ TSS nature determined at runtime.
+
+ * tao/giop.h: Updated to use the new ACE macro
+ ACE_CLASS_IS_NAMESPACE.
+
+ * tao/default_server.*: Implemented the new open() method so that
+ it initializes the Reactive and Threaded strategies from the
+ information in TAO_ORB_Core.
+
+ * tao/server_factory.*: Added open() method to be called after all
+ ORB resources are loaded up. This method can then be used by a
+ strategy factory to further initialize its contained strategies if
+ they require handles to resources to which the ORB might legislate
+ access. The default implementation does nothing.
+
+Fri Oct 31 01:03:05 1997 <irfan@TWOSTEP>
+
+ * tests/Cubit/TAO/IDL_Cubit/svr.cpp (main): obj was not declared.
+ Commented out use of obj in dmsg1.
+
+ * tests/Cubit/TAO/IDL_Cubit/cubit_i.cpp (Cubit_Factory_i):
+ numobjs_ was used before it was assigned.
+
+ * TAO/TAO_IDL/TAO_IDL.{mak,mdp}: Added VC++4.2 make files.
+
+ * TAO_IDL/ast/ast_expression.cpp (dump): Streaming the enum was
+ ambiguous. Therefore the enum was cast to an int.
+
+Thu Oct 30 22:50:44 1997 Carlos O'Ryan <coryan@MILONGA>
+
+ * tao/corba.h:
+ Added a definition for ACE_NESTED_CLASS, maybe it is defined in
+ some place else, but I couldn't find it.
+
+ * TAO_IDL/be/be_interface.cpp:
+ Fixed the definition for skeleton destructors.
+
+ * TAO_IDL/be/be_helper.cpp:
+ Added a lot of redundant ACE_OS::fflush() calls. Apparently we
+ have two FILE* or file descriptors over the same file, bt the
+ fflush hides the problem.
+
+ * TAO_IDL/be/be_decl.cpp:
+ Fixed inconsistency between operator-> declaration and
+ definition for _out classes.
+
+Thu Oct 30 14:06:54 1997 Sergio Flores <sergio@polka.cs.wustl.edu>
+
+ * TAO_IDL/fe/Makefile:
+ Added an expression to the sed command in the rule to construct
+ lex.yy.cpp, that replaces ECHO with TAO_ECHO, because a
+ different ECHO macro is already defined in
+ /usr/include/sys/termios.h
+
+ * TAO_IDL/fe/idl.ll:
+ Fixed some warnings about nested comments.
+ Changed the declaration of variable i to outside of
+ the 'for' initialization to avoid obsolete binding warnings.
+
+ * TAO_IDL/be/be_interface_fwd.cpp (gen_client_header):
+ Added ACE_UNUSED_ARG macro to avoid unused variable warning,
+ for variable i.
+
+ * TAO_IDL/be/be_constant.cpp (exprtype_to_string):
+ * TAO_IDL/util/utl_error.cpp (exprtype_to_string):
+ Added case statements to handle the rest of un-handled
+ enumerations from AST_Expression::ExprType. These will
+ handle a default value (i.e. NULL). Enumerations added are:
+ AST_Expression::EV_wstring
+ AST_Expression::EV_wchar
+ AST_Expression::EV_longdouble
+ AST_Expression::EV_ulonglong
+ AST_Expression::EV_longlong
+
+Thu Oct 30 09:56:41 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/giop.h: Added comments to TAO_GIOP class explicitly pointing
+ out its use as a namespace. Concurrently, I also scoped the CTOR,
+ Copy CTOR, and DTOR as 'private' so nobody can mistakenly
+ instantiate one of these puppies.
+
+Thu Oct 30 03:40:26 1997 <nw1@COYOTE>
+
+ * tests/Cubit/TAO/DII_Cubit/client.dsp:
+ * tests/Cubit/TAO/DII_Cubit/server.dsp: Updated include files
+ path and libarary path.
+
+ * tao/giop.cpp (close_connection): Use ACE_HANDLE instead of int.
+
+Thu Oct 30 02:53:20 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.19, released Thu Oct 30 02:53:20 1997.
+
+Thu Oct 30 02:20:21 1997 Sergio Flores <sergio@polka.cs.wustl.edu>
+
+ * tests/IDL_Cubit:
+ Added more comments and changed the header to be ACE'ified.
+ Make output more consistent.
+
+Thu Oct 30 02:12:27 1997 Sumedh Mungee <sumedh@macarena.cs.wustl.edu>
+
+ * tests/{TAO, Cubit}: Changed the directory heirarchy to the
+ following: tests/Cubit/TAO/ now contains all the Cubit examples,
+ i.e. IDL_Cubit, MT_Cubit and DII_Cubit, instead of tests/. Updated
+ the README and Makefiles to reflect this. DII_Cubit is the
+ handcrafted "original" Cubit example.
+
+ * tests/Cubit/COOL: Added the COOL version of the Cubit test. The
+ COOL version is written for Chorus COOL version 4.1.
+
+Wed Oct 29 22:26:10 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tests/IDL_Cubit/clnt.cpp (init): Fixed the error handling so we
+ exit correctly when things go wrong.
+
+ * tao/connect.cpp (open): Revised the code to use the new
+ ACE_LACKS_SOCKET_BUFSIZ to detect when this feature isn't
+ supported.
+
+ * tao/{giop,connect}: Added a nifty typedef called TAO_SVC_HANDLER
+ to remove the drudgery of expanding the template each time.
+
+ * tao: Changed the name of TAO_OA_Connection_Handler to
+ TAO_Server_Connection_Handler to be compliant with the
+ TAO_Client_Connection_Handler.
+
+Wed Oct 29 20:47:47 1997 Sergio Flores <sergio@polka.cs.wustl.edu>
+
+ * tests/IDL_Cubit/clnt.cpp:
+ * tests/IDL_Cubit/clnt.h:
+ Cleaned up the code. Added ACE_Profile_Timer to time the calls.
+ Changed copyright header. Added more comments.
+
+Wed Oct 29 18:55:57 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao/giop: Added "_"'s to the data members in
+ TAO_GIOP_Invocation.
+
+ * tao/giop (send_request): Swaped the order of the parameters for
+ send_request() so that it would be consistent with recv_request.
+
+ * tao/{connect,giop}: Changed read_message() to recv_request(),
+ and send_message() to send_request() since these things really
+ work on GIOP requests.
+
+ * tao/{connect,giop}: Changed read_message() to recv_message(),
+ which is more like other parts of ACE.
+
+ * tao/connect.cpp: Fixed the calls to read_message() and
+ send_message() so that they don't try to modify "this."
+
+ * tao/giop: Changed the send_message() and read_message() in the
+ TAO_GIOP class to take ACE_Svc_Handler<ACE_SOCK_STREAM,
+ ACE_NULL_SYNCH> rather than TAO_Client_Connection_Handler.
+
+Wed Oct 29 17:53:12 1997 <irfan@CHA-CHA>
+
+ * tao: Added TAO_HAS_TSS_ORB_CORE to tao and Cubit NT makefiles.
+ This probably needs to be added to the other NT makefiles.
+
+ * tests/Cubit/TAO/svc.conf: Updated files to pass the correct
+ options to the factory.
+
+Wed Oct 29 16:07:20 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/giop.*: Changed most methods that took ACE_SOCK_Stream&
+ parameters to take TAO_Client_Connection_Handler*& parameters.
+ This makes it easier to clean up properly after errors. Also
+ #ifdef'd out seemingly unused code (TAO_GIOP::incoming_message).
+ Fixed call to ACE_Svc_Handler::idle() to not contain an argument.
+
+ * docs/Options.html: Updated the documentation to reflect recent
+ changes.
+
+Wed Oct 29 15:59:30 1997 Sergio Flores <sergio@polka.cs.wustl.edu>
+
+ * tests/IDL_Cubit/clnt.cpp: OO'ified the code. Added class
+ Cubit_Client.
+ * tests/IDL_Cubit/clnt.h: added this file to contain the class
+ definition.
+
+Wed Oct 29 11:01:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL compiler: be_type.cpp::nested_type_name: A quick commit
+ made that includes an improvement over the previous scheme of
+ generating ACE_NESTED_CLASS macros. We handle the problem of
+ generating fully scoped names for types that were defined in some
+ ancestor of the scope in which that type is being used.
+
+ * Makefiles under TAO_IDL: Fixed a bug in the Makefiles under all
+ the subdirectories. This bug was reported by "ARTURO MONTES"
+ <mitosys@colomsat.net.co>. The bug was causing circular
+ dependencies on the libraru that was getting compiled.
+
+Wed Oct 29 06:17:36 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
+
+ * tao/default_server.cpp (parse_args): Must increase the loop
+ counter.
+
+Wed Oct 29 02:11:43 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.18, released Wed Oct 29 02:11:43 1997.
+
+Wed Oct 29 00:56:26 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/svc.conf: Updated documentation comments to
+ reflect factory option changes.
+
+ * tao/orbobj.*: Wiped argvec_shift and all its bugs off the face
+ of the earth. Manojkumar Acharya <cvsf325.gpt.co.uk> should prove
+ to be very happy about this turn of events. :-)
+
+ * tao/orbobj.cpp: Weeded out old, dead code here and there and
+ migrated much of what had been in ORB_init() into
+ TAO_ORB_Core::init().
+
+ * tao/orb_core.*: Added methods init() and fini() which perform
+ ORB Core-related initializations and cleanups, respectively. This
+ is all in anticipation of having a Unified Factory which provides
+ ORB Core as well as other information. Also began stubbing out
+ and migrating various data members and associated accessors so
+ that they are pointers rather than actual members. The next step
+ is to actually make them pointers and have everything get
+ initialized properly and deterministically and keep everything
+ working.
+
+ * tao/{giop,orb_core}.cpp: Revised code due to recent changes in
+ ACE related to the Caching connector.
+
+ * tao/default_server.{h,cpp} (parse_args): This method now uses
+ options of the style -ORBfoo rather than the previously-cryptic
+ single-letter options. This should allow us to eventually allow
+ this same routine to parse args from the command line as well as
+ inside the svc.conf file. The price we pay for consistency,
+ however, is verbosity to the point of insanity (e.g.,
+ -ORBconcurrency...blech!) These options are briefly documented in
+ the method header as well as in subsequent svc.conf files.
+
+ * tao/decode.cpp: Added some comments for arguments.
+
+ * tao/connect.{h,cpp}: Moved Connector-related typedefs and
+ corresponding template instantiations into the proper
+ file--orb_core.*.
+
+ * tao/orb_core.cpp (init): Moved much of what used to be
+ ORB_init() into here. Changed the manner in which objref style
+ was determined--it's no longer via a special ORB name but rather
+ by the -ORBobjrefstyle option which can have either the value
+ "IOR" or "URL" (default is URL).
+
+Tue Oct 28 21:15:36 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * build/SunOS5.5/TAO/tests/IDL_Cubit/clnt.cpp (main): Fixed the
+ code so that if you give incorrect parameters the program exits
+ cleanly, rather than segfaulting.
+
+Tue Oct 28 20:49:28 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
+
+ * tao/giop.cpp (start): NT Access Violation error, AGAIN! Added
+ codes to reset this->handler_ so that
+ ACE_Cached_Connect_Strategy won't complain.
+
+Tue Oct 28 19:19:05 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be/{be_state.cpp, be_union.cpp, be_struct.cpp}: Added code
+ that will generate the ACE_NESTED_CLASS macro
+
+ *TAO_IDL/be/be_type.cpp: Implemented be_type::nexted_type_name
+ that will generate the ACE_NESTED_CLASS macro. However, this may
+ not be completely correct at this point because we want to see if
+ teh compiler fails for types defined in some ancestor and whose
+ fully scoped names are generated .
+
+ * TAO_IDL/be/be_interface.cpp: Added code that will generate the
+ _bind call on the interface class.
+
+ * TAO/tests/IDL_Cubit: Added the _bind call in clnt.cpp. Improved
+ the README file.
+
+ *MAXNAMELEN : There was a clash with TAO_CodeGen::MAXNAMELEN. So
+ it has been substituted by NAMEBUFSIZE as a macro in be_codegen.h
+
+Mon Oct 27 22:22:22 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/be_decl.cpp: Added a ptr () function to the _var classes
+ hat returns the underlying ptr_ data member. This ptr () member
+ function is now used to pass a pointer type to constructor and
+ assignment operator from a T_var class.
+
+ * TAO_IDL/be_state.cpp: Important changes related to generation of
+ return values of operations in the stubs. In addition, an & was
+ missing for passing string types. Some additional bugs arising out
+ of operations with void return type have been fixed.
+
+ * ./tests/IDL_Cubit: This test has been modified to include a
+ factory interface that reads a key for the cubit object and
+ produces an obj reference for Cubit. In addition, a preliminary
+ version of the _bind call has been tested with IDL_Cubit.
+
+ *MAXNAMELEN : Carlos informed me that MAXNAMELEN was a small
+ constant on some platforms. This has been changed to
+ TAO_CodeGen::MAXNAMELEN with a value of 100.
+
+Mon Oct 27 22:07:58 1997 Carlos O'Ryan <coryan@MILONGA>
+
+ * TAO_IDL/be/be_array.cpp:
+ * TAO_IDL/be/be_helper.cpp:
+ * TAO_IDL/be/be_sequence.cpp:
+ * TAO_IDL/be/be_structure.cpp:
+ * TAO_IDL/be/be_typedef.cpp:
+ * TAO_IDL/be/be_union.cpp:
+ Set this->cli_stub_gen_ to I_TRUE once the code has been
+ emitted.
+
+Mon Oct 27 19:34:08 1997 Carlos O'Ryan <coryan@MILONGA>
+
+ * TAO_IDL/be/be_exception.cpp:
+ * TAO_IDL/be/be_enum.cpp:
+ Set this->cli_stub_gen_ to I_TRUE at the end.
+
+ * TAO_IDL/be/be_typedef.cpp:
+ Set the state to TAO_CodeGen::TAO_TYPEDEF_CH instead of just
+ struct.
+
+Mon Oct 27 15:22:24 1997 Sergio Flores <sergio@polka.cs.wustl.edu>
+
+ * TAO_IDL/be/be_state.cpp:
+ * TAO_IDL/be_include/be_codegen.h:
+ * TAO_IDL/be_include/be_factory.h:
+ * TAO_IDL/be_include/be_state.h:
+ * tao/iioporb.cpp:
+ * tao/marshal.cpp:
+ * tao/optable.cpp:
+ * tao/optable.h:
+ * tao/singletons.h:
+ The ACE_Singleton lock type needs to be changed from
+ ACE_SYNCH_MUTEX (or ACE_SYNCH_RW_MUTEX) ACE_SYNCH_RECURSIVE_MUTEX.
+ ACE handles those more efficiently for its singletons. Change
+ suggested by David Levine.
+
+Mon Oct 27 11:59:51 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orbconf.h: Made it so _FAR is defined all the time. Thanks
+ to Manojkumar Acharya <cvsf325.gpt.co.uk> for reporting this.
+
+Sun Oct 26 22:18:01 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.17, released Sun Oct 26 22:18:01 1997.
+
+Sun Oct 26 17:53:25 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * {tao,tests}/Makefile: Commented out the TAO_HAS_TSS_ORBCORE in
+ these Makefiles since it is going away anyhow and is confusing...
+
+ * tests/IDL_Cubit/svc.conf,
+ tests/Cubit/TAO/svc.conf:
+ Changed the default concurrency policy to be reactive so that
+ things work correctly if TAO_HAS_TSS_ORBCORE. Thanks to Sumedh
+ for pointing this out.
+
+ * tao/orbobj.cpp (ORB_init): Put the TAO_DEFAULT_SERVER_PORT into
+ ACE's OS.h file and used it in TAO.
+
+Sun Oct 26 15:07:18 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/params.h: Eliminated forward decls of the now-defunct ROA
+ class.
+
+ * tao/orb_core.h (TAO_DEFAULT_PORT): Added manifest constant for
+ default port.
+
+ * tao/orbobj.cpp (ORB_init): Eliminated ugly anonymous constant
+ use for hbuf's size. Utilized manifest constant for default port.
+
+ * tao/giop.cpp: Changed calls to
+ TAO_Client_Connection_Handler::in_use() to call the underlying
+ Svc_Handler::idle().
+
+ * tao/connect.{h,i}: Eliminated in_use() flags because they're no
+ longer needed with the new Strategy Connector.
+
+ * tao/iioporb.cpp (string_to_object): Removed setting of the orb
+ in the underlying CORBA::Object because it's no longer there.
+
+ * tao/object.{h,i} (CORBA_Object): Eliminated the pointer to an orb
+ within this object. This should help solve some problems in
+ passing object references across the wire.
+
+ * tao/connect.cpp: Added template instantiations for
+ ACE_Hash_Map_Iterator to reflect Irfan's recent changes.
+
+ * tests/IDL_Cubit/README: Updated documentation on the server to
+ reflect current reality.
+
+Sun Oct 26 01:01:32 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * tao/orbobj.cpp: Redid the template specialization of Hash_Addr
+ to account for the new changes.
+
+Sun Oct 26 01:05:36 1997 <nw1@COYOTE>
+
+ * tao/corba.h: Changed from using Strategies_T.h to Strategies.h.
+
+ * tao/connect.h: Removed a template argument form ACE_Hash_Addr.
+ Removed explicit instantiation of compare_i.
+
+ * tao/connect.cpp: Removed a template argument from explicit
+ instantiation of ACE_Hash_Addr.
+
+ * tests/Cubit/TAO/clnt.cpp (main): Added a simple class
+ ACE_Winsock_proper_shutdown here to shutdown winsock properly.
+ This class should be removed later once we figure out how to
+ close down winsock properly from ACE.
+
+ * tests/Cubit/TAO/svc.conf: Changed the name of shared object from
+ libTAO to TAO. Added configuration lines for using debug
+ version of TAO library on NT.
+
+Sun Oct 26 01:47:04 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * TAO_IDL/be/be_codegen.cpp (upcase):
+ * TAO_IDL/util/utl_string.cpp (canonicalize):
+ * TAO_IDL/be/be_decl.cpp (tc_name2long):
+ Added "unsigned" to index variable "i" used in for() loop,
+ to avoid warning "comparison between unsigned and signed"
+
+ * TAO_IDL/be/be_decl.cpp (compute_flatname):
+ * TAO_IDL/be/be_decl.cpp (compute_repoID):
+ * TAO_IDL/be/be_interface.cpp (compute_fullskelname):
+ Fixed error "second - I_FALSE;", should be "second = I_FALSE;"
+
+ * TAO_IDL/be/be_operation.cpp (gen_server_skeletons):
+ * TAO_IDL/be/be_state.cpp (gen_code):
+ Initialized pointers to 0
+
+ * TAO_IDL/driver/drv_preproc.cpp (DRV_pre_proc):
+ * TAO_IDL/be/be_operation.cpp (gen_server_header):
+ * TAO_IDL/be/be_operation.cpp (gen_client_header):
+ * TAO_IDL/be/be_decl.cpp (gen_out_defn):
+ * TAO_IDL/be/be_decl.cpp (gen_var_defn):
+ * TAO_IDL/be/be_scope.cpp (gen_client_header):
+ * TAO_IDL/be/be_state.cpp (gen_code):
+ * TAO_IDL/be/be_helper.cpp (operator<<):
+ * TAO_IDL/be/be_union.cpp (tc_encap_len):
+ * TAO_IDL/be/be_typedef.cpp (gen_client_stubs):
+ * TAO_IDL/be/be_string.cpp (gen_client_header):
+ * TAO_IDL/be/be_root.cpp (gen_idl2cplusplus_mapping):
+ * TAO_IDL/be/be_predefined_type.cpp (gen_typecode):
+ * TAO_IDL/be/be_interface.cpp (gen_client_stubs):
+ * TAO_IDL/be/be_interface.cpp (gen_server_skeletons):
+ * TAO_IDL/be/be_interface.cpp (gen_operation_table):
+ * TAO_IDL/be/be_interface.cpp (gen_server_inline):
+ * TAO_IDL/be/be_interface.cpp (tc_encap_len):
+ * TAO_IDL/be/be_field.cpp (gen_encapsulation):
+ * TAO_IDL/be/be_field.cpp (tc_encap_len):
+ * TAO_IDL/be/be_enum_val.cpp (gen_encapsulation):
+ * TAO_IDL/be/be_enum.cpp (tc_encap_len):
+ * TAO_IDL/be/be_constant.cpp (gen_client_header):
+ * TAO_IDL/be/be_constant.cpp (gen_client_stubs):
+ * TAO_IDL/be/be_argument.cpp (gen_client_header):
+ * TAO_IDL/be/be_argument.cpp (gen_client_stubs):
+ * TAO_IDL/be/be_argument.cpp (gen_server_header):
+ * TAO_IDL/be/be_argument.cpp (gen_server_skeletons):
+ * TAO_IDL/be/be_array.cpp (be_array):
+ * TAO_IDL/be/be_array.cpp (gen_client_header):
+ * TAO_IDL/be/be_array.cpp (gen_client_inline):
+ * TAO_IDL/be/be_array.cpp (gen_forany_defn):
+ * TAO_IDL/be/be_array.cpp (gen_forany_impl):
+ * TAO_IDL/util/utl_stack.cpp (push):
+ Added ACE_UNUSED_ARG macro to avoid unused variable warning,
+ for variable slen.
+
+ * TAO_IDL/be_include/be_helper.h (class TAO_OutStream):
+ Made destructor virtual; we have virtual member functions.
+
+ * TAO_IDL/be/be_codegen.cpp (TAO_CodeGen):
+ * TAO_IDL/be/be_decl.cpp (be_decl):
+ * TAO_IDL/util/utl_stack.cpp (UTL_ScopeStack):
+ * TAO_IDL/util/utl_scope.cpp (UTL_ScopeActiveIterator):
+ Reordered member initializers to match declaration order to
+ satisfy the compiler.
+
+ * TAO_IDL/util/utl_scope.cpp (lookup_primitive_type):
+ Added "default" case to switch to return NULL.
+
+ * TAO_IDL/util/utl_scope.cpp (add_attribute):
+ * TAO_IDL/util/utl_scope.cpp (add_operation):
+ * TAO_IDL/util/utl_scope.cpp (add_argument):
+ * TAO_IDL/util/utl_scope.cpp (add_union_branch):
+ * TAO_IDL/util/utl_scope.cpp (add_field):
+ * TAO_IDL/util/utl_scope.cpp (add_typedef):
+ * TAO_IDL/util/utl_scope.cpp (add_sequence):
+ * TAO_IDL/util/utl_scope.cpp (add_array):
+ Use 0 instead of NULL to initialize pointers in the
+ member initialization list, again to avoid ANSI C++ forbids
+ implicit (void *) conversions warnings.
+
+Sun Oct 26 01:01:32 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.16, released Sun Oct 26 01:01:32 1997.
+
+Sun Oct 26 00:32:29 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * TAO/TAO_IDL/fe/idl.ll: Reverted a change that Carlos had
+ overwritten. I guess he's not getting enough sleep these
+ days... ;-)
+
+Sun Oct 26 00:31:38 1997 <irfan@TWOSTEP>
+
+ * tao/orb_core.i (hash_i): Redid the specialization in view of the
+ new changes.
+
+Sat Oct 25 18:14:14 1997 Douglas C. Schmidt <schmidt@macarena.cs.wustl.edu>
+
+ * TAO_IDL/be/be_interface.cpp (be_interface): Worked around a
+ nasty MSVC++ compiler bug that doesn't like CORBA::Object
+ (object_ptr). So we use an existing ACE macro for this.
+
+ * TAO_IDL/be/be_interface.cpp (be_interface): Fixed yet another
+ round of uninitialized data members. It is clear that the
+ original authors of this code wouldn't pass my ugrad programming
+ course...
+
+ * TAO_IDL/fe/idl.ll (idl_parse_line_and_file): Had to make a minor
+ change to skip over the #line directive from Microsoft. In
+ addition, had to add some code to put Microsoft-style pathnames
+ into a canonical form (i.e., replacing = '\\' with '\'). Thanks
+ to Darrell for helping with this.
+
+ * TAO_IDL/fe/idl.ll: Added a new rule to handle the fact
+ that the Microsoft C++ preprocessor generates tags of the
+ form
+
+ #line 1 "bar.idl"
+
+ rather than
+
+ #1 "bar.idl"
+
+ which is what UNIX C++ compilers seem to do.
+
+ * TAO_IDL/be/be_decl.cpp (compute_fullname, compute_flatname):
+ Fixed a nasty bug where the original author thought new always
+ returned 0'd memory... Sheesh!
+
+ * TAO_IDL/driver/drv_preproc.cpp: Changed fd < 0 to fd ==
+ ACE_INVALID_HANDLE to be more portable.
+
+ * TAO_IDL/be/be_decl.cpp (be_decl): There were two fields,
+ flatname_ and repoID_, that weren't given initial values of 0.
+ Thanks to Purify for finding this!
+
+ * TAO_IDL/fe/idl.{yy,ll}: Replaced all uses of type names <name>
+ (e.g., FLOAT) with IDL_<name> (e.g., IDL_FLOAT) so that the code
+ won't bomb on lame systems like NT that typedef basic types to all
+ capitals (e.g., typedef float FLOAT).
+
+Sat Oct 25 22:28:42 1997 Carlos O'Ryan <coryan@MILONGA>
+
+ * TAO_IDL/fe/idl.ll: Since yytext may be an "unsigned char*" under
+ HP-UX they define an "alias" __yytext. This hack fails miserably
+ when using flex, since then the yytext thing can change on the
+ fly. I use an inline function instead. Added support for #line
+ preprocessor directives.
+
+ * TAO_IDL/driver/drv_preproc.cpp: Documented some of my changes
+ for NT, namely the fact that unlinking the output file while
+ still open causes the parsing to fail on NT.
+
+ * TAO_IDL/tao_idl.dsp: Added new folders for source files, header
+ files, template files, etc. I modelled this based on the ACE
+ project files.
+
+Sat Oct 25 22:05:43 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * TAO_IDL/ast/ast_constant.cpp (exprtype_to_string):
+ Added case statements to handle the rest of un-handled
+ enumerations from AST_Expression::ExprType. These will
+ handle a default value (i.e. the same case as
+ AST_Expression::EV_none).
+
+ * TAO_IDL/ast/ast_expression.cpp (operator==):
+ * TAO_IDL/ast/ast_expression.cpp (compare):
+ Make the default return value I_FALSE instead of NULL which
+ was giving "lacks a cast" warning.
+
+ * TAO_IDL/ast/ast_expression.cpp (fill_definition_details):
+ Use 0 instead of NULL to initialize pointers in the
+ member initialization list, again to avoid ANSI C++ forbids
+ implicit (void *) conversions warnings.
+
+ * TAO_IDL/ast/ast_expression.cpp (eval_symbol):
+ Initialized pointers to 0.
+
+Sat Oct 25 17:45:17 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/driver/drv_preproc.cpp: Fixed the same bug that Sumedh
+ fixed. In addition, ACEified the calls to strcat and strcmp in
+ that file.
+
+ * TAO_IDL/fe/idl.ll: Used %array in the defintion section so that
+ flex uses yytext as an array of characters rather than pointer to
+ char. The pointer case was resulting in a segmentation fault due
+ to lack of memory allocation for the yytext variable. However, we
+ choose to use the array approach to be compatile with "lex"
+ behavior.
+
+Sat Oct 25 1997 Sumedh Mungee <sumedh@lindy.cs.wustl.edu>
+
+ * TAO_IDL/driver/drv_preproc.cpp: Fixed proper tmp filename
+ creation.
+
+Sat Oct 25 14:14:53 1997 Carlos O'Ryan <coryan@MILONGA>
+
+ * TAO_IDL/tao_idl.dsw:
+ * TAO_IDL/tao_idl.dsp:
+ Added a MSVC++ project file for the IDL compiler, needs several
+ revisions byt the NT experts before shipping, but it has served
+ me well.
+
+ * TAO_IDL/driver/drv_fork.cpp:
+ * TAO_IDL/driver/drv_preproc.cpp:
+ We use ACE components to fork&exec subprocesses, get the default
+ TMP directory and generate protable pathnames.
+ In one case the mapping to NT is not clear: the use case is fork
+ to get a "fresh" copy of the process and provide a unit of
+ protection for the parent; this feature is only used if more
+ than one IDL file is compiled at the same time.
+
+ * TAO_IDL/be/be_decl.cpp:
+ Fixed minor bug, it said "second - I_FALSE;", it should be
+ "second = I_FALSE
+
+ * TAO_IDL/ast/ast_argument.cpp:
+ * TAO_IDL/ast/ast_array.cpp:
+ * TAO_IDL/ast/ast_attribute.cpp:
+ * TAO_IDL/ast/ast_check.cpp:
+ * TAO_IDL/ast/ast_concrete_type.cpp:
+ * TAO_IDL/ast/ast_constant.cpp:
+ * TAO_IDL/ast/ast_decl.cpp:
+ * TAO_IDL/ast/ast_enum.cpp:
+ * TAO_IDL/ast/ast_enum_val.cpp:
+ * TAO_IDL/ast/ast_exception.cpp:
+ * TAO_IDL/ast/ast_expression.cpp:
+ * TAO_IDL/ast/ast_field.cpp:
+ * TAO_IDL/ast/ast_generator.cpp:
+ * TAO_IDL/ast/ast_interface.cpp:
+ * TAO_IDL/ast/ast_interface_fwd.cpp:
+ * TAO_IDL/ast/ast_module.cpp:
+ * TAO_IDL/ast/ast_operation.cpp:
+ * TAO_IDL/ast/ast_predefined_type.cpp:
+ * TAO_IDL/ast/ast_recursive.cpp:
+ * TAO_IDL/ast/ast_redef.cpp:
+ * TAO_IDL/ast/ast_root.cpp:
+ * TAO_IDL/ast/ast_sequence.cpp:
+ * TAO_IDL/ast/ast_string.cpp:
+ * TAO_IDL/ast/ast_structure.cpp:
+ * TAO_IDL/ast/ast_type.cpp:
+ * TAO_IDL/ast/ast_union.cpp:
+ * TAO_IDL/ast/ast_union_branch.cpp:
+ * TAO_IDL/ast/ast_union_label.cpp:
+ * TAO_IDL/be/be_args.cpp:
+ * TAO_IDL/be/be_constant.cpp:
+ * TAO_IDL/be/be_generator.cpp:
+ * TAO_IDL/be/be_init.cpp:
+ * TAO_IDL/be/be_produce.cpp:
+ * TAO_IDL/be_include/be.h:
+ * TAO_IDL/be_include/be_generator.h:
+ * TAO_IDL/driver/drv_args.cpp:
+ * TAO_IDL/driver/drv_fork.cpp:
+ * TAO_IDL/driver/drv_init.cpp:
+ * TAO_IDL/driver/drv_main.cpp:
+ * TAO_IDL/driver/drv_preproc.cpp:
+ * TAO_IDL/driver/drv_private.cpp:
+ * TAO_IDL/fe/fe_declarator.cpp:
+ * TAO_IDL/fe/fe_extern.cpp:
+ * TAO_IDL/fe/fe_init.cpp:
+ * TAO_IDL/fe/fe_interface_header.cpp:
+ * TAO_IDL/fe/fe_private.cpp:
+ * TAO_IDL/fe/lex.yy.cpp:
+ * TAO_IDL/fe/y.tab.cpp:
+ * TAO_IDL/include/ast.h:
+ * TAO_IDL/include/ast_argument.h:
+ * TAO_IDL/include/ast_array.h:
+ * TAO_IDL/include/ast_attribute.h:
+ * TAO_IDL/include/ast_concrete_type.h:
+ * TAO_IDL/include/ast_constant.h:
+ * TAO_IDL/include/ast_decl.h:
+ * TAO_IDL/include/ast_enum.h:
+ * TAO_IDL/include/ast_enum_val.h:
+ * TAO_IDL/include/ast_exception.h:
+ * TAO_IDL/include/ast_expression.h:
+ * TAO_IDL/include/ast_extern.h:
+ * TAO_IDL/include/ast_field.h:
+ * TAO_IDL/include/ast_generator.h:
+ * TAO_IDL/include/ast_interface.h:
+ * TAO_IDL/include/ast_interface_fwd.h:
+ * TAO_IDL/include/ast_module.h:
+ * TAO_IDL/include/ast_operation.h:
+ * TAO_IDL/include/ast_predefined_type.h:
+ * TAO_IDL/include/ast_root.h:
+ * TAO_IDL/include/ast_sequence.h:
+ * TAO_IDL/include/ast_string.h:
+ * TAO_IDL/include/ast_structure.h:
+ * TAO_IDL/include/ast_type.h:
+ * TAO_IDL/include/ast_typedef.h:
+ * TAO_IDL/include/ast_union.h:
+ * TAO_IDL/include/ast_union_branch.h:
+ * TAO_IDL/include/ast_union_label.h:
+ * TAO_IDL/include/be_extern.h:
+ * TAO_IDL/include/drv_extern.h:
+ * TAO_IDL/include/drv_private.h:
+ * TAO_IDL/include/fe_declarator.h:
+ * TAO_IDL/include/fe_extern.h:
+ * TAO_IDL/include/fe_interface_header.h:
+ * TAO_IDL/include/fe_private.h:
+ * TAO_IDL/include/global_extern.h:
+ * TAO_IDL/include/idl.h:
+ * TAO_IDL/include/idl_bool.h:
+ * TAO_IDL/include/idl_defines.h:
+ * TAO_IDL/include/idl_extern.h:
+ * TAO_IDL/include/idl_fwd.h:
+ * TAO_IDL/include/idl_global.h:
+ * TAO_IDL/include/idl_narrow.h:
+ * TAO_IDL/include/intlmacros.h:
+ * TAO_IDL/include/nr_extern.h:
+ * TAO_IDL/include/util.h:
+ * TAO_IDL/include/utl_decllist.h:
+ * TAO_IDL/include/utl_error.h:
+ * TAO_IDL/include/utl_exceptlist.h:
+ * TAO_IDL/include/utl_exprlist.h:
+ * TAO_IDL/include/utl_identifier.h:
+ * TAO_IDL/include/utl_idlist.h:
+ * TAO_IDL/include/utl_indenter.h:
+ * TAO_IDL/include/utl_labellist.h:
+ * TAO_IDL/include/utl_list.h:
+ * TAO_IDL/include/utl_namelist.h:
+ * TAO_IDL/include/utl_scope.h:
+ * TAO_IDL/include/utl_scoped_name.h:
+ * TAO_IDL/include/utl_stack.h:
+ * TAO_IDL/include/utl_string.h:
+ * TAO_IDL/include/utl_strlist.h:
+ * TAO_IDL/include/utl_tmpl/utl_decllist.h:
+ * TAO_IDL/include/utl_tmpl/utl_exceptlist.h:
+ * TAO_IDL/include/utl_tmpl/utl_exprlist.h:
+ * TAO_IDL/include/utl_tmpl/utl_idlist.h:
+ * TAO_IDL/include/utl_tmpl/utl_labellist.h:
+ * TAO_IDL/include/utl_tmpl/utl_list.h:
+ * TAO_IDL/include/utl_tmpl/utl_namelist.h:
+ * TAO_IDL/include/utl_tmpl/utl_strlist.h:
+ * TAO_IDL/narrow/narrow.cpp:
+ * TAO_IDL/util/utl_decllist.cpp:
+ * TAO_IDL/util/utl_error.cpp:
+ * TAO_IDL/util/utl_exceptlist.cpp:
+ * TAO_IDL/util/utl_exprlist.cpp:
+ * TAO_IDL/util/utl_global.cpp:
+ * TAO_IDL/util/utl_identifier.cpp:
+ * TAO_IDL/util/utl_idlist.cpp:
+ * TAO_IDL/util/utl_indenter.cpp:
+ * TAO_IDL/util/utl_labellist.cpp:
+ * TAO_IDL/util/utl_list.cpp:
+ * TAO_IDL/util/utl_namelist.cpp:
+ * TAO_IDL/util/utl_scope.cpp:
+ * TAO_IDL/util/utl_stack.cpp:
+ * TAO_IDL/util/utl_string.cpp:
+ * TAO_IDL/util/utl_strlist.cpp:
+ * TAO_IDL/util/utl_tmpl/utl_decllist.cpp:
+ * TAO_IDL/util/utl_tmpl/utl_exceptlist.cpp:
+ * TAO_IDL/util/utl_tmpl/utl_exprlist.cpp:
+ * TAO_IDL/util/utl_tmpl/utl_idlist.cpp:
+ * TAO_IDL/util/utl_tmpl/utl_labellist.cpp:
+ * TAO_IDL/util/utl_tmpl/utl_list.cpp:
+ * TAO_IDL/util/utl_tmpl/utl_namelist.cpp:
+ * TAO_IDL/util/utl_tmpl/utl_strlist.cpp:
+ Removed a *big* number of warnings, in an attempt to surface
+ real problems. The main one was "#pragma ident" and some unused
+ variables.
+
+Sat Oct 25 06:22:03 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO_IDL/fe/idl.yy: I got errors parsing the idl.yy thru
+ bison. There were errors indicating "type clash on default action".
+
+ This had to do with the fact that the non-terminal "type_dcl" did not
+ have any type defined for it, but it had "struct_type", "union_type"
+ and others on the right-hand side of the rules. The default action of
+ YACC is supposed to assign1 to. So the type for "struct_type"
+ that happened to be a AST_Decl node was getting assigned to the
+ non-terminal "type_dcl" who had no type.
+
+ I am very surprised that the "yacc" on our Sparcs never ever gave this
+ error, but bison did.
+
+ Hence I have modified idl.yy slightly so that I have {$$ = 0;} as the
+ default action. In addition, the non-terminal "type_dcl" is now
+ defined to be of type "ival" which is defined as long inside the
+ %union clause.
+
+ Above all, the bison generated files required some prototypes. So I
+ had to add the following to idl.yy in the declarations section.
+
+ int yylex (void);
+ void yyerror (char *);
+ extern "C" yywrap (void);
+
+ Somehow, this yywrap had to be under extern "C". I don't know why the
+ others need not be under extern "C".
+
+
+Sat Oct 25 00:05:05 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.15, released Sat Oct 25 00:05:05 1997.
+
+Sat Oct 25 02:46:05 1997 Sergio Flores <sergio@macarena.cs.wustl.edu>
+
+ * TAO_IDL/fe/Makefile:
+ Changed the YACC variable to use the bison compiler.
+ Added "-y" to YFLAGS to make bison generate output files like yacc.
+ Changed the LEX variable to use the flex parser instead of lex.
+ These programs generate code that has less warnings and is better
+ code in general.
+ Added "-D_REENTRANT" to CPPFLAGS, to be able to eliminate the warnings
+ in lex.yy.cpp. This could also be fixed if we include "ace/ACE.h" at
+ the beginning of lex.yy.cpp, but this file is generated with flex.
+
+ * TAO_IDL/fe/idl.yy:
+ Added ACE_UNUSED_ARG macro to avoid unused variable warning,
+ for variable "AST_Decl *v".
+
+ * TAO_IDL/fe/idl.ll (idl_atof):
+ Added ACE_UNUSED_ARG macro to avoid unused variable warning,
+ for variable f and h.
+
+ * TAO_IDL/include/idl.h:
+ Added include file "ace/ACE.h". This was necessary to eliminate
+ warnings of implicit declarations, which were because the _REENTRANT
+ flag was not defined.
+
+ * TAO_IDL/ast/ast_operation.cpp (AST_Operation):
+ Reordered member initializers to match declaration order to
+ eliminate warnings from the compiler.
+
+ * TAO_IDL/ast/ast_operation.cpp (fe_add_exceptions):
+ Added ACE_UNUSED_ARG macro to avoid unused variable warning,
+ for variable fs.
+
+ * TAO_IDL/ast/ast_interface.cpp (AST_Interface):
+ Reordered member initializers to match declaration order to
+ eliminate warnings from the compiler.
+
+ * TAO_IDL/ast/ast_expression.cpp (operator==):
+ * TAO_IDL/ast/ast_expression.cpp (coerce):
+ * TAO_IDL/ast/ast_expression.cpp (coerce_value):
+ * TAO_IDL/ast/ast_expression.cpp (compare):
+ * TAO_IDL/ast/ast_expression.cpp (dump_expr_val):
+ Added case statements to handle the rest of un-handled
+ enumerations from AST_Expression::ExprType. These will
+ handle a default value (i.e. the same case as
+ AST_Expression::EV_none). Enumerations added are:
+ AST_Expression::EV_wstring
+ AST_Expression::EV_wchar
+ AST_Expression::EV_longdouble
+ AST_Expression::EV_ulonglong
+ AST_Expression::EV_longlong
+
+ * TAO_IDL/ast/ast_expression.cpp (AST_Expression):
+ Reordered member initializers to match declaration order to
+ eliminate warnings from the compiler.
+
+ * TAO_IDL/ast/ast_decl.cpp (AST_Decl):
+ Reordered member initializers to match declaration order to
+ eliminate warnings from the compiler.
+ Also, use 0 instead of NULL to initialize pointers in the
+ member initialization list, again to avoid ANSI C++ forbids
+ implicit (void *) conversions warnings.
+
+ * TAO_IDL/ast/ast_array.cpp (dump):
+ Added "unsigned" to index variable "i" used in for() loop,
+ to avoid warning "comparison between unsigned and signed"
+
+ * TAO_IDL/ast/ast_array.cpp (compute_dims):
+ Added "unsigned" to index variable "i" used in for() loop,
+ to avoid warning "comparison between unsigned and signed"
+
+ * TAO_IDL/ast/ast_array.cpp (AST_Array):
+ Reordered member initializers to match declaration order to
+ eliminate warnings from the compiler.
+
+ * TAO_IDL/fe/fe_declarator.cpp (FE_Declarator):
+ Reordered member initializers to match declaration order to
+ eliminate warnings from the compiler.
+
+ * TAO_IDL/driver/drv_main.cpp (DRV_drive):
+ Added ACE_UNUSED_ARG macro to avoid unused variable warning.
+
+ * TAO_IDL/ast/ast_recursive.cpp (AST_illegal_recursive_type):
+ Initialized pointer variables to avoid warnings.
+
+Fri Oct 24 19:18:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao: Changed remaining uses of BOA to POA.
+
+ * cubit_i.cpp (please_exit): Replaced the call to
+ please_shutdown() on the POA (which no longer exists) with the
+ shutdown() call on the ORB.
+
+ * tests/IDL_Cubit/svr.cpp: Removed
+
+ oa_ptr->clean_shutdown (env);
+
+ since this is no longer supported in TAO's POA.
+
+ * tao/poa.h: Changed the get_boa() method to get_poa(). Even this
+ will probably go away soon.
+
+Fri Oct 24 18:25:00 1997 Aniruddha Gokhale <gokhale@flamenco.cs.wustl.edu>
+
+ * TAO/tao/svrrqst.cpp: Method params was allocating memory even
+ when the Any's already had memory allocated for the IN and INOUT
+ parameters. Due to this the params would retrieve results in the
+ allocated storage whereas the stubs/skeletons would continue to
+ use variables that they had defined to hold the values.
+
+Fri Oct 24 17:33:21 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/poa.*: #ifdef'd out the IIOP 1.4 references to shutdown.
+ I'm leaving them in there right now because they might be useful
+ as private member later when we need to figure out how to get OAs
+ to cooperate and shut themselves down in the face of an ORB
+ shutdown.
+
+ * tao/orbobj.h (shutdown): Fixed up documentation.
+
+ * tao/orbobj.i (shutdown): Provided appropriate arg default.
+
+ * tests/Cubit/TAO/svr.cpp: Eliminated unnecessary Object Adapter
+ name from POA_init() invocation.
+
+ * tests/Cubit/TAO/cubit_i.cpp (Cubit_please_exit): Revised to use
+ the new ORB::shutdown() method.
+
+ * tests/Cubit/TAO/clnt.cpp: Got rid of IIOP 1.4-style debug
+ message calls.
+
+ * tao/orbobj.cpp (CORBA_ORB::ORB_init): Corrected a heinous
+ problem in the option parsing loop where argvec_shift() would be
+ asked to shift two argv elements when there was only one. This
+ could cause problems if an option that required an argument didn't
+ include the argument. Thanks to Manojkumar Acharya
+ <cvsf325.gpt.co.uk> for sending in a bug report that lead to my
+ finding this!
+
+Fri Oct 24 14:08:12 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * Improved the compiler to make Unions work. The most subtle error
+ was the way the private section of the class for unions was being
+ generated. TAO's Typecode library expected the union members to be
+ inside of a C++ union declaration inside the private
+ section. Whereas the compiler was generating each member
+ separately.
+
+ Another source of error was bad typecode tables getting
+ generated. This is now fixed.
+
+ * TAO/tests/IDL_Cubit: The cubit_i.cpp for cube_union was doing
+ wrong calculations for structs. This was due to my copy-paste
+ tendency and not verifying if it was correct or not. This has been
+ fixed. The README file is updated to reflect the fact that this
+ directory contains code that uses the IDL compiler.
+
+Fri Oct 24 01:54:00 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.14, released Fri Oct 24 01:54:00 1997.
+
+Fri Oct 24 01:02:01 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * clnt.cpp: Removed mysterious obsolete definitions of
+ cube_union_stub() and cube_union_dii().
+
+ * be_state.h: Added definitions for the methods in class
+ be_state_attribute. For some reason, they were missing.
+
+ * TAO_IDL/be/be_state.cpp: Added the necessary template
+ specializations so that the TAO IDL compiler will work with GCC.
+
+Thu Oct 23 22:46:10 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO IDL Compiler: More progress in terms of getting the Cubit
+ example to work with the IDL generated code. However, we are still
+ finding some problems with using the client-side cubit_union_dii
+ to work properly.
+
+ Much of the improvements were to the server-side skeletons for
+ operations. In addition, code for union constructors, assignment
+ operator, and accessor for discriminant added.
+
+ Some bugs in typecode generation are fixed. This had to do with
+ the encapsulation length for predefined types. It was returning -1
+ as opposed to 0.
+
+ * TAO/tests/IDL_Cubit: Added this directory with the cubit
+ example. Use this to test the IDL compiler. The makefile will
+ invoke the IDL compiler to create the required files.
+
+Thu Oct 23 18:34:02 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tests/*/Makefile: Fixed the Makefiles so that it has the correct
+ files and dependencies. Thanks to Steven Wohlever
+ <wohlever@mitre.org> for reporting this.
+
+Wed Oct 22 20:02:39 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * README.sun: Added an explicit reminder at the top that the
+ information in this file is historical in nature and does not
+ necessarily apply to current reality.
+
+ * tao/orbobj.* (shutdown): Added code to the run() event loop so
+ that it will terminate when it finds a flag set. This involved
+ adding the flag to the ORB's state and minimally implementing the
+ shutdown() method. The shutdown method still does not honor the
+ "wait for completion" flag which can be passed to it, though.
+
+ * README: Updated the season from "summer" to "Fall" ;-) Also
+ added a note that warned people not to try to link TAO with a
+ version of ACE that's linked with another ORB library, e.g.,
+ liborbix.so. Thanks to Steven Wohlever <wohlever@mitre.org> for
+ bringing this instructional omission to our attention.
+
+ * tao/tao_internals.cpp (fake_service_entries_i): Made the body of
+ this function conditional on the TAO_PLATFORM_SVC_CONF_FILE_NOTSUP
+ preprocessor definition since it doesn't need to exist in
+ platforms that grok the Service Configurator. This will also
+ reduce the memory footprint :-). Thanks to David Miron
+ <dxm@crapper.dsto.defence.gov.au> for pointing this out!
+
+ * tao/orb_core.cpp (TAO_ORB_Core): Removed explicit CTOR
+ initialization of reactor_ member.
+
+Wed Oct 22 19:37:22 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO IDL Compiler: Improvements made so that the server-side
+ skeletons for operations now generate valid code. The code
+ generated for the Cubit.idl was compiling cleanly. It is under
+ test currently to see if it runs.
+
+ * Some progress in handling forward declarations of interfaces.
+
+Wed Oct 22 12:55:19 1997 <nw1@CHA-CHA>
+
+ * tao/poa.h: Added ACE_Svc_Export to class CORBA_POA.
+
+ * tao/TAO.{mdp,mak}: Updated files in project file.
+
+ * tao/TAO.dsp: Removed boa, Orb_Core and added poa, orb_core to
+ the project file.
+
+Tue Oct 21 17:21:51 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * docs/releasenotes/orbcore.html: Updated to reflect daily
+ progress.
+
+ * tests/Cubit/TAO/Makefile: Updated dependencies.
+
+ * tests/Cubit/TAO/svc.conf: Updated to eliminate empty quotes at
+ the end that tickled a deficiency in the Service Configurator's
+ grammar.
+
+ * tests/multiCubit/svr.cpp: Updated to reflect POA_init change.
+
+ * tests/Thruput_test/Makefile: Modified to reflect filename
+ changes.
+
+ * tests/Thruput_test/server.cpp: Changed type of argv so that it
+ matched properly.
+
+ * tao/boa.*: Renamed to tao/poa.*.
+
+ * tao/Orb_Core.*: Renamed to tao/orb_core.*.
+
+ * tao/{Makefile,corba.h,default_client.cpp,default_server.cpp,orb.h,orbobj.cpp,params.h}:
+ Modified to reflect filename changes.
+
+Tue Oct 21 13:23:48 1997 Brian Mendel <brian.r.mendel@boeing.com>
+
+ * tao/connect.i: Moved hash_i and compare_i template
+ specialization to Orb_Core.i. Original code was left comment
+ out until this mod is checked on all platforms.
+
+ * tao/Orb_Core.i: Added hash_i and compare_i code from connect.i.
+
+Tue Oct 21 03:23:29 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
+
+ * tao/Orb_Core.cpp: Removed conditional inclusion of Orb_Core.i
+ since, according to corba.h, it is always included as an inline
+ function file.
+
+Tue Oct 21 02:24:14 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.13, released Tue Oct 21 02:24:14 1997.
+
+Mon Oct 20 23:42:48 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * TAO/boa: Changed BOA_init() to POA_init() to be
+ more consistent...
+
+ * TAO_IDL/be/be_interface.cpp,
+ tests/TAO/Thruput_test/server.cpp,
+ tests/TAO/Thruput_test/ttcpS.cpp,
+ tests/TAO/RT_test/Task_Client.cpp,
+ tests/TAO/RT_test/cubit_impl.cpp,
+ tests/TAO/multiCubit/cubitS.cpp,
+ tests/TAO/multiCubit/svr.cpp,
+ tests/TAO/Demux_Test/server.cpp,
+ tests/TAO/Demux_Test/CodeGen/skel.cpp,
+ tests/TAO/MT-Cubit/client/Task_Client.cpp,
+ tests/TAO/MT-Cubit/server/cubitS.cpp,
+ tests/TAO/MT-Cubit/server/svr.cpp,
+ tests/TAO/cubitS.cpp,
+ tests/TAO/svr.cpp,
+ tests/TAO/test1_svr.cpp: Changed BOA to POA to reflect the
+ new naming conventions.
+
+ * tao/stub.i (STUB_Object): Removed a stray default value from the
+ STUB_Object constructor... Thanks to Carlos for noticing this.
+
+MOn Oct 20 10:14:09 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * Improved version of the TAO IDL compiler. The executable has
+ been renamed to tao_idl. There are a number of improvements as
+ well as shortcomings. These are explained in the
+ docs/releasenotes/index.html page, which can be viewed online at
+ http://www.cs.wustl.edu/~schmidt/ACE_wrappers/TAO/docs/releasenotes/.
+
+Mon Oct 20 16:30:29 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/tao_internals.cpp (fake_service_entries_i): Based the
+ arguments to the faked server service entry for VxWorks on the
+ TAO_HAS_TSS_ORBCORE compilation flag. This should hopefully
+ eliminate the problems Boeing was seeing in the early rounds of
+ testing the most recent release of TAO.
+
+ * tao/{iiopobj.*,giop.h}: Moved a lock that had been in
+ TAO_GIOP_Invocation (why? I don't know) into IIOP_Object. It
+ protects the fwd_profile_ pointer, which has now become private.
+ Also added accessors for the data member as well as the lock.
+ Accessors come in two flavors--thead-safe (fwd_profile()) and
+ non-thread-safe (fwd_profile_i()). The non-thread-safe variety
+ expect that the lock will be taken and held for the duration of
+ their usage, but no checking is performed in this respect.
+
+ * tao/giop.cpp: Changed references to the IIOP_Object::fwd_profile
+ data member to go through the new accessors (see above).
+
+ * tao/stub.i: Created new file with inline methods for
+ STUB_Object.
+
+ * tao/stub.h: Moved inline method definitions into a new
+ file--stub.i.
+
+ * tao/orbobj.cpp (BOA_init): Eliminated dead code and unused
+ variable.
+
+ * tao/except.cpp (print_exception): Eliminated unused argument
+ warning detected by gcc.
+
+ * tao/corba.h: Re-ordered inclusion of Orb_Core.i to eliminate
+ 'function used before declared inline' errors detected by gcc.
+
+ * tao/{Orb_Core,boa,corbacom,orb,orbobj,svrrqst}.*: Renamed BOA to
+ POA.
+
+ * docs/releasenotes*: Moved releasenotes.html into a directory
+ named "releasenotes" so that the various status pages can live
+ independently. Currently only the ORB Core's status page is
+ broken out, but the documentation should eventually turn into two
+ frames with the one at the top acting as the guide and the lower
+ frame being the actual status document.
+
+Fri Oct 17 17:42:27 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * docs/releasenotes.html: Updated to reflect current status.
+
+ * tao/orbobj.*: Added some documentation for open() method.
+
+ * tao/roa.*: Gone. Bye-bye. Removed.
+
+Fri Oct 17 15:43:04 1997 <nw1@CHA-CHA>
+
+ * tao/connect.h: Added template instantiation supression directive
+ for Win32. VC was complaining about duplicate symbols definition.
+
+Fri Oct 17 06:25:23 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/{boa,roa}.*: Merged class ROA into class
+ CORBA_BOA. Hopefully everything still works ;-)
+
+ * docs/releasenotes.html: Quick update for new TODO list. Will be
+ updated within the next day or so with dates, too.
+
+ * tao/{server_factory,orbobj,Orb_Core}.cpp: Corrected incorrect
+ explicit template instantiations and added missing ones.
+
+Thu Oct 16 23:48:04 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.12, released Thu Oct 16 23:48:04 1997.
+
+Thu Oct 16 11:15:00 1997 Brian R. Mendel <brian.r.mendel@boeing.com>
+
+ * tao/server_factory.cpp: Added instantiation pragma for VxWorks for
+ ACE_Acceptor. Added the template to the specialization section, also.
+
+ * tao/orbobj.cpp: Added instantiation pragma for VxWorks for
+ ACE_Cached_Connect_Strategy and ACE_Hash_Map_Manager for
+ ACE_Null_Mutex instantiations. Also, added these to the template
+ specialization sections.
+
+ * tests/Cubit/Build/default.bld: Added TAO_PLATFORM_SVC_CONF_FILE_NOTSUP
+ to defines section of GHS build file.
+
+Tue Oct 14 21:11:20 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao/xdr.h: Changed int _fd to ACE_HANDLE _fd to work on NT.
+ Thanks to Satheesh Kumar <satheesh@aspectdv.com> for reporting
+ this.
+
+Tue Oct 14 02:48:21 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.11, released Tue Oct 14 02:48:21 1997.
+
+Mon Oct 13 23:30:16 1997 <irfan@TWOSTEP>
+
+ * tao/connect.h: If we are using TSS, there is no reason to use
+ locking in the connector. Therefore, I added a new typedef that
+ defines the type of lock that should be used for the
+ cached_connect_strategy. It is ACE_SYNCH_RW_MUTEX in the
+ non-TSS case, and ACE_SYNCH_NULL_MUTEX in the TSS case.
+
+Mon Oct 13 21:34:00 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao/svrrqst.cpp (oa): Cleaned up the coding style a bit.
+
+Sun Oct 12 15:38:35 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao/client_factory: Gutted the client factory code related to
+ the Strategy_Connector so that it's either in the TAO_Orb_Core.
+
+ * tao/default_client.h: Removed the connector() from the
+ Default_Client_Factory entirely since it's all been put into the
+ TAO_ORB_Core now.
+
+ * tao/giop.cpp (start): Hacked up the code so that we extract our
+ connector from thread-specific storage if we're using the
+ thread-per-rate concurrency model. This needs to be integrated
+ more cleverly in the ORB.
+
+ * tao/orbobj.h: Put an instance of the TAO_CONNECTOR into each
+ TAO_ORB_Core object so that we don't have to share these things
+ among all of the threads in a process, but instead can have them
+ be located in thread-specific storage.
+
+ * tao/orbobj.cpp (perform_work): Updated the run() and
+ perform_work() methods to take optional ACE_Time_Value *'s (so
+ they can return from timeouts) and to return error flags if
+ things go wrong.
+
+ * tao/orbobj.h (CORBA_ORB): Changed the set_up_for_listening()
+ call to open(), which is more consistent with other usage in
+ ACE/TAO.
+
+ * tao/orbobj: Changed the name client_acceptor_ to peer_acceptor_
+ to reflect the fact that the connection model is more generic
+ than the notion of client/server interactions (which really take
+ place as the result of particular communication roles).
+
+ * tao/corba.h: Moved the order of #includes around so that
+ "connect.h" is included before "client_factory.h"
+
+ * tao/connect.h: Moved the typedef of the ACE_Strategy_Connector<>
+ from the TAO_Client_Strategy_Factory into the global space and
+ renamed it TAO_CONNECTOR file so that it will be equivalent with
+ the TAO_ACCEPTOR.
+
+Thu Oct 9 23:17:37 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu>
+
+ * tao/giop.cpp (invoke): If an error occurs, make sure to mark the
+ handler_ as no longer being in use before we set it to 0.
+
+ * tao/giop.cpp (TAO_GIOP_Invocation): We need to make sure that
+ handler_ isn't 0 before we mark it as no longer being in use.
+
+Thu Oct 9 11:33:46 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * tao/giop.cpp:
+ There was a minor sintax error.
+
+Tue Oct 07 09:34:35 1997 <brian.r.mendel@boeing.com>
+
+ * tao/Orb_Core.h{cpp}: Added ACE_Svc_Export label to global
+ TAO_ORB_Core_instance() method. Needed for DLL support on NT.i
+
+ * default.bld, tao.bld: Modified VxWorks build files to add new files.
+
+Tue Oct 07 07:05:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.10, released Tue Oct 07 07:05:38 1997.
+
+Mon Oct 06 22:11:40 1997 <nw1@CHA-CHA>
+
+ * tests/Cubit/TAO/cubit_i.cpp (Cubit_please_exit):
+ * tests/Cubit/TAO/cubitS.cpp (_skel_Cubit): Changed to use the new
+ TAO_ORB_CORE_instance () global function.
+
+Mon Oct 6 20:06:05 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/{boa.h,connect.cpp,giop.cpp,giop.h,roa.cpp,roa.h}:
+ Eliminated unused methods and code.
+
+ * tao/Orb_Core.*: Created new global function called
+ TAO_ORB_Core_instance() which will return the correct instance of
+ the ORB Core state. This had previously been accessed using
+ TAO_ORB_CORE::instance(), but Win32s linking procedures made the
+ template for TAO_ORB_CORE expand in both the application and the
+ library/DLL, thus creating two singletons. Bad scene. The
+ function should force the expansion of the template to only be in
+ the DLL.
+
+ * tao/{connect,default_client,default_server,orbobj,roa}.cpp:
+ Changed references to TAO_ORB_CORE::instance() to
+ TAO_ORB_Core_instance().
+
+ * tao/singletons.h: Removed definition of TAO_ORB_CORE.
+
+Sat Oct 4 20:08:57 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
+
+ * tao/TAO.{dsp,dsw}: Added tao_internals.cpp into project file
+ list.
+
+ * tao/tao_internals.h (TAO_Internal): Added ACE_Svc_Export and
+ I d.
+
+ * tao/tao_internals.i (open_services): Added default return value
+ 0.
+
+ * tao/tao_internals.cpp: Added #include "tao/tao_internals.h" and
+ the CVS I d field. Also, we should include inline (.i) file
+ for inline code.
+
+Fri Oct 3 09:29:05 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu>
+
+ * tests/multiCubit/svr.cpp: Changed the key naming scheme back to
+ not be unique throughout the process. Process-unique code is
+ still there, but conditionally compiled mutually-exclusive to the
+ other scheme.
+
+ * tao/server_factory.*: The object_lookup_strategy method is gone
+ and is replaced by the create_object_table factor method. See
+ more information below.
+
+ * tao/default_server.*: The server factory no longer holds on to a
+ single pointer for the object lookup strategy. In previous
+ incarnations of TAO, this didn't cause problems, but the advent of
+ ORB-per-thread highlighted the inherent badness in this
+ implementation choice. Gone is the object_lookup_strategy method,
+ and in comes the create_object_table factory method, which creates
+ and returns (and doesn't hold onto) an object table in accordance
+ with parameters such as size and search algorithm.
+
+ * tao/roa.cpp: Changed to use the create_object_table method.
+
+Thu Oct 2 13:48:31 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu>
+
+ * tests/multiCubit/svr.cpp: Modified the key generation scheme to
+ include thread ID. This works around a current shortcoming in the
+ ORB Core in which the object table is shared throughout all object
+ adapters (yes, this is being fixed).
+
+ * tao/tao_internals.*: Added new class to scope static operations
+ and data completely internal to the ORB.
+
+ * tao/orbobj.{i,cpp}: Moved CORBA_ORB DTOR into cpp file. Finally
+ got rid of icky static mutex in ORB_init(). Moved service config
+ initialization into TAO_Internal method.
+
+ * tao/Orb_Core.h: Added comments.
+
+Wed Oct 1 12:51:48 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
+
+ * tao/corbacom.h: Removed CORBA:: name resolution from the class
+ String_out which is itself defined in class CORBA. MSVC doesn't
+ like that.
+
+Wed Oct 1 10:44:55 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * tao/varout.h: Fixed some template errors in class
+ TAO_Object_out. This was pointed to me by Carlos as he was
+ compiling TAO in SGI.
+
+Wed Oct 1 09:10:38 1997 Carlos O'Ryan <coryan@macarena.cs.wustl.edu>
+
+ * docs/releasenotes.html:
+ Updated information on the Event Channel, the use of the Naming
+ Service is no longer a plan, it is done already.
+
+Tue Sep 30 20:14:29 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.9, released Tue Sep 30 20:14:29 1997.
+
+Tue Sep 30 19:42:09 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * Makefile: Removed "docs" from DIRS so we don't try to run
+ make in this directory.
+
+Tue Sep 30 17:27:00 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * <RELEASE>: Tagged a release for limited consumption until the
+ Service Configurator bug is fixed.
+
+ * tests/multiCubit/svr.cpp: Added code to properly release CORBA
+ objects. Delays between task activations simply aid in debugging
+ and are not necessary.
+
+ * tao/singletons.h: Made TAO_ORB_Core's singleton type
+ compile-time selectable via the TAO_HAS_TSS_ORBCORE compiler flag.
+
+ * tao/orbobj.cpp: Corrected an incorrect shift count, and the ORB
+ Core now defaults to using the host name of the local host.
+
+ * tao/Orb_Core.[hi]: Added explicit CTOR.
+
+ * tao/Orb_Core.cpp: Insured that the correct template type was
+ instantiated.
+
+ * tao/Makefile: Added -DTAO_HAS_TSS_ORBCORE to CPPFLAGS.
+
+Tue Sep 30 16:43:12 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * docs/releasenotes.html: Added some notes on the ORB Core.
+
+Mon Sep 29 14:39:51 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * docs/{index,components,releasenotes}.html: Added additional
+ documentation.
+
+Mon Sep 29 13:50:34 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO ORB changes:
+
+ any.*: Added _var and _out classes.
+
+ corbacom.{h,i} : Added _out types for primitive types, added _out and
+ updated _var classes for String. Added corbacom.i for implementing
+ the String's _var and _out classes
+
+ sequence.{h,i}: Added a number of templates for _var and _out
+ classes. However, these are yet to be used and tested.
+
+ * Alpha release of TAO IDL compiler added to this release. This is
+ an alpha release and we are currently putting it to rigorous
+ test. A large amount of code for the back end is added under the
+ TAO/TAO_IDL/be_include and TAO/TAO_IDL/be/ directories.
+
+ In addition, some amount of ACEification done to methods belonging
+ to the TAO/TAO_IDL/utils/ classes.
+
+ A few errors in the IDL grammar have been fixed in
+ fe/idl.yy. These had to do with the valid types for parameters and
+ operation return types. There are still some errors recognizing
+ unions which will be fixed later. The scanner (fe/idl.l) was
+ modified to recognize the OMG IDL data type "any".
+
+ * The ChangeLog file under TAO/TAO_IDL is removed and its contents
+ are inserted appropriately in this ChangeLog file
+
+Sun Sep 28 17:01:27 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/multiCubit: Added a multi-threaded version of Cubit.
+
+ * tao/orbobj.cpp: At long last, Andy has his wish for not having
+ to provide a "-ORBhost <me>" argument to a server. It now uses
+ ACE_OS::hostname() to determine the canonical hostname, and
+ listens on that address.
+
+ * tao/singletons.h: Changed the ORB Core singleton to be a TSS
+ singleton; this will eventually be conditionally compiled in
+ (before release). Also added comments and "safety defines".
+
+ * tao/except.cpp: Changed some usage of fputs() in
+ print_exception() to use ACE_DEBUG.
+
+Sun Sep 28 03:18:24 1997 Nanbor Wang <nw1@cumbia.cs.wustl.edu>
+
+ * tests/Cubit/TAO/cubitC.h (Object): Changed references of base
+ class from "CORBA::Object" to "CORBA_Object." MSVC doesn't
+ allow this.
+
+ * tao/Orb_Core.h: Added ACE_Svc_Export to TAO_Orb_Core class.
+
+ * tao/corbacom.h: Added ACE_Svc_Export to all IID constants.
+ Notice that we must put ACE_Svc_Export _after_ extern "C".
+
+Sat Sep 27 09:31:42 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/Orb_Core.h: Fixed the friend declaration for
+ CORBA::ORB_init().
+
+ * tests/Cubit/TAO/svr.cpp: Modified to use ORB::run() for event
+ loop and eliminated code cruft.
+
+ * tao/orbobj.*: Added stubs for 4 methods on the ORB from the
+ POA spec: work_pending, perform_work, run, and shutdown. Of all
+ of these, only run is reasonably implemented, and there not even
+ according to the spec (because the way the spec works isn't really
+ good for our purposes...need to work on that). See the docs for
+ information.
+
+ Moved the initialization of the Acceptor into its own method,
+ set_up_for_listening (which is a one-shot style method), and
+ placed a call to this within the aforementioned run method.
+
+ * tao/default_client.h: Miscellaneous comments added.
+
+ * tao/connect.cpp: Corrected an errant ACE_DEBUG () call.
+
+ * tao/Orb_Core.*: Added private methods to allow setting of the
+ orb and extended the laurel of friendship to CORBA::ORB_init().
+
+Fri Sep 26 10:20:06 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orbobj.*: Added acceptor initialization code to CORBA_ORB
+ CTOR. (We still need to find a way to NOT do this on the client
+ side.) Moved CORBA_ORB CTOR into .cpp to avoid nasty
+ interdependencies caused when it was in the .i file. Moved the
+ specification of host and port to be ORB parameters rather than OA
+ parameters, i.e., -OAhost is now -ORBhost and -OAport is now
+ -ORBport.
+
+ * tao/roa.*: Removed server-side connection endpoint
+ initialization (Acceptor stuff) and put it into the ORB.
+
+ * tao/connect.h: Renamed ROA_Acceptor to TAO_Acceptor (since it's
+ not related to the OA any longer), and restored explicit inclusion
+ of ace headers to avoid having to include "corba.h".
+
+ * tao/boa.h: Removed unneeded get_addr() method.
+
+ * tests/Cubit/TAO/cubitS.cpp: Updates to support changes in ORB
+ Core.
+
+Thu Sep 25 12:28:02 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/params.*: Added explicit CTOR & DTOR for
+ TAO_{OA,ORB}_Parameters classes that somehow got removed in the
+ previous round of attacks. Also specified all methods which go
+ into the .i file as "LOCAL_INLINE" within the header. This avoids
+ having to unravel ugly, complex order interdependencies.
+
+Thu Sep 25 03:48:02 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * docs/Options.html: Terse documentation on options available for
+ the abstract factories.
+
+ * tao/Orb_Core.*: Added this class (TAO_ORB_Core) to hold the
+ "state" of an ORB. The intent is that as we move towards
+ different concurrency models, this can be thrown into
+ thread-specific storage and remain a singleton, essentially
+ allowing the running of an ORB-per-thread.
+
+ * tao/singletons.h: Added this file to contain type definitions
+ for *ALL* ACE_Singleton<> types used within TAO. This was
+ motivated by a desire to eliminate the multitude of warnings
+ generated by g++ regarding methods being called before declared
+ inline, and the only way to eliminate this was to insure that all
+ inlined methods were seen by the compiler before the
+ ACE_Singleton<> definition. Thus, corba.h includes singleton.h as
+ the very last thing that it does.
+
+ * tao/params.*: TAO_OA_Parameters is no longer a singleton, and
+ because of new recognition of associations in the object model for
+ an ORB, lots of data members and their methods have been shuffled
+ to other places or eliminated. addr() now belongs in
+ TAO_ORB_Parameters, and root_poa_ is in TAO_ORB_Core. The
+ using_threads_, thread_flags_, upcall_, and forwarder_ members
+ have been eliminated and their roles taken over by the Concurrency
+ Strategies and the new Dispatch call chain implemented in my last
+ round of changes.
+
+ * tao/orbobj.cpp: Changed references to the ORB singleton to go
+ through TAO_ORB_CORE::instance(). Also eliminated an unnecessary
+ global function (_orb()).
+
+ * tao/marshal.h: Moved all ACE_Singleton<> typedefs into
+ singleton.h. See comment on tao/corba.h for more information.
+
+ * tao/iioporb.h: Removed unnecessary TAO_ORB singleton. This is
+ now assumed by TAO_ORB_Core instances.
+
+ * tao/corbacom.h: Added CORBA::POA_ptr for upward compatibility.
+
+ * tao/corba.h: Added Orb_Core.[hi] to the appropriate places.
+ Moved iiop{orb,obj}.i inclusions around and moved typedef'ing of
+ all ACE_Singletons into singletons.h, which must be #included
+ AFTER all the inline files. This eliminated all of the
+ used-before-declared-inline warnings.
+
+ * tao/{connect,default_client,default_server,roa}.*: Updated
+ singleton usages to go through the TAO_ORB_CORE singleton.
+
+ * tests/Cubit/TAO/{cubitS,cubit_i}.cpp: Updated singleton usages
+ to go through the TAO_ORB_CORE singleton.
+
+Wed Sep 17 12:26:56 1997 Nanbor Wang <nw1@CHA-CHA>
+
+ * tao/TAO.dsp: Updated source file list.
+
+Mon Sep 15 16:52:28 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu>
+
+ * tests/Cubit/TAO/{cubitS,cubit_i}.cpp: Updated references to oa()
+ to root_pos().
+
+ * tao/orbobj.cpp: Corrected some adjustments made for Service
+ Configurator rework.
+
+ * tao/giop.h: Moved the def for TAO_GIOP_EndOfFile out of the
+ range of valid GIOP messages.
+
+ * tao/connect.cpp: Added special case for TAO_GIOP_Reply to break
+ out, and distinguished TAO_GIOP_EndOfFile from other errors by
+ setting errno.
+
+ * tao/boa.cpp: The complete reply header is now stuck into the
+ response stream...what a novel concept!
+
+Fri Sep 12 05:40:50 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * params.h: Renamed oa() method to be root_poa() in preparation
+ for the future.
+
+ * orbobj.cpp: Adjusted the FAKE_SVC_ENTRY macro to catch up to
+ recent changes in ACE.
+
+ * giop.*: Major surgery including elimination of GIOP as a giant
+ namespace (now only static methods are in it). Changed names of
+ things to TAO_*.
+
+ * {encode,decode,iiopobj,invoke,roa}.*: Name changes resulting
+ from giop.cpp surgery.
+
+ * corbacom.h: Moved TAO_opaque decl into here.
+
+ * corba.h: Re-ordered the inline #includes so that the stuff that
+ is ALWAYS inlined is included prior to the stuff that's only
+ inlined when __ACE_INLINE__ is turned on.
+
+ * connect.*: Modified handle_input() substantially. Added 3
+ template methods: read_message, handle_message, and send_response.
+
+ * {cdr,marshal,object,typecode}.h: Removed the old "always include
+ inlines" hackery.
+
+ * boa.*: Added handle_request() method.
+
+Wed Sep 03 06:15:00 1997 Brian Mendel <brian.r.mendel@boeing.com>
+
+ * tao/default_client.cpp: Added conditional sections around the code for setting the
+ socket options for VxWorks. VxWorks does not support a 64K buffer size.
+
+Tue Sep 02 18:32:12 1997 Brian Mendel <brian.r.mendel@boeing.com>
+
+ * tao/orbobj.cpp: Added include for Service_Repository.h to orbobj.h
+
+ * tao/debug.cpp: Removed the TAO_NEEDS_UNUSED_VARIABLES #defines
+ around the debug_stream declaration. debug_stream is used by
+ dmsg_filter in debug.cpp. Changed SYSTEM_EXCEPTION to
+ CORBA::SYSTEM_EXCEPTION.
+
+ * tao/default_client.cpp: Removed extra parameter from
+ ACE_Hash_Map_Entry #pragma instantiate statement.
+
+ * tao/objtable.cpp: Deleted pragmas for instantiating ACE_Guard,
+ ACE_Read_Guard, and ACE_Write_Guard to eliminate duplicate
+ instantiations. Also, removed the instantiations from
+ ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION for the same reason.
+
+ * tao/orbobj.cpp: Added a typecast to void * in argvec_shift
+ method.
+
+ * tao/default.bld - Modified VxWorks Build File to change template
+ instantiation modes.
+
+ * tao/tao.bld - Added default_client.cpp, default_server.cpp,
+ client_factory.cpp, and server_factory.cpp to the VxWorks build
+ file.
+
+ * tao/tao.dsp - Added default_client.cpp, default_server.cpp,
+ client_factory.cpp, and server_factory.cpp to the Win NT project
+ file.
+
+Tue Sep 2 07:31:45 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orbobj.cpp (ORB_init): VxWorks doesn't use
+ ACE_Service_Config for now; the default factories are used. The
+ Service Repository is still used, but the appropriate values are
+ "stuffed" in manually.
+
+Sat Aug 30 17:07:18 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * tests/Thruput: First attempt at ACEifying it and removing the
+ tremendous amount of unnecessary stuff that was in there. This
+ modified version still needs testing on other platforms.
+
+Fri Aug 29 10:59:34 1997 Chris Cleeland <cleeland@lambada.cs.wustl.edu>
+
+ * tao/Makefile (TAO_ROOT): FINALLY corrected the default
+ definition of TAO_ROOT.
+
+Thu Aug 28 14:04:44 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orbobj.i (CORBA_ORB): Removed assertion that was incorrect
+ b/c our ORB object is a singleton and not dynamically allocated,
+ thus the refcount can only reach zero at the end of its life.
+
+ * tao/typecode.cpp (TC_Private_State): Relocated the delete of
+ tc_discriminator_type_ to be after the deletion of the label list.
+ This is because the discriminator will be inside each of the
+ CORBA::Any instances within the label list, and deleting it before
+ deleting the label list results in extreme badness.
+
+ * tao/typecode.* (operator delete): Added CORBA_TypeCode::operator
+ delete() to simplify deletion of both automatically and
+ dynamically allocated instances of CORBA_TypeCode. This fixes the
+ problem of freeing non-heap memory.
+
+ * tao/nvlist.h (CORBA_NamedValue): Initialized refcount_ in the
+ CTOR.
+
+Mon Aug 18 16:39:40 1997 Carlos O'Ryan <coryan@mambo.cs.wustl.edu>
+
+ * Makefile for TAO compiler:
+ (SOEXT) must be used instead of just .so, the former does not
+ work on all platforms, notably HP-UX.
+
+Mon Aug 18 16:39:29 1997 Carlos O'Ryan <coryan@mambo.cs.wustl.edu>
+
+ * tao/Makefile:
+ * tests/Demux_Test/CodeGen/Makefile:
+ (SOEXT) must be used instead of just .so, the former does not
+ work on all platforms, notably HP-UX.
+
+Sun Aug 17 16:53:42 1997 Carlos O'Ryan <coryan@swarm.cs.wustl.edu>
+
+ * IIOP/test/Orbeline/client/Profile_Timer.h:
+ * IIOP/tests/Cubit/VisiBroker/base_server/Profile_Timer.cpp:
+ * IIOP/tests/Cubit/VisiBroker/base_server/Profile_Timer.h:
+ * IIOP/tests/Cubit/VisiBroker/client/Profile_Timer.cpp:
+ * IIOP/tests/Cubit/VisiBroker/client/Profile_Timer.h:
+ * tests/Cubit/VisiBroker/base_server/Profile_Timer.cpp:
+ * tests/Cubit/VisiBroker/base_server/Profile_Timer.h:
+ * tests/Cubit/VisiBroker/client/Profile_Timer.cpp:
+ * tests/Cubit/VisiBroker/client/Profile_Timer.h:
+ We no longer use timestruct_t in ACE, it is a SYSVism; we use
+ timespec_t instead.
+
+Sat Aug 16 01:11:56 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/svc.conf: Added this as an example of an
+ application's service config configuration file. It also serves
+ as the documentation for various strategy factory options at the
+ moment.
+
+ * tao/orbobj.cpp: Options parsed by the ORB are now
+ -ORBsvcconf <filename> specifies the service configurator
+ file to be used
+ -ORBdaemon turn this into a daemon
+ -ORBdebug turns debugging on in the service
+ configurator
+
+ BOA_init() now sets the itself in the TAO_OA_Parameters singleton.
+
+ * tao/orbobj.*: Changed client_factory(), server_factory(), and
+ params() to return pointers rather than references.
+
+ * tao/{roa,giop}.cpp: Updated code that uses the
+ CORBA::ORB::client_factory() to deal with the fact that it now
+ returns a pointer rather than a reference.
+
+ * tao/default_server.cpp (init): This method now properly
+ initializes the contained reactive and threaded strategies so that
+ they're actually usable!
+
+ * tao/connect.cpp: Added #endif comments.
+
+Wed Aug 13 17:42:39 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/*: Converted to the CORBA:: namespace.
+
+ * tao/default_server.h: Eliminated a few strategy accessors since
+ they aren't provided by this implementation.
+
+ * tao/default_server.cpp: Made this compile.
+
+ * tao/corbacom.h: Slight reformatting of code. More importantly,
+ added 'static' to the decl of ORB_init().
+
+ * tao/corba.h: Added fake comment to trigger C++ mode.
+
+ * tao/any.h: Added #endif comments.
+
+Tue Aug 12 22:37:06 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao/{any,typecode,cdr}.h: Finished appeasing the compiler gods
+ so that we can remove the ACE_INLINE hack. Things now seem to be
+ in order.
+
+ * tao/corba.h: Got all the frigging header *.i files #included in
+ the right order so that the GCC compiler stops complaining.
+
+ * tao/giop.cpp: We had method definitions that were defined inline
+ within the giop.h file. This was causing problems for GCC, which
+ kept warning that methods in the cdi.i file were being used before
+ being inlined. I've fixed this by creating a giop.i file.
+
+ * tao/corba.h: Add #include files should be prefixed by "tao/".
+ I've fixed this in the release.
+
+Tue Aug 12 16:23:17 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/any.i: Added a missing replace() method used by overloaded
+ operators.
+
+ * tao/{any,cdr}.h: Added conditional ACE_INLINE before the decl
+ for a few methods whose usage in other inlined methods appears
+ prior to their definition.
+
+ * tao/default_client.cpp: Eliminated names of unused arguments to
+ stop the compiler from complaining.
+
+ * tao/server_factory.cpp: Properly scoped return type names for
+ several methods.
+
+ * tao/{typecode,decode,deep_copy,debug}.cpp: Bracketed unused
+ variables with #if defined(TAO_NEEDS_UNUSED_VARIABLES)/#endif;
+ this leaves them around for right now in case they're important.
+
+ * tao/client_factory.i (connector): Properly scoped return type's
+ name.
+
+ * tao/{client_factory,default_client}.cpp: Added necessary
+ template instantiations.
+
+ * tao/{typecode,cdr}.h: Added conditional ACE_INLINE in front of
+ inlined methods to appease the compiler gods.
+
+ * tao/boa.cpp (dispatch): Declared argument unused to get rid of
+ warnings.
+
+ * tao/corbacom.h: Moved #include of sequence.h before the decl for
+ class CORBA.
+
+Sun Aug 10 10:58:21 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao/client_factory: Moved the template specializations from the
+ *.cpp file into the *.i file in order to get this stuff to link
+ without multiply defined symbols. Thanks to Brian Mendel for
+ giving me the idea to do this.
+
+ * tao/client_factory.cpp: Added a template specialization for
+ ACE_Hash_Addr.
+
+Sun Aug 10 08:56:20 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * CORBA_ to CORBA:: transformation complete. All the files in the
+ TAO/tao distribution have been affected. The most notable changes
+ are:
+ (1) A file called "tao/corba.h" is now the master file. All *.cpp
+ files include *just* this file and nothing else.
+
+ (2) "tao/corbacom.h" is the file that defines the CORBA namespace
+ i.e., class CORBA. Individual CORBA classes such as TypeCode, BOA,
+ etc are now defined inside the CORBA namespace. This will allow
+ users and developers to use CORBA::TypeCode as opposed to the
+ previous CORBA_TypeCode. Instead of nesting the classes, however,
+ we use typedefs to define individual CORBA classes inside class
+ CORBA e.g., typedef CORBA_TypeCode TypeCode;
+
+ (3) All *.i files are included at the end of "tao/corba.h" and
+ nowhere else. However, if __ACE_INLINE__ isnot defined, then each
+ individual *.i file is not yet included in their corresponding
+ .cpp file. This will be done next.
+
+ * TAO/tests/Demux_Test: Included code that tests various
+ demultiplexing strategies in TAO. At this point, however, the code
+ will not work because of changes in TAO. This will be done
+ next. A README file provides additional details.
+
+ * TAO/Benchmark: A suite of benchmarking tests have been
+ included. This is still in the preliminary stages of
+ development. The idea is to compare various aspects of CORBA such
+ as marshaling overhead, demux costs, throughput, latency, and
+ others for a range of ORBs including TAO. Since there are
+ differences in programming different ORBs, this suite tries to
+ abstract out all the common features or atleast provide a uniform
+ interface so that minimal efforts are required to port an
+ application from one ORB to another.
+
+ Benchmark/benchmark: This directory contains thecommon features
+ Benchmark/Marshal_Test: Tests marshaling overhead in 3 ORBs -
+ Orbix, VisiBroker, and TAO. More will be added. There are a few
+ problems getting DSI to work. The tech support at IONA and
+ VisiBroker have been contacted.
+
+Sat Aug 9 14:05:08 1997 Douglas C. Schmidt <schmidt@merengue.cs.wustl.edu>
+
+ * tao: Continued to clean up all the code so that it is more
+ consistent with ACE programming style.
+
+ * tao/orbconf.h: Cleaned up a lot of the unnecessary #defines.
+
+ * tao/default_server.h: Make sure we inherit from
+ TAO_Server_Strategy_Factory, not TAO_Server_Factory.
+
+ * tao/server_factory.cpp: Moved all the inline methods to be
+ non-inline since this code will always be dynamically bound.
+
+ * tao/client_factory.cpp: Cleaned things up a bit.
+
+Sat Aug 9 12:37:05 1997 Brian Mendel <brian.r.mendel@boeing.com>
+
+ * tao/corba.h: Deleted include for xdr.h from corba.h. xdr.h
+ is obsolete.
+
+ * tao/objtable.cpp: Deleted pragmas for instantiating ACE_Guard,
+ ACE_Read_Guard, and ACE_Write_Guard to eliminate duplicate
+ instantiations. The templates are instantiated by ACE. Can these
+ templates also be removed from the
+ ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION section as well?
+
+ * tao/default.bld: Added build file for VxWorks.
+
+ * tao/tao.bld: Added build file for VxWorks.
+
+Fri Aug 8 14:25:20 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/orbobj.*: Updated various methods to use the new
+ dynamically-linked strategy factories discussed below.
+
+ * tao/default_client.*: This file now contains the default client
+ strategy factory which is (a) dynamically linkable by the service
+ configurator and (b) can be configured by flags passed in via
+ service configurator.
+
+ * tao/client_factory.*: This file now contains the abstract base
+ class for the client strategy factory.
+
+ * tao/default_server.*: This file now contains the default server
+ strategy factory which is (a) dynamically linkable by the service
+ configurator and (b) can be configured by flags passed in via
+ service configurator.
+
+ * tao/server_factory.*: This file now contains the abstract base
+ class for the server strategy factory.
+
+ * tao/params.*: Renamed DEMUX_STRATEGY enum to TAO_Demux_Strategy
+ and put it at global scope instead of within TAO_OA_Parameters.
+
+ * tao/svc.conf.eg: Created this file to serve as an example of
+ various lines one might find in an application's svc.conf.
+
+Thu Aug 7 09:51:31 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * factories.cpp: Incorrect use of ACE_ASSERT in
+ TAO_Server_Factory::object_lookup_strategy removed.
+
+ * objtable.cpp: The octet sequence object key was being cast into
+ a char* resulting in undefined behavior at times due to the lack
+ of a NULL character to terminate it. Changes were made in the bind
+ and find methods of TAO_Active_Demux_Table.
+
+Thu Aug 07 03:52:31 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.8, released Thu Aug 07 03:52:31 1997.
+
+Thu Aug 7 00:43:14 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao/typecode.cpp: A couple of errors involving TAO_CONST crept
+ in when Brian checked in his code. I fixed these.
+
+Wed Aug 6 18:28:41 1997 Chris Cleeland <cleeland@swarm.cs.wustl.edu>
+
+ * tests/Cubit/TAO/clnt.cpp (main): Corrected the format
+ specifications when timing was printing out from %ld to %d. For
+ some reason this never caused a problem on other platforms.
+
+Wed Aug 6 17:27:44 1997 Brian R. Mendel <brian.r.mendel@boeing.com>
+
+ * tao/typecode.h: Removed qualified name in typecode.h to eliminate
+ compiler warnings by the GHS compiler. Line 297.
+
+ * tao/decode.cpp: Changed wchar_t* to CORBA_WChar* to eliminate
+ compiler errors on GHS compiler. Lines 142, 216, 729, 1371, and 1475.
+
+ * tao/typecode.cpp: Deleted unreachable break statements at lines
+ 429, and 477, 904, and 947.
+
+Wed Aug 6 16:31:29 1997 Chris Cleeland <cleeland@swarm.cs.wustl.edu>
+
+ * tao/*: Changed 'const' to 'TAO_CONST' in contexts where the
+ const didn't make sense. For example, this occurred in situations
+ where methods declared their return type as 'const CORBA_String',
+ which does not translate to 'const char*' but rather 'char*
+ const'.
+
+ * tao/corbacom.h: Added #define for TAO_CONST. See above for
+ explanation.
+
+ * tao/{connect,factories,giop,iiopobj,marshal,objtable,
+ optable,orbobj,roa}.cpp: Removed errant trailing semi-colon on all
+ the #pragma instantiate directives.
+
+Wed Aug 6 13:56:40 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/{connect,factories,giop,iiopobj,marshal,objtable,
+ optable,orbobj,roa}.cpp: Changed explicit template instantiations
+ to use the new ACE enabling macro as well as adding the #pragma
+ instantiate to placate Edison Design Group compilers.
+
+ * tao/cdr.h: Changed default for CDR CTOR marshal factory to
+ reflect the new name of the default marshal factory variable.
+
+ * tao/orbobj.cpp (CORBA_ORB_init): Inserted call to
+ TAO_Marshal::initialize().
+
+ * tao/marshal.*: Added TAO_Marshal class to scope static
+ initialization methods for the marshalling engine.
+ TAO_DEFAULT_MARSHAL_FACTORY has moved inside of this.
+
+Sun Aug 3 13:12:03 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tests/Cubit/TAO: Continued to improve the formatting of these
+ tests.
+
+Sat Aug 2 13:55:40 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tests/Cubit/TAO: Cleaned up some of the formatting so that
+ it is easier to read.
+
+Thu Jul 31 16:19:43 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/corba.h: Removed incorrect #include "tao/corba.h" in this
+ file. Bad form.
+
+Thu Jul 31 15:19:43 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/*.{h,i,cpp}: Changed all #include of specific
+ header files to include the application-level "tao/corba.h".
+
+ * tests/Cubit/TAO/Makefile (BIN): Removed test1_svr and test1_clnt
+ for now until we can get them working again. They stopped working
+ after the BOA API changed and the non-standard get_request()
+ method removed.
+
+ * tao/any.h: Inserted #includes which insure that this header file
+ is not position-dependent on other header files.
+
+ * tao/corba.h: Created this catch-all header file for APPLICATIONS
+ to use as a single entry point. Currently it just includes all
+ TAO header files, but will eventually be pared down to only those
+ headers which warrant public exposure.
+
+Wed Jul 30 16:55:02 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/typecode.i (CORBA_TypeCode): Re-ordered member
+ initialization to correspond to declaration order.
+
+ * tao/{typecode,orbobj,optable,decode,cdr}.cpp: Added explicit
+ typecast to CORBA_ULong/unsigned long to eliminate warnings about
+ comparisons btw. signed and unsigned entities.
+
+ * tao/optable.cpp (bind): Put in explicit return type for
+ TAO_Active_Demux_OpTable::bind().
+
+Wed Jul 30 14:18:02 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/Makefile: Corrected automatic definition of TAO_ROOT and
+ fixed all dependencies on tao header/inline files.
+
+ * tao/{typecode,object}.i: Moved a few methods to the beginning of the file
+ so that the compiler KNOWS that they are inlined when it hits the
+ first reference to them later in the file.
+
+ * tao/object.cpp: Added an end-of-line to silence a very picky SGI
+ compiler.
+
+Wed Jul 30 10:05:38 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao/connect.cpp: Removed a number of explicit template
+ instantiations that are already included in ACE.
+
+Wed Jul 30 14:20:18 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/boa.{i,h,cpp}: Removed the #include of "tao/objtable.h" and
+ instead moved the methods that needed it from boa.i to boa.cpp
+
+Wed Jul 30 13:58:02 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/boa.h: Added #include of "tao/objtable.h" since it is needed
+ in boa.i (which is included here when inlining is turned on)
+
+Wed Jul 30 10:05:38 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao/boa.h: Removed the #include of "tao/objtable.h" which seems
+ to be unnecessary and may cause problems for template
+ specialization.
+
+ * tao/iiopobj.i (IIOP_Object): Changed the second parameter to the
+ IIOP_Object constructor so that we can is a const
+ IIOP::ProfileBody &. This prevents a compiler warning.
+
+ * tao/typecode.cpp (private_id): Removed unused variable status.
+
+ * tao/objtable.cpp (bind): Removed the temp variable, which
+ was unused.
+
+Tue Jul 29 19:31:11 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao/boa.cpp (get_boa): Added casts of ACE_UINT32 so that we
+ don't have ambiguous calls to the constructor of ACE_INET_Addr.
+
+ * tao/deep_copy.cpp (deep_copy): Removed an unreachable return
+ value.
+
+Mon Jul 21 15:08:36 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * TAO version 0.0.7, released Mon Jul 21 15:08:36 1997.
+
+Mon Jul 21 12:06:16 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/object.cpp: removed the #include of object.i since it will
+ always be #included in object.h
+
+Thu Jul 17 16:54:38 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.6, released Thu Jul 17 16:54:38 1997.
+
+Thu Jul 17 16:43:23 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/{optable,objtable}.cpp: Updated the explicit template
+ instantiations at the end of these files to reflect the changes
+ that Andy made.
+
+Thu Jul 17 10:08:45 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu>
+
+ * tao/align.h: A very subtle error in "align_binary" was corrected. I
+ was assuming that align_binary is always called by
+ "ptr_align_binary". In the original inline function versions of
+ align_binary and ptr_align_binary, the function align_binary would
+ subtract 1 from the specified alignment that ptr_align_binary
+ provided. Since I assumed that "align_binary" would always be
+ called by "ptr_align_binary", I subtracted the 1 in
+ ptr_align_binary and passed the result to "align_binary". This
+ caused all sorts of problems for application code that directly
+ called "align_binary". This error has been fixed. The macros for
+ align_binary and ptr_align_binary are now exactly as the original
+ inline functions.
+
+ * tao/any.{h,cpp}: Added comments. In addition, in the code for
+ Any::replace, we check if "_value" exists before trying to
+ DEEP_FREE it. Otherwise this was resulting in a segmentation fault
+ violation.
+
+ * tao/boa.{h,i}: Added comments and changed "release" to CORBA_release
+
+ * tao/cdr.{h,cpp}: Added some comments and removed some stuff that was
+ under #if 0 .. #endif
+
+ * tao/corbacom.h: Added lots of comments for the CORBA_String_var class
+
+ * tao/decode.cpp: Made TAO_Marshal_Union::decode to work, added comments.
+
+ * tao/encode.cpp: Made TAO_Marshal_Union::encode to work, added comments.
+
+ * tao/factories.{h,cpp}: Added lots of comments. Removed "void
+ object_lookup_strategy" method since we do this in the parameters
+ class. Added code that will use a user defined lookup strategy if
+ the corresponding flag is set. This needs to be tested.
+
+ * tao/iiopobj.{i,cpp}: In the allocation and deallocation of the buffer
+ for object key, we now use "new/delete" instead of "malloc/free".
+
+ * tao/interp.cpp: commented out a line that decremented 4 from the
+ offset provided for indirected typecodes. I guess this was plain
+ hack to get some broken things to work.
+
+ * tao/objtable.{h,cpp}: Added lots of comments. Added code that will use
+ template specialization for the dynamic hashing case. In addition,
+ improved the destructors of the classes since previously, these
+ were not releasing occupied memory.
+
+ * tao/optable.{h,cpp}: Added lots of comments. Added template
+ specialization for dynamic hashing scheme. Made dynamic hashing
+ scheme the default. Added a new definition for "struct
+ TAO_operation_db_entry". The idea is that an IDL compiler will
+ generate a database of operations and their corresponding
+ skel_ptrs. Such a database is now passed to teh constructors of
+ the operation lookup tables. This way, only one instance of such
+ lookup tables can be shared by any number of objects implementing
+ the same interface.
+
+ * tao/params.{h,i,cpp}: Made dynamic hashing the default. Added a hook
+ by which users can supply their lookup strategies. *Needs testing*.
+
+ * tao/typecode.{h,i,cpp}: Added comments and many changes. The private
+ state's constructor now takes an argument that is a TCKind
+ representing the TypeCode kind of the object of which we are the
+ private state. Removed "child_free". Instead, we introduced a
+ destructor for the private state that frees all the
+ children. Another important change is to the constructor of the
+ TypeCode class. We pass a "parent" pointer, if any, to the
+ constructor. All children typecodes will share the octet buffer of
+ the parent. Only freestanding typecodes will allocate octet
+ buffers. We have a new data member called "non_aligned_buffer_"
+ because the buffer we allocate may not be aligned on a 4 byte
+ boundary. As a result, we may start using the buffer at a shifted
+ position to the right. However, we do not want to lose a handle to
+ the original buffer that was allocated because at the time of
+ freeing, this pointer needs to be freed.
+
+ * tests/Cubit/TAO: Modified a few files (method_db.i, cubitS.cpp)
+ so that they use the modified optable and objtable classes. Added
+ a README file to indicate how to run the example.
+
+ * tests/Thruput_test: Modified virtually all the files to make it
+ work with the latest TAO release and its include files. Also,
+ changes similar to Cubit were necessary due to changes in the
+ objtable and optable classes.
+
+Wed Jul 16 14:17:01 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu>
+
+ * tao/params.*: Eliminated unnecessary
+ ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES checks from
+ TAO_OA_Parameters (unnecessary b/c it's not a template). Also
+ corrected the type of TAO_OA_Parameters::ace_singleton_lock_.
+
+Wed Jul 16 11:34:36 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tao/boa.cpp: Removed some unused code.
+
+ * tao/compat/objbase.h: Added explicit check for prior inclusion
+ of ace/OS.h, with an error being produced if it's not included.
+ This will help keep me honest and remember to always include OS.h
+ beforehand, since I do most of my development on non-WIN32
+ platforms.
+
+ * tao/*.{h,cpp}: Added #include "ace/OS.h" before every inclusion
+ of <objbase.h>. This is required on WIN32 platforms because
+ objbase.h eventually ends up including <winsock.h>, which is the
+ wrong version of winsock from what ACE requires. Thus, by
+ including OS.h prior to objbase.h, objbase.h ends up not trying to
+ include a winsock header.
+
+ * tao/orbobj.cpp: Added missing #include for tao/debug.h.
+
+Wed Jul 16 10:55:55 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/PC_Install.bat: removed it since it isn't needed anymore
+
+ * tao/TAO.dsp: Changed include path and removed calling of
+ PC_Install.bat
+
+ * tests/Cubit/TAO/{client,server}.dsp: Changed include path
+
+Tue Jul 15 16:13:53 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tests/Cubit/TAO/cubitC.cpp: Added missing calls to Release()
+ after QueryInterface() calls. The tip-off that this wasn't
+ happening was the fact that, upon client exit, there were upwards
+ of 15 references to the object references. Now it's only 5-7
+ (more work to go).
+
+ * tests/Cubit/TAO/*: Changed all #include paths to be "tao/...".
+ Also, changes to orb.h (see below) obviated additional header
+ inclusion in certain files.
+
+ * tao/compat/*.h: Changed the guts of these files so that they
+ work more like their "real" counterparts in the VC++ 5.0. This
+ should encourage compatibility. Note that, unlike the previous
+ files, objbase.h MUST be included before initguid.h; this is
+ consistent with the model on WIN32.
+
+ * tao/*.{h,cpp}: Changed all #include paths to be "tao/...".
+ Also, changes to orb.h (see below) obviated additional header
+ inclusion in certain files.
+
+ * tao/giop.cpp: Removed get_request() crufty old code.
+
+ * tao/iiopobj.cpp: Backed out many prior special-code additions
+ for defining IIDs. Hopefully the need for these is negated by
+ changes elsewhere in the "compat" files.
+
+ * tao/object.cpp: Corrected the conditional compilation switch
+ used to determine if we define IID_IUnknown. This now happens
+ whenever WIN32 isn't defined, instead of before when it was only
+ on unix or vxworks platforms.
+
+ * tao/Makefile: Eliminated the need to copy files into a "proto/"
+ directory; now, everything is built into and used from the "tao"
+ directory.
+
+ There is also a new, optional, environment
+ variable--TAO_ROOT--which should be set to the ".../TAO"
+ directory. If it's not set, the Makefile will set it to
+ WRAPPER_ROOT/TAO.
+
+ Lastly, libcorba.* has changed to libTAO.*.
+
+ * tao/orb.h: Eliminated many header files which had been
+ explicitly included here and were causing all manner of problems
+ with circular includes. Library components must now be careful to
+ include appropriate headers for all components they use, and we
+ will likely have to create a corba.h file for clients to use.
+
+Fri Jul 11 12:12:40 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/TAO.dsp: changed to use ace-r.dll in the release
+ version
+
+ * tests/Cubit/TAO/{client,server}.dsp: changed to use ace-r.dll
+ and tao-r.dll for the release versions.
+
+Thu Jul 10 15:47:24 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * docs/: Removed the following obsolete files: README.apm,
+ BUILDING, and TESTS.
+
+ * tao/params.*: Moved the instance() methods into the .cpp from
+ the .i, as well as the declaration for the singleton locks.
+ Having the singleton locks declared in the .i file caused much
+ consternation when ACE inlining was turned on.
+
+ * tao/iiopobj.cpp: #ifdef'd the IID_STUB_Object declaration added
+ a few days ago so that it happens one way on NT, and another in
+ the rest of the Universe. I would have preferred to find a more
+ general solution, but didn't find one quickly enough to satisfy my
+ current requirements.
+
+ * tao/roa.*: Removed get_request() method. This should improve
+ our McCabe scores ;-)
+
+ * tao/boa.h: Removed get_request() method.
+
+Wed Jul 9 14:44:31 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * TAO-Install: Added installation instructions for NT
+
+Tue Jul 8 20:52:06 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/PC_Install.bat: Made it very quiet.
+
+ * tao/params.{cpp,h,i}: Changed TAO_OA_PARAMS from a
+ ACE_Singleton to a plain singleton by just integrating the
+ ACE_Singleton code into the class.
+
+Tue Jul 8 14:27:47 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/except.h: added ACE_Svc_Export to SYSEX macro
+
+ * tao/iiopobj.cpp: changed declaration of IID_STUB_Object
+ to include ACE_Svc_Export
+
+ * tao/stub.h: added ACE_Svc_Export to IID_STUB_Object
+
+Tue Jul 8 12:44:14 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/orbobj.cpp: Put the "*" in before the comment since it is
+ supposed to be there. Put a space between it and the comment
+ to get rid of the warning which VC was giving originally.
+
+Tue Jul 8 10:21:27 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * tao/typecode.cpp: Changed a few loop counters from int to
+ CORBA_ULong to get rid of unsigned/signed comparison warnings
+
+ * tao/orbobj.cpp: Got rid of a "*" before a comment. Looked like
+ a typo
+
+ * tao/PC_Install.bat: Replaced "#...." with "rem ...."
+
+Mon Jul 7 20:59:05 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tests/Cubit/TAO/test1_{svr,clnt}.cpp (main): Added template
+ specialization code and updated the formatting. Thanks to Arturo
+ Montes <mitosys@colomsat.net.co> for reporting this.
+
+ * tests/Cubit/TAO/test1_svr.cpp (main): Added the -i options to
+ getopt(). Thanks to Arturo Montes <mitosys@colomsat.net.co> for
+ reporting this.
+
+ * TAO/tao/orbconf.h (SIZEOF_LONG_DOUBLE): Added a
+ #define for M_UNIX. Thanks to Arturo Montes
+ <mitosys@colomsat.net.co> for reporting this.
+
+Sun Jul 06 02:37:24 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.5, released Sun Jul 06 02:37:24 1997.
+
+Sun Jul 6 00:10:28 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao: Fixed all the code so that we put ACE_MT around all the
+ ACE_GUARD_RETURN macros.
+
+ * tao: Updated all of TAO to make sure we use [] when deleting
+ arrays in order to avoid memory leaks. This looks like lots of
+ sloppiness left over from the original SunSoft IIOP code.
+
+Sat Jul 5 16:12:31 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * tao/{any,iiopobj,nvlist,principa,request,roa,svrrqst,typecode}.cpp:
+ Fixed a double-deletion of a lock.
+
+ * tao/typecode.i: Cleaned up lots of minor warnings with the code
+ that are only revealed when running GCC. The code should now
+ compile almost completely cleanly with -wall.
+
+ * tao/typecode.{i,h}: Changed the name of TC_PRV_State to
+ TC_Private_State.
+
+ * tao: Replaced ACE_Thread_Mutex with ACE_SYNCH_MUTEX so that the
+ code will compile on non-threaded and threaded platforms alike.
+
+ * tao/marshal.cpp: Added template specializations for the Marshal
+ primitives. Thanks to Arturo Montes <mitosys@colomsat.net.co> for
+ reporting this.
+
+ * tao/Makefile (LDLIBS): Replaced -lcorba with -lACE so that we no
+ longer have problems with circular link dependencies. Thanks to
+ Arturo Montes <mitosys@colomsat.net.co> for reporting this.
+
+Sat Jul 05 13:25:23 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * TAO version 0.0.4, released Sat Jul 05 13:25:23 1997.
+
+Sat Jul 5 12:39:57 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao: All throughout TAO I removed the direct use of system
+ include files in lieu of using ace/OS.h.
+
+ * tao/{orbobj,typecode}.cpp: orb.h must be included before others
+ include files. Previous includes prevent correct use of ACE config
+ flags, therefore, I removed them. Thanks to Arturo Montes
+ <mitosys@colomsat.net.co> for reporting this.
+
+ * tao/{debug,roa}.cpp: changed _POSIX_THREADS to ACE_HAS_PTHREADS.
+ Thanks to Arturo Montes <mitosys@colomsat.net.co> for reporting
+ this.
+
+ * tao/decode.cpp (decode): The casting (CORBA_ULong) kind is
+ unnessary and wrong so I removed it. Thanks to Arturo Montes
+ <mitosys@colomsat.net.co> for reporting this.
+
+ * tao/debug.cpp (emit_prefix): Changed line 99 from
+
+ #define emit_prefix (stream) ...
+
+ to
+
+ #define emit_prefix(stream) ...
+
+ The blank character prevent after macro name (emit_prefix) prevent
+ correct definition. Thanks to Arturo Montes
+ <mitosys@colomsat.net.co> for reporting this.
+
+Sat Jul 5 01:04:24 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * TAO/tao/xdr.cpp: Removed unistd.h and string.h from the xdr.cpp
+ file since those aren't necessary. Thanks to Arturo Montes
+ <mitosys@colomsat.net.co> for reporting this.
+
+Fri Jul 4 00:18:21 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * tao/roa.h: Removed derogatory COMments ;-). Thanks to Anton van
+ Straaten <anton@appsolutions.com> for reporting this.
+
+Thu Jul 3 16:16:14 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * Added ACE_Svc_Export to a couple of declarations to make NT
+ happier
+
+Thu Jul 3 13:43:20 1997 Darrell Brunsch <brunsch@cs.wustl.edu>
+
+ * Added Visual C++ 5.0 project and workspace files for the TAO
+ library and Cubit test
+
+Wed Jul 2 12:44:42 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * TAO/tests: Moved tests from TAO/IIOP/tests to TAO/tests
+
+Wed Jul 02 00:20:28 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+
+ * Compiled the first alpha release of TAO on Solaris just
+ to make sure it still works. So far, so good... hence,
+ the first alpha release is out the door!
+
+Tue Jul 1 23:35:53 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * VERSION: Added a VERSION file, starting at version 0.0.0...
+
+Tue Jul 1 23:00:15 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * Added a new tests directory with the Cubit and TTCP
+ examples. The older test directory will be deleted soon.
+
+ In addition, the tc_constants in the tc_constants.cpp file are
+ declared with an ACE_Svc_Export to make the Win NT compiler
+ happy. Extern declarations in typecode.h had the same changes.
+
+ * Updated the PC_install.bat file. In addition, there was one more
+ warning in typecode.cpp (Win NT compiler) that was fixed. Finally,
+ in the the tc_const.cpp file, the ACE_Svc_Export was used
+ accidently. This has been fixed.
+
+ * A number of files were updated with ACE_Svc_Export so that
+ variables and classes do not remain unresolved for Win32
+ platform. Similarly, Irfan had sent me a list of warnings that the
+ Win NT compiler was giving. These are fixed.
+
+ * marshal.*: Changed the way make_marshal_object works. Instead of
+ having a switch statement, we index into a private table of
+ marshal objects using the TypeCode _kind field. MarshalFactory now
+ maintains this private table.
+
+Mon Jun 30 17:39:02 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * Added a new README file and a COPYING file that explains the
+ contents of TAO and clarifies its copyright status.
+
+Sun Jun 29 10:06:50 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * marshal.*: Added CORBA_Environment as a parameter to
+ make_marshal_object factory method. The reason for doing this was
+ to enable inlining of the CDR::encode and CDR::decode methods.
+
+ * typecode.*: Changed the way typecodes get deleted. Constant
+ typecodes are now owned by the ORB and their private state freed
+ when the ORB dies. IDL generated typecodes are not owned by the
+ ORB and are the only ones whose refcount matters. Typecodes
+ belonging to the IDL generated typecodes are also not owned by the
+ ORB and there is no effect on their refcount. They get freed only
+ if the parent is destroying itself.
+
+ In typecode.i, methods such as length and content_type were not
+ getting inlined due to presence of switch statements. Converted to
+ if/else.
+
+ * interp.cpp: Bug fix: Had previously forgotten to update the
+ size/alignment of the private state of the typecode.
+
+Fri Jun 27 14:27:49 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * any.cpp: The deep_copy and deep_free optimizations applied. In
+ the previous release, I had forgotten to add these to the Any
+ constructor (that calls deep_copy) and Any destructor/replace
+ (that call deep_free).
+
+ * connect.cp, factories.cpp: Added code that hardcodes the socket
+ buffer sizes to 64K. This is a hack for the time being.
+
+Thu Jun 26 10:02:47 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu>
+
+ * Some more progress on IDL compiler. Generates the client and
+ server side files without much contents in it.
+
+Thu Jun 26 09:49:38 1997 Aniruddha Gokhale <gokhale@merengue.cs.wustl.edu>
+
+ * Added a full range of optimizations to the TAO IIOP interpretive
+ marshaling engine. The static methods encoder and decoder have
+ been removed from the CDR class. Instead, separate classes for
+ marshaling have been created for each individual data type. The
+ CDR stream maintains a factory that returns an appropriate
+ marshaling object depending on the data type to be
+ marshaled. Files added include marshal.h, marshal.i, encode.cpp,
+ decode.cpp, deep_free.cpp, and deep_copy.cpp. The marshal.h file
+ defines classes for an abstract MarshalObject. The factory is
+ responsible to return a concrete specialized instance of the
+ MarshalObject.
+
+ * Updated the CORBA_TypeCode class so that it now provides all the
+ CORBA_2.0 compliant operations. These include length(),
+ content_type(), member_type(), member_label(),
+ discriminant_type(), id(), default_index(). The equal() operations
+ is still not implemented. In addition, precomputation
+ optimizations are applied to the TypeCode class. This includes
+ precomputing various parameters (if any) of a TypeCode. For
+ example, a struct TypeCode keeps track of the member count and
+ member types. As a result, it is not necessary to interpret the
+ CDR encapsulated stream to retrieve these parameters.
+
+ * At this time, there are some problems getting the Unions to work.
+
+Thu Jun 12 15:45:49 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/objtable.cpp: Added explicit template instantiations
+ for ACE_Hash_Map_Manager<>.
+
+ * IIOP/lib/giop.*: Finally got rid of all those methods that took
+ ACE_HANDLE as the argument. Now, all those operate on
+ ACE_SOCK_Streams.
+
+Thu Jun 5 10:15:21 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/giop.cpp: Corrected output format in error message.
+
+Thu Jun 5 10:09:01 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu>
+
+ * IIOP/test/svr.cpp: Added a new class to catch SIGINT and
+ terminate. This was necessary to Quantify the server process.
+
+ * IIOP/lib/orbobj.h: Added ACE_INLINE to forward decls of
+ CORBA_release() and CORBA_is_nil().
+
+Wed May 23 14:39:01 1997 Brian Mendel <bmendel@mdc.com>
+
+ * IIOP/lib/objtable.{h,cpp}: Added template specialization of
+ ACE_Hash_Map_Manager for char*'s.
+
+ * IIOP/test/cubitS.cpp: Fixed type_id to be of type CORBA_String_var.
+ Also, added a debug msg to print the object address to show the
+ object for which the request is made.
+
+ * IIOP/test/svr.cpp: Added capability to create multiple Cubit
+ objects via command line options. Added -n for number of objects and
+ -k for specifying a base name. For instance, -k Beevis -n 2 creates
+ Beevis1 and Beevis2 objects. The clnt can then specify a specific
+ object for the request as usual.
+
+Wed May 22 12:28:45 1997 Brian Mendel <bmendel@mdc.com>
+
+ * IIOP/test/clnt.cpp: Deleted VxWorks specific sections. Command
+ line is now working for VxWorks.
+ * IIOP/test/svr.cpp: Deleted VxWOrks specific sections. Command line
+ is now working for VxWorks.
+
+Wed May 22 11:31:42 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/test/svr.cpp: Added better error checking and messages, and
+ performed general re-formatting.
+
+ * IIOP/test/method_db.i (initialize_method_db): Changed arg type
+ to use a pointer to the abstract class TAO_Operation_Table.
+
+ * IIOP/test/cubitS.cpp (_skel_Cubit::_skel_Cubit): Added better
+ error checking and messages. Also defaulted to use the linear
+ object table implementation rather than the hashed to simplify
+ debugging.
+
+ * IIOP/test/clnt.cpp: Moved some code around so that more of the
+ code is common is less is specific to VxWorks and other platforms.
+ Also did general re-formatting.
+
+ * IIOP/lib/optable.cpp (TAO_Linear_OpTable::find): Initialization
+ of the loop variable makes the loop work properly.
+
+ * IIOP/lib/objtable.cpp (TAO_Dynamic_Hash_ObjTable::find):
+ Explicitly specified length of object key in CTOR for ACE_CString
+ because object keys are not zero-terminated.
+
+ * IIOP/lib/giop.cpp: Added newlines to the end of all ACE_DEBUG()
+ messages.
+
+ * IIOP/lib/factories.cpp: Added template specializations for
+ ACE_Hash_Addr<ACE_INET_Addr, TAO_Client_Connection_Handler>.
+
+Tue May 22 09:32:41 1997 Brian Mendel <bmendel@mdc.com>
+
+ * IIOP/lib/cdr.h: Deleted #define old_value ACE_INLINE and
+ #define ACE_INLINE old_value lines. Added #undefs for ACE_INLINE
+ prior to redefines. Changes required to compile on Windows NT.
+
+Tue May 20 14:47:46 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/test/cubitS.h: Removed forward decl of
+ TAO_Active_Operation_Table.
+
+ * IIOP/test/{cubitC,cubitS}.*: Changed include quoting characters
+ from [<>] to double-quotes.
+
+ * IIOP/test/Makefile: Removed cubit.o from clnt and svr target
+ (this has been subsumed by cubit[CS]).
+
+ * IIOP/lib/optable.h: Changed ACE_RW_Mutex to ACE_SYNCH_RW_MUTEX.
+
+ * IIOP/lib/optable.cpp: Inserted explicit template instantiations.
+
+ * IIOP/lib/Makefile: Added optable to the Makefile.
+
+ * IIOP/lib/optable.cpp: Moved ~TAO_Operation_Table() into here.
+
+ * IIOP/lib/object.i: Moved find() and bind() into the cpp file.
+ Moved ~TAO_Operation_Table() into optable.cpp.
+
+Tue May 20 14:39:00 1997 Brian Mendel <bmendel@mdc.com>
+
+ * IIOP/test/*: Commited changes to Cubit Example as a current snapshot
+ of required changes.
+
+ * IIOP/lib/*: Changes required for header file includes. Added
+ conditionals around _IIOP_BUILD_
+
+Tue May 20 13:55:58 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu>
+
+ * IIOP/test/*: Commited this stuff in-process so that Brian
+ M. doesn't have to duplicate effort.
+
+Tue May 20 13:04:00 1997 Brian Mendel <bmendel@mdc.com>
+
+ * IIOP/lib/debug.cpp: Deleted spaces between flockfile (f) and
+ funlockfile (f). Changed instances of debug_filter to
+ TAO_debug_filter. Deleted space between emit_prefix (stream).
+
+ * IIOP/lib/cdr.cpp Added undef(s) for ACE_INLINE and
+ do_undef_on_ACE_INLINE to eliminate redefinition problems.
+
+
+Tue May 20 10:55:09 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/cdr.h: Fixed the automatic inclusion of cdr.i into
+ cdr.h by checking to see if __ACE_INLINE__ is not defined and, if
+ so, defining ACE_INLINE to be "inline" (we tidy up the namespace
+ immediately after the inclusion of cdr.i, too). See source for
+ comments regarding why this is done.
+
+ * IIOP/lib/optable.cpp (TAO_Linear_OpTable_Entry): Removed setting
+ of opname and skel_ptr to zero in CTOR since the CTOR for those
+ already insures this. Moreover, NT's compiler was complaining
+ about ambiguous resolutions.
+
+ * IIOP/lib/{orbobj,giop,debug,boa}.cpp: Fixed reference to
+ debug_level so it's TAO_debug_level.
+
+ * IIOP/lib/object.h: Replaced inclusion of optable.h with forward
+ decl of TAO_Operation_Table.
+
+ * IIOP/lib/optable.cpp: Fixed names of methods that were changed
+ in the header but never changed in the source. Amazing that
+ neither g++ nor Sun C++ caught these gaffs! (Finally, the NT
+ compiler wins).
+
+ * IIOP/lib/{orbobj,object}.h: Changed the forward decls of
+ CORBA_release() and CORBA_is_nil() so that they are only in effect
+ when inlining is NOT being used.
+
+ * IIOP/lib/giop.cpp: Fixed incorrect passing of an object to
+ ACE_DEBUG() where an int is expected.
+
+Mon May 19 17:16:34 1997 Chris Cleeland <cleeland@merengue.cs.wustl.edu>
+
+ * IIOP/lib/roa.cpp: Explicit cast rids us of a warning.
+
+ * IIOP/lib/params.h: Fixed CTOR name. Once again I'm surprised
+ G++ didn't catch this.
+
+ * IIOP/lib/optable.h: Corrected erroneous method signature on
+ bind().
+
+ * IIOP/lib/objtable.cpp: Corrected erroneous method signature on
+ TAO_Linear_ObjTable::bind().
+
+ * IIOP/lib/{object,orbobj}.h: Forward declaration of
+ CORBA_release(CORBA_Object_ptr) and CORBA_is_nil(CORBA_Object_ptr)
+ were commented out. I think this will cause a problem when we
+ DON'T inline, but I'll cross that bridge later.
+
+ * IIOP/lib/{orb,factories}.h: Made inclusion of some headers
+ conditional on the compilation phase (building the library or an
+ application).
+
+ * IIOP/lib/cdr.i: Removed incorrect default arguments (g++ didn't
+ catch them).
+
+ * IIOP/lib/Makefile: Removed thread from the header list.
+
+Mon May 19 10:07:00 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/optable.cpp: Changed implementation of the operation
+ table and the parameters repository so that they use the right
+ class names.
+
+Sat May 17 17:18:38 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * First pass at providing a backend to the SunSoft's CORBA IDL
+ compiler front end.
+
+Fri May 16 17:30:31 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/svrrqst.*: Corrected some comments, adjusted some
+ argument type names to reflect their new, namespace-sanitized
+ names, and moved short methods into a new inline file.
+
+ * IIOP/lib/stub.h: Corrected some comments and adjusted some
+ argument type names to reflect their new, namespace-sanitized
+ names.
+
+ * IIOP/lib/roa.cpp: Corrected syntax error and fixed up typedef.
+
+ * IIOP/lib/params.*: Removed extraneous comments and fixed
+ argument type on demux_strategy().
+
+ * IIOP/lib/orbobj.*: Added comments, removed static pointer to
+ the ORB.
+
+ * IIOP/lib/optable.h: Removed extraneous comments and fixed
+ typedefs.
+
+ * IIOP/lib/objtable.cpp: Fixed some syntax errors introduced by
+ reformating.
+
+ * IIOP/lib/object.cpp: Adjusted some argument type names to
+ reflect their new, namespace-sanitized names.
+
+ * IIOP/lib/invoke.cpp: Removed crufty #includes and adjusted some
+ argument type names to reflect their new, namespace-sanitized
+ names.
+
+ * IIOP/lib/iioporb.*: Moved short methods into inline file, added
+ IIOP_ORB_ptr typedef, and changed data member to conform to ace
+ standards.
+
+ * IIOP/lib/iiopobj.*: Added the second CTOR that I forgot last
+ time and adjusted some argument type names to reflect their new,
+ namespace-sanitized names.
+
+ * IIOP/lib/giop.h: Added comments for various enums and
+ structures.
+
+ * IIOP/lib/giop.cpp: Switched various GIOP::Invocation methods to
+ use handler_->peer() for socket communication rather than going
+ through a file descriptor. Also began the arduous (no other word
+ could explain it!) process of converting the homegrown debugging
+ message macro uses into ACE_DEBUG() uses.
+
+ * IIOP/lib/factories.*: Added explicit DTOR for TAO_Client_Factory
+ and completed all the darn explicit template instantiations.
+ Changed 'Svc_Handler' to 'TAO_Client_Connection_Handler', and
+ added the forgotton TAO_Client_Factory::connector() method.
+
+ * IIOP/lib/debug.*: Added 'TAO_' prefix to global debug state
+ variables and removed crufty #includes.
+
+ * IIOP/lib/connect.cpp: Change ROA_Handler to
+ TOA_OA_Connection_Handler (missed these the last time through).
+
+ * IIOP/lib/cdr.cpp: Added responsive commentary.
+
+ * IIOP/lib/boa.cpp: Added comments to the dispatching code.
+
+ * IIOP/lib/{any,boa,request,typecode}.cpp: Removed references to
+ thread.h/connmgr.*.
+
+Thu May 15 19:08:16 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * Finished updating all the reformatting.
+
+Thu May 15 15:54:49 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/principa.h: Corrected syntax error which eliminated the
+ _refcount data member.
+
+ * IIOP/lib/{params,roa}.*: Updated class names to reflect ROA -->
+ TOA_OA pseudo-namespace change.
+
+ * IIOP/lib/orbobj.*: Updated CORBA_ORB_init() to return pointer to
+ new ORB singleton.
+
+ * IIOP/lib/orb.h: Commented out some include files to eliminate
+ wierd circular dependencies.
+
+ * IIOP/lib/optable.h: Moved TAP_Operation_Table into here. Put
+ OpTable* classes into the TAO_Operation_Table* pseudo-namespace.
+
+ * IIOP/lib/objtable.*: Moved TAO_Object_Table into here. Moved
+ the Entry classes out of the scope of their respective concrete
+ operation tables, so they're now named <concrete_table>_Entry.
+
+ * IIOP/lib/object.*: Moved TAO_Operation_Table into optable.*, and
+ added a data member which carries a pointer to the ORB with which
+ the object is associated.
+
+ * IIOP/lib/iioporb.*: Added a singleton typedef for the ORB which
+ is what CORBA_ORB_init() will now return. Modified
+ string_to_object() so that it sets the ORB on the CORBA_Object
+ that it returns.
+
+ * IIOP/lib/{iiopobj,nvlist}.h: Added some responsive commentary.
+
+ * IIOP/lib/giop.cpp: Modified connection establishment code in
+ GIOP::Invocation::start() to utilize the client connection manager
+ in the ORB.
+
+ * IIOP/lib/giop.h: Put a TAO_Client_Connection_Handler* into
+ GIOP::Invocation in place of the client_endpoint.
+
+ * IIOP/lib/factories.*: Updated explicit template instantiations,
+ added TAO_Client_Connection_Handler.
+
+ * IIOP/lib/connect.*: Renamed things--ROA_Parameters -->
+ TOA_OA_Parameters, ROA_Handler --> TOA_OA_Connection_Handler.
+
+ * IIOP/lib/boa.h: Moved TAO_Object_Table into objtable.*, added
+ comments where appropriate.
+
+ * IIOP/lib/{any,cdr,iioporb,invoke}.*: Re-formatting and creation
+ of inline method file.
+
+Tue May 13 21:51:22 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * Continued to update the format of the TAO source code so that it
+ will be consistent with the style used in ACE.
+
+Mon May 12 17:02:29 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/roa.*: Moved short method into an inline file.
+ Miscellaneous reformatting. Adjustment to new type names
+ (prefaced by TAO_ for namespace protection).
+
+ * IIOP/lib/object.*: Moved short methods into an inline file.
+ Changed lookup()/register_op() to find()/bind() for consistency
+ with established ACE APIs. Miscellaneous reformatting.
+
+ * IIOP/lib/iiopobj.*: Moved short methods into an inline file.
+ Added CTOR for IIOP::Version and IIOP::ProfileBody. Added
+ convenience CTOR for IIOP_Object where the profile can be
+ supplied. Miscellaneous reformatting.
+
+ * IIOP/lib/boa.*: Moved short methods into an inline file. Changed
+ lookup()/register_obj() to find()/bind() for consistency with
+ established ACE APIs.
+
+ * headers: Added comments to force C++ mode in emacs for header
+ files, and changed SCCS version tag info to RCS version tag info.
+
+Wed May 7 14:49:46 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * IIOP/lib/corbacom.cpp: Some bugs from the CORBA_String_var class
+ have been fixed. Thanks to Brian Mendel for noticing these.
+
+ * IIOP/lib/boa.cpp: In CORBA_BOA::dispatch, the opname local
+ variable of type CORBA_String_var is changed to be of type
+ CORBA_String. This was because the String_var class would assume
+ ownership of the quantity assigned and delete it. Thanks again to
+ Brian Mendel for noticing this.
+
+Tue May 6 14:06:49 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * IIOP/lib/boa.hh: the register_obj's 2nd argument is changed from
+ CORBA_Object_ptr& to CORBA_Object_ptr
+
+ * IIOP/lib/object.hh: the return type for register_op method on
+ CORBA_Object is changed from void to int to be consistent.
+
+ Added a new method "get_subclass" to CORBA_Object that returns a
+ pointer to the subclass. Typeically, this would be pointer to an
+ object that implements an interface.
+
+ * IIOP/lib/objtable.{hh,cpp}: @nd argument of register_obj changed
+ from CORBA_Object_ptr& to CORBA_Object_ptr.
+
+ * IIOP/lib/orb.hh: the type signature of "skeleton" is changed to
+ take CORBA_Object_ptr rather than CORBA_Object_ptr& as its 2nd argument.
+
+Mon May 5 20:28:54 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * IIOP/lib/boa.cpp: commented out code that uses the "void
+ *context" field. It doesn't make any sense to have it.
+
+ * IIOP/lib/boa.hh: Added 2 pure virtual methods (shutting_down and
+ clean_shutdown).
+
+ In addition, the "register_obj" method was added. It was missing before.
+
+ * IIOP/lib/corbacom.cpp: String_var's constructor bug is fixed. It
+ was trying to free storage that was never allocated.
+
+ * IIOP/lib/iiopobj.{hh,cpp}: Added a method - "get_name" that
+ retrieves the object name.
+
+ * IIOP/lib/object.{hh,cpp}: Added a method - "get_name" that
+ retrieves the object's name or key. This is for debugging purposes.
+
+ * IIOP/lib/orbobj.cpp: There was an infinite loop in parsing the
+ options to BOA_init. Fixed.
+
+ * IIOP/lib/stub.hh: Added the "get_name" virtual method.
+
+Sat May 3 22:45:23 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * IIOP/lib/boa.cpp: Added code temporarily that invokes the
+ skeleton that is looked up. We still need to add code that will
+ handle the case when no match is found on the operation names.
+
+ * IIOP/lib/boa.hh: The register_obj method on TAO_Object_Table
+ now returns an integer indicating status of registering (-1 =>
+ failure, 0 for success).
+
+ * IIOP/lib/object.hh: The register_op method on
+ TAO_Operation_Table now returns an integer code (O for success, -1
+ for failure).
+
+ * IIOP/lib/objtable.{hh,cpp}: The register_obj method returns an
+ integer code representing either success or failure.
+
+ * IIOP/lib/optable.{hh,cpp}: Added new files that implement
+ concrete strategies for operation name lookup.
+
+Fri May 2 08:48:29 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * IIOP/lib/object.hh: Modified the signature of register_op on
+ TAO_Operation_Table to take a second argument to be a pointer to
+ the actual skeleton.
+
+ Thanks to Brian Mendel for reporting this.
+
+Thu May 1 16:46:11 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * IIOP/lib/object.{hh,cpp}: Added a method that can set the parent
+ pointer.
+
+ * IIOP/lib/params.cpp: A hook has been provided in ROA_Factory to
+ enable the user to use a user-defined demux strategy.
+
+Wed Apr 30 22:00:51 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * IIOP/lib/objtable.{hh,cpp}: Added two new files that define
+ different object demultiplexing strategies.
+
+ * IIOP/lib/Makefile: Added objtable as additional source file to compile.
+
+ * IIOP/lib/boa.cpp: Provided the default destructor for the
+ TAO_Object_Table.
+
+ * IIOP/lib/boa.cpp: Provided the default destructor for the
+ TAO_Operation_Table.
+
+ * IIOP/lib/orbobj.cpp: Added support for the -OAtablesize option
+ in the call to CORBA_ORB::BOA_init method.
+
+ * IIOP/lib/params.{hh,i,cpp}: Added support to ROA_Factory to return
+ a specific object lookup strategy.
+
+ *IIOP/lib/roa.cpp: The ROA constructor initializes its "objtable_"
+ private data member with the object lookup strategy returned by
+ ROA factory.
+
+Tue Apr 29 11:52:48 1997 Aniruddha Gokhale <gokhale@mambo.cs.wustl.edu>
+
+ * IIOP/lib/any.hh: Moved CORBA_Any_ptr declaration to orb.hh.
+
+ * IIOP/lib/boa.{hh,cpp}: Renamed BOA to CORBA_BOA. The CORBA_BOA class
+ maintains a pointer to an abstract TAO_ObjectTable class. Concrete
+ classes inheriting from TAO_ObjectTable will provide strategies
+ for lookup.
+
+ Added virtual functions to do dispatch based on object key. In
+ addition, added a lookup method based on object key that delegates
+ the task of looking the object to the object table it maintains.
+
+ Changed the signature of typedef CORBA_BOA::dsi_handler to be pointer to
+ member function of class CORBA_BOA. Eventually, this will point to
+ the dispatch method of class CORBA_BOA.
+
+ Moved "struct Dispatch_Context" from roa.hh to boa.hh since we
+ want BOA to be a full fledged OA eventually and not remain an
+ abstract class as it is now. All other OA's such as ROA inherit
+ from BOA and only add extra functionality.
+
+ * IIOP/lib/connect.cpp: There was a syntax error (missing comma)
+ in one of the ACE_DEBUG statements which has been fixed.
+
+ * IIOP/lib/corbacom.{hh,cpp}: Added class CORBA_String_var as well
+ as the CORBA compliant CORBA_string_dup.
+
+ * IIOP/lib/except.hh: Moved CORBA_Exception_ptr declaration to orb.hh.
+
+ * IIOP/lib/object.hh: Added an abstract class
+ TAO_Operation_Table. CORBA_Object maintains a pointer to this
+ abstract class. The IDL compiler will eventually generate concrete
+ classes that employ different lookup strategies for operation name
+ lookup.
+
+ * IIOP/lib/orb.hh: Added forward declarations to all CORBA_*
+ classes. In addition, moved all the CORBA_*_ptr declarations here.
+
+ * IIOP/lib/orbobj.{hh,cpp}: Added the CORBA compliant BOA_init
+ method to class CORBA_ORB. Users can now pass arguments to
+ BOA_init. Eventually, we want to make this method return any of
+ the specialized OA's depending on the arguments. Right now, we get
+ a pointer to the ROA.
+
+ * IIOP/lib/params.{hh,i}: Added some more methods and enum
+ declarations to the ROA_PARAMS singleton.
+
+ * IIOP/lib/principa.hh: Moved the CORBA_Principal_ptr declaration
+ to orb.hh.
+
+ * IIOP/lib/roa.{hh,cpp}: Moved some functionality to boa.hh. ROA
+ is now only a specialized form of BOA.
+
+ * IIOP/lib/stub.hh: Moved the typedef for "skeleton" to orb.hh.
+
+ * IIOP/lib/svrrqst.{hh,cpp}: Had to rename BOA to CORBA_BOA.
+
+ * IIOP/lib/typecode.hh: Moved the CORBA_TypeCode_ptr declaration
+ to orb.hh.
+
+Tue Apr 22 23:30:19 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/connect.cpp (open): Added log message.
+
+ * IIOP/lib/params.cpp (concurrency_strategy): Uses reactive
+ strategy when appropriate.
+
+ * IIOP/lib/params.hh: Reactive strategy added.
+
+Tue Apr 22 21:03:15 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu>
+
+ * IIOP/lib/giop.cpp: Changed erroneous ACE_GUARD calls to ACE_GUARD_RETURN
+ calls.
+
+Tue Apr 22 16:15:52 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/lib/roa.cpp: Removed more POSIX thread calls.
+
+ * IIOP/lib/invoke.cpp: Changed ForceSynchronousCancellation to
+ ACE_Synchronous_Cancellation_Required and made it use the ACE_OS
+ calls.
+
+ * IIOP/lib/{typecode,svrrqst,request,principa,orbobj,nvlist,iiopobj,giop,except,any}.*:
+ Removed all vestiges of pthread mutexes...they are now
+ ACE_Thread_Mutexes. This will likely have to change if we want to
+ compile something completely devoid of threads, but that's another
+ day. Also, the mutexes have moved from being globals to being
+ members on the respective classes. No files should be dependent
+ on thread.hh any longer.
+
+ * IIOP/lib/connect.cpp (open): Removed code obsoleted by use of
+ the Strategy_Acceptor.
+
+ * IIOP/lib/{roa.cpp,connect.cpp},IIOP/tests/svr.cpp: Changes to
+ use new singletons described below.
+
+ * IIOP/lib/params.*: Changed ROA_Parameters and ROA_Factory to use
+ ACE_Singleton<>. The singleton types are now named ROA_PARAMS and
+ ROA_FACTORY.
+
+Mon Apr 21 23:44:34 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * IIOP/lib/roa.cpp (ROA): Changed spelling of clientAcceptor_ to
+ client_acceptor_ to be consistent with ACE style conventions.
+
+Mon Apr 21 10:52:42 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/test/clnt.cpp: Moved call to CORBA_ORB_init() prior to the
+ parsing of the command line args. This got switched around during
+ porting to VxWorks.
+
+ * IIOP/lib/roa.cpp: Changed calls using clientAcceptor_to use APIs
+ vended by ACE_Strategy_Acceptor.
+
+ * IIOP/lib/roa.hh: Moved default thread flags into ROA_Factory.
+
+ * IIOP/lib/params.*: Added ROA_Factory, a singleton which is the
+ beginning of an abstract factory dynamically producing runtime
+ strategies based on information found in ROA_Parameters.
+
+ * IIOP/lib/connect.cpp: Added call to ROA_Handler's base class
+ CTOR in initializer list.
+
+ * IIOP/lib/connect.hh: Changed ROA_Handler's CTOR so that it can
+ take an optional ACE_Thread_Manager* arg. This makes it
+ compatible with the CTORs for the base class. Also changed base
+ class for ROA_Acceptor to ACE_Strategy_Acceptor.
+
+ * IIOP/lib/svrrqst.*: Changed references to BOA_ptr from TOA_ptr.
+
+ * IIOP/lib/connect.*: ROA_Handler/ROA_Acceptor moved from roa.*
+ into here.
+
+ * IIOP/lib/params.*: ROA_Parameters moved from roa.* into here.
+
+ * IIOP/lib/boa.*: What used to be TOA is now BOA, and lives in
+ here.
+
+ * IIOP/lib/roa.*: Major restructuring required removal of all
+ classes (see other log entries) from here. This file now houses
+ only the ROA class.
+
+ * IIOP/lib/{tcpoa.*,toa.*}: Removed because of name changes from
+ TCP_OA->ROA and TOA->BOA.
+
+Fri Apr 18 08:09:19 1997 Brian Mendel <bmendel@mdc.com>
+
+ * cdr.hh,corbacom.{hh,cpp},giop.cpp,marshall.cpp,typecode.cpp:
+ Changes required for WChar missed in earlier committed code.
+
+ * connmgr.cpp: Changes required for select statement.
+
+ * nvlist.cpp: Conditional include for memory.h added. VxWorks
+ does not have memory.h.
+
+ * object.cpp: Added conditional for VXWORKS to define
+ IID_IUnknown.
+
+ * orbconf.hh: Minor tuning of the configuration file.
+
+ * tcpoa.{hh,cpp}: Added VXWORKS conditional includes.
+
+ * toa.cpp: Added VXWORKS conditional includes.
+
+
+Mon Apr 15 17:01:00 1997 Brian Mendel <bmendel@mdc.com>
+
+ * roa.cpp: Added return statement to ROA_Handler::open(void*)
+ method.
+
+ * giop.cpp: Modified giop::read_buffer to replace undefined fc
+ with peer.get_handle(). Modified giop::incoming_message method
+ parameter list to match function prototype exactly.
+
+ * tcpoa.cpp: Replaced fd instances in debug messages with
+ peer.get_handle() calls.
+
+Mon Apr 14 13:45:54 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * roa.{hh,i,cpp},tcpoa.cpp,svr.cpp: Replaced ACE_ROA with
+ ROA_Parameters, which is a GoF-style singleton.
+
+Sun Apr 13 00:01:56 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu>
+
+ * roa.cpp: Fix continuation condition in ROA_Handler::svc()'s loop
+ so that it doesn't stop after one iteration. Also added some
+ debug messages.
+
+ * giop.cpp: Fixed some returns being called with no value. This
+ should have been caught in the previous round of changes.
+
+Sat Apr 12 23:10:08 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * tcpoa.{hh,cpp}: TCP_OA::handle_message() now returns a value
+ indicating how a message was handled.
+
+ * roa.cpp: ROA_Handler::handle_input() now returns a meaningful
+ value based on what TCP_OA::handle_message() returns.
+
+ * giop.{hh,cpp}: Added end-of-file detection on socket
+ connections, and that is now propagated all the way back up
+ through GIOP::incoming_message(). I don't know if I violated
+ something in the spec by doing this, but it was necessary. I'll
+ look into it later.
+
+Thu Apr 10 11:49:44 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * giop.{hh,cpp}: Overloaded all methods dealing with connections
+ so that there are two, one taking a file descriptor as argument,
+ the other taking an ACE_SOCK_Stream. Right now, the *_Stream
+ version simply forwards to the fd-based one. I would have
+ preferred to get rid of the fd-based methods altogether, but we've
+ only converted the server runtime; the client is still using the
+ original sun code, which is effectively fd-based. In the course
+ of doing this, I also simplified the decls for incoming_message by
+ creating typedefs for some of the function pointers passed as
+ args.
+
+ * orbconf.hh: Fixed the stupid auto-endian-ness detector
+ AGAIN...had my logic reversed!
+
+ * roa.cpp: Adjusted code in accordance with changes to tcpoa.hh.
+
+ * tcpoa.hh: Moved and renamed TCP_OA::dispatch_context to be
+ ::Dispatch_Context, and changed its endpoint member to be an
+ ACE_SOCK_Stream.
+
+ * roa.hh: Fixed handle_input() to use the underlying peer() data
+ member for reading data, rather than using its argument. This is
+ so that when a different thread handles each connection,
+ handle_input() can simply be called repeatedly by svc().
+
+Wed Apr 9 16:19:21 1997 Chris Cleeland <cleeland@tango.cs.wustl.edu>
+
+ * tcpoa.cpp: Fixed a problem that G++ didn't notice regarding
+ changing the notion of endpoints in servers from server_endpoint
+ to an ACE_HANDLE.
+
+Wed Apr 9 15:43:37 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * svr.cpp: The -p option is gone, and -e takes its place and is
+ required. This requires the user to specify not only the port
+ number, but also the IP address of on which the server should
+ listen for requests. See ACE_INET_Addr documentation for valid
+ string formats for addresses. Also, the -t option sets the "use
+ threads" global.
+
+ * orbconf.hh: Hopefully resolved the tension between MS and Unix
+ platforms in inferring endian-ness of the target platform based on
+ preprocessor defines. We now check for i386, _M_X86, and vax
+ (yeah, like we really worry about that, but it's easy to do).
+
+ * roa.{hh,i,cpp}: Added support for spawning threads to handle
+ incoming requests. This involves a state flag for whether or not
+ to use threads, calling activate() in ROA_Handler::open() if that
+ flag is set, and creating ROA_Handler::svc() that simply loops
+ calling handle_input().
+
+Tue Apr 8 11:14:57 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/test/svr.cpp: Moved setting of upcall(), forwarder(),
+ context(), etc. into here rather than in TCP_OA::TCP_OA(), which
+ is where I mistakenly stuck them a few days ago (duh!).
+
+ * IIOP/lib/tcpoa.cpp: Removed setting of ACE_ROA::upcall(), which belongs
+ in the server code. I got confused because the function names
+ were so similar: tcpoa.cpp contains ::tcp_oa_dispatcher(), and
+ svr.cpp contains ::tcpoa_dispatch().
+
+ * IIOP/lib/roa.{hh,i,cpp}: Added forwarding function to ACE_ROA global namespace
+ hack.
+
+ * IIOP/lib/orbconf.hh: Fixed preprocessor checks that auto-detect
+ endian-ness of this processor.
+
+Mon Apr 7 21:08:24 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/test/test1_{clnt,svr}.cpp: THESE HAVE NOT BEEN CONVERTED TO
+ USE ACE EVENT HANDLING!! This round of changes explicitly
+ instantiates templates where required.
+
+ * IIOP/test/svr.cpp: Global function ::OA_listen() no longer
+ exists; its functionality is now fully contained within ::main().
+ If USE_ACE_EVENT_HANDLING is defined, a Reactor-based event loop
+ is used. The original intent was to allow conditional compilation
+ to select btw. the original method and a Reactor-based method.
+ However, weaving that into the library proved far more difficult
+ than anticipated, so more than likely not defining
+ USE_ACE_EVENT_HANDLING will cause massive grief.
+
+ * IIOP/lib/toa.cpp: Changed call to TCP_OA::init() to reflect new
+ ACE_INET_Addr argument type.
+
+ * IIOP/lib/tcpoa.cpp (TCP_OA): All initialization methods were
+ changed, specifically the CTOR and TCP_OA::init, to reflect the
+ introduction of ACE_INET_Addr. Two side-effects of using
+ ACE_INET_Addr are that (1) a server can specify the address on
+ which it wants to listen and (2) best that I can tell, the server
+ MUST specify the address on which it wants to listen because
+ otherwise it won't be able to publish a rational IOR. The event
+ loop is now changed to simply loop on Reactor::handle_events().
+
+ * IIOP/lib/tcpoa.hh (TCP_OA): Removed vestiges of this component's
+ use of the original connection management scheme. Where
+ appropriate, hostnames and ports were replaces by ACE_INET_Addr,
+ endpoints by ACE_HANDLEs, etc. One particularly nasty thing done
+ was to declare ROA_Handler as a friend so that handle_message()
+ can be called from ROA_Handler::handle_input(), which to me
+ exposes a hole in the original architecture wherein input is
+ "pulled" rather than waited-for. We might need to re-think how
+ this is handled within TAO.
+
+ * IIOP/lib/roa.{hh,i,cpp}: These files contain the required
+ components to support the new server-side ACE-based
+ connection/event substrate. The client side remains, as always,
+ using the connection mgmt scheme used by the original Sun IIOP
+ code.
+
+ * IIOP/lib/giop.cpp: Added explicit template instantiation for
+ when this is needed.
+
+ * IIOP/lib/corbacom.hh: Now protects itself from multiple
+ inclusion.
+
+ * IIOP/lib/Makefile: Added roa.* where appropriate.
+
+Wed Mar 19 10:25:21 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * IIOP/docs/us/codecount/*.count: Added to repository.
+
+ * Makefile: Added to repository.
+
+ * IIOP/objbase.h: Moved to IIOP/compat.
+
+ * IIOP/initguid.h: Moved to IIOP/compat.
+
+Thu Mar 13 14:06:28 1997 Chris Cleeland <cleeland@cs.wustl.edu>
+
+ * ChangeLog: Added the ChangeLog. We'd like to thank David
+ Brownell <david-b@pacbell.net>, the original author of SunSoft
+ IIOP, for helping to launch TAO off in the right direction!