Forum: Cfengine Help
Subject: Core dump in cf-agent vars.c:308
Author: mvpel
Link to topic: https://cfengine.com/forum/read.php?3,22200,22200#msg-22200
As I was muddling through the bootstrap of my new cfengine 3.1.5 build:
sudo /usr/local/sbin/cf-agent --bootstrap
cf-promises needs to be installed in /var/cfengine/bin for pre-validation of
full configuration
/var/cfengine/state/cf_lock.db: No such file or directory
/var/cfengine/performance.db: No such file or directory
Bus error(coredump)
Call stack:
====
#0 GetVariable.part.1 (scope=0x74e4 "", lval=0x79ec1f08 "track_value",
returnv=0x7a002669, rtype=0x7a002668 "") at
/home/pelletm/src/cfengine-3.1.5/src/vars.c:308
#1 0xc49f6c8c in BooleanControl (scope=0x0, name=0x0) at
/home/pelletm/src/cfengine-3.1.5/src/vars.c:737
#2 0xc4a14570 in EndAudit () at
/home/pelletm/src/cfengine-3.1.5/src/logging.c:71
#3 0x7328 in KeepPromises () at
/home/pelletm/src/cfengine-3.1.5/src/agent.c:359
#4 0x7480 in main (argc=20, argv=0x10800) at
/home/pelletm/src/cfengine-3.1.5/src/agent.c:144
Relevant code:
====
enum cfdatatype GetVariable(char *scope,char *lval,void **returnv, char *rtype)
{
int slot,i,found = false;
struct Scope *ptr = NULL;
char scopeid,vlval,sval;
char expbuf;
...
if (!found)
{
Debug("No such variable found %s.%s\n\n",scopeid,lval);
*returnv = lval; <============= line 308
*rtype = CF_SCALAR;
return cf_notype;
}
}
At coredump:
=====
returnv == 0x7a002669
*returnv == 0x0
lval = 0x79ec1f08 "track_value"
In calling function:
=====
int BooleanControl(char *scope,char *name)
{ char varbuf, rtype;
if (name == NULL)
{
return false;
}
if (GetVariable(scope,name,(void *)varbuf,&rtype) != cf_notype) <=====
{
return GetBoolean(varbuf);
}
return false;
}
=================
I'm not quite clear on how the pointers fit together here to figure out why
this might be dumping core, and my test program isn't behaving as I expect. Any
suggestions?
_______________________________________________
Help-cfengine mailing list
[email protected]
https://cfengine.org/mailman/listinfo/help-cfengine