Willy, Christopher, find a series that converts a few members of `struct proxy` into ists. All of them have already been converted into ists when operating on them, so directly storing them as ists makes that code cleaner.
One drawback is that `struct proxy` grows by 16 bytes. It might or might not be necessary to reorder the struct members to keep it efficient. The `server_id_hdr_name` one is tagged MEDIUM, because that required some non-trivial changes in the FCGI implementation. As I've needed to modify that code anyway, I've also added two additional CLEANUP commits. As for the second CLEANUP commit: If one of you knows how to fix the Coccinelle patch to detect that specific pattern, I'd appreciate if you could make the necessary changes to ist.cocci. Unfortunately my Coccinelle skills are not good enough. I've tested that HAProxy compiles and that the existing reg-tests pass, but I didn't specifically test FCGI (and there are no exiting reg-tests for that). So please carefully check the patches for dumb mistakes. Best regards Tim Duesterhus (6): MINOR: proxy: Store monitor_uri as a `struct ist` MINOR: proxy: Store fwdfor_hdr_name as a `struct ist` MINOR: proxy: Store orgto_hdr_name as a `struct ist` MEDIUM: proxy: Store server_id_hdr_name as a `struct ist` CLEANUP: fcgi: Replace memcpy() on ist by istcat() CLEANUP: fcgi: Use `istadv()` in `fcgi_strm_send_params` include/haproxy/proxy-t.h | 12 ++++------ src/cfgparse-listen.c | 46 ++++++++++++++++----------------------- src/http_ana.c | 11 ++++------ src/mux_fcgi.c | 23 ++++++++++---------- src/mux_h1.c | 8 +++---- src/mux_h2.c | 8 +++---- src/proxy.c | 37 +++++++++++++------------------ 7 files changed, 62 insertions(+), 83 deletions(-) -- 2.35.1