/usr/include/tao/IIOP_Transport.h is in libtao-dev 6.0.1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 | // -*- C++ -*-
// ===================================================================
/**
* @file IIOP_Transport.h
*
* $Id: IIOP_Transport.h 85441 2009-05-26 17:02:14Z coryan $
*
* @author Originally by Fred Kuhns <fredk@cs.wustl.edu>
* @author Modified by Balachandran Natarajan <bala@cs.wustl.edu>
*/
// ===================================================================
#ifndef TAO_IIOP_TRANSPORT_H
#define TAO_IIOP_TRANSPORT_H
#include /**/ "ace/pre.h"
#include "tao/orbconf.h"
#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
#if defined (TAO_HAS_IIOP) && (TAO_HAS_IIOP != 0)
#include "tao/Transport.h"
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
namespace IIOP
{
class ListenPointList;
}
// Forward decls.
class TAO_IIOP_Connection_Handler;
class TAO_ORB_Core;
class TAO_Operation_Details;
class TAO_Acceptor;
class TAO_Adapter;
/**
* @class TAO_IIOP_Transport
*
* @brief Specialization of the base TAO_Transport class to handle the
* IIOP protocol.
*
* Specialization of the base TAO_Transport class to handle the IIOP
* protocol.
*/
class TAO_Export TAO_IIOP_Transport : public TAO_Transport
{
public:
/// Constructor.
TAO_IIOP_Transport (TAO_IIOP_Connection_Handler *handler,
TAO_ORB_Core *orb_core);
protected:
/// Destructor
/**
* Protected destructor to enforce proper memory management through
* the reference counting mechanism.
*/
virtual ~TAO_IIOP_Transport (void);
/** @name Overridden Template Methods
*
* Please check the documentation in "tao/Transport.h" for more
* details.
*/
//@{
virtual ACE_Event_Handler * event_handler_i (void);
virtual ssize_t send (iovec *iov, int iovcnt,
size_t &bytes_transferred,
const ACE_Time_Value *timeout = 0);
#if TAO_HAS_SENDFILE == 1
virtual ssize_t sendfile (TAO_MMAP_Allocator * allocator,
iovec * iov,
int iovcnt,
size_t &bytes_transferred,
TAO::Transport::Drain_Constraints const & dc);
#endif /* TAO_HAS_SENDFILE==1 */
virtual ssize_t recv (char *buf, size_t len, const ACE_Time_Value *s = 0);
public:
/// Bridge method to call a similar method on the connection handler
void update_protocol_properties (int send_buffer_size,
int recv_buffer_size,
int no_delay,
int enable_network_priority);
/// @todo These methods IMHO should have more meaningful
/// names. The names seem to indicate nothing.
virtual int send_request (TAO_Stub *stub,
TAO_ORB_Core *orb_core,
TAO_OutputCDR &stream,
TAO_Message_Semantics message_semantics,
ACE_Time_Value *max_wait_time);
virtual int send_message (TAO_OutputCDR &stream,
TAO_Stub *stub = 0,
TAO_Message_Semantics message_semantics = TAO_TWOWAY_REQUEST,
ACE_Time_Value *max_time_wait = 0);
virtual int tear_listen_point_list (TAO_InputCDR &cdr);
virtual TAO_Connection_Handler * connection_handler_i (void);
//@}
private:
/// Set the Bidirectional context info in the service context list
void set_bidir_context_info (TAO_Operation_Details &opdetails);
/// Add the listen points in @a acceptor to the @a listen_point_list
/// if this connection is in the same interface as that of the
/// endpoints in the @a acceptor
int get_listen_point (IIOP::ListenPointList &listen_point_list,
TAO_Acceptor *acceptor);
private:
/// The connection service handler used for accessing lower layer
/// communication protocols.
TAO_IIOP_Connection_Handler *connection_handler_;
};
TAO_END_VERSIONED_NAMESPACE_DECL
#endif /* TAO_HAS_IIOP && TAO_HAS_IIOP != 0 */
#include /**/ "ace/post.h"
#endif /* TAO_IIOP_TRANSPORT_H */
|