]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
CLEANUP: httpclient: do not use the appctx.ctx anymore
authorWilly Tarreau <w@1wt.eu>
Thu, 5 May 2022 18:12:01 +0000 (20:12 +0200)
committerWilly Tarreau <w@1wt.eu>
Fri, 6 May 2022 16:13:36 +0000 (18:13 +0200)
The httpclient already uses its own pointer and only used to store this
single pointer into the appctx.ctx field. Let's just move it to the
svcctx and remove this entry from the appctx union.

include/haproxy/applet-t.h
src/http_client.c

index 51186b523b5543cceabd3b57f404123a0578a8a2..6727551139f3a67084a4755c4746f07ae6731a30 100644 (file)
@@ -135,16 +135,6 @@ struct appctx {
                                unsigned int unused:31;
                                struct shared_block *next;  /* The next block of data to be sent for this cache entry. */
                        } cache;
-                       /* all entries below are used by various CLI commands, please
-                        * keep the grouped together and avoid adding new ones.
-                        */
-                       struct {
-                               struct httpclient *ptr;
-                       } httpclient;
-
-                       /* NOTE: please add regular applet contexts (ie: not
-                        * CLI-specific ones) above, before "cli".
-                        */
                } ctx;                                  /* context-specific variables used by any applet */
        }; /* end of anon union */
 };
index 0062b2807fdb0ce1eeea97f6c7b885bca062ffbb..5d22044472b52e239d66d3e21e19064199222476 100644 (file)
@@ -639,7 +639,7 @@ struct appctx *httpclient_start(struct httpclient *hc)
 
        hc->appctx = appctx;
        hc->flags |= HTTPCLIENT_FS_STARTED;
-       appctx->ctx.httpclient.ptr = hc;
+       appctx->svcctx = hc;
 
        /* The request was transferred when the stream was created. So switch
         * directly to REQ_BODY or RES_STLINE state
@@ -738,7 +738,7 @@ err:
 
 static void httpclient_applet_io_handler(struct appctx *appctx)
 {
-       struct httpclient *hc = appctx->ctx.httpclient.ptr;
+       struct httpclient *hc = appctx->svcctx;
        struct conn_stream *cs = appctx->owner;
        struct stream *s = __cs_strm(cs);
        struct channel *req = &s->req;
@@ -1043,7 +1043,7 @@ end:
 
 static void httpclient_applet_release(struct appctx *appctx)
 {
-       struct httpclient *hc = appctx->ctx.httpclient.ptr;
+       struct httpclient *hc = appctx->svcctx;
 
        /* mark the httpclient as ended */
        hc->flags |= HTTPCLIENT_FS_ENDED;