(file) Return to HTTPAcceptor.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/HTTPAcceptor.cpp between version 1.19 and 1.23.2.2

version 1.19, 2002/05/30 00:12:38 version 1.23.2.2, 2002/10/28 15:43:21
Line 1 
Line 1 
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001 BMC Software, Hewlett-Packard Company, IBM,  // Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,
 // The Open Group, Tivoli Systems // The Open Group, Tivoli Systems
 // //
 // Permission is hereby granted, free of charge, to any person obtaining a copy // Permission is hereby granted, free of charge, to any person obtaining a copy
Line 87 
Line 87 
 HTTPAcceptor::HTTPAcceptor(Monitor* monitor, MessageQueue* outputMessageQueue) HTTPAcceptor::HTTPAcceptor(Monitor* monitor, MessageQueue* outputMessageQueue)
    : Base(PEGASUS_QUEUENAME_HTTPACCEPTOR),    : Base(PEGASUS_QUEUENAME_HTTPACCEPTOR),
      _monitor(monitor), _outputMessageQueue(outputMessageQueue),      _monitor(monitor), _outputMessageQueue(outputMessageQueue),
      _rep(0), _sslcontext(NULL)       _rep(0), _sslcontext(NULL), _entry_index(-1)
 { {
  
    Socket::initializeInterface();    Socket::initializeInterface();
Line 98 
Line 98 
    :       Base(PEGASUS_QUEUENAME_HTTPACCEPTOR),    :       Base(PEGASUS_QUEUENAME_HTTPACCEPTOR),
            _monitor(monitor), _outputMessageQueue(outputMessageQueue),            _monitor(monitor), _outputMessageQueue(outputMessageQueue),
            _rep(0),            _rep(0),
            _sslcontext(sslcontext)             _sslcontext(sslcontext),
              _entry_index(-1)
 { {
    Socket::initializeInterface();    Socket::initializeInterface();
 } }
Line 149 
Line 150 
             {             {
                _monitor->unsolicitSocketMessages(socket);                _monitor->unsolicitSocketMessages(socket);
                _rep->connections.remove(i);                _rep->connections.remove(i);
                while (connection->refcount.value()) { }  
                delete connection;                delete connection;
                break;                break;
             }             }
Line 269 
Line 269 
  
    // Register to receive SocketMessages on this socket:    // Register to receive SocketMessages on this socket:
  
    if (!_monitor->solicitSocketMessages(     if ( -1 == ( _entry_index = _monitor->solicitSocketMessages(
           _rep->socket,           _rep->socket,
           SocketMessage::READ | SocketMessage::EXCEPTION,           SocketMessage::READ | SocketMessage::EXCEPTION,
           getQueueId(),           getQueueId(),
           Monitor::ACCEPTOR))            Monitor::ACCEPTOR)))
    {    {
       Socket::close(_rep->socket);       Socket::close(_rep->socket);
       delete _rep;       delete _rep;
Line 404 
Line 404 
       _monitor, mp_socket, this, static_cast<MessageQueue *>(_outputMessageQueue));       _monitor, mp_socket, this, static_cast<MessageQueue *>(_outputMessageQueue));
  
    // Solicit events on this new connection's socket:    // Solicit events on this new connection's socket:
      int index;
  
    if (!_monitor->solicitSocketMessages(     if (-1 ==  (index = _monitor->solicitSocketMessages(
           socket,           socket,
           SocketMessage::READ | SocketMessage::EXCEPTION,           SocketMessage::READ | SocketMessage::EXCEPTION,
           connection->getQueueId(), Monitor::CONNECTION))            connection->getQueueId(), Monitor::CONNECTION)) )
    {    {
       delete connection;       delete connection;
       Socket::close(socket);       Socket::close(socket);
    }    }
  
    // Save the socket for cleanup later:    // Save the socket for cleanup later:
      connection->_entry_index = index;
  
    _rep->connections.append(connection);    _rep->connections.append(connection);
 } }


Legend:
Removed from v.1.19  
changed lines
  Added in v.1.23.2.2

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2