Version 0.3.0 from FTP
authorMark Spencer <markster@digium.com>
Mon, 11 Nov 2002 16:37:01 +0000 (16:37 +0000)
committerMark Spencer <markster@digium.com>
Mon, 11 Nov 2002 16:37:01 +0000 (16:37 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@546 65c4cc65-6c06-0410-ace0-fbb531ad65f3

acl.c
apps/app_playback.c
apps/app_sql_postgres.c
apps/app_url.c

diff --git a/acl.c b/acl.c
index 07579dc..6672b9a 100755 (executable)
--- a/acl.c
+++ b/acl.c
@@ -58,8 +58,10 @@ struct ast_ha *ast_append_ha(char *sense, char *stuff, struct ast_ha *path)
                path = path->next;
        }
        if (ha) {
-               strtok(stuff, "/");
-               nm = strtok(NULL, "/");
+               char *stringp=NULL;
+               stringp=stuff;
+               strsep(&stringp, "/");
+               nm = strsep(&stringp, "/");
                if (!nm)
                        nm = "255.255.255.255";
                if (!inet_aton(stuff, &ha->netaddr)) {
index 3466173..aece3e6 100755 (executable)
@@ -51,13 +51,15 @@ static int playback_exec(struct ast_channel *chan, void *data)
        char *options;
        int option_skip=0;
        int option_noanswer = 0;
+       char *stringp;
        if (!data || !strlen((char *)data)) {
                ast_log(LOG_WARNING, "Playback requires an argument (filename)\n");
                return -1;
        }
        strncpy(tmp, (char *)data, sizeof(tmp)-1);
-       strtok(tmp, "|");
-       options = strtok(NULL, "|");
+       stringp=tmp;
+       strsep(&stringp, "|");
+       options = strsep(&stringp, "|");
        if (options && !strcasecmp(options, "skip"))
                option_skip = 1;
        if (options && !strcasecmp(options, "noanswer"))
index 628987a..3e7e1f4 100755 (executable)
@@ -201,7 +201,6 @@ static int del_identifier(int identifier,int identifier_type) {
 
 static int aPGSQL_connect(struct ast_channel *chan, void *data) {
        
-       char *ptrptr;
        char *s1,*s4;
        char s[100];
        char *optionstring;
@@ -210,15 +209,17 @@ static int aPGSQL_connect(struct ast_channel *chan, void *data) {
        int res;
        PGconn *karoto;
        int id;
+       char *stringp=NULL;
         
        
        res=0;
        l=strlen(data)+2;
        s1=malloc(l);
        strncpy(s1,data,l);
-       strtok_r(s1," ",&ptrptr); // eat the first token, we already know it :P 
-       var=strtok_r(NULL," ",&ptrptr);
-       optionstring=strtok_r(NULL,"\n",&ptrptr);
+       stringp=s1;
+       strsep(&stringp," "); // eat the first token, we already know it :P 
+       var=strsep(&stringp," ");
+       optionstring=strsep(&stringp,"\n");
                
        karoto = PQconnectdb(optionstring);
         if (PQstatus(karoto) == CONNECTION_BAD) {
@@ -239,7 +240,6 @@ static int aPGSQL_connect(struct ast_channel *chan, void *data) {
 
 static int aPGSQL_query(struct ast_channel *chan, void *data) {
        
-       char *ptrptr;
        char *s1,*s2,*s3,*s4,*s5;
        char s[100];
        char *querystring;
@@ -249,6 +249,7 @@ static int aPGSQL_query(struct ast_channel *chan, void *data) {
        PGconn *karoto;
        PGresult *PGSQLres;
        int id,id1;
+       char *stringp=NULL;
         
        
        res=0;
@@ -256,13 +257,14 @@ static int aPGSQL_query(struct ast_channel *chan, void *data) {
        s1=malloc(l);
        s2=malloc(l);
        strcpy(s1,data);
-       strtok_r(s1," ",&ptrptr); // eat the first token, we already know it :P 
-       s3=strtok_r(NULL," ",&ptrptr);
+       stringp=s1;
+       strsep(&stringp," "); // eat the first token, we already know it :P 
+       s3=strsep(&stringp," ");
        while (1) {     // ugly trick to make branches with break;
                var=s3;
-               s4=strtok_r(NULL," ",&ptrptr);
+               s4=strsep(&stringp," ");
                id=atoi(s4);
-               querystring=strtok_r(NULL,"\n",&ptrptr);
+               querystring=strsep(&stringp,"\n");
                if ((karoto=find_identifier(id,AST_PGSQL_ID_CONNID))==NULL) {
                        ast_log(LOG_WARNING,"Invalid connection identifier %d passed in aPGSQL_query\n",id);
                        res=-1;
@@ -297,7 +299,6 @@ static int aPGSQL_query(struct ast_channel *chan, void *data) {
 
 static int aPGSQL_fetch(struct ast_channel *chan, void *data) {
        
-       char *ptrptr;
        char *s1,*s2,*s3,*s4,*s5,*s6,*s7;
        char s[100];
        char *var;
@@ -309,6 +310,7 @@ static int aPGSQL_fetch(struct ast_channel *chan, void *data) {
        int nres;
         struct ast_var_t *variables;
         struct varshead *headp;
+       char *stringp=NULL;
         
         headp=&chan->varshead;
        
@@ -318,8 +320,9 @@ static int aPGSQL_fetch(struct ast_channel *chan, void *data) {
        s1=malloc(l);
        s2=malloc(l);
        strcpy(s1,data);
-       strtok_r(s1," ",&ptrptr); // eat the first token, we already know it :P 
-       s3=strtok_r(NULL," ",&ptrptr);
+       stringp=s1;
+       strsep(&stringp," "); // eat the first token, we already know it :P 
+       s3=strsep(&stringp," ");
        while (1) {     // ugly trick to make branches with break;
                var=s3; // fetchid
                fnd=0;
@@ -337,7 +340,7 @@ static int aPGSQL_fetch(struct ast_channel *chan, void *data) {
                        pbx_builtin_setvar_helper(chan,s3,s7);
                }
 
-               s4=strtok_r(NULL," ",&ptrptr);
+               s4=strsep(&stringp," ");
                id=atoi(s4); // resultid
                if ((PGSQLres=find_identifier(id,AST_PGSQL_ID_RESID))==NULL) {
                        ast_log(LOG_WARNING,"Invalid result identifier %d passed in aPGSQL_fetch\n",id);
@@ -355,7 +358,7 @@ static int aPGSQL_fetch(struct ast_channel *chan, void *data) {
                nres=PQnfields(PGSQLres); 
                ast_log(LOG_WARNING,"ast_PGSQL_fetch : nres = %d i = %d ;\n",nres,i);
                for (j=0;j<nres;j++) {
-                       s5=strtok_r(NULL," ",&ptrptr);
+                       s5=strsep(&stringp," ");
                        if (s5==NULL) {
                                ast_log(LOG_WARNING,"ast_PGSQL_fetch : More tuples (%d) than variables (%d)\n",nres,j);
                                break;
@@ -391,18 +394,19 @@ static int aPGSQL_fetch(struct ast_channel *chan, void *data) {
 
 static int aPGSQL_reset(struct ast_channel *chan, void *data) {
        
-       char *ptrptr;
        char *s1,*s3;
        int l;
        PGconn *karoto;
        int id;
+       char *stringp=NULL;
         
        
        l=strlen(data)+2;
        s1=malloc(l);
        strcpy(s1,data);
-       strtok_r(s1," ",&ptrptr); // eat the first token, we already know it :P 
-       s3=strtok_r(NULL," ",&ptrptr);
+       stringp=s1;
+       strsep(&stringp," "); // eat the first token, we already know it :P 
+       s3=strsep(&stringp," ");
        id=atoi(s3);
        if ((karoto=find_identifier(id,AST_PGSQL_ID_CONNID))==NULL) {
                ast_log(LOG_WARNING,"Invalid connection identifier %d passed in aPGSQL_reset\n",id);
@@ -416,18 +420,19 @@ static int aPGSQL_reset(struct ast_channel *chan, void *data) {
 
 static int aPGSQL_clear(struct ast_channel *chan, void *data) {
        
-       char *ptrptr;
        char *s1,*s3;
        int l;
        PGresult *karoto;
        int id;
+       char *stringp=NULL;
         
        
        l=strlen(data)+2;
        s1=malloc(l);
        strcpy(s1,data);
-       strtok_r(s1," ",&ptrptr); // eat the first token, we already know it :P 
-       s3=strtok_r(NULL," ",&ptrptr);
+       stringp=s1;
+       strsep(&stringp," "); // eat the first token, we already know it :P 
+       s3=strsep(&stringp," ");
        id=atoi(s3);
        if ((karoto=find_identifier(id,AST_PGSQL_ID_RESID))==NULL) {
                ast_log(LOG_WARNING,"Invalid result identifier %d passed in aPGSQL_clear\n",id);
@@ -445,18 +450,19 @@ static int aPGSQL_clear(struct ast_channel *chan, void *data) {
        
 static int aPGSQL_disconnect(struct ast_channel *chan, void *data) {
        
-       char *ptrptr;
        char *s1,*s3;
        int l;
        PGconn *karoto;
        int id;
+       char *stringp=NULL;
         
        
        l=strlen(data)+2;
        s1=malloc(l);
        strcpy(s1,data);
-       strtok_r(s1," ",&ptrptr); // eat the first token, we already know it :P 
-       s3=strtok_r(NULL," ",&ptrptr);
+       stringp=s1;
+       strsep(&stringp," "); // eat the first token, we already know it :P 
+       s3=strsep(&stringp," ");
        id=atoi(s3);
        if ((karoto=find_identifier(id,AST_PGSQL_ID_CONNID))==NULL) {
                ast_log(LOG_WARNING,"Invalid connection identifier %d passed in aPGSQL_disconnect\n",id);
index 53a5894..6cae9eb 100755 (executable)
@@ -52,13 +52,15 @@ static int sendurl_exec(struct ast_channel *chan, void *data)
        char *options;
        int option_wait=0;
        struct ast_frame *f;
+       char *stringp=NULL;
        if (!data || !strlen((char *)data)) {
                ast_log(LOG_WARNING, "SendURL requires an argument (URL)\n");
                return -1;
        }
        strncpy(tmp, (char *)data, sizeof(tmp)-1);
-       strtok(tmp, "|");
-       options = strtok(NULL, "|");
+       stringp=tmp;
+       strsep(&stringp, "|");
+       options = strsep(&stringp, "|");
        if (options && !strcasecmp(options, "wait"))
                option_wait = 1;
        LOCAL_USER_ADD(u);