diff -ur postfix-2.8.2-dynamic_maps_pie/src/cleanup/cleanup_message.c postfix-2.8.2-pointer_to_literals/src/cleanup/cleanup_message.c --- postfix-2.8.2-dynamic_maps_pie/src/cleanup/cleanup_message.c 2010-07-27 22:34:20.000000000 +0200 +++ postfix-2.8.2-pointer_to_literals/src/cleanup/cleanup_message.c 2011-03-30 23:10:42.774254791 +0200 @@ -290,7 +290,7 @@ while (*optional_text && ISSPACE(*optional_text)) optional_text++; -#define STREQUAL(x,y,l) (strncasecmp((x), (y), (l)) == 0 && (y)[l] == 0) +inline int STREQUAL(const char *x, const char *y, size_t l) { return (strncasecmp((x), (y), (l)) == 0 && (y)[l] == 0); } #define CLEANUP_ACT_DROP 0 /* Nur in postfix-2.8.2-pointer_to_literals/src/cleanup: cleanup_message.c.orig. diff -ur postfix-2.8.2-dynamic_maps_pie/src/local/local_expand.c postfix-2.8.2-pointer_to_literals/src/local/local_expand.c --- postfix-2.8.2-dynamic_maps_pie/src/local/local_expand.c 2005-05-31 15:44:14.000000000 +0200 +++ postfix-2.8.2-pointer_to_literals/src/local/local_expand.c 2011-03-30 23:10:42.775254802 +0200 @@ -114,7 +114,7 @@ { LOCAL_EXP *local = (LOCAL_EXP *) ptr; -#define STREQ(x,y) (*(x) == *(y) && strcmp((x), (y)) == 0) +inline int STREQ(const char *x, const char *y) { return (*(x) == *(y) && strcmp((x), (y)) == 0); } if (STREQ(name, "user")) { return (local->state->msg_attr.user); diff -ur postfix-2.8.2-dynamic_maps_pie/src/smtpd/smtpd_check.c postfix-2.8.2-pointer_to_literals/src/smtpd/smtpd_check.c --- postfix-2.8.2-dynamic_maps_pie/src/smtpd/smtpd_check.c 2011-01-04 20:03:50.000000000 +0100 +++ postfix-2.8.2-pointer_to_literals/src/smtpd/smtpd_check.c 2011-03-30 23:12:46.513254818 +0200 @@ -359,6 +359,10 @@ #define CONST_STR(x) ((const char *) vstring_str(x)) #define UPDATE_STRING(ptr,val) { if (ptr) myfree(ptr); ptr = mystrdup(val); } +inline int STREQ(const char *x, const char *y) { return (*(x) == *(y) && strcmp((x), (y)) == 0); } +inline int STREQUAL(const char *x, const char *y, size_t l) { return (strncasecmp((x), (y), (l)) == 0 && (y)[l] == 0); } +inline int STREQN(const char *x, const char *y, size_t n) { return (*(x) == *(y) && strncmp((x), (y), (n)) == 0); } + /* * If some decision can't be made due to a temporary error, then change * other decisions into deferrals. @@ -1950,8 +1954,6 @@ if (msg_verbose) msg_info("%s: %s %s %s", myname, table, value, datum); -#define STREQUAL(x,y,l) (strncasecmp((x), (y), (l)) == 0 && (y)[l] == 0) - /* * DUNNO means skip this table. Silently ignore optional text. */ @@ -2934,8 +2936,6 @@ SMTPD_RBL_EXPAND_CONTEXT *rbl_exp = (SMTPD_RBL_EXPAND_CONTEXT *) context; SMTPD_STATE *state = rbl_exp->state; -#define STREQ(x,y) (*(x) == *(y) && strcmp((x), (y)) == 0) - if (state->expand_buf == 0) state->expand_buf = vstring_alloc(10); diff -ur postfix-2.8.2-dynamic_maps_pie/src/util/dict_open.c postfix-2.8.2-pointer_to_literals/src/util/dict_open.c --- postfix-2.8.2-dynamic_maps_pie/src/util/dict_open.c 2011-03-30 16:02:04.373769372 +0200 +++ postfix-2.8.2-pointer_to_literals/src/util/dict_open.c 2011-03-30 23:10:42.787254814 +0200 @@ -461,7 +461,7 @@ } #ifndef NO_DYNAMIC_MAPS -#define STREQ(x,y) (x == y || (x[0] == y[0] && strcmp(x,y) == 0)) +inline int STREQ(const char *x, const char *y) { return ( x == y || (*(x) == *(y) && strcmp((x), (y)) == 0)); } void dict_open_dlinfo(const char *path) { Nur in postfix-2.8.2-pointer_to_literals/src/util: dict_open.c.orig.