Mark,

Thanks! Works like a champ in svn 324. No need to apologize, you are
very responsive to bugs and fix them quickly. I am sorry that I could
not find it. I see that you fixed it in fncall.c

         if (UnresolvedArgs(expargs))
                    {
                    FNCALL_STATUS.status = FNCALL_FAILURE;
                    rval.item = CopyFnCall(fp);
                    rval.rtype = CF_FNCALL;
                    DeleteExpArgs(expargs);
                    return rval;
                    }
       switch (this)
              {
            case cfn_canonify:      case cfn_canonify:

I was real close to finding it, as I did pass by this chunk of code
many times. I just didn't know enough about the code to fix it.


Now for a small typo in generic_agent.c (line 288). It doesn't effect
anything, but I happened to notice it:

snprintf(vbuff,CF_BUFSIZE,"%s/bin/cfagent -D from_cfexecd",CFWORKDIR);

should be

snprintf(vbuff,CF_BUFSIZE,"%s/bin/cf-agent -D from_cfexecd",CFWORKDIR);


I am also tracking down another bug where cf-agent segfaults when
connecting to multiple hosts (on AIX). I am not sure it is cfengine's
fault as the free operation should work as it is a valid memory
address. I'll let you know when I figure it out. On the last
connection host it will free the connection:

cf3 Existing connection just became free...

Segmentation fault in splay at 0xd03aa0c4 ($t1)
0xd03aa0c4 (splay+0xdc) 7ca744aa        lswi   r5,r7,0x8

(dbx) where
splay(??, ??, ??) at 0xd03aa0c4
free_y(??, ??) at 0xd03aab7c
free_common(??) at 0xd033ce7c
DeleteTypeContext(type = kp_files), line 948 in "agent.c"
ScheduleAgentOperations(bp = 0x2024acb8), line 695 in "agent.c"
KeepPromiseBundles(), line 647 in "agent.c"
KeepPromises(), line 277 in "agent.c"
main(argc = 2, argv = 0x2ff22a18), line 135 in "agent.c"

agent.c : line 948

          if (svp->server)
             {
             free(svp->server);
             }

(dbx) whatis svp->server
char *server;
(dbx) p &svp->server
0x20243ba8
(dbx) 0x20243ba8/10x
0x20243ba8:  2024 3bc8 2024 31b8 2024 3850 0000 0010
0x20243bb8:  2024 3df0


On Sat, May 2, 2009 at 3:10 AM, Mark Burgess <mark.burg...@iu.hio.no> wrote:
>
> Matt, I apologise for your trouble. I now found the time to look for
> this and please try the latest svn where this now seems to work correctly.
>
> M
>
> Matt Richards wrote:
>> Greetings. It seems that when you pass in a parameter to a usebundle,
>> canonify can't handle it. Consider the following example.
>>
>> bundle control common {
>>    bundlesquence = { "test" };
>> }
>>
>> ##
>>
>> bundle agent test {
>>
>>   vars:
>>     "test_files" slist => { "/etc/motd",
>>                                "/etc/resolv.conf",
>>                                "/etc/netsvc.conf"
>>                              };
>>
>>    methods:
>>       "any" usebundle => test_func("$(test_files)");
>>
>> }
>>
>> ##
>>
>> bundle agent test_func(filename) {
>>
>>   vars:
>>
>>     "canon_filename" string => canonify("$(filename)");
>>
>>   reports:
>>      Yr2009::
>>        "filename: $(filename)";
>>        "canon_filename: $(canon_filename)";
>>
>> }
>>
>>
>> running the example:
>> cf3    =========================================================
>> cf3    reports in bundle drop_copy (2)
>> cf3    =========================================================
>> cf3
>> cf3
>> cf3     .........................................................
>> cf3     Promise by: filename: /etc/netsvc.conf
>> cf3     .........................................................
>> cf3
>> cf3 R: filename: /etc/netsvc.conf
>> cf3
>> cf3     .........................................................
>> cf3     Promise by: canon_filename: __filename_
>> cf3     .........................................................
>> cf3
>> cf3 R: canon_filename: __filename_
>> cf3 Method invoked successfully
>> cf3
>> cf3      +  Private classes augmented:
>> cf3
>> cf3      -  Private classes diminished:
>> cf3
>> cf3
>> cf3
>> _______________________________________________
>> Bug-cfengine mailing list
>> Bug-cfengine@cfengine.org
>> https://cfengine.org/mailman/listinfo/bug-cfengine
>
> --
> Mark Burgess
>
> -------------------------------------------------
> Professor of Network and System Administration
> Oslo University College, Norway
>
> Personal Web: http://www.iu.hio.no/~mark
> Office Telf : +47 22453272
> -------------------------------------------------
>

_______________________________________________
Bug-cfengine mailing list
Bug-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/bug-cfengine

Reply via email to