zeroc-ice 3.8.0 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. checksums.yaml +4 -4
  2. data/dist/IceRuby/Slice.cpp +1 -1
  3. data/dist/ice/cpp/include/Ice/Communicator.h +4 -4
  4. data/dist/ice/cpp/include/Ice/Config.h +2 -2
  5. data/dist/ice/cpp/include/Ice/Connection.h +3 -3
  6. data/dist/ice/cpp/include/Ice/Endpoint.h +2 -2
  7. data/dist/ice/cpp/include/Ice/Exception.h +1 -1
  8. data/dist/ice/cpp/include/Ice/Initialize.h +1 -1
  9. data/dist/ice/cpp/include/Ice/LocalExceptions.h +1 -1
  10. data/dist/ice/cpp/include/Ice/Logger.h +3 -3
  11. data/dist/ice/cpp/include/Ice/NativePropertiesAdmin.h +2 -0
  12. data/dist/ice/cpp/include/Ice/ObjectAdapter.h +3 -3
  13. data/dist/ice/cpp/include/Ice/ObserverHelper.h +1 -0
  14. data/dist/ice/cpp/include/Ice/OutputStream.h +20 -0
  15. data/dist/ice/cpp/include/Ice/Properties.h +3 -3
  16. data/dist/ice/cpp/include/Ice/Proxy.h +1 -1
  17. data/dist/ice/cpp/include/Ice/SSL/ClientAuthenticationOptions.h +10 -2
  18. data/dist/ice/cpp/include/Ice/SSL/ServerAuthenticationOptions.h +10 -2
  19. data/dist/ice/cpp/include/generated/Ice/BuiltinSequences.h +2 -2
  20. data/dist/ice/cpp/include/generated/Ice/Context.h +2 -2
  21. data/dist/ice/cpp/include/generated/Ice/EndpointTypes.h +2 -2
  22. data/dist/ice/cpp/include/generated/Ice/Identity.h +2 -2
  23. data/dist/ice/cpp/include/generated/Ice/Locator.h +2 -2
  24. data/dist/ice/cpp/include/generated/Ice/LocatorRegistry.h +2 -2
  25. data/dist/ice/cpp/include/generated/Ice/Metrics.h +2 -2
  26. data/dist/ice/cpp/include/generated/Ice/OperationMode.h +2 -2
  27. data/dist/ice/cpp/include/generated/Ice/Process.h +2 -2
  28. data/dist/ice/cpp/include/generated/Ice/PropertiesAdmin.h +2 -2
  29. data/dist/ice/cpp/include/generated/Ice/PropertyDict.h +2 -2
  30. data/dist/ice/cpp/include/generated/Ice/RemoteLogger.h +2 -2
  31. data/dist/ice/cpp/include/generated/Ice/ReplyStatus.h +2 -2
  32. data/dist/ice/cpp/include/generated/Ice/Router.h +2 -2
  33. data/dist/ice/cpp/include/generated/Ice/SliceChecksumDict.h +2 -2
  34. data/dist/ice/cpp/include/generated/Ice/Version.h +2 -2
  35. data/dist/ice/cpp/include/generated/IceDiscovery/Lookup.h +2 -2
  36. data/dist/ice/cpp/include/generated/IceLocatorDiscovery/Lookup.h +2 -2
  37. data/dist/ice/cpp/src/Ice/ConnectionFactory.h +8 -8
  38. data/dist/ice/cpp/src/Ice/ConnectionI.cpp +1 -2
  39. data/dist/ice/cpp/src/Ice/Demangle.cpp +1 -0
  40. data/dist/ice/cpp/src/Ice/InputStream.cpp +0 -2
  41. data/dist/ice/cpp/src/Ice/LocalException.cpp +1 -1
  42. data/dist/ice/cpp/src/Ice/OutputStream.cpp +42 -62
  43. data/dist/ice/cpp/src/Ice/PropertyNames.cpp +1 -1
  44. data/dist/ice/cpp/src/Ice/ResourceConfig.h +2 -2
  45. data/dist/ice/cpp/src/Ice/SSL/OpenSSLEngine.cpp +17 -9
  46. data/dist/ice/cpp/src/Ice/SSL/OpenSSLTransceiverI.cpp +14 -3
  47. data/dist/ice/cpp/src/Ice/SSL/RFC2253.cpp +3 -3
  48. data/dist/ice/cpp/src/Ice/SSL/SSLEngine.h +3 -6
  49. data/dist/ice/cpp/src/Ice/SSL/SSLUtil.cpp +21 -2
  50. data/dist/ice/cpp/src/Ice/SSL/SSLUtil.h +15 -1
  51. data/dist/ice/cpp/src/Ice/SSL/SchannelEngine.cpp +17 -5
  52. data/dist/ice/cpp/src/Ice/SSL/SchannelTransceiverI.cpp +5 -2
  53. data/dist/ice/cpp/src/Ice/SSL/SecureTransportEngine.cpp +4 -1
  54. data/dist/ice/cpp/src/Ice/SSL/SecureTransportTransceiverI.h +1 -1
  55. data/dist/ice/cpp/src/Ice/SSL/SecureTransportUtil.cpp +3 -16
  56. data/dist/ice/cpp/src/Ice/SSL/TrustManager.cpp +12 -1
  57. data/dist/ice/cpp/src/Ice/ServantManager.h +1 -1
  58. data/dist/ice/cpp/src/Ice/StringConverter.cpp +4 -0
  59. data/dist/ice/cpp/src/Ice/generated/BuiltinSequences.cpp +2 -2
  60. data/dist/ice/cpp/src/Ice/generated/Context.cpp +2 -2
  61. data/dist/ice/cpp/src/Ice/generated/EndpointTypes.cpp +2 -2
  62. data/dist/ice/cpp/src/Ice/generated/Identity.cpp +2 -2
  63. data/dist/ice/cpp/src/Ice/generated/Locator.cpp +2 -2
  64. data/dist/ice/cpp/src/Ice/generated/LocatorRegistry.cpp +2 -2
  65. data/dist/ice/cpp/src/Ice/generated/Metrics.cpp +2 -2
  66. data/dist/ice/cpp/src/Ice/generated/OperationMode.cpp +2 -2
  67. data/dist/ice/cpp/src/Ice/generated/Process.cpp +2 -2
  68. data/dist/ice/cpp/src/Ice/generated/PropertiesAdmin.cpp +2 -2
  69. data/dist/ice/cpp/src/Ice/generated/PropertyDict.cpp +2 -2
  70. data/dist/ice/cpp/src/Ice/generated/RemoteLogger.cpp +2 -2
  71. data/dist/ice/cpp/src/Ice/generated/ReplyStatus.cpp +2 -2
  72. data/dist/ice/cpp/src/Ice/generated/Router.cpp +2 -2
  73. data/dist/ice/cpp/src/Ice/generated/SliceChecksumDict.cpp +2 -2
  74. data/dist/ice/cpp/src/Ice/generated/Version.cpp +2 -2
  75. data/dist/ice/cpp/src/IceDiscovery/LocatorI.cpp +2 -2
  76. data/dist/ice/cpp/src/IceDiscovery/LookupI.cpp +4 -3
  77. data/dist/ice/cpp/src/IceDiscovery/LookupI.h +2 -1
  78. data/dist/ice/cpp/src/IceDiscovery/generated/Lookup.cpp +2 -2
  79. data/dist/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +6 -18
  80. data/dist/ice/cpp/src/IceLocatorDiscovery/generated/Lookup.cpp +2 -2
  81. data/dist/ice/cpp/src/Slice/FileTracker.h +1 -0
  82. data/dist/ice/cpp/src/Slice/Grammar.cpp +261 -264
  83. data/dist/ice/cpp/src/Slice/MetadataValidation.cpp +15 -2
  84. data/dist/ice/cpp/src/Slice/Parser.cpp +77 -80
  85. data/dist/ice/cpp/src/Slice/Parser.h +25 -5
  86. data/dist/ice/cpp/src/Slice/Preprocessor.cpp +1 -1
  87. data/dist/ice/cpp/src/Slice/Scanner.cpp +1 -1
  88. data/dist/ice/cpp/src/Slice/SliceUtil.cpp +38 -0
  89. data/dist/ice/cpp/src/Slice/StringLiteralUtil.cpp +3 -10
  90. data/dist/ice/cpp/src/Slice/Util.h +7 -0
  91. data/dist/ice/cpp/src/slice2rb/Main.cpp +2 -2
  92. data/dist/ice/cpp/src/slice2rb/Ruby.cpp +1 -1
  93. data/dist/ice/mcpp/directive.c +5 -2
  94. data/dist/ice/mcpp/mcpp_main.c +1 -1
  95. data/dist/ice/mcpp/support.c +6 -6
  96. data/dist/ice/mcpp/system.c +5 -5
  97. data/dist/lib/Glacier2/Metrics.rb +1 -1
  98. data/dist/lib/Glacier2/PermissionsVerifier.rb +1 -1
  99. data/dist/lib/Glacier2/Router.rb +1 -1
  100. data/dist/lib/Glacier2/SSLInfo.rb +1 -1
  101. data/dist/lib/Glacier2/Session.rb +1 -1
  102. data/dist/lib/Ice/BuiltinSequences.rb +1 -1
  103. data/dist/lib/Ice/Context.rb +1 -1
  104. data/dist/lib/Ice/EndpointTypes.rb +1 -1
  105. data/dist/lib/Ice/Identity.rb +1 -1
  106. data/dist/lib/Ice/Locator.rb +1 -1
  107. data/dist/lib/Ice/LocatorRegistry.rb +1 -1
  108. data/dist/lib/Ice/Metrics.rb +1 -1
  109. data/dist/lib/Ice/OperationMode.rb +1 -1
  110. data/dist/lib/Ice/Process.rb +1 -1
  111. data/dist/lib/Ice/PropertiesAdmin.rb +1 -1
  112. data/dist/lib/Ice/PropertyDict.rb +1 -1
  113. data/dist/lib/Ice/RemoteLogger.rb +1 -1
  114. data/dist/lib/Ice/ReplyStatus.rb +1 -1
  115. data/dist/lib/Ice/Router.rb +1 -1
  116. data/dist/lib/Ice/SliceChecksumDict.rb +1 -1
  117. data/dist/lib/Ice/Version.rb +1 -1
  118. data/dist/lib/IceBox/ServiceManager.rb +1 -1
  119. data/dist/lib/IceGrid/Admin.rb +1 -1
  120. data/dist/lib/IceGrid/Descriptor.rb +1 -1
  121. data/dist/lib/IceGrid/Exception.rb +1 -1
  122. data/dist/lib/IceGrid/FileParser.rb +1 -1
  123. data/dist/lib/IceGrid/Registry.rb +1 -1
  124. data/dist/lib/IceGrid/Session.rb +1 -1
  125. data/dist/lib/IceGrid/UserAccountMapper.rb +1 -1
  126. data/dist/lib/IceStorm/IceStorm.rb +1 -1
  127. data/dist/lib/IceStorm/Metrics.rb +1 -1
  128. data/ice.gemspec +1 -1
  129. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d5ea8ace37949a5a1a570cacb3aec87a89c574682a7e4bce1e9d5151c781e1e8
4
- data.tar.gz: 93ba83989cac3865c8c541f673388a2864efecd0f4519ae6242be4b4ba45c362
3
+ metadata.gz: 43969e528f0ebea9dcd33b7b9a236d6fccf60fccf4cf2c82d804153bedc0d806
4
+ data.tar.gz: 0a866229122da55b42f7b65da3d22f287027998b71695e18e063d42f55b486a3
5
5
  SHA512:
6
- metadata.gz: 5f11cea3787b888af6f67b5e497d616539f639e78f37087e7c65b722bf7118aeb3bd42b6a7e3b73cc84adfc3a43e62597d7de69e63435544bfd04571f72ad376
7
- data.tar.gz: 0b7e687a92fb5033f6b5c92a1ce40ca4dbf1575c655179ef365daf8c432d4db4b71fbfb00193158430359f605d45dbe2be154a4671c75c4552128e3c2de51f5a
6
+ metadata.gz: 9c490f2d7fdf222170331e5db55dd1678dcb583f97a61fbb33871a3fc1b72ac417aed92e4e04e39282a858eb80937549321b8f8820630543784ee150d2fdf56a
7
+ data.tar.gz: 3d855c442afc991b37ccacb2283d5e56aec33bbb76fd9e5b618ee65aff05256cdb341abbe70b5d38bf13a979875d489f4ee2a2410ba26fceece1d1c96fa54491
@@ -100,7 +100,7 @@ IceRuby_loadSlice(int argc, VALUE* argv, VALUE /*self*/)
100
100
  throw RubyException(rb_eArgError, "Slice preprocessing failed");
101
101
  }
102
102
 
103
- unit = Unit::createUnit("ruby", all);
103
+ unit = Unit::createUnit("ruby", {.all = all});
104
104
  int parseStatus = unit->parse(file, preprocessedHandle, debug);
105
105
 
106
106
  preprocessor->close();
@@ -36,8 +36,8 @@ namespace Ice
36
36
  public:
37
37
  ~Communicator();
38
38
 
39
- /// Destroys this communicator. This function calls #shutdown implicitly. Calling #destroy destroys all
40
- /// object adapters, and closes all outgoing connections. This method waits for all outstanding dispatches to
39
+ /// Destroys this communicator. This function calls #shutdown implicitly. Calling this function destroys all
40
+ /// object adapters, and closes all outgoing connections. This function waits for all outstanding dispatches to
41
41
  /// complete before returning. This includes "bidirectional dispatches" that execute on outgoing connections.
42
42
  /// @see CommunicatorHolder
43
43
  void destroy() noexcept;
@@ -277,14 +277,14 @@ namespace Ice
277
277
  [[nodiscard]] std::future<void> flushBatchRequestsAsync(CompressBatch compress);
278
278
 
279
279
  /// Adds the Admin object with all its facets to the provided object adapter. If `Ice.Admin.ServerId`
280
- /// is set and the provided object adapter has a Locator, #createAdmin registers the Admin's Process facet with
280
+ /// is set and the provided object adapter has a Locator, this function registers the Admin's Process facet with
281
281
  /// the Locator's LocatorRegistry.
282
282
  /// @param adminAdapter The object adapter used to host the Admin object; if it is null and
283
283
  /// `Ice.Admin.Endpoints` is set, this function uses the `Ice.Admin` object adapter, after creating and
284
284
  /// activating this adapter.
285
285
  /// @param adminId The identity of the Admin object.
286
286
  /// @return A proxy to the main ("") facet of the Admin object.
287
- /// @throws InitializationException Thrown when #createAdmin is called more than once.
287
+ /// @throws InitializationException Thrown when this function is called more than once.
288
288
  /// @see #getAdmin
289
289
  ObjectPrx createAdmin(const ObjectAdapterPtr& adminAdapter, const Identity& adminId);
290
290
 
@@ -35,8 +35,8 @@
35
35
  #endif
36
36
 
37
37
  // The Ice version.
38
- #define ICE_STRING_VERSION "3.8.0" // "A.B.C", with A=major, B=minor, C=patch
39
- #define ICE_INT_VERSION 30800 // AABBCC, with AA=major, BB=minor, CC=patch
38
+ #define ICE_STRING_VERSION "3.8.1" // "A.B.C", with A=major, B=minor, C=patch
39
+ #define ICE_INT_VERSION 30801 // AABBCC, with AA=major, BB=minor, CC=patch
40
40
  #define ICE_SO_VERSION "38" // "ABC", with A=major, B=minor, C=patch
41
41
 
42
42
  #if defined(_MSC_VER) && !defined(ICE_BUILDING_SLICE_COMPILERS) // Not using the IceUtil static build
@@ -25,7 +25,7 @@
25
25
 
26
26
  namespace Ice
27
27
  {
28
- /// Represents batch compression options when flushing queued batch requests.
28
+ /// Represents batch compression options for flushing queued batch requests.
29
29
  enum class CompressBatch : std::uint8_t
30
30
  {
31
31
  /// Compress the batch requests.
@@ -124,8 +124,8 @@ namespace Ice
124
124
  /// @return A future that becomes available when the flush completes.
125
125
  [[nodiscard]] std::future<void> flushBatchRequestsAsync(CompressBatch compress);
126
126
 
127
- /// Sets a close callback on the connection. The callback is called by the connection when it's closed. The
128
- /// callback is called from the Ice thread pool associated with the connection.
127
+ /// Sets a close callback on the connection. The callback is called by the connection when it's closed.
128
+ /// The callback is called from the Ice thread pool associated with the connection.
129
129
  /// @param callback The close callback object.
130
130
  virtual void setCloseCallback(CloseCallback callback) = 0;
131
131
 
@@ -20,8 +20,8 @@
20
20
 
21
21
  namespace Ice
22
22
  {
23
- /// An endpoint specifies the address of the server-end of an Ice connection: an object adapter listens on one or
24
- /// more endpoints and a client establishes a connection to an endpoint.
23
+ /// An endpoint specifies the address of the server-end of an Ice connection.
24
+ /// An object adapter listens on one or more endpoints and a client establishes a connection to an endpoint.
25
25
  /// @headerfile Ice/Ice.h
26
26
  class ICE_API Endpoint
27
27
  {
@@ -34,7 +34,7 @@ namespace Ice
34
34
  /// Returns the type ID of this exception. This corresponds to the Slice type ID for Slice-defined exceptions,
35
35
  /// and to a fully scoped name for other exceptions. For example
36
36
  /// "::Ice::CommunicatorDestroyedException".
37
- /// @return The type ID of this exception
37
+ /// @return The type ID of this exception.
38
38
  [[nodiscard]] virtual const char* ice_id() const noexcept = 0;
39
39
 
40
40
  /// Outputs a description of this exception to a stream.
@@ -124,7 +124,7 @@ namespace Ice
124
124
 
125
125
  /// Converts a stringified identity into an Identity.
126
126
  /// @param str The stringified identity.
127
- /// @return An Identity containing the name and category components.
127
+ /// @return An Identity created from the provided string.
128
128
  ICE_API Identity stringToIdentity(std::string_view str);
129
129
 
130
130
  /// Converts an Identity into a string using the specified mode.
@@ -785,7 +785,7 @@ namespace Ice
785
785
  [[nodiscard]] const char* ice_id() const noexcept final;
786
786
  };
787
787
 
788
- /// The exception that is thrown when an ObjectAdapter cannot be activated. This can happen when the locator
788
+ /// The exception that is thrown when an ObjectAdapter cannot be activated. This can happen when a Locator
789
789
  /// implementation detects another active ObjectAdapter with the same adapter ID.
790
790
  /// @headerfile Ice/Ice.h
791
791
  class ICE_API ObjectAdapterIdInUseException final : public LocalException
@@ -28,8 +28,8 @@ namespace Ice
28
28
  // send the message to C APIs that require null-terminated strings.
29
29
  // The message itself is also often constructed from a string produced by an ostringstream.
30
30
 
31
- /// Prints a message. The message is printed literally, without any decorations such as executable name or
32
- /// timestamp.
31
+ /// Prints a message.
32
+ /// The message is printed literally, without any decorations such as executable name or timestamp.
33
33
  /// @param message The message to log.
34
34
  virtual void print(const std::string& message) = 0;
35
35
 
@@ -54,7 +54,7 @@ namespace Ice
54
54
 
55
55
  /// Returns a clone of the logger with a new prefix.
56
56
  /// @param prefix The new prefix for the logger.
57
- /// @return A logger instance.
57
+ /// @return A new logger instance with the specified prefix.
58
58
  virtual LoggerPtr cloneWithPrefix(std::string prefix) = 0;
59
59
  };
60
60
  }
@@ -38,6 +38,8 @@ namespace Ice
38
38
  std::function<void()> addUpdateCallback(std::function<void(const PropertyDict&)> cb);
39
39
 
40
40
  private:
41
+ /// Removes a previously registered update callback.
42
+ /// @param p An iterator which points to the callback to remove.
41
43
  void removeUpdateCallback(std::list<std::function<void(const PropertyDict&)>>::iterator p);
42
44
 
43
45
  const PropertiesPtr _properties;
@@ -56,7 +56,7 @@ namespace Ice
56
56
  virtual void hold() = 0;
57
57
 
58
58
  /// Waits until the object adapter is in the holding state (see #hold) and the dispatch of requests received
59
- /// over incoming connection has completed.
59
+ /// over incoming connections has completed.
60
60
  /// @remark This function is provided for backward compatibility with older versions of Ice. Don't use it in
61
61
  /// new applications.
62
62
  virtual void waitForHold() = 0;
@@ -234,7 +234,7 @@ namespace Ice
234
234
  /// Removes a ServantLocator from this object adapter.
235
235
  /// @param category The category.
236
236
  /// @return The servant locator.
237
- /// @throws NotRegisteredException Thrown when no ServantLocator with the given category is registered.
237
+ /// @throws NotRegisteredException Thrown when no servant locator with the given category is registered.
238
238
  virtual ServantLocatorPtr removeServantLocator(std::string_view category) = 0;
239
239
 
240
240
  /// Finds a ServantLocator registered with this object adapter.
@@ -267,7 +267,7 @@ namespace Ice
267
267
  /// Creates a direct proxy from an Ice identity.
268
268
  /// @tparam Prx The type of the proxy to return.
269
269
  /// @param id An Ice identity.
270
- /// @return A proxy with the given identity and this published endpoints of this object adapter.
270
+ /// @return A proxy with the given identity and the published endpoints of this object adapter.
271
271
  template<typename Prx = ObjectPrx, std::enable_if_t<std::is_base_of_v<ObjectPrx, Prx>, bool> = true>
272
272
  Prx createDirectProxy(Identity id)
273
273
  {
@@ -6,6 +6,7 @@
6
6
  #include "InstanceF.h"
7
7
  #include "Instrumentation.h"
8
8
 
9
+ #include <exception>
9
10
  #include <string_view>
10
11
 
11
12
  #if defined(_MSC_VER)
@@ -676,6 +676,26 @@ namespace Ice
676
676
  //
677
677
  void writeConverted(const char*, size_t);
678
678
 
679
+ /// Writes a 1-byte size placeholder and returns its position; after writing the data, call
680
+ /// #endOneByteSize to patch the placeholder with the actual size at the given position.
681
+ /// @return The position of the 1-byte size placeholder.
682
+ size_type startOneByteSize()
683
+ {
684
+ size_type position = b.size();
685
+ write(std::uint8_t(0)); // placeholder
686
+ return position;
687
+ }
688
+
689
+ /// Updates the 1-byte size value at the given position. The new size is computed from the stream's current
690
+ /// position. The size must be <= 254.
691
+ /// @param position The position of the 1-byte size placeholder as returned by #startOneByteSize.
692
+ void endOneByteSize(size_type position)
693
+ {
694
+ auto size = static_cast<std::int32_t>(b.size() - position - 1);
695
+ assert(size >= 0 && size <= 254);
696
+ rewriteSize(size, b.begin() + position);
697
+ }
698
+
679
699
  StringConverterPtr _stringConverter;
680
700
  WstringConverterPtr _wstringConverter;
681
701
 
@@ -196,7 +196,7 @@ namespace Ice
196
196
 
197
197
  /// Gets an Ice property as a list of strings. The strings must be separated by whitespace or comma. The strings
198
198
  /// in the list can contain whitespace and commas if they are enclosed in single or double quotes. If quotes are
199
- /// mismatched, the default list is returned. Within single quotes or double quotes, you can escape the quote
199
+ /// mismatched, the default list is returned. Within single quotes or double quotes, you can escape the quote
200
200
  /// in question with a backslash, e.g. O'Reilly can be written as O'Reilly, "O'Reilly" or 'O\'Reilly'.
201
201
  /// @param key The property key.
202
202
  /// @return The property value interpreted as a list of strings, or the default value if the property is not
@@ -216,8 +216,8 @@ namespace Ice
216
216
  /// @see #setProperty
217
217
  StringSeq getPropertyAsListWithDefault(std::string_view key, const StringSeq& value);
218
218
 
219
- /// Gets all properties whose keys begin with @p prefix. If @p prefix is the empty string, then all properties
220
- /// are returned.
219
+ /// Gets all properties whose keys begin with the given prefix. If @p prefix is the empty string,
220
+ /// then all properties are returned.
221
221
  /// @param prefix The prefix to search for.
222
222
  /// @return The matching property set.
223
223
  PropertyDict getPropertiesForPrefix(std::string_view prefix);
@@ -623,7 +623,7 @@ namespace Ice
623
623
  [[nodiscard]] bool ice_isBatchDatagram() const noexcept;
624
624
 
625
625
  /// Gets the compression override setting of this proxy.
626
- /// @return The compression override setting. If nullopt is returned, no override is set. Otherwise, true
626
+ /// @return The compression override setting. If nullopt is returned, no override is set. Otherwise, `true`
627
627
  /// if compression is enabled, `false` otherwise.
628
628
  [[nodiscard]] std::optional<bool> ice_getCompress() const noexcept;
629
629
 
@@ -32,8 +32,13 @@ namespace Ice::SSL
32
32
  ///
33
33
  /// This callback is invoked by the SSL transport for each new outgoing connection before starting the SSL
34
34
  /// handshake to determine the appropriate client credentials. The callback must return a `SCH_CREDENTIALS` that
35
- /// represents the client's credentials. The SSL transport takes ownership of the credentials' `paCred` and
36
- /// `hRootStore` members and releases them when the connection is closed.
35
+ /// represents the client's credentials. The returned credentials are passed to [AcquireCredentialsHandle] to
36
+ /// create the credential handle for the connection; see the Schannel documentation for details on the
37
+ /// available fields. The SSL transport takes ownership of the credentials' `paCred` and `hRootStore` members
38
+ /// and releases them when the connection is closed.
39
+ ///
40
+ /// Certificate validation is not performed through the returned credentials. Use `trustedRootCertificates`
41
+ /// or `serverCertificateValidationCallback` instead.
37
42
  ///
38
43
  /// @param host The target host name.
39
44
  /// @return The client SSL credentials.
@@ -42,9 +47,12 @@ namespace Ice::SSL
42
47
  /// @snippet Ice/SSL/SchannelClientAuthenticationOptions.cpp clientCertificateSelectionCallback
43
48
  ///
44
49
  /// @see [SCH_CREDENTIALS]
50
+ /// @see [AcquireCredentialsHandle]
45
51
  ///
46
52
  /// [SCH_CREDENTIALS]:
47
53
  /// https://learn.microsoft.com/en-us/windows/win32/api/schannel/ns-schannel-sch_credentials
54
+ /// [AcquireCredentialsHandle]:
55
+ /// https://learn.microsoft.com/en-us/windows/win32/secauthn/acquirecredentialshandle--schannel
48
56
  std::function<SCH_CREDENTIALS(const std::string& host)> clientCredentialsSelectionCallback;
49
57
 
50
58
  /// A callback invoked before initiating a new SSL handshake, providing an opportunity to customize the SSL
@@ -33,8 +33,13 @@ namespace Ice::SSL
33
33
  ///
34
34
  /// This callback is invoked by the SSL transport for each new incoming connection before starting the SSL
35
35
  /// handshake to determine the appropriate server credentials. The callback must return a `SCH_CREDENTIALS` that
36
- /// represents the server's credentials. The SSL transport takes ownership of the credentials' `paCred` and
37
- /// `hRootStore` members and releases them when the connection is closed.
36
+ /// represents the server's credentials. The returned credentials are passed to [AcquireCredentialsHandle] to
37
+ /// create the credential handle for the connection; see the Schannel documentation for details on the
38
+ /// available fields. The SSL transport takes ownership of the credentials' `paCred` and `hRootStore` members
39
+ /// and releases them when the connection is closed.
40
+ ///
41
+ /// Certificate validation is not performed through the returned credentials. Use `trustedRootCertificates`
42
+ /// or `clientCertificateValidationCallback` instead.
38
43
  ///
39
44
  /// @param adapterName The name of the object adapter that accepted the connection.
40
45
  /// @return The server SSL credentials.
@@ -43,9 +48,12 @@ namespace Ice::SSL
43
48
  /// @snippet Ice/SSL/SchannelServerAuthenticationOptions.cpp serverCertificateSelectionCallback
44
49
  ///
45
50
  /// @see [SCH_CREDENTIALS]
51
+ /// @see [AcquireCredentialsHandle]
46
52
  ///
47
53
  /// [SCH_CREDENTIALS]:
48
54
  /// https://learn.microsoft.com/en-us/windows/win32/api/schannel/ns-schannel-sch_credentials
55
+ /// [AcquireCredentialsHandle]:
56
+ /// https://learn.microsoft.com/en-us/windows/win32/secauthn/acquirecredentialshandle--schannel
49
57
  std::function<SCH_CREDENTIALS(const std::string& adapterName)> serverCredentialsSelectionCallback;
50
58
 
51
59
  /// A callback invoked before initiating a new SSL handshake, providing an opportunity to customize the SSL
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'BuiltinSequences.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -24,7 +24,7 @@
24
24
  # if ICE_INT_VERSION % 100 >= 50
25
25
  # error Beta header file detected
26
26
  # endif
27
- # if ICE_INT_VERSION % 100 < 0
27
+ # if ICE_INT_VERSION % 100 < 1
28
28
  # error Ice patch level mismatch!
29
29
  # endif
30
30
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Context.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -19,7 +19,7 @@
19
19
  # if ICE_INT_VERSION % 100 >= 50
20
20
  # error Beta header file detected
21
21
  # endif
22
- # if ICE_INT_VERSION % 100 < 0
22
+ # if ICE_INT_VERSION % 100 < 1
23
23
  # error Ice patch level mismatch!
24
24
  # endif
25
25
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'EndpointTypes.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Identity.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -21,7 +21,7 @@
21
21
  # if ICE_INT_VERSION % 100 >= 50
22
22
  # error Beta header file detected
23
23
  # endif
24
- # if ICE_INT_VERSION % 100 < 0
24
+ # if ICE_INT_VERSION % 100 < 1
25
25
  # error Ice patch level mismatch!
26
26
  # endif
27
27
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Locator.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'LocatorRegistry.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Metrics.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'OperationMode.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Process.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'PropertiesAdmin.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'PropertyDict.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -19,7 +19,7 @@
19
19
  # if ICE_INT_VERSION % 100 >= 50
20
20
  # error Beta header file detected
21
21
  # endif
22
- # if ICE_INT_VERSION % 100 < 0
22
+ # if ICE_INT_VERSION % 100 < 1
23
23
  # error Ice patch level mismatch!
24
24
  # endif
25
25
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'RemoteLogger.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -19,7 +19,7 @@
19
19
  # if ICE_INT_VERSION % 100 >= 50
20
20
  # error Beta header file detected
21
21
  # endif
22
- # if ICE_INT_VERSION % 100 < 0
22
+ # if ICE_INT_VERSION % 100 < 1
23
23
  # error Ice patch level mismatch!
24
24
  # endif
25
25
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'ReplyStatus.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Router.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'SliceChecksumDict.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -17,7 +17,7 @@
17
17
  # if ICE_INT_VERSION % 100 >= 50
18
18
  # error Beta header file detected
19
19
  # endif
20
- # if ICE_INT_VERSION % 100 < 0
20
+ # if ICE_INT_VERSION % 100 < 1
21
21
  # error Ice patch level mismatch!
22
22
  # endif
23
23
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Version.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -20,7 +20,7 @@
20
20
  # if ICE_INT_VERSION % 100 >= 50
21
21
  # error Beta header file detected
22
22
  # endif
23
- # if ICE_INT_VERSION % 100 < 0
23
+ # if ICE_INT_VERSION % 100 < 1
24
24
  # error Ice patch level mismatch!
25
25
  # endif
26
26
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Lookup.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) ZeroC, Inc.
2
2
 
3
- // slice2cpp version 3.8.0
3
+ // slice2cpp version 3.8.1
4
4
  // <auto-generated>Generated from Slice file 'Lookup.ice'.</auto-generated>
5
5
  // clang-format off
6
6
 
@@ -18,7 +18,7 @@
18
18
  # if ICE_INT_VERSION % 100 >= 50
19
19
  # error Beta header file detected
20
20
  # endif
21
- # if ICE_INT_VERSION % 100 < 0
21
+ # if ICE_INT_VERSION % 100 < 1
22
22
  # error Ice patch level mismatch!
23
23
  # endif
24
24
  #endif