diff mbox series

instaweb: fix ip binding for the python http.server

Message ID 20250110101346.30416-1-alecsk@gmail.com (mailing list archive)
State New
Headers show
Series instaweb: fix ip binding for the python http.server | expand

Commit Message

Alecs King Jan. 10, 2025, 10:13 a.m. UTC
`git instaweb -d python` should bind the server to 0.0.0.0
`git instaweb -d python -l` should bind the server to 127.0.0.1

Signed-off-by: Alecs King <alecsk@gmail.com>
---
 git-instaweb.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Junio C Hamano Jan. 10, 2025, 11:32 p.m. UTC | #1
Alecs King <alecsk@gmail.com> writes:

> `git instaweb -d python` should bind the server to 0.0.0.0
> `git instaweb -d python -l` should bind the server to 127.0.0.1

That is a correct statement of the fact.  What makes this patch
worthwhile is that the current code gets it the other way around
since its inception at 2eb14bb2 (git-instaweb: add Python builtin
http.server support, 2019-01-28).

Well spotted.

There seem to be some backends that simply ignore the "--local"
option.  Should they be somehow "fixed" (or at least making it a
documented bug)?  It is not within the scope of this patch, but
since the script has our attention...

Thanks, will queue.

>
> Signed-off-by: Alecs King <alecsk@gmail.com>
> ---
>  git-instaweb.sh | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/git-instaweb.sh b/git-instaweb.sh
> index 5ad50160bb..7b44f70789 100755
> --- a/git-instaweb.sh
> +++ b/git-instaweb.sh
> @@ -694,9 +694,9 @@ class GitWebRequestHandler(CGIHTTPRequestHandler):
>  		return result
>  
>  
> -bind = "127.0.0.1"
> +bind = "0.0.0.0"
>  if "$local" == "true":
> -	bind = "0.0.0.0"
> +	bind = "127.0.0.1"
>  
>  # Set our http root directory
>  # This is a work around for a missing directory argument in older Python versions
Arti Zirk Jan. 15, 2025, 9:24 a.m. UTC | #2
On R, 2025-01-10 at 18:13 +0800, Alecs King wrote:
> `git instaweb -d python` should bind the server to 0.0.0.0
> `git instaweb -d python -l` should bind the server to 127.0.0.1

Thanks for noticing that bug and sending a patch!


>  GitWebRequestHandler(CGIHTTPRequestHandler):

NB: Looks like CGI support will be removed some time in the future and
the Python backend for instaweb will stop working afterwards.

https://docs.python.org/3.13/library/http.server.html#http.server.CGIHTTPRequestHandler

When I get the time I should look into cleaning up the instaweb script.
diff mbox series

Patch

diff --git a/git-instaweb.sh b/git-instaweb.sh
index 5ad50160bb..7b44f70789 100755
--- a/git-instaweb.sh
+++ b/git-instaweb.sh
@@ -694,9 +694,9 @@  class GitWebRequestHandler(CGIHTTPRequestHandler):
 		return result
 
 
-bind = "127.0.0.1"
+bind = "0.0.0.0"
 if "$local" == "true":
-	bind = "0.0.0.0"
+	bind = "127.0.0.1"
 
 # Set our http root directory
 # This is a work around for a missing directory argument in older Python versions