Oknet Xu created TS-4697:
----------------------------

             Summary: MIOBuffer did not free if failed on ipallow check in 
HttpSessionAccept::accept()
                 Key: TS-4697
                 URL: https://issues.apache.org/jira/browse/TS-4697
             Project: Traffic Server
          Issue Type: Bug
          Components: HTTP, Network
            Reporter: Oknet Xu


{code}
void
HttpSessionAccept::accept(NetVConnection *netvc, MIOBuffer *iobuf, 
IOBufferReader *reader)
{
  sockaddr const *client_ip = netvc->get_remote_addr();
  const AclRecord *acl_record = NULL;
  ip_port_text_buffer ipb;
  IpAllow::scoped_config ipallow;

  // The backdoor port is now only bound to "localhost", so no
  // reason to check for if it's incoming from "localhost" or not.
  if (backdoor) {
    acl_record = IpAllow::AllMethodAcl();
  } else if (ipallow && (((acl_record = ipallow->match(client_ip)) == NULL) || 
(acl_record->isEmpty()))) {
    ////////////////////////////////////////////////////
    // if client address forbidden, close immediately //
    ////////////////////////////////////////////////////
    Warning("client '%s' prohibited by ip-allow policy", ats_ip_ntop(client_ip, 
ipb, sizeof(ipb)));
    netvc->do_io_close();

    return;   // ----------------->  MIOBuffer did not free.
  }
...

{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to