[ 
https://issues.apache.org/jira/browse/TS-4697?focusedWorklogId=31660&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-31660
 ]

ASF GitHub Bot logged work on TS-4697:
--------------------------------------

                Author: ASF GitHub Bot
            Created on: 05/Nov/16 07:00
            Start Date: 05/Nov/16 07:00
    Worklog Time Spent: 10m 
      Work Description: GitHub user oknet opened a pull request:

    https://github.com/apache/trafficserver/pull/1200

    TS-4697: Free MIOBuffer if the ipallow check fails. (backport for 6.2.x)

    (cherry picked from commit 40b7b484869c1876d7f82953828524c393e650ca)

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/oknet/trafficserver TS-4697-6.2.x

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/trafficserver/pull/1200.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1200
    
----
commit 4c54e20767bee53b3ffc75fd4b921bef4729aec8
Author: Oknet Xu <[email protected]>
Date:   2016-07-23T12:15:11Z

    TS-4697: Free MIOBuffer if the ipallow check fails. (backport for 6.2.x)
    
    (cherry picked from commit 40b7b484869c1876d7f82953828524c393e650ca)

----


Issue Time Tracking
-------------------

    Worklog Id:     (was: 31660)
    Time Spent: 3h 20m  (was: 3h 10m)

> MIOBuffer is not freed if ipallow check fails 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
>            Assignee: Oknet Xu
>             Fix For: 7.0.0
>
>          Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> {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