Forum: Cfengine Help
Subject: cf-agent segfaulting
Author: msvob...@linkedin.com
Link to topic: https://cfengine.com/forum/read.php?3,17904,17904#msg-17904

I'm trying to run a policy, and cf-agent is segfaulting on me.  Am I doing 
something wrong here? Can I not use two separate promises to copy to the same 
directory?



$ /var/cfengine/bin/cf-agent -V
This comprises cf-agent core community version 3.0.4 - (C) Cfengine AS 2008-
$ /var/cfengine/bin/cf-agent -I -K
Segmentation Fault


Running truss against the process, I can see the policy it executes right 
before the segfault.

open64("/var/cfengine/inputs/cfengine_startup_scripts_manifests.cf", O_RDONLY) 
= 5
fstat64(5, 0x08044440)                          = 0
fstat64(5, 0x08044380)                          = 0
ioctl(5, TCGETA, 0x08044414)                    Err#25 ENOTTY
read(5, " b u n d l e   a g e n t".., 8192)     = 900
read(5, 0x083BBB9C, 8192)                       = 0
ioctl(5, TCGETA, 0x080444C4)                    Err#25 ENOTTY
llseek(5, 0, SEEK_CUR)                          = 900
close(5)                                        = 0
    Incurred fault #6, FLTBOUNDS  %pc = 0x080953FF
      siginfo: SIGSEGV SEGV_MAPERR addr=0x00796E61
    Received signal #11, SIGSEGV 
      siginfo: SIGSEGV SEGV_MAPERR addr=0x00796E61


$ /var/cfengine/bin/cf-agent -I -v
..
.....
cf3 Initiate control variable convergence...
cf3   > Parsing file /var/cfengine/inputs/cfengine_stdlib.cf
cf3   > Parsing file /var/cfengine/inputs/cf-execd.cf
cf3   > Parsing file /var/cfengine/inputs/cf-monitord.cf
cf3   > Parsing file /var/cfengine/inputs/cf-report.cf
cf3   > Parsing file /var/cfengine/inputs/cfengine_startup_scripts_manifests.cf
cf3 Initiate variable convergence...
cf3  -> Checking common class promises...
Segmentation Fault


$ cat inputs/cfengine_startup_scripts_manifests.cf 
bundle agent cfengine_startup_scripts_manifests
{
files:
        # Linux or Solaris, doesn't matter.  Copy the startup scripts into 
place.
        "/var/cfengine/etc"
                handle          =>              
"startup_scripts_for_all_cfengine_daemons",
                perms           =>              mog("700","root","root"),
                copy_from       =>              
no_backup_cp("/var/cfengine/inputs/config-general/cfengine_startup_scripts_manifests"),
                depth_search    =>              recurse("inf"),
                action          =>              immediate;

        # For Solaris, verify that the SMF manifests are there.  They aren't 
actually directly called
        # because they are imported into the SMF repository, but this is where 
they belong.
        sunos_5_10::
                "/var/cfengine/etc"
                        handle          =>              
"SMF_manifests_for_all_cfengine_daemons",
                        perms           =>              
mog("700","root","root"),
                        copy_from       =>              
no_backup_cp("/var/cfengine/inputs/config-solaris/cfengine_startup_scripts_manifests"),
                        depth_search    =>              recurse("inf"),
                        action          =>              immediate;
}

_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to