For all known methods, samples are considered as safe and rewritable. For
unknowns, we handle them like strings (SMP_T_STR).
int smp_is_safe(struct sample *smp)
{
switch (smp->data.type) {
+ case SMP_T_METH:
+ if (smp->data.u.meth.meth != HTTP_METH_OTHER)
+ return 1;
+ /* Fall through */
+
case SMP_T_STR:
if ((smp->data.u.str.len < 0) ||
(smp->data.u.str.size && smp->data.u.str.len >= smp->data.u.str.size))
return 0;
switch (smp->data.type) {
+ case SMP_T_METH:
+ if (smp->data.u.meth.meth != HTTP_METH_OTHER)
+ return 1;
+ /* Fall through */
+
case SMP_T_STR:
if (!smp->data.u.str.size ||
smp->data.u.str.len < 0 ||