X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=callerid.c;h=2f12ac184711069752ad1745f625479aee40b511;hp=7d13f162364337dd93a326cfd83a1753e67a4739;hb=79bd731c0db3e3202cfeed2af3fb217ae744b70f;hpb=026b04fc75011a144285f399b82890803b4315bd diff --git a/callerid.c b/callerid.c index 7d13f16..2f12ac1 100644 --- a/callerid.c +++ b/callerid.c @@ -18,15 +18,13 @@ /* create caller id from digits by comparing with national and international * prefixes. */ -char *nationalize_callerinfo(char *string, int *ntype, char *national, char *international) +const char *nationalize_callerinfo(const char *string, int *ntype, const char *national, const char *international) { - if (!strncmp(international, string, strlen(international))) - { + if (!strncmp(international, string, strlen(international))) { *ntype = INFO_NTYPE_INTERNATIONAL; return(string+strlen(international)); } - if (!strncmp(national, string, strlen(national))) - { + if (!strncmp(national, string, strlen(national))) { *ntype = INFO_NTYPE_NATIONAL; return(string+strlen(national)); } @@ -37,28 +35,32 @@ char *nationalize_callerinfo(char *string, int *ntype, char *national, char *int /* create number (including access codes) from caller id * prefixes. */ -char *numberrize_callerinfo(char *string, int ntype, char *national, char *international) +const char *numberrize_callerinfo(const char *string, int ntype, const char *national, const char *international) { static char result[256]; - switch(ntype) - { + switch(ntype) { + case INFO_NTYPE_NOTPRESENT: + return(""); + case INFO_NTYPE_INTERNATIONAL: strcpy(result, international); - strncat(result, string, sizeof(result)); + strncat(result, string, sizeof(result)-1); result[sizeof(result)-1] = '\0'; return(result); break; case INFO_NTYPE_NATIONAL: strcpy(result, national); - strncat(result, string, sizeof(result)); + strncat(result, string, sizeof(result)-1); result[sizeof(result)-1] = '\0'; return(result); break; default: - return(string); + strncpy(result, string, sizeof(result)-1); + result[sizeof(result)-1] = '\0'; + return(result); } }