13e12c5d1SDavid du Colombier #include "common.h" 23e12c5d1SDavid du Colombier #include "send.h" 33e12c5d1SDavid du Colombier 43e12c5d1SDavid du Colombier #define isspace(c) ((c)==' ' || (c)=='\t' || (c)=='\n') 53e12c5d1SDavid du Colombier 63e12c5d1SDavid du Colombier /* 73e12c5d1SDavid du Colombier * Translate the last component of the sender address. If the translation 83e12c5d1SDavid du Colombier * yields the same address, replace the sender with its last component. 93e12c5d1SDavid du Colombier */ 103e12c5d1SDavid du Colombier extern void gateway(message * mp)113e12c5d1SDavid du Colombiergateway(message *mp) 123e12c5d1SDavid du Colombier { 133e12c5d1SDavid du Colombier char *base; 14*7dd7cddfSDavid du Colombier String *s; 153e12c5d1SDavid du Colombier 163e12c5d1SDavid du Colombier /* first remove all systems equivalent to us */ 17*7dd7cddfSDavid du Colombier base = skipequiv(s_to_c(mp->sender)); 18*7dd7cddfSDavid du Colombier if(base != s_to_c(mp->sender)){ 19*7dd7cddfSDavid du Colombier s = mp->sender; 203e12c5d1SDavid du Colombier mp->sender = s_copy(base); 21*7dd7cddfSDavid du Colombier s_free(s); 223e12c5d1SDavid du Colombier } 233e12c5d1SDavid du Colombier } 24