-static const char rcsId[] = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/allParam/ca/client/caParam.c,v 1.26 2003-02-10 16:24:03 sailer Exp $";
+static const char rcsId[] =
+ "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/allParam/ca/client/caParam.c,v 1.27 2003-02-12 17:11:49 sailer Exp $";
#define _POSIX_C_SOURCE 199509L
#if HAVE_CONFIG_H
#include <config.h>
-#endif /* HAVE_CONFIG_H */
+#endif /* HAVE_CONFIG_H */
#include <unistd.h>
#include <errno.h>
#ifdef PTHREADS
#include <pthread.h>
-#endif /* PTHREADS */
+#endif /* PTHREADS */
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
static void Param_copyIntsToAllocMem(struct event_handler_args args);
static void Param_copyBlobToAllocMem(struct event_handler_args args);
static void Param_confirmStore(struct event_handler_args args);
-static void Param_returnPVName(const Param *my, const char *, const char *, const char *, char *);
+static void Param_returnPVName(const Param *my, const char *, const char *,
+ const char *, char *);
static void Param_strerror(Param *, const char *);
-static int Param_getIntArrayCache(const Param *, const char *, const char *, int, int *, unsigned long int *);
-static int Param_getStringArrayCache(const Param *, const char *, const char *, int, int *, char **);
-static int Param_storeIntCache(const Param *, const char *, const char *, unsigned long int);
-static int Param_storeStringCache(const Param *, const char *, const char *, const char *);
+static int Param_getIntArrayCache(const Param *, const char *, const char *,
+ int, int *, unsigned long int *);
+static int Param_getStringArrayCache(const Param *, const char *,
+ const char *, int, int *, char **);
+static int Param_storeIntCache(const Param *, const char *, const char *,
+ unsigned long int);
+static int Param_storeStringCache(const Param *, const char *, const char *,
+ const char *);
typedef struct CaParamS {
Tcl_Interp *cache;
#ifdef PTHREADS
pthread_mutex_t *cacheLock;
pthread_mutex_t *socketLock;
-#endif /* PTHREADS */
+#endif /* PTHREADS */
} CaParam;
typedef struct ParamStringResultS {
my->specParam = malloc(sizeof(CaParam));
#ifdef PTHREADS
- ((CaParam *) (my->specParam))->cacheLock = malloc(sizeof(pthread_mutex_t));
+ ((CaParam *) (my->specParam))->cacheLock =
+ malloc(sizeof(pthread_mutex_t));
pthread_mutex_init(((CaParam *) (my->specParam))->cacheLock, NULL);
- ((CaParam *) (my->specParam))->socketLock = malloc(sizeof(pthread_mutex_t));
+ ((CaParam *) (my->specParam))->socketLock =
+ malloc(sizeof(pthread_mutex_t));
pthread_mutex_init(((CaParam *) (my->specParam))->socketLock, NULL);
-#endif /* PTHREADS */
+#endif /* PTHREADS */
((CaParam *) (my->specParam))->cache = Tcl_CreateInterp();
free(((CaParam *) (my->specParam))->cacheLock);
pthread_mutex_destroy(((CaParam *) (my->specParam))->socketLock);
free(((CaParam *) (my->specParam))->socketLock);
-#endif /* PTHREADS */
+#endif /* PTHREADS */
my->basedir = NULL;
retVal = -1;
} else {
}
my->basedir = malloc(PARAM_MAX_VALUE_LEN);
uname(buffer);
- if(Param_getString(my, buffer->nodename, "basedir", &row, my->basedir) || (row != 1)) {
- if(Param_getString(my, "glob", "basedir", &row, my->basedir) || (row != 1)) {
+ if (Param_getString
+ (my, buffer->nodename, "basedir", &row, my->basedir)
+ || (row != 1)) {
+ if (Param_getString(my, "glob", "basedir", &row, my->basedir)
+ || (row != 1)) {
strcpy(my->basedir, "");
}
}
#ifdef PTHREADS
if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->cacheLock)) {
-#endif /* PTHREADS */
+#endif /* PTHREADS */
Tcl_DeleteInterp(((CaParam *) (my->specParam))->cache);
#ifdef PTHREADS
- pthread_mutex_unlock(((CaParam *) (my->specParam))->cacheLock);
+ pthread_mutex_unlock(((CaParam *) (my->specParam))->cacheLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
#ifdef PTHREADS
pthread_mutex_destroy(((CaParam *) (my->specParam))->cacheLock);
free(((CaParam *) (my->specParam))->cacheLock);
pthread_mutex_destroy(((CaParam *) (my->specParam))->socketLock);
free(((CaParam *) (my->specParam))->socketLock);
-#endif /* PTHREADS */
+#endif /* PTHREADS */
free(my->basedir);
if (my->setup != NULL) {
free(my->setup);
}
}
-int Param_getInt(const Param *my, const char *name, const char *idx, int *row, unsigned long int *val)
+int Param_getInt(const Param *my, const char *name, const char *idx,
+ int *row, unsigned long int *val)
{
return Param_getIntArray(my, name, idx, 1, row, val);
}
-int Param_getString(const Param *my, const char *name, const char *idx, int *row, char *val)
+int Param_getString(const Param *my, const char *name, const char *idx,
+ int *row, char *val)
{
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 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 Param_getIntArray(const Param *my, const char *name, const char *idx,
+ int maxrows, int *rows, unsigned long int *val)
{
int isReady;
int retVal = 0;
char buf[PARAM_MAX_NAME_LEN];
*rows = 0;
- if (Param_getIntArrayCache(my, name, idx, maxrows, rows, val) || (*rows != maxrows)) {
- pPVName = malloc((strlen("HAD:PI:") + (my->setup == NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 + strlen(idx) + 1) * sizeof(char));
+ if (Param_getIntArrayCache(my, name, idx, maxrows, rows, val)
+ || (*rows != maxrows)) {
+ pPVName =
+ malloc((strlen("HAD:PI:") +
+ (my->setup ==
+ NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 +
+ strlen(idx) + 1) * sizeof(char));
Param_returnPVName(my, "PI", name, idx, pPVName);
#ifdef PTHREADS
- if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
-#endif /* PTHREADS */
+ if (0 ==
+ pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
+#endif /* PTHREADS */
if ((status = ca_search(pPVName, &chan)) == ECA_GETFAIL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
} else {
do {
status = ca_pend_io(TIMEOUTIO);
- } while ((ca_state(chan) != cs_conn) && (status != ECA_TIMEOUT));
+ } while ((ca_state(chan) != cs_conn)
+ && (status != ECA_TIMEOUT));
if (status != ECA_NORMAL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
result->isReady = &isReady;
isReady = 1;
- status = ca_array_get_callback(ca_field_type(chan), ca_element_count(chan), chan, Param_copyIntsToAllocMem, result);
+ status =
+ ca_array_get_callback(ca_field_type(chan),
+ ca_element_count(chan), chan,
+ Param_copyIntsToAllocMem,
+ result);
Param_strerror((Param *) my, ca_message(status));
do {
ca_pend_event(TIMEOUTEVT);
- } while(isReady == 1);
+ } while (isReady == 1);
}
if ((status = ca_clear_channel(chan)) != ECA_NORMAL) {
Param_strerror((Param *) my, ca_message(status));
#ifdef PTHREADS
pthread_mutex_unlock(((CaParam *) (my->specParam))->socketLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
free(pPVName);
if (maxrows == 1) {
Param_storeIntCache(my, name, idx, *val);
} else {
- for (i = 0 ; i < *rows ; i++) {
+ for (i = 0; i < *rows; i++) {
sprintf(buf, "%s%d", idx, i);
Param_storeIntCache(my, name, buf, val[i]);
}
return retVal;
}
-int Param_getStringArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val)
+int Param_getStringArray(const Param *my, const char *name, const char *idx,
+ int maxrows, int *rows, char **val)
{
int isReady;
int retVal = 0;
char buf[PARAM_MAX_NAME_LEN];
*rows = 0;
- if (Param_getStringArrayCache(my, name, idx, maxrows, rows, val) || (*rows != maxrows)) {
- pPVName = malloc((strlen("HAD:PS:") + (my->setup == NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 + strlen(idx) + 1) * sizeof(char));
+ if (Param_getStringArrayCache(my, name, idx, maxrows, rows, val)
+ || (*rows != maxrows)) {
+ pPVName =
+ malloc((strlen("HAD:PS:") +
+ (my->setup ==
+ NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 +
+ strlen(idx) + 1) * sizeof(char));
Param_returnPVName(my, "PS", name, idx, pPVName);
#ifdef PTHREADS
- if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
-#endif /* PTHREADS */
+ if (0 ==
+ pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
+#endif /* PTHREADS */
if ((status = ca_search(pPVName, &chan)) == ECA_GETFAIL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
} else {
do {
status = ca_pend_io(TIMEOUTIO);
- } while ((ca_state(chan) != cs_conn) && (status != ECA_TIMEOUT));
+ } while ((ca_state(chan) != cs_conn)
+ && (status != ECA_TIMEOUT));
if (status != ECA_NORMAL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
result->isReady = &isReady;
isReady = 1;
- status = ca_array_get_callback(ca_field_type(chan), ca_element_count(chan), chan, Param_copyStringsToAllocMem, result);
+ status =
+ ca_array_get_callback(ca_field_type(chan),
+ ca_element_count(chan), chan,
+ Param_copyStringsToAllocMem,
+ result);
Param_strerror((Param *) my, ca_message(status));
do {
ca_pend_event(TIMEOUTEVT);
- } while(isReady == 1);
+ } while (isReady == 1);
}
if ((status = ca_clear_channel(chan)) != ECA_NORMAL) {
#ifdef PTHREADS
pthread_mutex_unlock(((CaParam *) (my->specParam))->socketLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
free(pPVName);
if (maxrows == 1) {
Param_storeStringCache(my, name, idx, *val);
} else {
- for (i = 0 ; i < *rows ; i++) {
+ for (i = 0; i < *rows; i++) {
sprintf(buf, "%s%d", idx, i);
Param_storeStringCache(my, name, buf, val[i]);
}
return retVal;
}
-int Param_getFilenameArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val)
+int Param_getFilenameArray(const Param *my, const char *name,
+ const char *idx, int maxrows, int *rows,
+ char **val)
{
int isReady;
int retVal = 0;
char buf[PARAM_MAX_NAME_LEN];
*rows = 0;
- if (Param_getStringArrayCache(my, name, idx, maxrows, rows, val) || (*rows != maxrows)) {
- pPVName = malloc((strlen("HAD:PS:") + (my->setup == NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 + strlen(idx) + 1) * sizeof(char));
+ if (Param_getStringArrayCache(my, name, idx, maxrows, rows, val)
+ || (*rows != maxrows)) {
+ pPVName =
+ malloc((strlen("HAD:PS:") +
+ (my->setup ==
+ NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 +
+ strlen(idx) + 1) * sizeof(char));
Param_returnPVName(my, "PS", name, idx, pPVName);
#ifdef PTHREADS
- if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
-#endif /* PTHREADS */
+ if (0 ==
+ pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
+#endif /* PTHREADS */
if ((status = ca_search(pPVName, &chan)) == ECA_GETFAIL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
} else {
do {
status = ca_pend_io(TIMEOUTIO);
- } while ((ca_state(chan) != cs_conn) && (status != ECA_TIMEOUT));
+ } while ((ca_state(chan) != cs_conn)
+ && (status != ECA_TIMEOUT));
if (status != ECA_NORMAL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
result->isReady = &isReady;
isReady = 1;
- for (i = 0 ; i < maxrows ; i++) {
+ for (i = 0; i < maxrows; i++) {
prefixVal[i] = malloc(PARAM_MAX_VALUE_LEN);
}
- status = ca_array_get_callback(ca_field_type(chan), ca_element_count(chan), chan, Param_copyStringsToAllocMem, result);
+ status =
+ ca_array_get_callback(ca_field_type(chan),
+ ca_element_count(chan), chan,
+ Param_copyStringsToAllocMem,
+ result);
Param_strerror((Param *) my, ca_message(status));
do {
ca_pend_event(TIMEOUTEVT);
- } while(isReady == 1);
+ } while (isReady == 1);
- for (i = 0 ; i < *rows ; i++) {
+ for (i = 0; i < *rows; i++) {
if (*prefixVal[i] == '/') {
strcpy(val[i], prefixVal[i]);
} else {
strcat(val[i], prefixVal[i]);
}
}
- for (i = 0 ; i < maxrows ; i++) {
+ for (i = 0; i < maxrows; i++) {
free(prefixVal[i]);
}
}
#ifdef PTHREADS
pthread_mutex_unlock(((CaParam *) (my->specParam))->socketLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
free(pPVName);
if (maxrows == 1) {
Param_storeStringCache(my, name, idx, *val);
} else {
- for (i = 0 ; i < *rows ; i++) {
+ for (i = 0; i < *rows; i++) {
sprintf(buf, "%s%d", idx, i);
Param_storeStringCache(my, name, buf, val[i]);
}
return retVal;
}
-int Param_getBlob(const Param *my, const char *name, const char *idx, size_t *size, FILE **val)
+int Param_getBlob(const Param *my, const char *name, const char *idx,
+ size_t * size, FILE ** val)
{
int isReady;
int retVal = 0;
chid chan;
char *pPVName;
- pPVName = malloc((strlen("HAD:PB:") + (my->setup == NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 + strlen(idx) + 1) * sizeof(char));
+ pPVName =
+ malloc((strlen("HAD:PB:") +
+ (my->setup ==
+ NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 +
+ strlen(idx) + 1) * sizeof(char));
Param_returnPVName(my, "PB", name, idx, pPVName);
#ifdef PTHREADS
if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
-#endif /* PTHREADS */
+#endif /* PTHREADS */
if ((status = ca_search(pPVName, &chan)) == ECA_GETFAIL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
} else {
do {
status = ca_pend_io(TIMEOUTIO);
- } while ((ca_state(chan) != cs_conn) && (status != ECA_TIMEOUT));
+ } while ((ca_state(chan) != cs_conn)
+ && (status != ECA_TIMEOUT));
if (status != ECA_NORMAL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
result->isReady = &isReady;
isReady = 1;
- status = ca_array_get_callback(ca_field_type(chan), ca_element_count(chan), chan, Param_copyBlobToAllocMem, result);
+ status =
+ ca_array_get_callback(ca_field_type(chan),
+ ca_element_count(chan), chan,
+ Param_copyBlobToAllocMem, result);
Param_strerror((Param *) my, ca_message(status));
- do {
- ca_pend_event(TIMEOUTEVT);
- } while(isReady == 1);
+ do {
+ ca_pend_event(TIMEOUTEVT);
+ } while (isReady == 1);
}
if ((status = ca_clear_channel(chan)) != ECA_NORMAL) {
Param_strerror((Param *) my, ca_message(status));
#ifdef PTHREADS
pthread_mutex_unlock(((CaParam *) (my->specParam))->socketLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
free(pPVName);
return retVal;
}
-int Param_storeInt(const Param *my, const char *name, const char *idx, unsigned long int value)
+int Param_storeInt(const Param *my, const char *name, const char *idx,
+ unsigned long int value)
{
int retVal = 0;
int status;
chid chan;
char *pPVName;
- pPVName = malloc((strlen("HAD:PI:") + (my->setup == NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 + strlen(idx) + 1) * sizeof(char));
+ pPVName =
+ malloc((strlen("HAD:PI:") +
+ (my->setup ==
+ NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 +
+ strlen(idx) + 1) * sizeof(char));
Param_returnPVName(my, "PI", name, idx, pPVName);
#ifdef PTHREADS
if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
-#endif /* PTHREADS */
+#endif /* PTHREADS */
if ((status = ca_search(pPVName, &chan)) == ECA_GETFAIL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
} else {
do {
status = ca_pend_io(TIMEOUTIO);
- } while ((ca_state(chan) != cs_conn) && (status != ECA_TIMEOUT));
+ } while ((ca_state(chan) != cs_conn)
+ && (status != ECA_TIMEOUT));
if (status != ECA_NORMAL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
ParamConfirmStoreStruct confirmS, *confirm = &confirmS;
int isReady = 1;
confirm->isReady = &isReady;
-
- status = ca_array_put_callback(DBR_LONG, 1, chan, &value, Param_confirmStore, confirm);
+
+ status =
+ ca_array_put_callback(DBR_LONG, 1, chan, &value,
+ Param_confirmStore, confirm);
Param_strerror((Param *) my, ca_message(status));
do {
ca_pend_event(TIMEOUTEVT);
- } while(isReady == 1);
+ } while (isReady == 1);
}
if ((status = ca_clear_channel(chan)) != ECA_NORMAL) {
#ifdef PTHREADS
pthread_mutex_unlock(((CaParam *) (my->specParam))->socketLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
free(pPVName);
return retVal;
}
-int Param_storeString(const Param *my, const char *name, const char *idx, const char *value)
+int Param_storeString(const Param *my, const char *name, const char *idx,
+ const char *value)
{
int retVal = 0;
int status;
chid chan;
char *pPVName;
- pPVName = malloc((strlen("HAD:PS:") + (my->setup == NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 + strlen(idx) + 1) * sizeof(char));
+ pPVName =
+ malloc((strlen("HAD:PS:") +
+ (my->setup ==
+ NULL ? 0 : strlen(my->setup) + 1) + strlen(name) + 1 +
+ strlen(idx) + 1) * sizeof(char));
Param_returnPVName(my, "PS", name, idx, pPVName);
#ifdef PTHREADS
if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->socketLock)) {
-#endif /* PTHREADS */
+#endif /* PTHREADS */
if ((status = ca_search(pPVName, &chan)) == ECA_GETFAIL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
} else {
do {
status = ca_pend_io(TIMEOUTIO);
- } while ((ca_state(chan) != cs_conn) && (status != ECA_TIMEOUT));
+ } while ((ca_state(chan) != cs_conn)
+ && (status != ECA_TIMEOUT));
if (status != ECA_NORMAL) {
Param_strerror((Param *) my, ca_message(status));
found = 0;
int isReady = 1;
confirm->isReady = &isReady;
- status = ca_array_put_callback(DBR_STRING, 1, chan, value, Param_confirmStore, confirm);
+ status =
+ ca_array_put_callback(DBR_STRING, 1, chan, value,
+ Param_confirmStore, confirm);
Param_strerror((Param *) my, ca_message(status));
do {
ca_pend_event(TIMEOUTEVT);
- } while(isReady == 1);
+ } while (isReady == 1);
}
if ((status = ca_clear_channel(chan)) != ECA_NORMAL) {
#ifdef PTHREADS
pthread_mutex_unlock(((CaParam *) (my->specParam))->socketLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
free(pPVName);
if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->cacheLock)) {
Tcl_DeleteInterp(((CaParam *) (my->specParam))->cache);
((CaParam *) (my->specParam))->cache = Tcl_CreateInterp();
- pthread_mutex_unlock(((CaParam *) (my->specParam))->cacheLock);
+ pthread_mutex_unlock(((CaParam *) (my->specParam))->cacheLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
}
const char *Param_getErrStr(const Param *my)
int i;
ParamStringResult *result = args.usr;
dbr_string_t *buffer = (dbr_string_t *) args.dbr;
-
+
*(result->rows) = (args.count > result->maxrows) ?
- result->maxrows :
- args.count;
+ result->maxrows : args.count;
if (args.type == DBR_STRING && args.status == ECA_NORMAL) {
- for(i = 0 ; i < *(result->rows) ; i++) {
+ for (i = 0; i < *(result->rows); i++) {
strcpy((result->val)[i], buffer[i]);
}
} else {
*(result->rows) = result->maxrows;
}
if (args.type == DBR_LONG && args.status == ECA_NORMAL) {
- memcpy(result->val, buffer + 2, (sizeof(dbr_long_t) * *(result->rows)));
+ memcpy(result->val, buffer + 2,
+ (sizeof(dbr_long_t) * *(result->rows)));
} else {
Param_strerror((Param *) result->my, ca_message(args.status));
*(result->rows) = 0;
*(result->isReady) = 0;
}
-static void Param_returnPVName(const Param *my, const char *type, const char *name, const char *idx, char *pPVName)
+static void Param_returnPVName(const Param *my, const char *type,
+ const char *name, const char *idx,
+ char *pPVName)
{
int i;
if (my->setup == NULL) {
- sprintf(pPVName ,"HAD:%s:%s:%s", type, name, idx);
+ sprintf(pPVName, "HAD:%s:%s:%s", type, name, idx);
} else {
- sprintf(pPVName ,"HAD:%s:%s:%s:%s", type, my->setup, name, idx);
+ sprintf(pPVName, "HAD:%s:%s:%s:%s", type, my->setup, name, idx);
}
- for (i = 0 ; i < strlen(pPVName) ; i++) {
+ for (i = 0; i < strlen(pPVName); i++) {
pPVName[i] = toupper(pPVName[i]);
}
}
}
}
-static int Param_getIntArrayCache(const Param *my, const char *name, const char *idx, int maxrows, int *rows, unsigned long int *val)
+static int Param_getIntArrayCache(const Param *my, const char *name,
+ const char *idx, int maxrows, int *rows,
+ unsigned long int *val)
{
int retVal = 0;
int i;
char *endptr;
char *strval[PARAM_MAX_ARRAY_LEN];
- for (i = 0 ; i < maxrows ; i++) {
+ for (i = 0; i < maxrows; i++) {
strval[i] = malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
}
*rows = 0;
- if ((retVal |= Param_getStringArrayCache(my, name, idx, maxrows, rows, strval)) == 0) {
- for (i = 0 ; i < *rows ; i++) {
+ if ((retVal |=
+ Param_getStringArrayCache(my, name, idx, maxrows, rows,
+ strval)) == 0) {
+ for (i = 0; i < *rows; i++) {
val[i] = strtoul(strval[i], &endptr, 0);
if (*endptr != '\0') {
*rows = 0;
retVal = -1;
- Param_strerror((Param *) my, "Value seems to be no integer.");
+ Param_strerror((Param *) my,
+ "Value seems to be no integer.");
}
}
}
- for (i = 0 ; i < maxrows ; i++) {
+ for (i = 0; i < maxrows; i++) {
free(strval[i]);
}
return retVal;
}
-static int Param_getStringArrayCache(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val)
+static int Param_getStringArrayCache(const Param *my, const char *name,
+ const char *idx, int maxrows,
+ int *rows, char **val)
{
int retVal = 0;
int i;
#ifdef PTHREADS
if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->cacheLock)) {
-#endif /* PTHREADS */
- for(i = 0 ; i <=strlen(name) ; i++) {
+#endif /* PTHREADS */
+ for (i = 0; i <= strlen(name); i++) {
lname[i] = tolower(name[i]);
}
- for(i = 0 ; i <=strlen(idx) ; i++) {
+ for (i = 0; i <= strlen(idx); i++) {
lidx[i] = tolower(idx[i]);
}
*rows = 0;
- if (Tcl_GetVar2(((CaParam *) (my->specParam))->cache, lname, lidx, 0) != 0) {
- strcpy(val[0], Tcl_GetVar2(((CaParam *) (my->specParam))->cache, lname, lidx, 0));
+ if (Tcl_GetVar2
+ (((CaParam *) (my->specParam))->cache, lname, lidx, 0) != 0) {
+ strcpy(val[0],
+ Tcl_GetVar2(((CaParam *) (my->specParam))->cache, lname,
+ lidx, 0));
*rows = 1;
} else {
char index[PARAM_MAX_NAME_LEN];
- for (i = 0 ; i < maxrows ; i++) {
- sprintf(index,"%s%d", lidx, i);
- if (Tcl_GetVar2(((CaParam *) (my->specParam))->cache, lname, index, 0) != 0) {
- strcpy(val[i], Tcl_GetVar2(((CaParam *) (my->specParam))->cache, lname, index, 0));
+ for (i = 0; i < maxrows; i++) {
+ sprintf(index, "%s%d", lidx, i);
+ if (Tcl_GetVar2
+ (((CaParam *) (my->specParam))->cache, lname, index,
+ 0) != 0) {
+ strcpy(val[i],
+ Tcl_GetVar2(((CaParam *) (my->specParam))->cache,
+ lname, index, 0));
(*rows)++;
} else {
i = maxrows;
} else {
retVal = -1;
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
return retVal;
}
-static int Param_storeIntCache(const Param *my, const char *name, const char *idx, unsigned long int value)
+static int Param_storeIntCache(const Param *my, const char *name,
+ const char *idx, unsigned long int value)
{
char buf[7 + 2 * PARAM_MAX_NAME_LEN + PARAM_MAX_VALUE_LEN];
sprintf(buf, "set %s(%s)\t%lu\n", name, idx, value);
#ifdef PTHREADS
if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->cacheLock)) {
-#endif /* PTHREADS */
+#endif /* PTHREADS */
Tcl_Eval(((CaParam *) (my->specParam))->cache, buf);
#ifdef PTHREADS
pthread_mutex_unlock(((CaParam *) (my->specParam))->cacheLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
return 0;
}
-static int Param_storeStringCache(const Param *my, const char *name, const char *idx, const char *value)
+static int Param_storeStringCache(const Param *my, const char *name,
+ const char *idx, const char *value)
{
char buf[7 + 2 * PARAM_MAX_NAME_LEN + PARAM_MAX_VALUE_LEN];
sprintf(buf, "set %s(%s)\t\"%s\"\n", name, idx, value);
#ifdef PTHREADS
if (0 == pthread_mutex_lock(((CaParam *) (my->specParam))->cacheLock)) {
-#endif /* PTHREADS */
+#endif /* PTHREADS */
Tcl_Eval(((CaParam *) (my->specParam))->cache, buf);
#ifdef PTHREADS
pthread_mutex_unlock(((CaParam *) (my->specParam))->cacheLock);
}
-#endif /* PTHREADS */
+#endif /* PTHREADS */
return 0;
}
-
-static const char rcsId[] = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/allParam/examples/paget.c,v 1.3 2003-02-10 16:04:47 sailer Exp $";
+static const char rcsId[] =
+ "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/allParam/examples/paget.c,v 1.4 2003-02-12 17:15:29 sailer Exp $";
#define _POSIX_C_SOURCE 199506L
#if HAVE_CONFIG_H
#include <config.h>
-#endif /* !HAVE_CONFIG_H */
+#endif /* !HAVE_CONFIG_H */
#include <unistd.h>
#include <allParam.h>
-static void usage(const char *name) {
+static void usage(const char *name)
+{
fprintf(stderr, "%s [-s setup]\n", name);
}
-static void cleanup(Param *param) {
+static void cleanup(Param *param)
+{
desParam(param);
free(param);
}
-int main(int argc, char * const argv[]) {
+int main(int argc, char *const argv[])
+{
Param *param;
char mode[4];
char *setup = NULL;
char *savalue[PARAM_MAX_ARRAY_LEN];
unsigned long int iavalue[PARAM_MAX_ARRAY_LEN];
- while((c = getopt(argc, argv, "s:")) != -1) {
- switch(c) {
- case('s'):
- setup = optarg;
- break;
- default:
- usage(argv[0]);
- exit(EXIT_FAILURE);
- break;
+ while ((c = getopt(argc, argv, "s:")) != -1) {
+ switch (c) {
+ case ('s'):
+ setup = optarg;
+ break;
+ default:
+ usage(argv[0]);
+ exit(EXIT_FAILURE);
+ break;
}
}
param = malloc(sizeof(Param));
- if(conSetupParam(param, setup)) {
- fprintf(stderr, "%s: Cannot create parameter source with setup %s\n", argv[0], setup);
+ if (conSetupParam(param, setup)) {
+ fprintf(stderr,
+ "%s: Cannot create parameter source with setup %s\n",
+ argv[0], setup);
exit(EXIT_FAILURE);
}
while (NULL != fgets(mode, 4, stdin)) {
mode[strlen(mode) - 1] = '\0';
fputs("Name: ", stdout);
- if(NULL == fgets(name, PARAM_MAX_NAME_LEN, stdin)) {
+ if (NULL == fgets(name, PARAM_MAX_NAME_LEN, stdin)) {
cleanup(param);
exit(EXIT_SUCCESS);
}
name[strlen(name) - 1] = '\0';
fputs("Idx: ", stdout);
- if(NULL == fgets(idx, PARAM_MAX_NAME_LEN, stdin)) {
+ if (NULL == fgets(idx, PARAM_MAX_NAME_LEN, stdin)) {
cleanup(param);
exit(EXIT_SUCCESS);
}
idx[strlen(idx) - 1] = '\0';
if (strcmp(mode, "s") == 0) {
- if (Param_getString(param, name, idx, &rows, svalue) || (rows != 1)) {
- fprintf(stderr, "%s: Parameter name=%s, idx=%s not found\n", argv[0], name, idx);
+ if (Param_getString(param, name, idx, &rows, svalue)
+ || (rows != 1)) {
+ fprintf(stderr, "%s: Parameter name=%s, idx=%s not found\n",
+ argv[0], name, idx);
} else {
fprintf(stdout, "%s\n", svalue);
}
} else if (strcmp(mode, "i") == 0) {
- if (Param_getInt(param, name, idx, &rows, &ivalue) || (rows != 1)) {
- fprintf(stderr, "%s: Parameter name=%s, idx=%s not found\n", argv[0], name, idx);
+ if (Param_getInt(param, name, idx, &rows, &ivalue)
+ || (rows != 1)) {
+ fprintf(stderr, "%s: Parameter name=%s, idx=%s not found\n",
+ argv[0], name, idx);
} else {
fprintf(stdout, "%lu\n", ivalue);
}
} else if (strcmp(mode, "sa") == 0) {
fputs("Count: ", stdout);
- if(NULL == fgets(scount, PARAM_MAX_NAME_LEN, stdin)) {
+ if (NULL == fgets(scount, PARAM_MAX_NAME_LEN, stdin)) {
cleanup(param);
exit(EXIT_SUCCESS);
}
count = strtoul(scount, &endptr, 0);
- if(*endptr != '\n') {
- fprintf(stderr, "%s: %s is not a valid number\n", argv[0], scount);
+ if (*endptr != '\n') {
+ fprintf(stderr, "%s: %s is not a valid number\n", argv[0],
+ scount);
} else {
- for (i = 0 ; i < count ; i++) {
+ for (i = 0; i < count; i++) {
savalue[i] = malloc(PARAM_MAX_VALUE_LEN);
}
- if (Param_getStringArray(param, name, idx, count, &rows, savalue)) {
- fprintf(stderr, "%s: Parameter name=%s, idx=%s not found\n", argv[0], name, idx);
+ if (Param_getStringArray
+ (param, name, idx, count, &rows, savalue)) {
+ fprintf(stderr,
+ "%s: Parameter name=%s, idx=%s not found\n",
+ argv[0], name, idx);
} else {
if (rows != count) {
- fprintf(stderr, "%s: %d, not %d items found\n", argv[0], rows, count);
+ fprintf(stderr, "%s: %d, not %d items found\n",
+ argv[0], rows, count);
}
- for (i = 0 ; i < rows ; i++) {
+ for (i = 0; i < rows; i++) {
fprintf(stdout, "%d: %s\n", i, savalue[i]);
}
}
- for (i = 0 ; i < count ; i++) {
+ for (i = 0; i < count; i++) {
free(savalue[i]);
}
}
} else if (strcmp(mode, "ia") == 0) {
fputs("Count: ", stdout);
- if(NULL == fgets(scount, PARAM_MAX_NAME_LEN, stdin)) {
+ if (NULL == fgets(scount, PARAM_MAX_NAME_LEN, stdin)) {
cleanup(param);
exit(EXIT_SUCCESS);
}
count = strtoul(scount, &endptr, 0);
- if(*endptr != '\n') {
- fprintf(stderr, "%s: %s is not a valid number\n", argv[0], scount);
+ if (*endptr != '\n') {
+ fprintf(stderr, "%s: %s is not a valid number\n", argv[0],
+ scount);
} else {
- if (Param_getIntArray(param, name, idx, count, &rows, iavalue)) {
- fprintf(stderr, "%s: Parameter name=%s, idx=%s not found\n", argv[0], name, idx);
+ if (Param_getIntArray
+ (param, name, idx, count, &rows, iavalue)) {
+ fprintf(stderr,
+ "%s: Parameter name=%s, idx=%s not found\n",
+ argv[0], name, idx);
} else {
if (rows != count) {
- fprintf(stderr, "%s: %d, not %d items found\n", argv[0], rows, count);
+ fprintf(stderr, "%s: %d, not %d items found\n",
+ argv[0], rows, count);
}
- for (i = 0 ; i < rows ; i++) {
+ for (i = 0; i < rows; i++) {
fprintf(stdout, "%d: %lu\n", i, iavalue[i]);
}
}
}
} else {
- fprintf(stderr, "%s: Mode must be one of 's', 'i', 'sa', 'ia', not %s\n", argv[0], mode);
+ fprintf(stderr,
+ "%s: Mode must be one of 's', 'i', 'sa', 'ia', not %s\n",
+ argv[0], mode);
}
fputs("Mode: ", stdout);
}
cleanup(param);
return 0;
}
-
-static const char rcsId[] = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/allParam/examples/pastore.c,v 1.3 2003-02-10 16:04:47 sailer Exp $";
+static const char rcsId[] =
+ "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/allParam/examples/pastore.c,v 1.4 2003-02-12 17:15:29 sailer Exp $";
#define _POSIX_C_SOURCE 199506L
#if HAVE_CONFIG_H
#include <config.h>
-#endif /* !HAVE_CONFIG_H */
+#endif /* !HAVE_CONFIG_H */
#include <unistd.h>
#include <allParam.h>
-static void usage(const char *name) {
+static void usage(const char *name)
+{
fprintf(stderr, "%s [-s setup]\n", name);
}
-static void cleanup(Param *param) {
+static void cleanup(Param *param)
+{
desParam(param);
free(param);
}
-int main(int argc, char * const argv[]) {
+int main(int argc, char *const argv[])
+{
Param *param;
char mode[4];
char *setup = NULL;
char svalue[PARAM_MAX_VALUE_LEN];
unsigned long int ivalue;
- while((c = getopt(argc, argv, "s:")) != -1) {
- switch(c) {
- case('s'):
- setup = optarg;
- break;
- default:
- usage(argv[0]);
- exit(EXIT_FAILURE);
- break;
+ while ((c = getopt(argc, argv, "s:")) != -1) {
+ switch (c) {
+ case ('s'):
+ setup = optarg;
+ break;
+ default:
+ usage(argv[0]);
+ exit(EXIT_FAILURE);
+ break;
}
}
param = malloc(sizeof(Param));
- if(conSetupParam(param, setup)) {
- fprintf(stderr, "%s: Cannot create parameter source with setup %s\n", argv[0], setup);
+ if (conSetupParam(param, setup)) {
+ fprintf(stderr,
+ "%s: Cannot create parameter source with setup %s\n",
+ argv[0], setup);
exit(EXIT_FAILURE);
}
while (NULL != fgets(mode, 4, stdin)) {
mode[strlen(mode) - 1] = '\0';
fputs("Name: ", stdout);
- if(NULL == fgets(name, PARAM_MAX_NAME_LEN, stdin)) {
+ if (NULL == fgets(name, PARAM_MAX_NAME_LEN, stdin)) {
cleanup(param);
exit(EXIT_SUCCESS);
}
name[strlen(name) - 1] = '\0';
fputs("Idx: ", stdout);
- if(NULL == fgets(idx, PARAM_MAX_NAME_LEN, stdin)) {
+ if (NULL == fgets(idx, PARAM_MAX_NAME_LEN, stdin)) {
cleanup(param);
exit(EXIT_SUCCESS);
}
idx[strlen(idx) - 1] = '\0';
fputs("Value: ", stdout);
- if(NULL == fgets(svalue, PARAM_MAX_VALUE_LEN, stdin)) {
+ if (NULL == fgets(svalue, PARAM_MAX_VALUE_LEN, stdin)) {
cleanup(param);
exit(EXIT_SUCCESS);
}
}
} else if (strcmp(mode, "i") == 0) {
ivalue = strtoul(svalue, &endptr, 0);
- if(*endptr != '\0') {
- fprintf(stderr, "%s: %s is not a valid number\n", argv[0], svalue);
+ if (*endptr != '\0') {
+ fprintf(stderr, "%s: %s is not a valid number\n", argv[0],
+ svalue);
} else {
if (Param_storeInt(param, name, idx, ivalue)) {
fprintf(stderr, "%s: Failed\n", argv[0]);
}
}
} else {
- fprintf(stderr, "%s: Mode must be either 's' or 'i', not %s\n", argv[0], mode);
+ fprintf(stderr, "%s: Mode must be either 's' or 'i', not %s\n",
+ argv[0], mode);
}
fputs("Mode: ", stdout);
}
cleanup(param);
return 0;
}
-
-static const char rcsId[] = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/allParam/file/fileParam.c,v 1.23 2003-02-05 16:54:46 hadaq Exp $";
+static const char rcsId[] =
+ "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/allParam/file/fileParam.c,v 1.24 2003-02-12 17:09:08 sailer Exp $";
#define _POSIX_C_SOURCE 199509L
#if HAVE_CONFIG_H
#include <config.h>
-#endif /* HAVE_CONFIG_H */
+#endif /* HAVE_CONFIG_H */
#include <unistd.h>
my->setup = NULL;
}
- paramFile = malloc(((my->setup == NULL) ? strlen("default") : strlen(setup)) + strlen("_p.tcl") + 1);
- storageFile = malloc(((my->setup == NULL) ? strlen("default") : strlen(setup)) + strlen("_s.tcl") + 1);
+ paramFile =
+ malloc(((my->setup ==
+ NULL) ? strlen("default") : strlen(setup)) +
+ strlen("_p.tcl") + 1);
+ storageFile =
+ malloc(((my->setup ==
+ NULL) ? strlen("default") : strlen(setup)) +
+ strlen("_s.tcl") + 1);
sprintf(paramFile, "%s_p.tcl", (setup == NULL) ? "default" : setup);
sprintf(storageFile, "%s_s.tcl", (setup == NULL) ? "default" : setup);
desParam(my);
return -1;
} else {
- while(fgets(buf, 2 * (PARAM_MAX_NAME_LEN + 1), f) != NULL) {
+ while (fgets(buf, 2 * (PARAM_MAX_NAME_LEN + 1), f) != NULL) {
if (buf[0] != '#') {
int items = 0;
((FileParam *) (my->specParam))->nVals++;
- ((FileParam *) (my->specParam))->pname = realloc(((FileParam *) (my->specParam))->pname, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->value = realloc(((FileParam *) (my->specParam))->value, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1] = malloc(2 * (PARAM_MAX_NAME_LEN + 1) * sizeof(char));
- ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1] = malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
- items = sscanf(buf, "set%s %*[\"]%[^\"]\"",
- ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1],
- ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1]
- );
+ ((FileParam *) (my->specParam))->pname =
+ realloc(((FileParam *) (my->specParam))->pname,
+ ((FileParam *) (my->specParam))->nVals *
+ sizeof(char *));
+ ((FileParam *) (my->specParam))->value =
+ realloc(((FileParam *) (my->specParam))->value,
+ ((FileParam *) (my->specParam))->nVals *
+ sizeof(char *));
+ ((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->nVals - 1] =
+ malloc(2 * (PARAM_MAX_NAME_LEN + 1) * sizeof(char));
+ ((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->nVals - 1] =
+ malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
+ items =
+ sscanf(buf, "set%s %*[\"]%[^\"]\"",
+ ((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->nVals -
+ 1],
+ ((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->nVals - 1]
+ );
if (items != 2) {
items = sscanf(buf, "set%s%s",
- ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1],
- ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1]
- );
+ ((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->
+ nVals - 1],
+ ((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->
+ nVals - 1]
+ );
}
if (items != 2) {
- free(((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1]);
- free(((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1]);
+ free(((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->nVals - 1]);
+ free(((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->nVals - 1]);
((FileParam *) (my->specParam))->nVals--;
- ((FileParam *) (my->specParam))->pname = realloc(((FileParam *) (my->specParam))->pname, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->value = realloc(((FileParam *) (my->specParam))->value, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
+ ((FileParam *) (my->specParam))->pname =
+ realloc(((FileParam *) (my->specParam))->pname,
+ ((FileParam *) (my->specParam))->nVals *
+ sizeof(char *));
+ ((FileParam *) (my->specParam))->value =
+ realloc(((FileParam *) (my->specParam))->value,
+ ((FileParam *) (my->specParam))->nVals *
+ sizeof(char *));
}
}
- }
+ }
fclose(f);
}
- if (NULL == (((FileParam *) (my->specParam))->store = fopen(storageFile, "a+"))) {
+ if (NULL ==
+ (((FileParam *) (my->specParam))->store =
+ fopen(storageFile, "a+"))) {
return -1;
}
free(paramFile);
free(storageFile);
- if(retVal == 0) {
+ if (retVal == 0) {
my->basedir = malloc(PARAM_MAX_VALUE_LEN);
uname(buffer);
- if(Param_getString(my, buffer->nodename, "basedir", &row, my->basedir) || (row != 1)) {
- if(Param_getString(my, "glob", "basedir", &row, my->basedir) || (row != 1)) {
+ if (Param_getString
+ (my, buffer->nodename, "basedir", &row, my->basedir)
+ || (row != 1)) {
+ if (Param_getString(my, "glob", "basedir", &row, my->basedir)
+ || (row != 1)) {
strcpy(my->basedir, "");
}
}
((FileParam *) (my->specParam))->value = 0;
((FileParam *) (my->specParam))->nVals = 0;
- if((tmp = getenv("DAQSLOW_PARAM_FILE")) != NULL) {
+ if ((tmp = getenv("DAQSLOW_PARAM_FILE")) != NULL) {
paramFile = malloc(strlen(tmp) + 1);
strcpy(paramFile, tmp);
} else {
strcpy(paramFile, "param.tcl");
}
- if((tmp = getenv("DAQSLOW_STORAGE_FILE")) != NULL) {
+ if ((tmp = getenv("DAQSLOW_STORAGE_FILE")) != NULL) {
storageFile = malloc(strlen(tmp) + 1);
strcpy(storageFile, tmp);
} else {
desParam(my);
return -1;
} else {
- while(fgets(buf, 2 * (PARAM_MAX_NAME_LEN + 1), f) != NULL) {
+ while (fgets(buf, 2 * (PARAM_MAX_NAME_LEN + 1), f) != NULL) {
if (buf[0] != '#') {
int items = 0;
((FileParam *) (my->specParam))->nVals++;
- ((FileParam *) (my->specParam))->pname = realloc(((FileParam *) (my->specParam))->pname, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->value = realloc(((FileParam *) (my->specParam))->value, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1] = malloc(2 * (PARAM_MAX_NAME_LEN + 1) * sizeof(char));
- ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1] = malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
- items = sscanf(buf, "set%s %*[\"]%[^\"]\"",
- ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1],
- ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1]
- );
+ ((FileParam *) (my->specParam))->pname =
+ realloc(((FileParam *) (my->specParam))->pname,
+ ((FileParam *) (my->specParam))->nVals *
+ sizeof(char *));
+ ((FileParam *) (my->specParam))->value =
+ realloc(((FileParam *) (my->specParam))->value,
+ ((FileParam *) (my->specParam))->nVals *
+ sizeof(char *));
+ ((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->nVals - 1] =
+ malloc(2 * (PARAM_MAX_NAME_LEN + 1) * sizeof(char));
+ ((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->nVals - 1] =
+ malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
+ items =
+ sscanf(buf, "set%s %*[\"]%[^\"]\"",
+ ((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->nVals -
+ 1],
+ ((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->nVals - 1]
+ );
if (items != 2) {
items = sscanf(buf, "set%s%s",
- ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1],
- ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1]
- );
+ ((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->
+ nVals - 1],
+ ((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->
+ nVals - 1]
+ );
}
if (items != 2) {
- free(((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1]);
- free(((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1]);
+ free(((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->nVals - 1]);
+ free(((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->nVals - 1]);
((FileParam *) (my->specParam))->nVals--;
- ((FileParam *) (my->specParam))->pname = realloc(((FileParam *) (my->specParam))->pname, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->value = realloc(((FileParam *) (my->specParam))->value, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
+ ((FileParam *) (my->specParam))->pname =
+ realloc(((FileParam *) (my->specParam))->pname,
+ ((FileParam *) (my->specParam))->nVals *
+ sizeof(char *));
+ ((FileParam *) (my->specParam))->value =
+ realloc(((FileParam *) (my->specParam))->value,
+ ((FileParam *) (my->specParam))->nVals *
+ sizeof(char *));
}
}
- }
+ }
fclose(f);
}
- if (NULL == (((FileParam *) (my->specParam))->store = fopen(storageFile, "a+"))) {
+ if (NULL ==
+ (((FileParam *) (my->specParam))->store =
+ fopen(storageFile, "a+"))) {
return -1;
}
free(paramFile);
free(storageFile);
- if(retVal == 0) {
+ if (retVal == 0) {
my->basedir = malloc(PARAM_MAX_VALUE_LEN);
uname(buffer);
- if(Param_getString(my, buffer->nodename, "basedir", &row, my->basedir) || (row != 1)) {
- if(Param_getString(my, "glob", "basedir", &row, my->basedir) || (row != 1)) {
+ if (Param_getString
+ (my, buffer->nodename, "basedir", &row, my->basedir)
+ || (row != 1)) {
+ if (Param_getString(my, "glob", "basedir", &row, my->basedir)
+ || (row != 1)) {
strcpy(my->basedir, "");
}
}
{
int i;
- for (i = 0 ; i < ((FileParam *) (my->specParam))->nVals ; i++) {
+ for (i = 0; i < ((FileParam *) (my->specParam))->nVals; i++) {
free(((FileParam *) (my->specParam))->pname[i]);
free(((FileParam *) (my->specParam))->value[i]);
}
fclose(((FileParam *) (my->specParam))->store);
free(my->basedir);
- if(my->setup != NULL) {
+ if (my->setup != NULL) {
free(my->setup);
}
}
-int Param_getInt(const Param *my, const char *name, const char *idx, int *row, unsigned long int *val)
+int Param_getInt(const Param *my, const char *name, const char *idx,
+ int *row, unsigned long int *val)
{
return Param_getIntArray(my, name, idx, 1, row, val);
}
-int Param_getString(const Param *my, const char *name, const char *idx, int *row, char *val)
+int Param_getString(const Param *my, const char *name, const char *idx,
+ int *row, char *val)
{
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 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 (((retVal = Param_getString(my, name, idx, &rows, value)) == 0)
+ && (rows == 1)) {
if (value[0] == '/') {
strcpy(val, value);
*row = 1;
return retVal;
}
-int Param_getIntArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, unsigned long int *val)
+int Param_getIntArray(const Param *my, const char *name, const char *idx,
+ int maxrows, int *rows, unsigned long int *val)
{
int retVal = 0;
int i;
char *endptr;
char *strval[PARAM_MAX_ARRAY_LEN];
- for (i = 0 ; i < maxrows ; i++) {
+ for (i = 0; i < maxrows; i++) {
strval[i] = malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
}
*rows = 0;
- if((retVal |= Param_getStringArray(my, name, idx, maxrows, rows, strval)) == 0) {
- for (i = 0 ; i < *rows ; i++) {
+ if ((retVal |=
+ Param_getStringArray(my, name, idx, maxrows, rows, strval)) == 0) {
+ for (i = 0; i < *rows; i++) {
val[i] = strtoul(strval[i], &endptr, 0);
if (*endptr != '\0') {
*rows = 0;
retVal = -1;
- Param_strerror((Param *) my, "Value seems to be no integer.");
+ Param_strerror((Param *) my,
+ "Value seems to be no integer.");
}
}
}
- for (i = 0 ; i < maxrows ; i++) {
+ for (i = 0; i < maxrows; i++) {
free(strval[i]);
}
return retVal;
}
-int Param_getStringArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val)
+int Param_getStringArray(const Param *my, const char *name, const char *idx,
+ int maxrows, int *rows, char **val)
{
int i;
int n = -2;
char lname[PARAM_MAX_NAME_LEN];
char lidx[PARAM_MAX_NAME_LEN];
- for(i = 0 ; i <=strlen(name) ; i++) {
+ for (i = 0; i <= strlen(name); i++) {
lname[i] = (char) tolower(name[i]);
}
- for(i = 0 ; i <=strlen(idx) ; i++) {
+ for (i = 0; i <= strlen(idx); i++) {
lidx[i] = (char) tolower(idx[i]);
}
*rows = 0;
- if((n = Param_getParamNumber(my, lname, lidx)) != -1) {
+ if ((n = Param_getParamNumber(my, lname, lidx)) != -1) {
strcpy(val[0], ((FileParam *) (my->specParam))->value[n]);
*rows = 1;
} else {
char index[PARAM_MAX_NAME_LEN];
n = -2;
- for (i = 0 ; (i < maxrows) && (n != -1) ; i++) {
- sprintf(index,"%s%d", lidx, i);
- if((n = Param_getParamNumber(my, lname, index)) != -1) {
+ for (i = 0; (i < maxrows) && (n != -1); i++) {
+ sprintf(index, "%s%d", lidx, i);
+ if ((n = Param_getParamNumber(my, lname, index)) != -1) {
strcpy(val[i], ((FileParam *) (my->specParam))->value[n]);
(*rows)++;
}
return 0;
}
-int Param_getFilenameArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val)
+int Param_getFilenameArray(const Param *my, const char *name,
+ const char *idx, int maxrows, int *rows,
+ char **val)
{
int retVal = 0;
int i;
char *value[PARAM_MAX_ARRAY_LEN];
- for (i = 0 ; i < maxrows ; i++) {
+ 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)) {
+ if (((retVal =
+ Param_getStringArray(my, name, idx, maxrows, rows, value)) == 0)
+ && (*rows > 0)) {
- for (i = 0 ; i < *rows ; i++) {
+ for (i = 0; i < *rows; i++) {
if (value[i][0] != '/') {
strcpy(val[i], my->basedir);
strcat(val[i], value[i]);
*rows = 0;
}
- for (i = 0 ; i < maxrows ; i++) {
+ 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 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];
return retVal;
}
-int Param_storeInt(const Param *my, const char *name, const char *idx, unsigned long int value)
+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);
+ fprintf(((FileParam *) (my->specParam))->store, "set %s(%s)\t%lu\n",
+ name, idx, value);
fflush(((FileParam *) (my->specParam))->store);
((FileParam *) (my->specParam))->nVals++;
- ((FileParam *) (my->specParam))->pname = realloc(((FileParam *) (my->specParam))->pname, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->value = realloc(((FileParam *) (my->specParam))->value, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1] = malloc(2 * (PARAM_MAX_NAME_LEN + 1) * sizeof(char));
- ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1] = malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
- sprintf(((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1], "%s(%s)", name, idx);
- sprintf(((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1], "%lu", value);
+ ((FileParam *) (my->specParam))->pname =
+ realloc(((FileParam *) (my->specParam))->pname,
+ ((FileParam *) (my->specParam))->nVals * sizeof(char *));
+ ((FileParam *) (my->specParam))->value =
+ realloc(((FileParam *) (my->specParam))->value,
+ ((FileParam *) (my->specParam))->nVals * sizeof(char *));
+ ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->
+ nVals - 1] =
+ malloc(2 * (PARAM_MAX_NAME_LEN + 1) * sizeof(char));
+ ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->
+ nVals - 1] =
+ malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
+ sprintf(((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->nVals - 1], "%s(%s)",
+ name, idx);
+ sprintf(((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->nVals - 1], "%lu",
+ value);
return 0;
}
-int Param_storeString(const Param *my, const char *name, const char *idx, const char *value)
+int Param_storeString(const Param *my, const char *name, const char *idx,
+ const char *value)
{
- fprintf(((FileParam *) (my->specParam))->store, "set %s(%s)\t\"%s\"\n", name, idx, value);
+ fprintf(((FileParam *) (my->specParam))->store, "set %s(%s)\t\"%s\"\n",
+ name, idx, value);
fflush(((FileParam *) (my->specParam))->store);
((FileParam *) (my->specParam))->nVals++;
- ((FileParam *) (my->specParam))->pname = realloc(((FileParam *) (my->specParam))->pname, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->value = realloc(((FileParam *) (my->specParam))->value, ((FileParam *) (my->specParam))->nVals * sizeof(char *));
- ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1] = malloc(2 * (PARAM_MAX_NAME_LEN + 1) * sizeof(char));
- ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1] = malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
- sprintf(((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->nVals - 1], "%s(%s)", name, idx);
- sprintf(((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->nVals - 1], "%s", value);
+ ((FileParam *) (my->specParam))->pname =
+ realloc(((FileParam *) (my->specParam))->pname,
+ ((FileParam *) (my->specParam))->nVals * sizeof(char *));
+ ((FileParam *) (my->specParam))->value =
+ realloc(((FileParam *) (my->specParam))->value,
+ ((FileParam *) (my->specParam))->nVals * sizeof(char *));
+ ((FileParam *) (my->specParam))->pname[((FileParam *) (my->specParam))->
+ nVals - 1] =
+ malloc(2 * (PARAM_MAX_NAME_LEN + 1) * sizeof(char));
+ ((FileParam *) (my->specParam))->value[((FileParam *) (my->specParam))->
+ nVals - 1] =
+ malloc(PARAM_MAX_VALUE_LEN * sizeof(char));
+ sprintf(((FileParam *) (my->specParam))->
+ pname[((FileParam *) (my->specParam))->nVals - 1], "%s(%s)",
+ name, idx);
+ sprintf(((FileParam *) (my->specParam))->
+ value[((FileParam *) (my->specParam))->nVals - 1], "%s", value);
return 0;
}
return my->strerror;
}
-static int Param_getParamNumber(const Param *my, const char *name, const char *idx)
+static int Param_getParamNumber(const Param *my, const char *name,
+ const char *idx)
{
int retVal = -1;
int i;
sprintf(fullName, "%s(%s)", name, idx);
for (i = 0; i < ((FileParam *) (my->specParam))->nVals; i++) {
- if (strcmp(((FileParam *) (my->specParam))->pname[i], fullName) == 0) {
+ if (strcmp(((FileParam *) (my->specParam))->pname[i], fullName) ==
+ 0) {
retVal = i;
}
}
static void Param_strerror(Param *my, const char *strerror)
{
my->strerror = realloc(my->strerror, strlen(strerror) + 1);
- if(my->strerror != NULL) {
+ if (my->strerror != NULL) {
strcpy(my->strerror, strerror);
}
}
-