# HG changeset patch # User Timo Sirainen # Date 1203602268 -7200 # Node ID 27b7b6c349616952fcfa04f675affaa5a4e350ab # Parent e0debdcd2e10cd788e324775d43ae5ab0f7878e7 Fixed proxy_maybe handling. diff -r e0debdcd2e10 -r 27b7b6c34961 src/auth/auth-request.c --- a/src/auth/auth-request.c Thu Feb 21 15:40:13 2008 +0200 +++ b/src/auth/auth-request.c Thu Feb 21 15:57:48 2008 +0200 @@ -985,7 +985,6 @@ ourself */ request->proxy = TRUE; request->proxy_maybe = TRUE; - name = "proxy"; value = NULL; } @@ -1261,17 +1260,22 @@ if (!success) { /* drop all proxy fields */ + } else if (!request->proxy_maybe) { + /* proxying */ + request->no_login = TRUE; + return; + } else if (!auth_request_proxy_is_self(request)) { + /* proxy destination isn't ourself - proxy */ + auth_stream_reply_remove(request->extra_fields, "proxy_maybe"); + auth_stream_reply_add(request->extra_fields, "proxy", NULL); + request->no_login = TRUE; + return; } else { - if (!request->proxy_maybe || - !auth_request_proxy_is_self(request)) { - request->no_login = TRUE; - return; - } - /* proxying to ourself - log in without proxying by dropping all the proxying fields. */ } auth_stream_reply_remove(request->extra_fields, "proxy"); + auth_stream_reply_remove(request->extra_fields, "proxy_maybe"); auth_stream_reply_remove(request->extra_fields, "host"); auth_stream_reply_remove(request->extra_fields, "port"); auth_stream_reply_remove(request->extra_fields, "destuser");