]> jspc29.x-matter.uni-frankfurt.de Git - daqdata.git/commitdiff
*** empty log message ***
authorhades <hades>
Wed, 14 Mar 2001 16:19:29 +0000 (16:19 +0000)
committerhades <hades>
Wed, 14 Mar 2001 16:19:29 +0000 (16:19 +0000)
allParam/ca/client/caParam.c
allParam/ca/server/paramRecord.cc
allParam/ca/server/paramRecord.h
allParam/ca/server/paramRecordSet.cc
allParam/ca/server/paramRecordSet.h
allParam/ca/server/paramServer.cc
allParam/file/fileParam.c
allParam/include/allParam.h
allParam/ora/oraParam.pc
allParam/psql/psqlParam.c
allParam/tcl/tclParam.c

index 3fc598f19ecc742b5eebc1dd33ce1d3e54962dba..b4fcd213a3359b9f5ce6f5e83a8de44545aea70d 100644 (file)
@@ -1,10 +1,11 @@
 #define _POSIX_C_SOURCE 199509L
 
 #include <unistd.h>
+
+#include <ctype.h>
 #include <stdio.h>
-#include <string.h>
 #include <stdlib.h>
-#include <ctype.h>
+#include <string.h>
 
 #include <cadef.h>
 
@@ -37,7 +38,6 @@ typedef struct ParamIntResultS {
 typedef struct ParamBlobResultS {
        FILE *val;
        size_t *size;
-       size_t maxsize;
        const Param *my;
        int *retVal;
 } ParamBlobResult;
@@ -273,7 +273,7 @@ int Param_getFilenameArray(const Param *my, const char *name, const char *idx, i
        return retVal;
 }
 
-int Param_getBlob(const Param *my, const char *name, const char *idx, size_t maxsize, size_t *size, FILE *val)
+int Param_getBlob(const Param *my, const char *name, const char *idx, size_t *size, FILE *val)
 {
        int retVal = 0;
        int status;
@@ -308,7 +308,6 @@ int Param_getBlob(const Param *my, const char *name, const char *idx, size_t max
                ParamBlobResult resultS, *result = &resultS;
                result->val = val;
                result->size = size;
-               result->maxsize = maxsize;
                result->my = my;
                result->retVal = &retVal;
 
@@ -499,9 +498,7 @@ static void Param_copyBlobToAllocMem(struct event_handler_args args)
        ParamBlobResult *result = args.usr;
        dbr_long_t *buffer = (dbr_long_t *) args.dbr;
        
-       *(result->size) = (args.count > result->maxsize) ?
-               result->maxsize :
-               args.count;
+       *(result->size) = args.count;
        if(args.type == DBR_LONG && args.status == ECA_NORMAL) {
                fwrite(buffer, sizeof(dbr_long_t), *(result->size), result->val);
        } else {
index bf0bf48904eff22eac95f57b5ec6d99cfb2d895b..b3e663078919dbcd9f48b5515be5edd6718630c5 100644 (file)
@@ -1,9 +1,9 @@
 #define _POSIX_C_SOURCE 199509L
 
 extern "C" {
+  #include <ctype.h>
   #include <stdio.h>
   #include <string.h>
-  #include <ctype.h>
 }
 
 #include "paramRecord.h"
index a40b21ada0e294b5fd0a8442bbfc62e34c6bddf9..4eb555141ab2705fa8312548b48f23518355b066 100644 (file)
@@ -1,12 +1,12 @@
 #ifndef PARAMRECORD_H
 #define PARAMRECORD_H
 
+#include <gdd.h>
+
 extern "C" {
   #include <allParam.h>
 }
 
-#include <gdd.h>
-
 #include "record.h"
 
 class ParamRecord : public Record {
index 1239e15eec5e1da9744d0a25acbc1858d87ae4a1..8c2d3ecc7f75ad911787022339ec5754c19daa9b 100644 (file)
@@ -1,10 +1,10 @@
 #define _POSIX_C_SOURCE 199509L
 
 extern "C" {
+  #include <ctype.h>
   #include <stdio.h>
-  #include <string.h>
   #include <stdlib.h>
-  #include <ctype.h>
+  #include <string.h>
   #include <syslog.h>
 }
 
index a3b66c3b09ba62fcbdcff25e729d1fb7495aa79c..d1b3662b4c46173e824321d6063926103d287213 100644 (file)
@@ -1,12 +1,12 @@
 #ifndef PARAMRECORDSET_H
 #define PARAMRECORDSET_H
 
+#include <casdef.h>
+
 extern "C" {
   #include <allParam.h>
 }
 
-#include <casdef.h>
-
 #include "paramRecord.h"
 
 #define MAX_PARAM_SRC 16
index 4f2bdc8c73eb5a2520cd1bed04635e8eaabab7ce..c0d2a519da8e3c6d348ba1ae7024216c8d8ebeb1 100644 (file)
@@ -4,8 +4,9 @@
 
 extern "C" {
   #include <unistd.h>
-  #include <string.h>
+
   #include <ctype.h>
+  #include <string.h>
   #include <syslog.h>
 }
 
index 3cf1b8a8fb5d3cbc26e297527152d18111d07ec0..bdc0ba5b6dbf46a6106e19a52236b659b5c414cd 100644 (file)
@@ -2,10 +2,12 @@
 
 #include <unistd.h>
 
+#include <ctype.h>
+#include <errno.h>
 #include <stdio.h>
-#include <string.h>
 #include <stdlib.h>
-#include <ctype.h>
+#include <string.h>
+#include <sys/stat.h>
 
 #include <allParam.h>
 
@@ -168,6 +170,32 @@ int Param_getString(const Param *my, const char *name, const char *idx, int *row
        return Param_getStringArray(my, name, idx, 1, row, &val);
 }
 
+int Param_getFilename(const Param *my, const char *name, const char *idx, int *row, char *val)
+{
+       int retVal = 0;
+       int rows = 0;
+       char value[PARAM_MAX_VALUE_LEN];
+
+       if (((retVal = Param_getString(my, name, idx, &rows, value)) == 0) && (rows == 1)) {
+               if (value[0] == '/') {
+                       strcpy(val, value);
+                       *row = 1;
+               } else {
+                       if ((Param_getString(my, "glob", "basedir", &rows, val) == 0) && (rows == 1)) {
+                               strcat(val, "/");
+                               strcat(val, value);
+                               *row = 1;
+                       } else {
+                               strcpy(val, value);
+                               *row = 1;
+                       }
+               }
+       } else {
+               *row = 0;
+       }
+       return retVal;
+}
+
 int Param_getIntArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, unsigned long int *val)
 {
        int retVal = 0;
@@ -228,32 +256,6 @@ int Param_getStringArray(const Param *my, const char *name, const char *idx, int
        return 0;
 }
 
-int Param_getFilename(const Param *my, const char *name, const char *idx, int *row, char *val)
-{
-       int retVal = 0;
-       int rows = 0;
-       char value[PARAM_MAX_VALUE_LEN];
-
-       if (((retVal = Param_getString(my, name, idx, &rows, value)) == 0) && (rows == 1)) {
-               if (value[0] == '/') {
-                       strcpy(val, value);
-                       *row = 1;
-               } else {
-                       if ((Param_getString(my, "glob", "basedir", &rows, val) == 0) && (rows == 1)) {
-                               strcat(val, "/");
-                               strcat(val, value);
-                               *row = 1;
-                       } else {
-                               strcpy(val, value);
-                               *row = 1;
-                       }
-               }
-       } else {
-               *row = 0;
-       }
-       return retVal;
-}
-
 int Param_getFilenameArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val)
 {
        int retVal = 0;
@@ -292,6 +294,28 @@ int Param_getFilenameArray(const Param *my, const char *name, const char *idx, i
        return retVal;
 }
 
+int Param_getBlob(const Param *my, const char *name, const char *idx, size_t *size, FILE **val)
+{
+       int retVal = 0;
+       char filename[PARAM_MAX_VALUE_LEN];
+       int rows;
+       FILE *stream;
+
+       retVal = Param_getFilename(my, name, idx, &rows, filename);
+       if ((rows == 0) || (stream = fopen(filename, "r")) == NULL) {
+               Param_strerror((Param *) my, strerror(errno));
+               *size = 0;
+               retVal = -1;
+       } else {
+               struct stat fileS, *file = &fileS;
+               stat(filename, file);
+               *size = (size_t) file->st_size;
+               fprintf(stderr, "Result: %d.\n", *size);
+               *val = stream;
+       }
+       return retVal;
+}
+
 int Param_storeInt(const Param *my, const char *name, const char *idx, unsigned long int value)
 {
        fprintf(((FileParam *) (my->specParam))->store, "set %s(%s)\t%lu\n", name, idx, value);
index 538962f81aaf9aca33d9e7bf7e61e438dfdb0f62..89b42e0a54d614d08174b645a04a2236d1303ae6 100644 (file)
@@ -25,11 +25,11 @@ void desParam(Param *);
 
 int Param_getInt(const Param *, const char *, const char *, int *, unsigned long int *);
 int Param_getString(const Param *, const char *, const char *, int *, char *);
+int Param_getFilename(const Param *, const char *, const char *, int *, char *);
 int Param_getIntArray(const Param *, const char *, const char *, int, int *, unsigned long int *);
 int Param_getStringArray(const Param *, const char *, const char *, int, int *, char **);
-int Param_getFilename(const Param *, const char *, const char *, int *, char *);
 int Param_getFilenameArray(const Param *, const char *, const char *, int, int *, char **);
-int Param_getBlob(const Param *my, const char *, const char *, size_t, size_t *, FILE *);
+int Param_getBlob(const Param *, const char *, const char *, size_t *, FILE **);
 
 int Param_storeInt(const Param *, const char *, const char *, unsigned long int);
 int Param_storeString(const Param *, const char *, const char *, const char *);
index c8d2af2a9a8d3e12c6921f6c59ccbd0a593c0102..c79bb91bb9f6be210e01939d07df77ecd5bb3b77 100644 (file)
@@ -1,9 +1,11 @@
 #define _POSIX_C_SOURCE 199509L
 
+#include <ctype.h>
+#include <errno.h>
 #include <stdio.h>
-#include <string.h>
 #include <stdlib.h>
-#include <ctype.h>
+#include <string.h>
+#include <sys/stat.h>
 
 #include <oraca.h>
 #include <sqlca.h>
@@ -60,6 +62,11 @@ int Param_getString(const Param *my, const char *name, const char *idx, int *row
        return Param_getStringArray(my, name, idx, 1, row, &val);
 }
 
+int Param_getFilename(const Param *my, const char *name, const char *idx, int *row, char *val)
+{
+       return Param_getFilenameArray(my, name, idx, 1, row, &val);
+}
+
 int Param_getIntArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, unsigned long int *val)
 {
        int retVal = 0;
@@ -251,6 +258,66 @@ int Param_storeString(const Param *my, const char *name, const char *idx, const
        return 0;
 }
 
+int Param_getFilenameArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val)
+{
+       int retVal = 0;
+       int row = 0;
+       int i;
+       char *value[PARAM_MAX_ARRAY_LEN];
+
+       for (i = 0 ; i < maxrows ; i++) {
+               value[i] = malloc(PARAM_MAX_VALUE_LEN);
+       }
+
+       if (((retVal = Param_getStringArray(my, name, idx, maxrows, rows, value)) == 0) && (*rows > 0)) {
+               char basedir[PARAM_MAX_VALUE_LEN];
+
+               if ((Param_getString(my, "glob", "basedir", &row, basedir) == 0) && (row == 1)) {
+                       strcat(basedir, "/");
+               } else {
+                       strcpy(basedir, "");
+               }
+               for (i = 0 ; i < *rows ; i++) {
+                       if (value[i][0] != '/') {
+                               strcpy(val[i], basedir);
+                       } else {
+                               strcpy(val[i], "");
+                       }
+                       strcat(val[i], value[i]);
+               }
+       } else {
+               *rows = 0;
+       }
+
+       for (i = 0 ; i < maxrows ; i++) {
+               free(value[i]);
+       }
+
+       return retVal;
+}
+
+int Param_getBlob(const Param *my, const char *name, const char *idx, size_t *size, FILE **val)
+{
+       int retVal = 0;
+       char filename[PARAM_MAX_VALUE_LEN];
+       int rows;
+       FILE *stream;
+
+       retVal = Param_getFilename(my, name, idx, &rows, filename);
+       if ((rows == 0) || (stream = fopen(filename, "r")) == NULL) {
+               Param_strerror((Param *) my, strerror(errno));
+               *size = 0;
+               retVal = -1;
+       } else {
+               struct stat fileS, *file = &fileS;
+               stat(filename, file);
+               *size = (size_t) file->st_size;
+               fprintf(stderr, "Result: %d.\n", *size);
+               *val = stream;
+       }
+       return retVal;
+}
+
 const char *Param_getErrStr(const Param *my)
 {
        return my->strerror;
index 3c0a525f24e18c12d81f3c133e968ba371e765fc..a29025dcaf1be12e035db59ac6b9fba38c4bfda1 100644 (file)
@@ -1,9 +1,11 @@
 #define _POSIX_C_SOURCE 199509L
 
+#include <ctype.h>
+#include <errno.h>
 #include <stdio.h>
-#include <string.h>
 #include <stdlib.h>
-#include <ctype.h>
+#include <string.h>
+#include <sys/stat.h>
 
 #include <libpq-fe.h>
 
@@ -48,6 +50,11 @@ int Param_getString(const Param *my, const char *name, const char *idx, int *row
        return Param_getStringArray(my, name, idx, 1, row, &val);
 }
 
+int Param_getFilename(const Param *my, const char *name, const char *idx, int *row, char *val)
+{
+       return Param_getFilenameArray(my, name, idx, 1, row, &val);
+}
+
 int Param_getIntArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, unsigned long int *val)
 {
        int fnum;
@@ -152,6 +159,66 @@ int Param_getStringArray(const Param *my, const char *name, const char *idx, int
        return 0;
 }
 
+int Param_getFilenameArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val)
+{
+       int retVal = 0;
+       int row = 0;
+       int i;
+       char *value[PARAM_MAX_ARRAY_LEN];
+
+       for (i = 0 ; i < maxrows ; i++) {
+               value[i] = malloc(PARAM_MAX_VALUE_LEN);
+       }
+
+       if (((retVal = Param_getStringArray(my, name, idx, maxrows, rows, value)) == 0) && (*rows > 0)) {
+               char basedir[PARAM_MAX_VALUE_LEN];
+
+               if ((Param_getString(my, "glob", "basedir", &row, basedir) == 0) && (row == 1)) {
+                       strcat(basedir, "/");
+               } else {
+                       strcpy(basedir, "");
+               }
+               for (i = 0 ; i < *rows ; i++) {
+                       if (value[i][0] != '/') {
+                               strcpy(val[i], basedir);
+                       } else {
+                               strcpy(val[i], "");
+                       }
+                       strcat(val[i], value[i]);
+               }
+       } else {
+               *rows = 0;
+       }
+
+       for (i = 0 ; i < maxrows ; i++) {
+               free(value[i]);
+       }
+
+       return retVal;
+}
+
+int Param_getBlob(const Param *my, const char *name, const char *idx, size_t *size, FILE **val)
+{
+       int retVal = 0;
+       char filename[PARAM_MAX_VALUE_LEN];
+       int rows;
+       FILE *stream;
+
+       retVal = Param_getFilename(my, name, idx, &rows, filename);
+       if ((rows == 0) || (stream = fopen(filename, "r")) == NULL) {
+               Param_strerror((Param *) my, strerror(errno));
+               *size = 0;
+               retVal = -1;
+       } else {
+               struct stat fileS, *file = &fileS;
+               stat(filename, file);
+               *size = (size_t) file->st_size;
+               fprintf(stderr, "Result: %d.\n", *size);
+               *val = stream;
+       }
+       return retVal;
+}
+
 int Param_storeInt(const Param *my, const char *name, const char *idx, unsigned long int val)
 {
        int i;
index 0c6c3499f6a1ab61629dfd5df71fa88553a8b62a..ff0a13a8650c30e244f0303a262a33121c49474c 100644 (file)
@@ -2,10 +2,12 @@
 
 #include <unistd.h>
 
+#include <ctype.h>
+#include <errno.h>
 #include <stdio.h>
-#include <string.h>
 #include <stdlib.h>
-#include <ctype.h>
+#include <string.h>
+#include <sys/stat.h>
 
 #include <tcl.h>
 
@@ -247,6 +249,28 @@ int Param_getFilenameArray(const Param *my, const char *name, const char *idx, i
        return retVal;
 }
 
+int Param_getBlob(const Param *my, const char *name, const char *idx, size_t *size, FILE **val)
+{
+       int retVal = 0;
+       char filename[PARAM_MAX_VALUE_LEN];
+       int rows;
+       FILE *stream;
+
+       retVal = Param_getFilename(my, name, idx, &rows, filename);
+       if ((rows == 0) || (stream = fopen(filename, "r")) == NULL) {
+               Param_strerror((Param *) my, strerror(errno));
+               *size = 0;
+               retVal = -1;
+       } else {
+               struct stat fileS, *file = &fileS;
+               stat(filename, file);
+               *size = (size_t) file->st_size;
+               fprintf(stderr, "Result: %d.\n", *size);
+               *val = stream;
+       }
+       return retVal;
+}
+
 int Param_storeInt(const Param *my, const char *name, const char *idx, unsigned long int value)
 {
        char buf[strlen("set ()\t\n") + 2 * PARAM_MAX_NAME_LEN + PARAM_MAX_VALUE_LEN];