<div dir="ltr"><div>Hi Uday,</div><div><br></div><div>I'm not sure what went wrong, but this Dockerfile works:</div><div style="margin-left:40px"><span style="font-family:monospace">from centos:7<br><br>RUN \<br></span></div><div style="margin-left:40px"><div style="margin-left:40px"><span style="font-family:monospace">   set -ex; \</span><br><span style="font-family:monospace">   ulimit -n 10240; \</span><br><span style="font-family:monospace">   yum install -y make automake pkg-config libtool python-docutils autoconf-archive uuid-devel epel-release python-docutils; \</span><br><span style="font-family:monospace">  curl -s <a href="https://packagecloud.io/install/repositories/varnishcache/varnish5/script.rpm.sh">https://packagecloud.io/install/repositories/varnishcache/varnish5/script.rpm.sh</a> | bash; \</span><br><span style="font-family:monospace">      yum install -y varnish-devel; \</span><br><span style="font-family:monospace">      curl -O <a href="https://raw.githubusercontent.com/varnish/toolbox/master/install-vmod/install-vmod">https://raw.githubusercontent.com/varnish/toolbox/master/install-vmod/install-vmod</a>; \</span><br><span style="font-family:monospace"> chmod +x install-vmod ;\</span><br><span style="font-family:monospace">     ./install-vmod <a href="https://github.com/otto-de/libvmod-uuid/archive/refs/heads/5.x.tar.gz">https://github.com/otto-de/libvmod-uuid/archive/refs/heads/5.x.tar.gz</a></span></div></div><div><br></div><div>Also, I know you have heard it before, but Varnish 5 is ancient, please don't use it and upgrade to something more recent, either 7.5 or to the 6.0 LTS.</div><div><br></div><div>Let us know how it goes.</div><div><br></div><div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>-- <br></div><div>Guillaume Quintard<br></div></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Apr 30, 2024 at 1:07 AM Uday Kumar <<a href="mailto:uday.polu@indiamart.com" target="_blank">uday.polu@indiamart.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>hello Guillaume,</div><div><br></div><div>I am trying to install vmod_uuid on my centOS 7 machine</div><div><br></div><div>Resource i used: <a href="https://github.com/otto-de/libvmod-uuid/blob/5.x/INSTALL.rst" target="_blank">https://github.com/otto-de/libvmod-uuid/blob/5.x/INSTALL.rst</a></div><div><br></div><div>varnish version: 5.2.1</div><div><br></div><div>I am getting below errors while running <b>make </b>command</div><div><br></div><div>make[1]: Entering directory `/usr/local/src/libvmod-uuid'<br>Making all in src<br>make[2]: Entering directory `/usr/local/src/libvmod-uuid/src'<br>  CC       vmod_uuid.lo<br>In file included from vmod_uuid.c:35:0:<br>vcc_if.h:11:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING vmod_uuid(VRT_CTX, struct vmod_priv *);<br> ^<br>vcc_if.h:11:31: error: expected ‘)’ before ‘struct’<br> VCL_STRING vmod_uuid(VRT_CTX, struct vmod_priv *);<br>                               ^<br>vcc_if.h:12:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING vmod_uuid_v1(VRT_CTX, struct vmod_priv *);<br> ^<br>vcc_if.h:12:34: error: expected ‘)’ before ‘struct’<br> VCL_STRING vmod_uuid_v1(VRT_CTX, struct vmod_priv *);<br>                                  ^<br>vcc_if.h:13:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING vmod_uuid_v3(VRT_CTX, struct vmod_priv *, VCL_STRING,<br> ^<br>vcc_if.h:13:34: error: expected ‘)’ before ‘struct’<br> VCL_STRING vmod_uuid_v3(VRT_CTX, struct vmod_priv *, VCL_STRING,<br>                                  ^<br>vcc_if.h:15:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING vmod_uuid_v4(VRT_CTX, struct vmod_priv *);<br> ^<br>vcc_if.h:15:34: error: expected ‘)’ before ‘struct’<br> VCL_STRING vmod_uuid_v4(VRT_CTX, struct vmod_priv *);<br>                                  ^<br>vcc_if.h:16:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING vmod_uuid_v5(VRT_CTX, struct vmod_priv *, VCL_STRING,<br> ^<br>vcc_if.h:16:34: error: expected ‘)’ before ‘struct’<br> VCL_STRING vmod_uuid_v5(VRT_CTX, struct vmod_priv *, VCL_STRING,<br>                                  ^<br>vmod_uuid.c:48:17: error: expected ‘)’ before ‘int’<br> mkuuid(VRT_CTX, int utype, uuid_t *uuid, const char *str, va_list ap)<br>                 ^<br>vmod_uuid.c:76:1: error: unknown type name ‘VCL_STRING’<br> _uuid(VRT_CTX, uuid_t *uuid, int utype, ...)<br> ^<br>vmod_uuid.c:76:16: error: expected ‘)’ before ‘uuid_t’<br> _uuid(VRT_CTX, uuid_t *uuid, int utype, ...)<br>                ^<br>vmod_uuid.c:104:21: error: expected ‘)’ before ‘void’<br> free_uuids(VRT_CTX, void *priv)<br>                     ^<br>vmod_uuid.c:116:39: error: array type has incomplete element type<br> static const struct vmod_priv_methods uuid_priv_task_methods[1] = {{<br>                                       ^<br>vmod_uuid.c:117:3: error: field name not in record or union initializer<br>   .magic = VMOD_PRIV_METHODS_MAGIC,<br>   ^<br>vmod_uuid.c:117:3: error: (near initialization for ‘uuid_priv_task_methods’)<br>vmod_uuid.c:117:12: error: ‘VMOD_PRIV_METHODS_MAGIC’ undeclared here (not in a function)<br>   .magic = VMOD_PRIV_METHODS_MAGIC,<br>            ^<br>vmod_uuid.c:118:3: error: field name not in record or union initializer<br>   .type = "vmod_uuid_priv_task",<br>   ^<br>vmod_uuid.c:118:3: error: (near initialization for ‘uuid_priv_task_methods’)<br>vmod_uuid.c:119:3: error: field name not in record or union initializer<br>   .fini = free_uuids<br>   ^<br>vmod_uuid.c:119:3: error: (near initialization for ‘uuid_priv_task_methods’)<br>vmod_uuid.c:119:11: error: ‘free_uuids’ undeclared here (not in a function)<br>   .fini = free_uuids<br>           ^<br>vmod_uuid.c:123:20: error: expected ‘)’ before ‘struct’<br> get_uuids(VRT_CTX, struct vmod_priv *priv, uuid_t **uuid_ns)<br>                    ^<br>vmod_uuid.c:163:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING<br> ^<br>vmod_uuid.c:164:23: error: expected ‘)’ before ‘struct’<br> vmod_uuid_v1(VRT_CTX, struct vmod_priv *priv)<br>                       ^<br>vmod_uuid.c:172:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING<br> ^<br>vmod_uuid.c:173:23: error: expected ‘)’ before ‘struct’<br> vmod_uuid_v3(VRT_CTX, struct vmod_priv *priv, VCL_STRING ns, VCL_STRING name)<br>                       ^<br>vmod_uuid.c:182:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING<br> ^<br>vmod_uuid.c:183:23: error: expected ‘)’ before ‘struct’<br> vmod_uuid_v4(VRT_CTX, struct vmod_priv *priv)<br>                       ^<br>vmod_uuid.c:191:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING<br> ^<br>vmod_uuid.c:192:23: error: expected ‘)’ before ‘struct’<br> vmod_uuid_v5(VRT_CTX, struct vmod_priv *priv, VCL_STRING ns, VCL_STRING name)<br>                       ^<br>vmod_uuid.c:201:1: error: unknown type name ‘VCL_STRING’<br> VCL_STRING<br> ^<br>vmod_uuid.c:202:20: error: expected ‘)’ before ‘struct’<br> vmod_uuid(VRT_CTX, struct vmod_priv *priv)<br>                    ^<br>vmod_uuid.c:116:39: error: ‘uuid_priv_task_methods’ defined but not used [-Werror=unused-variable]<br> static const struct vmod_priv_methods uuid_priv_task_methods[1] = {{<br>                                       ^<br>cc1: all warnings being treated as errors<br>make[2]: *** [vmod_uuid.lo] Error 1<br>make[2]: Leaving directory `/usr/local/src/libvmod-uuid/src'<br>make[1]: *** [all-recursive] Error 1<br>make[1]: Leaving directory `/usr/local/src/libvmod-uuid'<br>make: *** [all] Error 2<br></div><div><br></div><div>Please help</div><br clear="all"><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><font color="#666666"><i>Thanks & Regards,</i></font><div><font color="#666666"><i>Uday Kumar</i></font></div></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Apr 25, 2024 at 6:18 AM Uday Kumar <<a href="mailto:uday.polu@indiamart.com" target="_blank">uday.polu@indiamart.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi Guillaume,</div><div><br></div><div>Thanks for this reminder, I will check this and get back to you!</div><div><br></div><br clear="all"><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><font color="#666666"><i>Thanks & Regards,</i></font><div><font color="#666666"><i>Uday Kumar</i></font></div></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Apr 25, 2024 at 1:12 AM Guillaume Quintard <<a href="mailto:guillaume.quintard@gmail.com" target="_blank">guillaume.quintard@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi Uday,</div><div><br></div><div>I feel like we've explored this last year: <a href="https://varnish-cache.org/lists/pipermail/varnish-misc/2023-May/027238.html" target="_blank">https://varnish-cache.org/lists/pipermail/varnish-misc/2023-May/027238.html</a></div><div><br></div><div>I don't think the answer has changed much: vmod-uuid is your best bet here.</div><div><br></div><div>Please let me know if I'm missing some requirements.</div><div><br></div><div>Kind regards,</div><div><br></div><div><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><div>-- <br></div><div>Guillaume Quintard<br></div></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Apr 24, 2024 at 4:26 AM Uday Kumar <<a href="mailto:uday.polu@indiamart.com" target="_blank">uday.polu@indiamart.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hello all,</div><div><br></div><div>We follow below architecture in our production environment:</div><div>User request ---> Varnish ----> Tomcat Backend</div><div><br></div><div>We have a requirement of generating an unique id at varnish that can be appended to a request url.</div><div>So that it can be propagated to the backend and also will be useful in tracking errors efficiently</div><div><br></div><div><div>varnish version used: varnish-5.2.1 </div><div><br></div><div>Example:</div><div>original request:<br></div><div>/search/test?q=bags&source=mobile</div></div><div><br></div><div>After appending unique id [This needs to be sent to backend and to be stored in varnish logs]:</div><div>/search/test?q=bags&source=mobile&uniqueid=abc123</div><div><br></div><div>Please help us know if there is any way to do this at varnish</div><div><br></div><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><font color="#666666"><i>Thanks & Regards,</i></font><div><font color="#666666"><i>Uday Kumar</i></font></div></div></div></div></div>
_______________________________________________<br>
varnish-misc mailing list<br>
<a href="mailto:varnish-misc@varnish-cache.org" target="_blank">varnish-misc@varnish-cache.org</a><br>
<a href="https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc" rel="noreferrer" target="_blank">https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc</a><br>
</blockquote></div>
</blockquote></div>
</blockquote></div>
</blockquote></div>