MINOR: lua: fetches and converters can return an empty string in place of nil

In some cases we don't want to known if a fetch or converter
fails. We just want a valid string. After this patch, we
have two sets of fetches and two sets of converters. There are:
txn.f, txn.sf, txn.c, txn.sc. The version prefixed by 's' always
returns strings for any type, and returns an empty string in the
error case or when the data are not available. This is particularly
useful when manipulating headers or cookies.
diff --git a/include/types/hlua.h b/include/types/hlua.h
index eea9136..88a8b8d 100644
--- a/include/types/hlua.h
+++ b/include/types/hlua.h
@@ -95,6 +95,14 @@
 	void *l7;
 };
 
+/* This struc is used with sample fetches and sample converters. */
+struct hlua_smp {
+	struct session *s;
+	struct proxy *p;
+	void *l7;
+	int stringsafe;
+};
+
 /* This struct is used as a closure argument associated
  * with dynamic sample-fetch created fucntions. This contains
  * a pointer to the original sample_fetch struct. It is used