[opensuse] Perl question
I know very little about this problem, so I will share what I know and if anyone knows perl if you can give me a hint. Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");, which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646. Since it appeared to me to be a line added for debugging, commenting it out allowed the script to work (with a few other things. Does anyone understand the error or see the problem? TIA for any ideas. -- Joe Morris Registered Linux user 231871 running openSUSE 10.2 x86_64 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Joe Morris (NTM) wrote:
I know very little about this problem, so I will share what I know and if anyone knows perl if you can give me a hint. Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");,
which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646. The hash (%globals) entry of 'fw' is empty. Can you have a look for what $globals{'fw'} is used or when it is set?
-- Patrick Kirsch - Quality Assurance Department SUSE Linux Products GmbH GF: Markus Rex, HRB 16746 (AG Nuernberg) -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Patrick Kirsch wrote:
Joe Morris (NTM) wrote:
I know very little about this problem, so I will share what I know and if anyone knows perl if you can give me a hint. Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");,
which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646.
The hash (%globals) entry of 'fw' is empty. Can you have a look for what $globals{'fw'} is used or when it is set?
It is only used in the following line, i.e. debug("glo fw = $globals{'fw'}"); #if ( $globals{'ssl'} and $server ne $globals{'fw'} ) { Which is commented out. Perhaps the author tried something or changed something and just forgot to comment out the debug line. Is that possible? -- Joe Morris Registered Linux user 231871 running openSUSE 10.2 x86_64 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
It is only used in the following line, i.e. debug("glo fw = $globals{'fw'}"); #if ( $globals{'ssl'} and $server ne $globals{'fw'} ) { Which is commented out. Perhaps the author tried something or changed something and just forgot to comment out the debug line. Is that possible?
Yes this is possible :) I've looked up what %globals is used for, it is e.g. set in the configuration file. There is it possible to set the $globals{'fw'} value, $globals{'fw'} stands for your (if present) firewall host. Can you check your configfile, did you set a "fw=" value? -- Patrick Kirsch - Quality Assurance Department SUSE Linux Products GmbH GF: Markus Rex, HRB 16746 (AG Nuernberg) -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Hi group !! I am currently experiencing with db2 backups into samba filesystems. If my backup's resulting file is < 2 GB then, no problem. BUT if the resulting file is over 2 GB then I get the "disk is full" error. My PC disk is far from being full but in Samba filesystems there's a 2GB constraint I can't trespass. Does anyone know how could I solve this problem and backup files over the Samba 2-GB limit ? Saludos / BRGDS José R. Barón Dpto. Sistemas CALCULO S. A. Tel. 91 330 86 44 e-mail: jbaron@calculo-sa.es -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Patrick Kirsch wrote:
It is only used in the following line, i.e. debug("glo fw = $globals{'fw'}"); #if ( $globals{'ssl'} and $server ne $globals{'fw'} ) { Which is commented out. Perhaps the author tried something or changed something and just forgot to comment out the debug line. Is that possible?
Yes this is possible :) I've looked up what %globals is used for, it is e.g. set in the configuration file.
Oh, ok. I would then assume it is one of the use=fw statements, which I don't use. I am 2 nets below the public IP, so I use their web method.
There is it possible to set the $globals{'fw'} value, $globals{'fw'} stands for your (if present) firewall host. Can you check your configfile, did you set a "fw=" value?
no. I didn't see it was needed, nor am I certain what it should be in my case, since I do not use the router's fw page to get my public IP. IIUC, if I would add fw= , or fw=nothing, would that part of the script be happy and allow the script to run? I do know it runs with that part commented out. Thanks for your help Patrick, I am certainly in learning mode here. -- Joe Morris Registered Linux user 231871 running openSUSE 10.2 x86_64 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Tuesday 20 February 2007 23:20, Joe Morris (NTM) wrote:
I know very little about this problem, so I will share what I know and if anyone knows perl if you can give me a hint. Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");,
which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646.
Since it appeared to me to be a line added for debugging, commenting it out allowed the script to work (with a few other things. Does anyone understand the error or see the problem? TIA for any ideas.
What version of ddclient? I'm using 3.3.7 (on CentOS) and do not have a problem, even though it has that line: 1644 debug("server = $server"); 1645 debug("opt(fw = ",opt('fw')); 1646 debug("glo fw = $globals{'fw'}"); Hang on, what's that at the end of line 1646 in yours? -- Cheers John Summerfield -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Tuesday 20 February 2007 23:20, Joe Morris (NTM) wrote:
I know very little about this problem, so I will share what I know and if anyone knows perl if you can give me a hint. Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");,
which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646.
What version of ddclient? I'm using 3.3.7 (on CentOS) and do not have a problem, even though it has that line: 1644 debug("server = $server"); 1645 debug("opt(fw = ",opt('fw')); 1646 debug("glo fw = $globals{'fw'}");
Hang on, what's that at the end of line 1646 in yours? Not sure what the comma is doing there at the end, but I copied and
John Summerfield wrote: pasted, but I cannot see it in the original. I started with 3.3.7, but had that error, so found out 3.3.7.1 was in factory, so tried it. I then rebuilt the package with a couple of tweaks for it to work, i.e. add the cache file and comment out this line (1660 in 3.7.7.1). I can only guess Patrick is on to something since fw is not used in my setup (which worked fine in 9.3, not sure what version of ddclient it had. But I am not a programmer, and even less familiar with Perl. I just wanted to make sure commenting out will not do something bad (and report it to the author if it is a bug in ddclient). BTW, do you use the fw to get your IP? Is it set in your conf file? -- Joe Morris Registered Linux user 231871 running openSUSE 10.2 x86_64 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
John Summerfield wrote:
On Tuesday 20 February 2007 23:20, Joe Morris (NTM) wrote:
I know very little about this problem, so I will share what I know and if anyone knows perl if you can give me a hint. Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");,
which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646.
What version of ddclient? I'm using 3.3.7 (on CentOS) and do not have a problem, even though it has that line: 1644 debug("server = $server"); 1645 debug("opt(fw = ",opt('fw')); 1646 debug("glo fw = $globals{'fw'}");
Hang on, what's that at the end of line 1646 in yours?
Well, a bit more digging and looking around the file (after thinking through what I learned from Patrick yesterday, I think I got it. At least it looks right to me and works. The bug is in that line. I changed it to debug("glo fw = ",$globals{'fw'}); I have no real idea what that does, but it looked different to the one above it, and they seemed to be very similar (and I changed the the line 1645 to be like 1646 and that still didn't work, but making the 1646 line like the 1645 line allowed it to work, and running with debug (an option I found looking in the script) output looks correct. Thanks for your help. If this looks correct, please let me know so I can file a bug report. Thanks. -- Joe Morris Registered Linux user 231871 running openSUSE 10.2 x86_64 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Thursday 22 February 2007 00:09, Joe Morris (NTM) wrote:
John Summerfield wrote:
On Tuesday 20 February 2007 23:20, Joe Morris (NTM) wrote:
I know very little about this problem, so I will share what I know and if anyone knows perl if you can give me a hint. Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");,
which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646.
What version of ddclient? I'm using 3.3.7 (on CentOS) and do not have a problem, even though it has that line: 1644 debug("server = $server"); 1645 debug("opt(fw = ",opt('fw')); 1646 debug("glo fw = $globals{'fw'}");
Hang on, what's that at the end of line 1646 in yours?
Well, a bit more digging and looking around the file (after thinking through what I learned from Patrick yesterday, I think I got it. At least it looks right to me and works. The bug is in that line. I changed it to debug("glo fw = ",$globals{'fw'}); I have no real idea what that does, but it looked different to the one above it, and they seemed to be very similar (and I changed the the line 1645 to be like 1646 and that still didn't work, but making the 1646 line like the 1645 line allowed it to work, and running with debug (an option I found looking in the script) output looks correct. Thanks for your help. If this looks correct, please let me know so I can file a bug report. Thanks.
Your response confuses me, but that comma is definitely wrong: Perl statements are (mostly, and this one is) separated by semicolons, and the comma is not a good way to start a new one. If you didn't put it there, it's a fairly important bug, as you noticed:-) -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Thursday 22 February 2007 00:09, Joe Morris (NTM) wrote:
John Summerfield wrote:
On Tuesday 20 February 2007 23:20, Joe Morris (NTM) wrote:
Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");,
which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646.
What version of ddclient? I'm using 3.3.7 (on CentOS) and do not have a problem, even though it has that line: 1644 debug("server = $server"); 1645 debug("opt(fw = ",opt('fw')); 1646 debug("glo fw = $globals{'fw'}");
Hang on, what's that at the end of line 1646 in yours?
The bug is in that line. I changed it to debug("glo fw = ",$globals{'fw'});
Your response confuses me, but that comma is definitely wrong: Which comma? As I said, the comma at the end of that line in my first
John Summerfield wrote: post must have been an artifact of another sentence or something. i pasted it from the original, and it is not there in the original.
Perl statements are (mostly, and this one is) separated by semicolons, and the comma is not a good way to start a new one.
If you are meaning the comma after the quote sign in the line with the error, then please explain further.
If you didn't put it there, it's a fairly important bug, as you noticed:-) Well, this is an important bug to me, as it caused ddclient not to run on my box. But, to summarize a bit (in addition to over posting for contexts sake) this is what I found. These 2 lines,
debug("opt(fw = ",opt('fw')); debug("glo fw = $globals{'fw'}"); look very similar, but i noticed the quoting was different. I had tried, based on some things Patrick had mentioned, to add fw=no inline with the use=web line in the config, and it ran without error, so I thought maybe that was the problem, but noticed running debug the the first opt had a blank value, but the glo had the word no. Then I noticed the differences in the 2 lines quoting. First, I tried changing the first to debug("opt(fw = opt('fw')") - but this didn't work. Then, I changed the line with the error to debug("glo fw = ",$globals{'fw'}); and it worked without the extra fw=no, and debug had blank values for both, so I assume that is the correct line. But as you can tell, I am not a programmer, and do not know Perl. I see it is working correctly (with ssl btw), and I would like to let the author know if this is valid. This error is present with 3.7.0 and 3.7.1 btw. If you can confirm, since you seem to know Perl, if this looks correct, I will report it to the author and send him a patch to fix it. Thanks. -- Joe Morris Registered Linux user 231871 running openSUSE 10.2 x86_64 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Tuesday 20 February 2007 23:20, Joe Morris (NTM) wrote:
I know very little about this problem, so I will share what I know and if anyone knows perl if you can give me a hint. Problem is this line in ddclient, debug("glo fw = $globals{'fw'}");,
which causes this error when run, Use of uninitialized value in concatenation (.) or string at /usr/sbin/ddclient line 1646.
Well, i found the "real" answer on the ddclient site at http://sourceforge.net/forum/forum.php?thread_id=1677041&forum_id=399428 and it was a bug(let) in ddclient. The fix for 3.7.1 is @@ -1657,6 +1657,6 @@
debug("server = $server"); - debug("opt(fw = ",opt('fw')); - debug("glo fw = $globals{'fw'}"); + opt('fw') && debug("opt(fw = ",opt('fw'),")"); + $globals{'fw'} && debug("glo fw = $globals{'fw'}"); #if ( $globals{'ssl'} and $server ne $globals{'fw'} ) { ## always omit SSL for connections to local router -- Joe Morris Registered Linux user 231871 running openSUSE 10.2 x86_64 -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
participants (4)
-
Joe Morris (NTM)
-
John Summerfield
-
Jose Raul Baron
-
Patrick Kirsch