MEDIUM: logs: add support for RFC5424 header format per logger

The function __send_log() iterates over senders and passes the header as
the first vector to sendmsg(), thus it can send a logger-specific header
in each message.

A new logger arguments "format rfc5424" should be used in order to enable
RFC5424 header format. For example:

    log 10.2.3.4:1234 len 2048 format rfc5424 local2 info
diff --git a/include/proto/log.h b/include/proto/log.h
index e8b57d8..fca7fdd 100644
--- a/include/proto/log.h
+++ b/include/proto/log.h
@@ -39,7 +39,12 @@
 extern char default_tcp_log_format[];
 extern char default_http_log_format[];
 extern char clf_http_log_format[];
+
+extern char default_host_tag_pid_log_format[];
+extern char rfc5424_host_tag_pid_log_format[];
+
 extern char *logheader;
+extern char *logheader_rfc5424;
 extern char *logline;
 
 
@@ -109,6 +114,11 @@
 void __send_log(struct proxy *p, int level, char *message, size_t size);
 
 /*
+ * returns log format for <fmt> or -1 if not found.
+ */
+int get_log_format(const char *fmt);
+
+/*
  * returns log level for <lev> or -1 if not found.
  */
 int get_log_level(const char *lev);
@@ -141,7 +151,7 @@
 /*
  * Write hostname, log_tag and pid to the log string
  */
-char *lf_host_tag_pid(char *dst, const char *hostname, const char *log_tag, int pid, size_t size);
+char *lf_host_tag_pid(char *dst, const char *format, const char *hostname, const char *log_tag, int pid, size_t size);
 
 
 #endif /* _PROTO_LOG_H */