Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix proxy determine address #454

Closed
wants to merge 6 commits into from

Conversation

ylavic
Copy link
Member

@ylavic ylavic commented Jun 18, 2024

No description provided.

notroj and others added 5 commits June 19, 2024 15:30
  output when dumping multiple resolved addresses.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918228 13f79535-47bb-0310-9956-ffa450edef68
…red addressTTL. BZ 69126

* modules/proxy/proxy_util.c(ap_proxy_determine_address):
  Fix shared expiry compare-and-swap loop.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918410 13f79535-47bb-0310-9956-ffa450edef68
…'t change.

* modules/proxy/proxy_util.c(address_cleanup):
  Rename to conn_cleanup() since it also closes the socket, and run
  socket_cleanup() first to avoid dangling conn->sock->remote_addr.

* modules/proxy/proxy_util.c(ap_proxy_determine_address):
  Compare the new address with the old one and keep the socket alive
  if it did not change.

Follow up to r1918410.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918412 13f79535-47bb-0310-9956-ffa450edef68
…t] is alive.

ap_proxy_connect_backend() will use the first conn->addr[->next] that works, so
the current address alive can be any of them.

* modules/proxy/proxy_util.c(ap_proxy_determine_address):
  Loop for all conn->addr[->next] to determine if addr_alive.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918429 13f79535-47bb-0310-9956-ffa450edef68
… only.

apr_socket_connect() on unixes does copy the passed in *addr, so limit the
liefetime workaround to Windows and OS/2 only (which don't).

* modules/proxy/proxy_util.c(ap_proxy_determine_address):
  #ifdef the relevant code for WIN32/OS2 only, and improve comment.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918438 13f79535-47bb-0310-9956-ffa450edef68
@ylavic ylavic force-pushed the fix_proxy_determine_address branch from 96b3122 to e89e206 Compare June 19, 2024 13:30
…he address cleanup.

* modules/proxy/proxy_util.c(ap_proxy_determine_address):
  Move conn_cleanup() after apr_pool_cleanup_run().



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1918442 13f79535-47bb-0310-9956-ffa450edef68
asfgit pushed a commit that referenced this pull request Jun 24, 2024
  *) mod_proxy: Fix DNS requests and connections closed before the
     configured addressTTL.  BZ 69126.  [Yann Ylavic]



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1918543 13f79535-47bb-0310-9956-ffa450edef68
@ylavic
Copy link
Member Author

ylavic commented Jun 24, 2024

Merged in c66fe1a

@ylavic ylavic closed this Jun 24, 2024
@ylavic ylavic deleted the fix_proxy_determine_address branch June 24, 2024 13:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants