Implemented connection type "tcp" (GCT_TCP), use <hostname>:<port> as "port"
[gnokii.git] / gnokiid / gnokiid.c
index 0b589ae..26cb16f 100644 (file)
@@ -1,14 +1,35 @@
 /*
 
 /*
 
+  $Id$
+  
   G N O K I I
 
   A Linux/Unix toolset and driver for Nokia mobile phones.
 
   G N O K I I
 
   A Linux/Unix toolset and driver for Nokia mobile phones.
 
+  Copyright (C) 1999, 2000 Hugh Blemings & Pavel Janík ml.
+
   Released under the terms of the GNU GPL, see file COPYING for more details.
 
   Mainline code for gnokiid daemon. Handles command line parsing and
   various daemon functions.
 
   Released under the terms of the GNU GPL, see file COPYING for more details.
 
   Mainline code for gnokiid daemon. Handles command line parsing and
   various daemon functions.
 
+  $Log$
+  Revision 1.1.1.4  2002/04/03 01:44:15  short
+  Implemented connection type "tcp" (GCT_TCP), use <hostname>:<port> as "port"
+
+  Revision 1.1.1.3  2002/04/03 00:08:17  short
+  Found in "gnokii-working" directory, some November-patches version
+
+  Revision 1.19  2001/06/28 00:28:45  pkot
+  Small docs updates (Pawel Kot)
+
+  Revision 1.18  2001/02/21 19:57:09  chris
+  More fiddling with the directory layout
+
+  Revision 1.17  2000/12/19 16:18:18  pkot
+  configure script updates and added shared function for configfile reading
+
+  
 */
 
 #include <stdio.h>
 */
 
 #include <stdio.h>
 #include <string.h>
 
 #include "misc.h"
 #include <string.h>
 
 #include "misc.h"
-#include "files/cfgreader.h"
+#include "cfgreader.h"
 #include "gsm-common.h"
 #include "gsm-api.h"
 #include "data/virtmodem.h"
 
 #include "gsm-common.h"
 #include "gsm-api.h"
 #include "data/virtmodem.h"
 
-/* Global variables */
-bool           DebugMode;      /* When true, run in debug mode */
-char           *Model;         /* Model from .gnokiirc file. */
-char           *Port;          /* Port from .gnokiirc file */
-char           *Initlength;    /* Init length from .gnokiirc file */
-char           *Connection;    /* Connection type from .gnokiirc file */
-char            *SynchronizeTime;
-char           *BinDir;        /* Directory of the mgnokiidev command */
 
 
-bool  TerminateThread;
+/* Global variables */
+bool     DebugMode;       /* When true, run in debug mode */
+char     *Model;          /* Model from .gnokiirc file. */
+char     *Port;           /* Serial port from .gnokiirc file */
+char     *Initlength;     /* Init length from .gnokiirc file */
+char     *Connection;     /* Connection type from .gnokiirc file */
+char     *BinDir;         /* Directory of the mgnokiidev command */
+bool     TerminateThread;
+
+/* Local variables */
+char     *DefaultConnection = "serial";
+char     *DefaultBinDir = "/usr/local/sbin";
 
 void version(void)
 {
 
 
 void version(void)
 {
 
-  fprintf(stdout, _("gnokiid Version %s\n"
-"Copyright (C) Hugh Blemings <hugh@linuxcare.com>, 1999\n"
-"Copyright (C) Pavel Janík ml. <Pavel.Janik@linux.cz>, 1999\n"
+        fprintf(stdout, _("gnokiid Version %s\n"
+"Copyright (C) Hugh Blemings <hugh@blemings.org>, 1999\n"
+"Copyright (C) Pavel Janík ml. <Pavel.Janik@suse.cz>, 1999\n"
 "Built %s %s for %s on %s \n"), VERSION, __TIME__, __DATE__, Model, Port);
 }
 
 "Built %s %s for %s on %s \n"), VERSION, __TIME__, __DATE__, Model, Port);
 }
 
@@ -53,7 +77,7 @@ void version(void)
 void usage(void)
 {
 
 void usage(void)
 {
 
-  fprintf(stdout, _("   usage: gnokiid {--help|--version}\n"
+        fprintf(stdout, _("   usage: gnokiid {--help|--version}\n"
 "          --help            display usage information."
 "          --version         displays version and copyright information."
 "          --debug           uses stdin/stdout for virtual modem comms.\n"));
 "          --help            display usage information."
 "          --version         displays version and copyright information."
 "          --debug           uses stdin/stdout for virtual modem comms.\n"));
@@ -65,64 +89,59 @@ void usage(void)
 int main(int argc, char *argv[])
 {
 
 int main(int argc, char *argv[])
 {
 
-    GSM_ConnectionType connection;
-
-               /* For GNU gettext */
+        GSM_ConnectionType connection = GCT_Serial;
 
 
-       #ifdef USE_NLS
-               textdomain("gnokii");
-       #endif
+        /* For GNU gettext */
 
 
-#ifndef WIN32
-       if (strcmp(GetMygnokiiVersion(),VERSION)!=0)
-         fprintf(stderr,_("WARNING: version of installed libmygnokii.so (%s) is different to version of gnokiid (%s)\n"),GetMygnokiiVersion(),VERSION);
+#ifdef USE_NLS
+        textdomain("gnokii");
 #endif
 
 #endif
 
-        if (CFG_ReadConfig(&Model, &Port, &Initlength, &Connection, &BinDir, &SynchronizeTime,true) < 0) {
+        if (readconfig(&Model, &Port, &Initlength, &Connection, &BinDir) < 0) {
                 exit(-1);
         }
 
                 exit(-1);
         }
 
-               /* Handle command line arguments. */
-
-       if (argc >= 2 && strcmp(argv[1], "--help") == 0) {
-               usage();
-       exit(0);
-       }
-
-               /* Display version, copyright and build information. */
-
-       if (argc >= 2 && strcmp(argv[1], "--version") == 0) {
-       version();
-           exit(0);
-       }
-
-       if (argc >= 2 && strcmp(argv[1], "--debug") == 0) {
-               DebugMode = true;       
-       }
-       else {
-               DebugMode = false;      
-       }
-
-        connection=GetConnectionTypeFromString(Connection);
-       
-       /* MBUS wasn't tested */
-       if (connection!=GCT_FBUS && connection!=GCT_MBUS &&
-           connection!=GCT_Infrared && connection!=GCT_Tekram) {
-         fprintf(stdout,_("Incorrect connection type!\n"));    
-         exit(0);
-       }
-       
-       TerminateThread=false;
-
-       if (VM_Initialise(Model, Port, Initlength, connection, BinDir, DebugMode, true, SynchronizeTime) == false) 
-         exit (-1);
-
-       while (1) {
-         if (TerminateThread==true) {
-           VM_Terminate();
-           exit(1);
-         }
-         sleep (1);
-       }
-       exit (0);
+
+        /* Handle command line arguments. */
+
+        if (argc >= 2 && strcmp(argv[1], "--help") == 0) {
+                usage();
+                exit(0);
+        }
+
+        /* Display version, copyright and build information. */
+
+        if (argc >= 2 && strcmp(argv[1], "--version") == 0) {
+                version();
+                exit(0);
+        }
+
+        if (argc >= 2 && strcmp(argv[1], "--debug") == 0) {
+                DebugMode = true;
+        } else {
+                DebugMode = false;
+        }
+
+        if (!strcmp(Connection, "infrared")) {
+                connection=GCT_Infrared;
+        }
+
+        if (!strcmp(Connection, "tcp")) {
+                connection=GCT_TCP;
+        }
+
+        TerminateThread=false;
+
+        if (VM_Initialise(Model, Port, Initlength, connection, BinDir, DebugMode, true) == false) {
+                exit (-1);
+        }
+
+        while (1) {
+                if (TerminateThread==true) {
+                        VM_Terminate();
+                        exit(1);
+                }
+                sleep (1);
+        }
+        exit (0);
 }
 }