Dynamically creating strings in inline c for use in the VRT_SetHdr function
Paul A. Procacci
pprocacci at datapipe.com
Tue Oct 30 02:05:51 CET 2012
> Hi all,
Hi.
> Firstly, Is there a way to create the header string dynamically. I
> know the header string has to be in the format "\020X-Forwarded-For:",
> it has to start with the length of the string in octal, But if I'm
> creating the header name dynamically, Say if i wanted to create
> separate headers based of GeoIP data or something similar, How could I
> go about creating the string so It matches the format?
Here is one way:
###############################################
char *str = "X-Header: test";
char *header;
asprintf(&header, "\\0%o%s", strlen(str), str);
# Make sure to check return value, etc.
###############################################
> And secondly, purely out of interest, Could someone explain why the
> header is prefixed with its length in octal? Does it have something to
> do with correctly setting the amount of memory needed?
I do not know the reasoning.
~Paul
________________________________
This message may contain confidential or privileged information. If you are not the intended recipient, please advise us immediately and delete this message. See http://www.datapipe.com/legal/email_disclaimer/ for further information on confidentiality and the risks of non-secure electronic communication. If you cannot access these links, please notify us by reply message and we will send the contents to you.
More information about the varnish-misc
mailing list