- specify that 'all' is a .PHONY target
[asterisk/asterisk.git] / utils / smsq.c
old mode 100755 (executable)
new mode 100644 (file)
index 0ae965c..4954e11
@@ -1,3 +1,24 @@
+/*
+ * Asterisk -- An open source telephony toolkit.
+ *
+ * Copyright (C) 2004 - 2005
+ *
+ * SMS queuing application for use with asterisk app_sms
+ * by Adrian Kennard
+ *
+ * See http://www.asterisk.org for more information about
+ * the Asterisk project. Please do not directly contact
+ * any of the maintainers of this project for assistance;
+ * the project provides a web site, mailing lists and IRC
+ * channels for your use.
+ *
+ * This program is free software, distributed under the terms of
+ * the GNU General Public License Version 2. See the LICENSE file
+ * at the top of the source tree.
+ */
+
+#include "asterisk/autoconfig.h"
+
 #include <stdio.h>
 #include <popt.h>
 #include <sys/types.h>
 #include <unistd.h>
 #include <time.h>
 
-/* SMS queuing application for use with asterisk app_sms */
-/* by Adrian Kennard, 2004 */
+#include <asterisk/compat.h>
+#ifdef SOLARIS
+#define     POPT_ARGFLAG_SHOW_DEFAULT 0x00800000
+#endif
+#if !defined(POPT_ARGFLAG_SHOW_DEFAULT)
+#define     POPT_ARGFLAG_SHOW_DEFAULT 0x00800000
+#endif
+
 
 /* reads next USC character from null terminated UTF-8 string and advanced pointer */
 /* for non valid UTF-8 sequences, returns character as is */
@@ -75,7 +102,7 @@ static char txqcheck (char *dir, char *queue, char subaddress, char *channel, ch
     *p=NULL;
    FILE *f;
    DIR *d;
-   int ql = strlen (queue);
+   int ql = strlen (queue), qfl = ql;
    struct dirent *fn;
    snprintf (dirname, sizeof(dirname), "sms/%s", dir);
    d = opendir (dirname);
@@ -92,7 +119,7 @@ static char txqcheck (char *dir, char *queue, char subaddress, char *channel, ch
    if (!ql)
    {                            /* not searching any specific queue, so use whatr we found as the queue */
       queue = fn->d_name;
-      ql = p - queue;
+      qfl = ql = p - queue;
    }
    p = strchr (queue, '-');
    if (p && p < queue + ql)
@@ -118,7 +145,7 @@ static char txqcheck (char *dir, char *queue, char subaddress, char *channel, ch
          p = channel;
       p = strchr (p, 'X');
       if (p)
-         fprintf (f, "%.*s%c%s\n", p - channel, channel, subaddress, p + 1);
+         fprintf (f, "%.*s%c%s\n", (int)(p - channel), channel, subaddress, p + 1);
       else
          fprintf (f, "%s\n", channel);
    }
@@ -129,13 +156,13 @@ static char txqcheck (char *dir, char *queue, char subaddress, char *channel, ch
    {
       p = strchr (callerid, 'X');
       if (p)
-         fprintf (f, "%.*s%c%s", p - callerid, callerid, subaddress, p + 1);
+         fprintf (f, "%.*s%c%s", (int)(p - callerid), callerid, subaddress, p + 1);
       else
          fprintf (f, "%s", callerid);
    }
    fprintf (f, ">\n");
    fprintf (f, "Application: SMS\n");
-   fprintf (f, "Data: %.*s", ql, queue);
+   fprintf (f, "Data: %.*s", qfl, queue);
    if (dir[1] == 't')
       fprintf (f, "|s");
    fprintf (f, "\nMaxRetries: %d\n", retries);