Hi again, I've found in cfservd.c the lines which are responsible of the elimination of the 'f' at the end of an identifier. More generally, every 'f' at the end of a word and followed by a blank is discarded, I don't know why. It looks as if the involved section of code has been forgotten in the development process :-(
The comment just above the incriminated line says "Blank out -K -f". But indeed it blanks out -K, -f, and 'f' followed by a blank :-( Just suppress the blanking of 'f<blank>' and my problem disappears, but I can't figure if it doesn't create another problem elsewhere... <2.1.17, cfservd.c #1620> 1620c1620 < if ((strncmp(sp,"-K",2) == 0) || (strncmp(sp,"-f",2) == 0)) --- > if ((strncmp(sp,"-K",2) == 0) || (strncmp(sp,"-f",2) == 0) || (strncmp(sp,"f ",2) == 0)) </2.1.17 cfservd.c #1620> I've checked in 2.1.16, the same line exists. Is it on purpose, or a relic of the development ? Patrice ----- Réacheminé par Patrice Guerlais/QVI/GRAF/FR le 28/11/2005 14:35 ----- Patrice Guerlais/QVI/GRAF /FR A help-cfengine@gnu.org 28/11/2005 11:00 cc Objet Odd flag cut Hi all, I'm in the process of upgrading all my clients from 2.0.7p3 to 2.1.17. But before that upgrade, I'm conducting some tests to ensure everything is ok, and I've found a strange behaviour. I've encapsulated the use of cfengine in a Perl application, which generates some cfrun commands. The call of cfrun is done with parameters (in a -Dxxx way), so as to inform the client of what has to be done. Nothing fantastic in that use of cfengine. What becomes strange is that when the flag is exactly 'cfengine_conf', the last 'f' is lost between cfrun and cfservd. I tried a lot of other strings to figure out what's going on. The conclusion is that any string which ends with an 'f' looses this last character. Any other last character I tried (g, h, ...) has been kept... For example : /usr/local/cfengine/sbin/cfrun -f /tmp/cfrun.hosts.16229 -T -v -- -v -Daf <----------------- the final 'f' is present <cut> cfrun(0): .......... [ Hailing <client_ip> ] .......... Connecting to server <client_ip> to port 0 with options -v -Daf <----------------- the final 'f' is still present (Non privileged user...) Loaded /home/patrice/.cfengine/ppkeys/root-<client_ip>.pub Connect to <client_ip> = <client_ip> on port cfengine (Non privileged user...) Loaded /home/patrice/.cfengine/ppkeys/root-<client_ip>.pub cfrun:calao.france.airfrance.fr: Strong authentication of server=<client_ip> connection confirmed <client_ip> replies.. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cfservd Executing /usr/local/cfengine/sbin/cfagent --no-splay --inform -v -Da <---------------- the final 'f' has been lost </cut> The problem seems to me more probably located in cfservd than in cfrun, because of the line 'cfservd Executing...' which is the first to show the truncated flag, but I'm not definitely sure. Does anybody ever heard of cf truncating the final 'f' in a flag ? I'm going to dig into cfengine sources, but any information can help me to explain faster that strange behaviour. Last thing : I didn't try any other cfengine version between 2.0.7p3 and 2.1.17, so I don't know if that problem appeared in a previous version or if it is specific to that last one. Thanks for your help Patrice ---------------- L'acces immediat aux meilleurs tarifs Air France et au billet electronique sur http://www.airfrance.com For immediate access to the best Air France fares and to electronic tickets, visit our website http://www.airfrance.com ---------------- Les donnees et renseignements contenus dans ce message sont personnels, confidentiels et secrets. Ce message est adresse a l'individu ou l'entite dont les coordonnees figurent ci-dessus. Si vous n'etes pas le bon destinataire, nous vous demandons de ne pas lire, copier, utiliser ou divulguer cette communication. Nous vous prions de notifier cette erreur a l'expediteur et d'effacer immediatement cette communication de votre systeme. The information contained in this message is privileged, confidential, and protected from disclosure. This message is intended for the individual or entity adressed herein. If you are not the intended recipient, please do not read, copy, use or disclose this communication to others; also please notify the sender by replying to this message, and then delete it from your system. _______________________________________________ Help-cfengine mailing list Help-cfengine@gnu.org http://lists.gnu.org/mailman/listinfo/help-cfengine