summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2020-08-13 19:51:24 +0200
committerJohnny Willemsen <jwillemsen@remedy.nl>2020-08-13 19:51:24 +0200
commit99fd41c18381b59a1a7ab29bd973dc65699fce6b (patch)
treee80241ee7df836704c8b1d92b4ffc9f3f23cb1f8
parent5406db4418c095980b2fdacf81887d2955e1336c (diff)
parentdbc170b91a66b53d043e1d7e5083589318363d6f (diff)
downloadATCD-99fd41c18381b59a1a7ab29bd973dc65699fce6b.tar.gz
Resolve merge conflicts
-rw-r--r--ACE/ASNMP/README2
-rw-r--r--ACE/ASNMP/asnmp-overview.html48
-rw-r--r--ACE/ASNMP/asnmp/gauge.h2
-rw-r--r--ACE/ASNMP/asnmp/integer.h2
-rw-r--r--ACE/NEWS16
-rw-r--r--ACE/ace/ARGV.h6
-rw-r--r--ACE/ace/OS_NS_string.cpp48
-rw-r--r--ACE/ace/OS_NS_string.h16
-rw-r--r--ACE/ace/OS_NS_string.inl57
-rw-r--r--ACE/ace/config-kfreebsd.h4
-rw-r--r--ACE/tests/run_test.lst2
-rw-r--r--TAO/NEWS2
-rw-r--r--TAO/docs/configurations.html6
-rw-r--r--TAO/tao/TAO_Internal.cpp15
-rw-r--r--TAO/tao/TAO_Internal.h33
15 files changed, 86 insertions, 173 deletions
diff --git a/ACE/ASNMP/README b/ACE/ASNMP/README
index a3f6926f87d..e9bd5ebd174 100644
--- a/ACE/ASNMP/README
+++ b/ACE/ASNMP/README
@@ -1,5 +1,3 @@
-
-
====================================================================
ASNMP = ACE+SNMP++ Version 2.1
By Michael R. MacFaden mrm@acm.org, mrm@yagosys.com
diff --git a/ACE/ASNMP/asnmp-overview.html b/ACE/ASNMP/asnmp-overview.html
index 2c9c8e9fd49..6100a4d0b5e 100644
--- a/ACE/ASNMP/asnmp-overview.html
+++ b/ACE/ASNMP/asnmp-overview.html
@@ -9,20 +9,20 @@
toolkit for using IETF standard network management protocols in the
Internet. The SNMP protocol is perhaps the most ubiquitous management
protocol running on most very device or application deployed in the
-modern network today.
+modern network today.
<p>ASNMP is targeted to programmers that want to write command and
-control (C&C) applications. C&C Applications communicate with
-a variety of objects:
+control (C&C) applications. C&C Applications communicate with
+a variety of objects:
<sl>
-<li>network devices such as ATM switches, Internet routers,
+<li>network devices such as ATM switches, Internet routers,
LAN bridges and LAN printers
<li>Routing protocols such as OSPF
<li>database servers such as ORACLE or Informix.
<p>ASNMP Version 1 implements a blocking SNMP Version 1 with some
Version 2c additions (Counter32, Counter64 SMI values). See
-SNMP Version 1 as defined in the IETF Request for Comments (RFC)
+SNMP Version 1 as defined in the IETF Request for Comments (RFC)
<sl>
<li>1155
<li>1157
@@ -31,39 +31,39 @@ SNMP Version 1 as defined in the IETF Request for Comments (RFC)
<sl>
<p>Also see the RFC 1902 spec for new SMI datatypes such as Counter64.
-<p>ASNMP is built using the CMU SNMP and HP SNMP++ as the base
-classes then modified for use in the ACE framework. About 10% of the API
-changed during code rework. See ASNMP/asnmp/ChangeLog for details.
+<p>ASNMP is built using the CMU SNMP and HP SNMP++ as the base
+classes then modified for use in the ACE framework. About 10% of the API
+changed during code rework. See ASNMP/asnmp/ChangeLog for details.
<p>ASNMP can be used for either manager applications or agent applications.
The <i>Snmp</i> class contains the interface for manager applications. The
<i>sagent</i> class contains the interface for agent applications. A
trivial agent that implements the mib II system group per rfc1213 is
-in the agents/ directory.
-
-<h2>Class Heirarchy</h2>
+in the agents/ directory.
+
+<h2>Class Hierarchy</h2>
<pre>
-UdpTarget - Defines a collection of attributes needed to define a
- communications session with an SNMP agent
+UdpTarget - Defines a collection of attributes needed to define a
+ communications session with an SNMP agent
This includes network address, response timeout, etc.
-
+
Snmp - A logical session between NM app and agent. Provides the
- commands get, get_next, trap. Manages transactions between app and
+ commands get, get_next, trap. Manages transactions between app and
server.
Pdu - A container object that represents an SNMP Protocol Data Unit.
- A Pdu contains a command (get,getnext,trap) Varbind List list,
+ A Pdu contains a command (get,getnext,trap) Varbind List list,
a community string.
-Vb - Aka Varbind or Variable Binding. A pdu can have zero,
- one or more of these. A Vb consists of an Oid to identify
- the variable and a value corresponding to one of the SMI values.
+Vb - Aka Varbind or Variable Binding. A pdu can have zero,
+ one or more of these. A Vb consists of an Oid to identify
+ the variable and a value corresponding to one of the SMI values.
The oid/value binding is defined in a MIB file (RFC 1155)
Agents hava a MIB file that defines what each variable means.
- Most agents implement MIB II as defined in RFC 1156.
+ Most agents implement MIB II as defined in RFC 1156.
-<p>The Structure of Managment Information (SMI) datatypes
+<p>The Structure of Management Information (SMI) datatypes
and related types are:
<ul>
<li>Address->IpAddress->UdpAddress as well as MAC, IPX, IPXSOCK, Netbios
@@ -91,7 +91,7 @@ class system_id {
Snmp snmp;
Pdu pdu;
Oid oid("1.3.6.1.2.1.1.1.0");
- Vb vb(oid);
+ Vb vb(oid);
tgt.set_address(addr);
tgt.set_read_community(read_community_string);
pdu += vb;
@@ -111,14 +111,14 @@ class system_id {
private:
OctetStr desc_;
-};
+};
<h1>Future Directions</h1>
<p>Here are some areas for further work
<sl>
<li>Add OO mib parser and mib code generator
<li>Collapse the CMU/HP code into one set of classes.
-<li>Add full V2c support.
+<li>Add full V2c support.
<li>Size/Speed improvements
</sl>
diff --git a/ACE/ASNMP/asnmp/gauge.h b/ACE/ASNMP/asnmp/gauge.h
index c29f24e6d36..3e5a87fc02e 100644
--- a/ACE/ASNMP/asnmp/gauge.h
+++ b/ACE/ASNMP/asnmp/gauge.h
@@ -47,7 +47,7 @@ class ASNMP_Export Gauge32: public SnmpUInt32
{
public:
/// constructor with a value
- Gauge32( const unsigned long i = 0);
+ explicit Gauge32( const unsigned long i = 0);
/// copy constructor
Gauge32 ( const Gauge32 &g);
diff --git a/ACE/ASNMP/asnmp/integer.h b/ACE/ASNMP/asnmp/integer.h
index 5bf053cf2a4..ecc83a0482e 100644
--- a/ACE/ASNMP/asnmp/integer.h
+++ b/ACE/ASNMP/asnmp/integer.h
@@ -47,7 +47,7 @@ class ASNMP_Export SnmpUInt32 : public SnmpSyntax
{
public:
/// default constructor
- SnmpUInt32 (const unsigned long i = 0);
+ explicit SnmpUInt32 (const unsigned long i = 0);
/// copy constructor
SnmpUInt32( const SnmpUInt32 &c);
diff --git a/ACE/NEWS b/ACE/NEWS
index fd2dce8646b..42dd3ac8e51 100644
--- a/ACE/NEWS
+++ b/ACE/NEWS
@@ -1,6 +1,22 @@
USER VISIBLE CHANGES BETWEEN ACE-6.5.10 and ACE-6.5.11
======================================================
+. Latest_{Major,Minor,Micro,Beta} tags have been replaced with
+ branches because tags are not intended to move where branches are
+
+. Cleanup of emulated operations in ACE_OS which are not used
+ anymore
+
+. Resolved some compile warnings when using C++11 or newer
+
+. Integrated debian packaging changes
+
+. Visual Studio 2015 solutions are not part of the release
+ packaging anymore. When you require these you need to generate
+ them locally using MPC
+
+. Improve multicast join by interface name on Windows
+
USER VISIBLE CHANGES BETWEEN ACE-6.5.9 and ACE-6.5.10
=====================================================
diff --git a/ACE/ace/ARGV.h b/ACE/ace/ARGV.h
index 34a1cda51d1..a0edd1c78d5 100644
--- a/ACE/ace/ARGV.h
+++ b/ACE/ace/ARGV.h
@@ -55,6 +55,12 @@ public:
*/
ACE_ARGV_Queue_Entry_T (const ACE_ARGV_Queue_Entry_T<CHAR_TYPE> &entry);
+#if defined (ACE_HAS_CPP11)
+ ACE_ARGV_Queue_Entry_T (ACE_ARGV_Queue_Entry_T&&) = default;
+ ACE_ARGV_Queue_Entry_T &operator = (const ACE_ARGV_Queue_Entry_T &) = default;
+ ACE_ARGV_Queue_Entry_T &operator = (ACE_ARGV_Queue_Entry_T &&) = default;
+#endif /* ACE_HAS_CPP11 */
+
/// We need this destructor to keep some compilers from complaining.
/// It's just a no-op, however.
~ACE_ARGV_Queue_Entry_T (void);
diff --git a/ACE/ace/OS_NS_string.cpp b/ACE/ace/OS_NS_string.cpp
index 3a8e9ff8568..ff5c4e1e549 100644
--- a/ACE/ace/OS_NS_string.cpp
+++ b/ACE/ace/OS_NS_string.cpp
@@ -14,23 +14,6 @@
ACE_BEGIN_VERSIONED_NAMESPACE_DECL
-#if defined (ACE_LACKS_MEMCHR)
-const void *
-ACE_OS::memchr_emulation (const void *s, int c, size_t len)
-{
- const unsigned char *t = (const unsigned char *) s;
- const unsigned char *e = (const unsigned char *) s + len;
-
- while (t < e)
- if (((int) *t) == c)
- return t;
- else
- ++t;
-
- return 0;
-}
-#endif /* ACE_LACKS_MEMCHR */
-
#if (defined (ACE_LACKS_STRDUP) && !defined (ACE_STRDUP_EQUIVALENT)) \
|| defined (ACE_HAS_STRDUP_EMULATION)
char *
@@ -278,37 +261,6 @@ ACE_OS::strnstr (const ACE_WCHAR_T *s1, const ACE_WCHAR_T *s2, size_t len2)
return 0;
}
-#if defined (ACE_HAS_MEMCPY_LOOP_UNROLL)
-void *
-ACE_OS::fast_memcpy (void *t, const void *s, size_t len)
-{
- unsigned char* to = static_cast<unsigned char*> (t) ;
- const unsigned char* from = static_cast<const unsigned char*> (s) ;
- // Unroll the loop...
- switch (len)
- {
- case 16: to[15] = from[15];
- case 15: to[14] = from[14];
- case 14: to[13] = from[13];
- case 13: to[12] = from[12];
- case 12: to[11] = from[11];
- case 11: to[10] = from[10];
- case 10: to[9] = from[9];
- case 9: to[8] = from[8];
- case 8: to[7] = from[7];
- case 7: to[6] = from[6];
- case 6: to[5] = from[5];
- case 5: to[4] = from[4];
- case 4: to[3] = from[3];
- case 3: to[2] = from[2];
- case 2: to[1] = from[1];
- case 1: to[0] = from[0];
- case 0: return t;
- default: return ::memcpy (t, s, len);
- }
-}
-#endif /* ACE_HAS_MEMCPY_LOOP_UNROLL */
-
char *
ACE_OS::strsncpy (char *dst, const char *src, size_t maxlen)
{
diff --git a/ACE/ace/OS_NS_string.h b/ACE/ace/OS_NS_string.h
index 4327daed35f..7d98895b8ac 100644
--- a/ACE/ace/OS_NS_string.h
+++ b/ACE/ace/OS_NS_string.h
@@ -53,12 +53,6 @@ namespace ACE_OS {
ACE_NAMESPACE_INLINE_FUNCTION
void *memchr (void *s, int c, size_t len);
-#if defined (ACE_LACKS_MEMCHR)
- /// Emulated memchr - Finds a character in a buffer.
- extern ACE_Export
- const void *memchr_emulation (const void *s, int c, size_t len);
-#endif /* ACE_LACKS_MEMCHR */
-
/// Compares two buffers.
ACE_NAMESPACE_INLINE_FUNCTION
int memcmp (const void *t, const void *s, size_t len);
@@ -67,16 +61,6 @@ namespace ACE_OS {
ACE_NAMESPACE_INLINE_FUNCTION
void *memcpy (void *t, const void *s, size_t len);
-#if defined (ACE_HAS_MEMCPY_LOOP_UNROLL)
-/*
- * Version of memcpy where the copy loop is unrolled.
- * On certain platforms this results in better performance.
- * This is determined and set via autoconf.
- */
- extern ACE_Export
- void *fast_memcpy (void *t, const void *s, size_t len);
-#endif
-
/// Moves one buffer to another.
ACE_NAMESPACE_INLINE_FUNCTION
void *memmove (void *t, const void *s, size_t len);
diff --git a/ACE/ace/OS_NS_string.inl b/ACE/ace/OS_NS_string.inl
index 0b09dfe918e..ec1ea1eb63c 100644
--- a/ACE/ace/OS_NS_string.inl
+++ b/ACE/ace/OS_NS_string.inl
@@ -9,11 +9,7 @@ ACE_BEGIN_VERSIONED_NAMESPACE_DECL
ACE_INLINE const void *
ACE_OS::memchr (const void *s, int c, size_t len)
{
-#if !defined (ACE_LACKS_MEMCHR)
return ::memchr (s, c, len);
-#else /* ACE_LACKS_MEMCHR */
- return ACE_OS::memchr_emulation (s, c, len);
-#endif /* !ACE_LACKS_MEMCHR */
}
ACE_INLINE void *
@@ -33,11 +29,7 @@ ACE_OS::memcmp (const void *t, const void *s, size_t len)
ACE_INLINE void *
ACE_OS::memcpy (void *t, const void *s, size_t len)
{
-#if defined (ACE_HAS_MEMCPY_LOOP_UNROLL)
- return fast_memcpy (t, s, len);
-#else
return ::memcpy (t, s, len);
-#endif /* ACE_HAS_MEMCPY_LOOP_UNROLL */
}
ACE_INLINE void *
@@ -49,56 +41,7 @@ ACE_OS::memmove (void *t, const void *s, size_t len)
ACE_INLINE void *
ACE_OS::memset (void *s, int c, size_t len)
{
-#if defined (ACE_HAS_SLOW_MEMSET)
- // This section requires a high optimization level (-xO4 with SunCC)
- // in order to actually be inlined.
- char* ptr = static_cast<char*> (s);
- switch (len)
- {
- case 16:
- ptr[15] = c;
- case 15:
- ptr[14] = c;
- case 14:
- ptr[13] = c;
- case 13:
- ptr[12] = c;
- case 12:
- ptr[11] = c;
- case 11:
- ptr[10] = c;
- case 10:
- ptr[9] = c;
- case 9:
- ptr[8] = c;
- case 8:
- ptr[7] = c;
- case 7:
- ptr[6] = c;
- case 6:
- ptr[5] = c;
- case 5:
- ptr[4] = c;
- case 4:
- ptr[3] = c;
- case 3:
- ptr[2] = c;
- case 2:
- ptr[1] = c;
- case 1:
- ptr[0] = c;
- break;
- default:
- for (size_t i = 0; i < len; ++i)
- {
- ptr[i] = c;
- }
- }
-
- return s;
-#else
return ::memset (s, c, len);
-#endif /* ACE_HAS_SLOW_MEMSET */
}
ACE_INLINE char *
diff --git a/ACE/ace/config-kfreebsd.h b/ACE/ace/config-kfreebsd.h
index 5341a54e267..6d90672552e 100644
--- a/ACE/ace/config-kfreebsd.h
+++ b/ACE/ace/config-kfreebsd.h
@@ -117,10 +117,6 @@
/* Define to 1 if platform has memchr(). */
#define ACE_HAS_MEMCHR 1
-/* Define to 1 if unrolled ACE_OS::fast_memcpy() is faster than system
- memcpy() */
-#define ACE_HAS_MEMCPY_LOOP_UNROLL 1
-
/* Define to 1 if platform has mkdir(). */
#define ACE_HAS_MKDIR 1
diff --git a/ACE/tests/run_test.lst b/ACE/tests/run_test.lst
index b9d9321d510..b989cb0f010 100644
--- a/ACE/tests/run_test.lst
+++ b/ACE/tests/run_test.lst
@@ -167,7 +167,7 @@ Monotonic_Manual_Event_Test
Monotonic_Message_Queue_Test: !ACE_FOR_TAO
Monotonic_Task_Test: !ACE_FOR_TAO
Multicast_Test: !ST !NO_MCAST !nsk !LynxOS !LabVIEW_RT
-Multicast_Interfaces_Test: !ST !NO_MCAST !nsk !LynxOS !LabVIEW_RT
+Multicast_Interfaces_Test: !ST !NO_MCAST !nsk !LynxOS !LabVIEW_RT !FACE_SAFETY
Multihomed_INET_Addr_Test: !ACE_FOR_TAO
Naming_Test: !NO_OTHER !LynxOS !VxWorks !nsk !ACE_FOR_TAO !PHARLAP
Network_Adapters_Test: !ACE_FOR_TAO
diff --git a/TAO/NEWS b/TAO/NEWS
index 75af9b208ca..881e1b73ee9 100644
--- a/TAO/NEWS
+++ b/TAO/NEWS
@@ -1,6 +1,8 @@
USER VISIBLE CHANGES BETWEEN TAO-2.5.10 and TAO-2.5.11
======================================================
+. Simplified some code generated by tao_idl
+
USER VISIBLE CHANGES BETWEEN TAO-2.5.9 and TAO-2.5.10
=====================================================
diff --git a/TAO/docs/configurations.html b/TAO/docs/configurations.html
index de6f52b700b..d06a318aed3 100644
--- a/TAO/docs/configurations.html
+++ b/TAO/docs/configurations.html
@@ -679,7 +679,7 @@ components. <P>
<li><p>If you don't want the application users to worry about
setting up or knowing about <code>svc.conf</code> files, you can
- call <code>TAO_Internal::default_svc_conf_entries()</code>
+ call <code>TAO::ORB::default_svc_conf_entries()</code>
before calling the first <code>ORB_init()</code> in your program
to set up the default svc.conf entries. In this case, if a TAO
application cannot find a svc.conf file, it will configure TAO's
@@ -696,7 +696,7 @@ components. <P>
<code>svc.conf</code> in the start-up directory will be
evaluated, if one exist.
<li>Default entries set by
- <code>TAO_Internal::default_svc_conf_entries()</code>, if
+ <code>TAO::ORB::default_svc_conf_entries()</code>, if
ones exist.
<li>Default configuration as specified in <a
href="Options.html">this document</a>.
@@ -706,7 +706,7 @@ components. <P>
always the ones take effect. For example, if you set the entries
for <code>Resource_Factory</code> and
<code>Server_Strategy_Factory</code> using
- <code>TAO_Internal::default_svc_conf_entries()</code> in a
+ <code>TAO::ORB::default_svc_conf_entries()</code> in a
program and you also have a file called <code>svc.conf</code>
which has an entry for <code>Resource_Factory</code>. This
program will use the entry for <code>Resource_Factory</code> in
diff --git a/TAO/tao/TAO_Internal.cpp b/TAO/tao/TAO_Internal.cpp
index ea8146e67c2..9e324aec423 100644
--- a/TAO/tao/TAO_Internal.cpp
+++ b/TAO/tao/TAO_Internal.cpp
@@ -544,9 +544,18 @@ TAO::ORB::default_svc_conf_entries (char const * rf_args,
char const * ssf_args,
char const * csf_args)
{
- resource_factory_args = rf_args;
- server_strategy_factory_args = ssf_args;
- client_strategy_factory_args = csf_args;
+ if (rf_args)
+ {
+ resource_factory_args = rf_args;
+ }
+ if (ssf_args)
+ {
+ server_strategy_factory_args = ssf_args;
+ }
+ if (csf_args)
+ {
+ client_strategy_factory_args = csf_args;
+ }
}
TAO_END_VERSIONED_NAMESPACE_DECL
diff --git a/TAO/tao/TAO_Internal.h b/TAO/tao/TAO_Internal.h
index 00f6cb24f78..4f8583cd048 100644
--- a/TAO/tao/TAO_Internal.h
+++ b/TAO/tao/TAO_Internal.h
@@ -15,6 +15,7 @@
#include /**/ "ace/pre.h"
+#include /**/ "tao/TAO_Export.h"
#include "tao/orbconf.h"
#if !defined (ACE_LACKS_PRAGMA_ONCE)
@@ -34,18 +35,21 @@ namespace TAO
/**
* @namespace ORB
*
- * @brief This @c namespace encapsulates some private behaviors and
- * global data structures used internal to TAO. No
- * application should EVER see them which is why they are not
+ * @brief This @c namespace encapsulates some behaviors and
+ * global data structures used by TAO.
+ * Only default_svc_conf_entries() is exported because it is
+ * documented as a way for applications to setup default svc.conf
+ * settings. The other operations are internal and
+ * application should NEVER use them which is why they are not
* exported.
*/
namespace ORB
{
-
/**
* If never done it before, extract ACE Service Configurator arguments from the given
- * argument vector, and initialize the _global_ configuration gestalt. Return value 0 means OK,
- * -1 spells major trouble ...
+ * argument vector, and initialize the _global_ configuration gestalt.
+ * @retval 0 means OK,
+ * @retval -1 spells major trouble
*/
int open_global_services (int argc, ACE_TCHAR** argv);
@@ -65,21 +69,24 @@ namespace TAO
* only actually close things down on the last call. It is fully
* thread-safe.
*
- * @return @c 0 if successful, @c -1 with @c errno set if
- * failure.
+ * @retval 0 if successful
+ * @retval -1 failure with @c errno set
*/
int close_services (ACE_Intrusive_Auto_Ptr<ACE_Service_Gestalt> pcfg);
/**
- * Set default @c `svc.conf' content.
+ * Set default @c `svc.conf' content, only non-null values are set.
* This function must be called before first ORB initialization.
+ * @arg rf_args Resource factory settings
+ * @arg ssf_args Server strategy factory settings
+ * @arg csf_args Client strategy factory settings
*/
- void default_svc_conf_entries (char const * rf_args,
- char const * ssf_args,
- char const * csf_args);
-
+ TAO_Export void default_svc_conf_entries (char const * rf_args,
+ char const * ssf_args,
+ char const * csf_args);
}
}
+
TAO_END_VERSIONED_NAMESPACE_DECL
#include /**/ "ace/post.h"