Mercurial > dovecot > original-hg > dovecot-1.2
changeset 3573:85e509808c30 HEAD
Added 'R' reverse modifier.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sun, 11 Sep 2005 23:22:35 +0300 |
parents | bb648f016990 |
children | 08ee6a4ed96e |
files | src/lib/var-expand.c |
diffstat | 1 files changed, 15 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib/var-expand.c Sun Sep 11 22:56:03 2005 +0300 +++ b/src/lib/var-expand.c Sun Sep 11 23:22:35 2005 +0300 @@ -44,6 +44,20 @@ return t_strdup_printf("%llx", l); } +static const char * +m_str_reverse(const char *str, struct var_expand_context *ctx __attr_unused__) +{ + size_t len = strlen(str); + char *p, *rev; + + rev = t_malloc(len + 1); + rev[len] = '\0'; + + for (p = rev + len - 1; *str != '\0'; str++) + *p-- = *str; + return rev; +} + static const char *m_str_hash(const char *str, struct var_expand_context *ctx) { unsigned int value = str_hash(str); @@ -68,6 +82,7 @@ { 'U', m_str_ucase }, { 'E', m_str_escape }, { 'X', m_str_hex }, + { 'R', m_str_reverse }, { 'H', m_str_hash }, { '\0', NULL } };