$OpenBSD: patch-kstars_kstars_indi_fli_ccd_c,v 1.1 2005/02/27 09:09:14 brad Exp $
--- kstars/kstars/indi/fli_ccd.c.orig	Sun Oct  3 03:13:39 2004
+++ kstars/kstars/indi/fli_ccd.c	Sun Feb 27 03:48:43 2005
@@ -51,9 +51,9 @@ void getBasicData(void);
 void initDataChannel(void);
 void waitForData(int rp, int wp);
 void updateDataChannel(void *p);
-void uploadFile(char * filename);
+void uploadFile(const char* filename);
 int  findPort(void);
-int  writeFITS(char *filename, char errmsg[]);
+int  writeFITS(const char* filename, char errmsg[]);
 int  findcam(flidomain_t domain);
 int  setImageArea(char errmsg[]);
 int  manageDefaults(char errmsg[]);
@@ -419,7 +419,7 @@ void ISNewNumber (const char *dev, const
       long err;
       int i;
       INumber *np;
-      char errmsg[1024];
+      char errmsg[ERRMSG_SIZE];
 
 	/* ignore if not ours */
 	if (dev && strcmp (dev, mydev))
@@ -556,14 +556,14 @@ void ISNewNumber (const char *dev, const
       
       if (nset < 4)
       {
-        IDSetNumber(&FrameNP, "Invalid range. Valid range is (0,0) - (%0.f,%0.f)", FLICam->width, FLICam->height);
-	IDLog("Invalid range. Valid range is (0,0) - (%0.f,%0.f)", FLICam->width, FLICam->height);
+        IDSetNumber(&FrameNP, "Invalid range. Valid range is (0,0) - (%0d,%0d)", FLICam->width, FLICam->height);
+	IDLog("Invalid range. Valid range is (0,0) - (%0d,%0d)", FLICam->width, FLICam->height);
 	return; 
       }
       
       if (setImageArea(errmsg))
       {
-        IDSetNumber(&FrameNP, errmsg);
+        IDSetNumber(&FrameNP, "%s", errmsg);
 	return;
       }
       	    
@@ -600,8 +600,8 @@ void ISNewNumber (const char *dev, const
       {
         if (values[i] < 1 || values[i] > MAX_X_BIN)
 	{
-	  IDSetNumber(&BinningNP, "Error: Valid X bin values are from 1 to %d", MAX_X_BIN);
-	  IDLog("Error: Valid X bin values are from 1 to %d", MAX_X_BIN);
+	  IDSetNumber(&BinningNP, "Error: Valid X bin values are from 1 to %g", MAX_X_BIN);
+	  IDLog("Error: Valid X bin values are from 1 to %g", MAX_X_BIN);
 	  return;
 	}
 	
@@ -618,8 +618,8 @@ void ISNewNumber (const char *dev, const
       {
         if (values[i] < 1 || values[i] > MAX_Y_BIN)
 	{
-	  IDSetNumber(&BinningNP, "Error: Valid Y bin values are from 1 to %d", MAX_Y_BIN);
-	  IDLog("Error: Valid X bin values are from 1 to %d", MAX_Y_BIN);
+	  IDSetNumber(&BinningNP, "Error: Valid Y bin values are from 1 to %g", MAX_Y_BIN);
+	  IDLog("Error: Valid X bin values are from 1 to %g", MAX_Y_BIN);
 	  return;
 	}
 	
@@ -637,7 +637,7 @@ void ISNewNumber (const char *dev, const
      if (setImageArea(errmsg))
      {
        IDSetNumber(&BinningNP, errmsg, NULL);
-       IDLog(errmsg);
+       IDLog("%s", errmsg);
        return;
      }
      
@@ -817,8 +817,8 @@ int setImageArea(char errmsg[])
    
    if ( (err = FLISetImageArea(fli_dev, x_1, y_1, x_2, y_2) ))
    {
-     sprintf(errmsg, "FLISetImageArea() failed. %s.\n", strerror((int)-err));
-     IDLog(errmsg, NULL);
+     snprintf(errmsg, ERRMSG_SIZE, "FLISetImageArea() failed. %s.\n", strerror((int)-err));
+     IDLog("%s", errmsg);
      return -1;
    }
    
@@ -832,13 +832,13 @@ int grabImage()
 {
   long err;
   int img_size,i, fd;
-  char errmsg[1024];
+  char errmsg[ERRMSG_SIZE];
   char filename[] = "/tmp/fitsXXXXXX";
   
    if ((fd = mkstemp(filename)) < 0)
    { 
-    IDMessage(mydev, "Error making temporary filename.", NULL);
-    IDLog("Error making temporary filename.\n", NULL);
+    IDMessage(mydev, "Error making temporary filename.");
+    IDLog("Error making temporary filename.\n");
     return -1;
    }
    close(fd);
@@ -849,8 +849,8 @@ int grabImage()
   
   if (FLIImg->img == NULL)
   {
-    IDMessage(mydev, "Not enough memory to store image.", NULL);
-    IDLog("Not enough memory to store image.\n", NULL);
+    IDMessage(mydev, "Not enough memory to store image.");
+    IDLog("Not enough memory to store image.\n");
     return -1;
   }
   
@@ -880,7 +880,7 @@ int grabImage()
  
 }
 
-int writeFITS(char *filename, char errmsg[])
+int writeFITS(const char* filename, char errmsg[])
 {
   FITS_FILE* ofp;
   int i, j, bpp, bpsl, width, height;
@@ -890,7 +890,7 @@ int writeFITS(char *filename, char errms
   ofp = fits_open (filename, "w");
   if (!ofp)
   {
-    sprintf(errmsg, "Error: cannot open file for writing.");
+    snprintf(errmsg, ERRMSG_SIZE, "Error: cannot open file for writing.");
     return (-1);
   }
   
@@ -903,12 +903,12 @@ int writeFITS(char *filename, char errms
   hdu = create_fits_header (ofp, width, height, bpp);
   if (hdu == NULL)
   {
-     sprintf(errmsg, "Error: creating FITS header failed.");
+     snprintf(errmsg, ERRMSG_SIZE, "Error: creating FITS header failed.");
      return (-1);
   }
   if (fits_write_header (ofp, hdu) < 0)
   {
-    sprintf(errmsg, "Error: writing to FITS header failed.");
+    snprintf(errmsg, ERRMSG_SIZE, "Error: writing to FITS header failed.");
     return (-1);
   }
   
@@ -932,7 +932,7 @@ int writeFITS(char *filename, char errms
   
   if (ferror (ofp->fp))
   {
-    sprintf(errmsg, "Error: write error occured");
+    snprintf(errmsg, ERRMSG_SIZE, "Error: write error occured");
     return (-1);
   }
  
@@ -951,7 +951,7 @@ int writeFITS(char *filename, char errms
 
 }
 
-void uploadFile(char * filename)
+void uploadFile(const char* filename)
 {
    FILE * fitsFile;
    char frameSize[FRAME_ILEN];
@@ -962,7 +962,7 @@ void uploadFile(char * filename)
  
    if ( -1 ==  stat (filename, &stat_p))
    { 
-     IDLog(" Error occoured attempting to stat %s\n", filename); 
+     IDLog(" Error occoured attempting to stat file.\n"); 
      return; 
    }
    
@@ -1185,7 +1185,7 @@ int manageDefaults(char errmsg[])
   IDLog("Setting default exposure time of %d ms.\n", exposeTimeMS);
   if ( (err = FLISetExposureTime(fli_dev, exposeTimeMS) ))
   {
-    sprintf(errmsg, "FLISetExposureTime() failed. %s.\n", strerror((int)-err));
+    snprintf(errmsg, ERRMSG_SIZE, "FLISetExposureTime() failed. %s.\n", strerror((int)-err));
     IDLog(errmsg, NULL);
     return -1;
   }
@@ -1193,7 +1193,7 @@ int manageDefaults(char errmsg[])
   /* Default frame type is NORMAL */
   if ( (err = FLISetFrameType(fli_dev, FLI_FRAME_TYPE_NORMAL) ))
   {
-    sprintf(errmsg, "FLISetFrameType() failed. %s.\n", strerror((int)-err));
+    snprintf(errmsg, ERRMSG_SIZE, "FLISetFrameType() failed. %s.\n", strerror((int)-err));
     IDLog(errmsg, NULL);
     return -1;
   }
@@ -1201,7 +1201,7 @@ int manageDefaults(char errmsg[])
   /* X horizontal binning */
   if ( (err = FLISetHBin(fli_dev, BinningN[0].value) ))
   {
-    sprintf(errmsg, "FLISetBin() failed. %s.\n", strerror((int)-err));
+    snprintf(errmsg, ERRMSG_SIZE, "FLISetBin() failed. %s.\n", strerror((int)-err));
     IDLog(errmsg, NULL);
     return -1;
   }
@@ -1209,7 +1209,7 @@ int manageDefaults(char errmsg[])
   /* Y vertical binning */
   if ( (err = FLISetVBin(fli_dev, BinningN[1].value) ))
   {
-    sprintf(errmsg, "FLISetVBin() failed. %s.\n", strerror((int)-err));
+    snprintf(errmsg, ERRMSG_SIZE, "FLISetVBin() failed. %s.\n", strerror((int)-err));
     IDLog(errmsg, NULL);
     return -1;
   }
@@ -1293,7 +1293,7 @@ int checkPowerT(ITextVectorProperty *tp)
 void connectCCD()
 {
   long err;
-  char errmsg[1024];
+  char errmsg[ERRMSG_SIZE];
  
   IDLog ("In ConnectCCD\n");
    
@@ -1332,7 +1332,7 @@ void connectCCD()
       if (manageDefaults(errmsg))
       {
         IDMessage(mydev, errmsg, NULL);
-	IDLog(errmsg);
+	IDLog("%s", errmsg);
 	return;
       }
       
@@ -1495,7 +1495,7 @@ FITS_HDU_LIST * create_fits_header (FITS
  fits_add_card (hdulist, temp_s);
  fits_add_card (hdulist, expose_s);
  fits_add_card (hdulist, pixel_s);
- fits_add_card (hdulist, "INSTRUME= 'Finger Lakes Instruments'");
+ fits_add_card (hdulist, ( char* ) "INSTRUME= 'Finger Lakes Instruments'");
  fits_add_card (hdulist, obsDate);
   
  return (hdulist);
@@ -1632,7 +1632,7 @@ int findPort()
   /* bind to given port for any IP address */
   memset (&serv_socket, 0, sizeof(serv_socket));
   serv_socket.sin_family = AF_INET;
-  serv_socket.sin_addr.s_addr = htonl (INADDR_ANY);
+  serv_socket.sin_addr.s_addr = htonl (INADDR_LOOPBACK);
   
   for (i=0; i < 100; i++)
   {
@@ -1675,7 +1675,7 @@ void waitForData(int rp, int wp)
 	/* bind to given port for any IP address */
 	memset (&serv_socket, 0, sizeof(serv_socket));
 	serv_socket.sin_family = AF_INET;
-	serv_socket.sin_addr.s_addr = htonl (INADDR_ANY);
+	serv_socket.sin_addr.s_addr = htonl (INADDR_LOOPBACK);
 	
 	serv_socket.sin_port = htons ((unsigned short)DataPort);
 	if (setsockopt(sfd,SOL_SOCKET,SO_REUSEADDR,&reuse,sizeof(reuse)) < 0){
